蘇一博 臧晶 玉紹康



摘? ?要:隨著科學技術的不斷進步,當今工程系統涉及的學科領域不斷擴大。針對各個學科的仿真平臺不能兼容的問題,本文研究了基于FMI的功能模擬單元。本文首先介紹FMI標準,然后深入研究基于FMI的功能模擬單元FMU的組成、創建和仿真,并分析仿真數據,以實例仿真的方式證明,基于FMI標準的FMU可以與多種仿真平臺兼容,具備良好的移植性,極大地提高了仿真的效率。
關鍵詞:FMI標準? 功能模擬單元? 兼容
中圖分類號:TP391.9? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻標識碼:A? ? ? ? ? ? ? ? ? ? ? ?文章編號:1674-098X(2019)05(b)-0001-02
當今計算機仿真技術應用廣泛,涵蓋領域眾多,在科學研究中發揮了不可替代的作用。為了實現多領域的聯合仿真,歐洲的MODELISAR項目開發了一種新的開放接口標準FMI,可以方便地使不同仿真環境的模型通過模型交換或者模型耦合實現仿真。建模軟件將模型以FMI標準導出功能模擬單元FMU,可以將FMU與其他模型集成在仿真軟件中進行仿真。
1? FMI標準概述
功能模擬接口(FMI)是一種獨立于工具的標準,它可以分為模型交換(Model Exchange)和協同仿真(Co-Simulation)兩種。其中模型交換的目的是建模平臺可以動態生成模型的C代碼,并且該代碼可供其他模型使用,模型由微分、代數和離散方程所描述;協同仿真的FMI是為在聯合仿真環境中耦合兩個或多個仿真工具提供接口標準,各子系統之間的仿真數據交換僅被局限于那些離散的通信點上,在兩個通信點間的都由各自所帶的求解器求解[1]。
2? FMU文件組成
FMU文件主要包含源代碼文件和模型描述文件。源代碼文件為DLL文件,主要是由C和C++語言編寫的源代碼文件。這些源代碼文件都是以FMI為標準將模型的運動狀態以及方程編寫成函數封裝起來的。模型描述文件為XML格式,仿真軟件讀取并解析模型的XML文件得到仿真模型的相關屬性信息。描述文件中包含模型版本、名稱、模型ID、識別碼Guid等仿真必須讀取的模型屬性信息和仿真參數的執行信息。另外FMU中可能會有圖片、表格等其他非必須的文件[2]。
3? FMU的創建
創建FMU模型的方法有很多種,本節主要討論以下兩種常見的方法。
3.1 C代碼編譯生成FMU
該方法主要需要以FMI標準將模型的狀態和運動方程編寫成C代碼文件,還需要將模型的屬性信息和仿真參數寫在xml描述文件中。將這兩個主要文件和其他非必須的描述性文件放在同一目錄下在FMU_SDK中使用build命令即可生成FMU模型。
3.2 Modelica編譯生成FMU
Modelica是一種使用廣泛的、基于方程的模型語言,它可以方便地實現跨領域、跨學科物理系統的建模和仿真。以彈跳球為例,將小球自由落體運動的方程和狀態等用Modelica語言編寫成BouncingBall.mo模型。編寫完成的Modelica模型可以通過Dymola、MapleSim等建模仿真軟件的“FMU導出”功能導出BouncingBall.fmu模型文件。
4? 仿真與分析
本節以直流電機模型為例來研究FMU模型的仿真并分析。
在MapleSim仿真平臺上搭建直流電機模型,其中包含RLC電路和電機兩部分,將模型進行仿真,選取電機處的信號Speed如圖1所示。
將直流電機模型中的RLC電路部分通過MapleSim封裝導出為RLC_motor.fmu文件。將RLC_motor.fmu導入MapleSim并加載模型,用其替代先前的RLC電路。將模型仿真,選取電機處的信號FMU_Speed,結果如圖2所示。對比圖2中的speed和圖1中的speed的數據波形,發現RLC普通電路和封裝成FMU模型后的仿真結果相同。可以得出結論:在某些復雜系統中,可以將具有一定功能,并且結構相對獨立的部分封裝成FMU,用其替代先前復雜的普通模型進行仿真,得到與原仿真相同的結果,FMU模型并不會影響結果的準確性。
再將在MapleSim中創建的RLC_motor.fmu導入到其他仿真平臺中,例如OpenModelica仿真平臺。用其代替相同工程下的RLC電路部分,得到速度speed如圖3所示。
對比圖2和圖3,發現其仿真結果和在MapleSim平臺仿真結果相同。可以得出結論:基于FMI標準封裝的FMU模型可以導入到其他的仿真平臺使用,擁有很強的移植性,并且仿真結果與在原仿真平臺結果相同。還可以說明,在工程中可以將具備特定功能和固定結構的系統封裝成一個或幾個FMU模型,這樣可以方便地將它們接入到需要此功能的系統中,不僅簡化了仿真系統,還提高了仿真效率和模型的應用價值。
5? 結語
本文簡要介紹了FMU模型的創建方法并通過直流電機實例的三次仿真數據的對比,驗證了基于FMI標準的FMU模型可以方便地與多種仿真平臺兼容,仿真數據準確,具有可移植性強等優點,極大地提高了涵蓋有多學科、多平臺的仿真效率,對解決多仿真工具和半實物仿真系統之間的兼容性問題以及聯合仿真平臺的開發具有重要意義。
參考文獻
[1] 田紅芳,單立志,李成功.通用模型接口標準FMI[A].信息技術、服務科學與工程管理國際學術會議[C].2011.
[2] 單立志.基于FMI的實時仿真應用研究[D].北方工業大學,2012.