韋彩色,王新堯,陳紀(jì)磊,陶 江
(1.國營長虹機械廠,廣西桂林 541003;2.南京航空航天大學(xué)航天學(xué)院,江蘇南京 210016;3.中航工業(yè)集團沈陽飛機設(shè)計研究所,遼寧沈陽 110035)
隨著未來新作戰(zhàn)模式的出現(xiàn)和發(fā)展,對飛行器管理系統(tǒng)的功能和性能提出更高要求。為滿足當(dāng)前和未來飛行器的研制能力要求,以及響應(yīng)我國啟動的“飛機數(shù)字化工程”,需要建立飛行器管理系統(tǒng)各分系統(tǒng)的數(shù)字化模型,為將來在全數(shù)字化仿真環(huán)境中提供在功能、性能上與部件的物理樣機一一對應(yīng)的虛擬模型,以實現(xiàn)在各分系統(tǒng)部件未制造之前,即可驗證系統(tǒng)的功能及性能等指標(biāo)。飛行器管理系統(tǒng)大致分為感知層、執(zhí)行層和決策層[1],其中,感知層是決策層和執(zhí)行層進行正確控制的判斷依據(jù),是飛行器管理系統(tǒng)不可或缺的一部分。
感知層包含有綜合光電傳感器、綜合射頻傳感器、微型傳感器、慣性傳感器等,可見,飛行器管理系統(tǒng)傳感器是一類涉及電、磁、光、力等多學(xué)科領(lǐng)域的部件,且種類繁多。此外,飛行器管理系統(tǒng)的傳感器還存在以下特點:①易受外部環(huán)境因素的干擾;②具有自檢測功能;③容錯重構(gòu),即余度設(shè)計。
目前,涉及傳感器建模仿真的文章有:文獻[2-6]根據(jù)傳感器的數(shù)學(xué)模型,基于MATLAB/Simulink建立對應(yīng)的仿真模型,輸出響應(yīng)曲線,對傳感器的特性進行測試分析。文獻[7-12]基于有限元分析法,通過ANSYS等軟件建模仿真來研究某元素變化對傳感器特征的影響,以分析出傳感器最優(yōu)的設(shè)計結(jié)構(gòu)。文獻[13-15]應(yīng)用模擬硬件描述語言Verilog-A對傳感器進行行為建模,并通過理論分析與CadenceSpectre仿真得到證明和驗證。文獻[16-18]在PSPICE仿真器中建立傳感器模型,通過仿真分析傳感器的性能指標(biāo)。
上述文獻所建的傳感器模型一定程度上具有較高的仿真度,但模型仿真中少有考慮傳感器受到的外部環(huán)境干擾,或僅考慮單一環(huán)境影響;也無法模擬傳感器出現(xiàn)故障的工作狀態(tài)。此外,針對機載傳感器的余度設(shè)計要求,上述文獻提出的傳感器建模仿真方法均難以滿足,且缺少擴展性。而2007年國際系統(tǒng)工程學(xué)會(International Council on Systems Engineering,INCOSE)聯(lián)合對象管理組織(Object Management Group,OMG)在SysML的建模工具與專業(yè)分析軟件如FEA、CAD等進行集成的建模平臺中,提出的“基于模型的系統(tǒng)工程(Model Based System Engineering,MBSE)”的整體解決方案為建立在功能、性能等特征與真實機載傳感器一一對應(yīng)的數(shù)字化模型提供了可能。
為此,本文從飛行器管理系統(tǒng)的頂層架構(gòu)出發(fā),結(jié)合底層設(shè)計,提出一種基于SysML與MATLAB/Simulink對飛行器管理系統(tǒng)傳感器進行建模與集成仿真的方法。該方法應(yīng)用SysML構(gòu)建飛行器管理系統(tǒng)的整體架構(gòu),并逐層細(xì)化,給出系統(tǒng)感應(yīng)層中具體傳感器的頂層的、全面的描述;基于Simulink建立傳感器的底層模型,解決目前SysML無法對復(fù)雜的連續(xù)動態(tài)行為進行描述的問題。結(jié)合建模工具底層代碼互通性的特點,將不同層級模型集成,實現(xiàn)協(xié)同仿真。
本文選用Rational Rhapsody作為支持SysML的建模工具。頂層建模是指拋卻物體的具體物理實體,對其進行抽象,僅基于功能-行為-結(jié)構(gòu)(Function-Behavior-Structure,F(xiàn)BS[19])來模擬物體的建模技術(shù)。在FBS框架下,系統(tǒng)頂層建模流程如圖1所示。分析系統(tǒng)需求得出對應(yīng)系統(tǒng)的功能,并細(xì)化到能實現(xiàn)的功能單元;根據(jù)系統(tǒng)的功能單元,逐步確定系統(tǒng)的行為,直到行為能夠全部實現(xiàn)系統(tǒng)功能為止;最后確定系統(tǒng)的靜態(tài)結(jié)構(gòu)。
圖1 系統(tǒng)頂層建模流程圖
飛行器管理系統(tǒng)傳感器主要是通過感應(yīng)飛行器的相關(guān)狀態(tài),向綜合處理器、數(shù)據(jù)記錄分系統(tǒng)等其它子系統(tǒng)傳遞飛行姿態(tài)、位置、溫度等參數(shù)信息。因此,傳感器與這些分系統(tǒng)之間存在信息交互,同時通過電源模塊供電。
1)確定系統(tǒng)功能單元。通過創(chuàng)建用例模型來替代基于文字的功能性需求,而用例模型的基本組成元素為用例(Use Case)和參與者(Actor)[20]。因此,需要根據(jù)系統(tǒng)需求首先確定對應(yīng)的用例以及參與者。
2)描述系統(tǒng)行為過程。由于用例只是表示系統(tǒng)將會執(zhí)行的一種行為,而不說明如何實現(xiàn),本文先用活動圖來詳細(xì)地描述用例對應(yīng)的功能流,從而比較直觀地觀察到傳感器與其它子系統(tǒng)之間的交互關(guān)系,并更加方便推導(dǎo)出傳感器本身應(yīng)有的屬性和一些基本操作。等構(gòu)建系統(tǒng)靜態(tài)結(jié)構(gòu)之后,再通過狀態(tài)圖對模型進行仿真驗證。
3)構(gòu)建系統(tǒng)靜態(tài)結(jié)構(gòu)。根據(jù)活動圖,采用模塊定義圖來構(gòu)建傳感器在飛行器管理系統(tǒng)中與其它子系統(tǒng)之間的相互關(guān)聯(lián)特點的靜態(tài)結(jié)構(gòu)模型,定義傳感器的屬性與操作。
最后基于系統(tǒng)的靜態(tài)結(jié)構(gòu),創(chuàng)建傳感器的狀態(tài)圖進行仿真驗證。
由于目前SysML建模語言的參數(shù)圖只能描述簡單的連續(xù)動態(tài)行為,無法對復(fù)雜的連續(xù)動態(tài)行為進行建模。本文借助常用的仿真工具——MATLAB/Simulink對傳感器進行底層建模。因此,需要將不同層級模型集成起來,實現(xiàn)協(xié)同仿真。集成原意是指一些孤立的事物或者元素通過某種方式改變原有的分散狀態(tài)集中在一起,產(chǎn)生聯(lián)系,從而構(gòu)成一個有機整體的過程。本文的“集成”是指存在于不同專用仿真軟件中不同層級、不同領(lǐng)域的模型,通過某種方法聯(lián)合起來,從而構(gòu)成一個整體模型的過程。
目前,在不同建模工具上所建的不同層級、不同領(lǐng)域模型的聯(lián)合仿真技術(shù)有:文獻[21]通過S函數(shù)將AMESim模型連接到Simulink模型當(dāng)中。文獻[22]則采用PSpice SPLS接口將PSpice模型嵌入到Simulink模型當(dāng)中。文獻[23,24]通過相應(yīng)接口實現(xiàn)不同模型之間進行實時數(shù)據(jù)交互功能。
本文選用Rhapsody作為SysML建模語言的運行環(huán)境。根據(jù)上述文獻所采用的聯(lián)合仿真技術(shù),基于Rhapsody運行工具,SysML模型與Simulink模型集成仿真可以通過以下兩種方法:
1)SysML模型集成到Simulink模型中。首先在MATLAB中編寫Cmax-sfunction函數(shù),使進行集成仿真時,可以接收SysML模型發(fā)出的信息指令,再將相關(guān)信息轉(zhuǎn)發(fā)給Simulink模型,從而實現(xiàn)了兩個不同模型的集成仿真。
2)Simulink模型導(dǎo)入到SysML模型中[25]。由于Rhapsody工具具有“模型-代碼動態(tài)關(guān)聯(lián)”的特性以及“代碼自動生成”的特點,Simulink的Simulink Coder工具箱提供了將系統(tǒng)模型轉(zhuǎn)換為可優(yōu)化的嵌入式C/C++底層代碼的功能,且SysML建模語言通過添加配置文件(SysML profile)為相應(yīng)模型實現(xiàn)擴展機制[26]。因此,這為Simulink模型與SysML模型能夠?qū)崿F(xiàn)集成仿真奠定了基礎(chǔ)。首先重新設(shè)置Simulink模型的“Configuration Parameters”,點擊“Build model”生成含有底層代碼的rtw文件;然后將在Rhapsody中描述系統(tǒng)連續(xù)動態(tài)行為模塊的“stereotype”設(shè)置成“SimulinkBlock”類型,導(dǎo)入“MATLAB.exe”,Simulink模型“.mdl”以及rtw文件中的模型代碼。從而實現(xiàn)了SysML模型與Simulink模型的集成。該集成方法的原理圖如圖2所示。
圖2 Simulink模型與SysML模型的集成原理圖
由于飛行器管理系統(tǒng)包含多種功能的傳感器,而且在其中不僅僅只包含傳感器子系統(tǒng),還包含其它子系統(tǒng),比如飛行控制系統(tǒng)、執(zhí)行機構(gòu)等??紤]到后續(xù)還對飛行器管理系統(tǒng)中的其它類型傳感器以及其它子系統(tǒng)進行建模仿真,而MATLAB中Stateflow目前只能模擬單個對象的狀態(tài)切換,不能實現(xiàn)多個對象之間的狀態(tài)轉(zhuǎn)換。
為了使已建的模型具有重用性、可擴展性,因此,本課題擬采用第二種集成方法來實現(xiàn)飛行器管理系統(tǒng)傳感器不同層級模型的集成。
飛行器管理系統(tǒng)的傳感器具有以下特點:①種類繁多;②易受外部環(huán)境因素的干擾;③具有自檢測功能;④容錯重構(gòu)。因此,對飛行器管理系統(tǒng)傳感器進行建模應(yīng)該包含有:
1)傳感器物理部件建模:通過對傳感器的結(jié)構(gòu)、工作原理等進行機理分析,建立傳感器模型粒度盡可能小的數(shù)學(xué)模型,以充分體現(xiàn)傳感器的物理部件特性;
2)環(huán)境影響因素建模:需要考慮摩擦力、機體振動、磁場環(huán)境、溫度等環(huán)境因素對傳感器的影響,在傳感器物理部件模型基礎(chǔ)上添加相應(yīng)的環(huán)境影響因素模型,提高傳感器模型的仿真度;
3)不同工作狀態(tài)建模:模擬真實傳感器的工作狀態(tài),包含正常狀態(tài)和故障狀態(tài);并且具有自檢測功能,能夠描述一些常見故障模式;
4)余度設(shè)計:模型要體現(xiàn)系統(tǒng)的可靠性。
根據(jù)飛行器管理系統(tǒng)傳感器的功能需求,其用例模型中的用例主要有兩個:1)正常檢測信號;2)故障檢測與管理,其中故障檢測與管理用例又分為啟動時故障檢測與管理(即自檢測)、工作過程中故障檢測與管理;與這些用例相關(guān)聯(lián)的參與者主要是被測對象、飛行器管理系統(tǒng)以及維修人員。得到相應(yīng)的飛行器管理系統(tǒng)傳感器用例模型視圖如圖3所示。
圖3 飛行器管理系統(tǒng)傳感器的用例模型視圖
基于SySML中ActionPin(行動釘)的思想,即建立屬性標(biāo)簽steretyped ActorPin(角色釘),捕捉一個行動在其所在環(huán)境中的交互行為。利用活動圖來描述飛行器管理系統(tǒng)傳感器用例所對應(yīng)的功能流,如圖4所示為啟動時傳感器故障檢測與管理用例的功能流。
圖4 啟動時故障檢測與管理用例的活動圖
應(yīng)用模塊定義圖建立系統(tǒng)相關(guān)需求的靜態(tài)結(jié)構(gòu)模型。如圖5所示為飛行器管理系統(tǒng)中傳感器與系統(tǒng)綜合處理器的頂層架構(gòu)。圖5中左側(cè)的兩個模塊分別代表了LVDT位移傳感器和MEMS傳感器的頂層框架,在模塊中分別定義對應(yīng)傳感器的屬性參數(shù),包括輸入信號、輸出信號以及傳感器內(nèi)各部件的相關(guān)參數(shù);同時也定義了傳感器的離散狀態(tài)行為,包括事件指令、操作函數(shù)。屬性參數(shù)表征傳感器真實部件的結(jié)構(gòu)尺寸或其它屬性的大小,通過修改部件的相關(guān)屬性參數(shù)值,可以獲得不同結(jié)構(gòu)、不同性能的傳感器;通過執(zhí)行操作函數(shù)可以修改傳感器相關(guān)屬性的參數(shù)值;通過事件指令可以觸發(fā)傳感器狀態(tài)之間的切換,因此可模擬傳感器由于某種因素從正常狀態(tài)切換到故障狀態(tài)的行為。本文只對系統(tǒng)中兩個傳感器進行建模,其它傳感器可在圖5中進行添加擴展。
圖5 傳感器與系統(tǒng)綜合處理器的頂層架構(gòu)
另外,針對機載傳感器具有容錯重構(gòu)的特點,且其余度設(shè)置一般為雙余度或者三余度。因此,LVDT位移傳感器的雙余度模型和MEMS傳感器的三余度模型如圖6所示。
圖6 傳感器余度設(shè)計視圖
完成傳感器的靜態(tài)結(jié)構(gòu)建模之后,用狀態(tài)機圖模擬仿真?zhèn)鞲衅鞯碾x散動態(tài)行為,如圖7所示為MEMS傳感器的離散動態(tài)行為模型。模型中間通過虛線分開形成兩種主并發(fā)狀態(tài):“state1”和“state2”?!皊tate1”描述的是傳感器的兩種基本運行狀態(tài),即關(guān)機狀態(tài)和工作狀態(tài);默認(rèn)情況下,傳感器處于關(guān)機狀態(tài);當(dāng)發(fā)送“evstart”事件指令時,傳感器首先進行自檢狀態(tài),若無部件發(fā)生故障,切換為“on”正常工作狀態(tài),此時“setup”函數(shù)為傳感器的相關(guān)屬性參數(shù)賦值,否則停止工作;此外,處于工作狀態(tài)的傳感器可通過函數(shù)將檢測信號發(fā)送給飛行器管理系統(tǒng)中的其它子系統(tǒng);當(dāng)執(zhí)行“evoff”事件指令時,傳感器從工作狀態(tài)切換到關(guān)閉狀態(tài)?!皊tate2”實現(xiàn)對傳感器的故障模式進行建模,默認(rèn)傳感器為正常狀態(tài);當(dāng)注入故障事件時,傳感器發(fā)生故障,從正常狀態(tài)切換為故障狀態(tài)。飛行器管理系統(tǒng)傳感器發(fā)生故障有很多原因,不同傳感器發(fā)生故障的原因也不盡相同。
圖7 MEMS陀螺儀的離散狀態(tài)行為模型
針對傳感器的連續(xù)動態(tài)行為,本文將應(yīng)用Simulink工具對其進行描述,同時在連續(xù)動態(tài)行為模型中考慮傳感器在飛行器中可能受到的外部影響因素。以MEMS陀螺儀為實例。
首先對MEMS陀螺儀進行機理分析。MEMS陀螺儀采用高頻諧振結(jié)構(gòu),一般由梳子狀驅(qū)動機構(gòu)和電容極板構(gòu)成的傳感結(jié)構(gòu)組成。驅(qū)動機構(gòu)迫使物體做徑向的運動,橫向的電容板用來檢測由于橫向科里奧利運動引起的電容變化。因為科式力和角速度成比例關(guān)系,進而可以推算出角速度,從而達到測量角速度的目的。如圖8所示為MEMS陀螺儀的簡化動力學(xué)模型[27]。
由此,得出對應(yīng)的MEMS陀螺儀的兩自由度剛體的運動表達式如下
(1)
y方向的位移將會引起檢測電容極板間距離的變化,從而引起電容發(fā)生變化,再添加檢測電路,最終通過輸出電壓,檢測電容的變化,從而可以檢測到角速率。其中電容與位移y之間的關(guān)系由電容的定義給出
(2)
(3)
對應(yīng)的輸出電壓則為
(4)
MEMS陀螺儀在工作過程中,會受到外部環(huán)境的影響。根據(jù)MEMS陀螺儀的工作原理,其中對其影響最大的環(huán)境因素是機體振動。機體振動會迫使驅(qū)動質(zhì)量發(fā)生位移,引起檢測電容發(fā)生變化,從而導(dǎo)致MEMS陀螺儀的輸出信號有誤差。因此,在接下來所建的SIMULINK模型中,機體振動將跟驅(qū)動力F-Drive一起作用于驅(qū)動質(zhì)量,來體現(xiàn)機體振動對傳感器的影響。
此外,在使用MEMS陀螺儀過程中難免會因某種原因而出現(xiàn)故障,主要有:激勵電源過大、機體振動過大、使用時長達到壽命周期、過載等。
基于上述的機理分析,在Simulink工具上對MEMS陀螺儀進行連續(xù)動態(tài)行為建模,得出其Simulink模型如圖9所示。圖中,考慮了機體振動對MEMS陀螺儀的影響,根據(jù)實際中機體振動對MEMS陀螺儀產(chǎn)生影響的特點,本文擬在Simulink中用Uniform Random Number模塊生成均勻的隨機數(shù)來模擬機體振動所產(chǎn)生對應(yīng)的干擾力,同驅(qū)動力F-Drive一起輸入到仿真模型中。
圖9 MEMS陀螺儀的Simulink模型
圖中:
“Ω”是待測角速度的接口;
“F-Drive”是驅(qū)動部分中驅(qū)動力的接口;
“mx、cx、kx”分別表示MEMS陀螺儀驅(qū)動部分的驅(qū)動質(zhì)量、阻尼力系數(shù)和彈性系數(shù);
“my、cy、ky”分別是MEMS陀螺儀檢測部分的感應(yīng)質(zhì)量、阻尼力系數(shù)和彈性系數(shù);
“d0”表示電容極板間距;
“VDC”表示感應(yīng)質(zhì)量塊位移的檢測電路的激勵電壓的接口;
“Out”表示MEMS陀螺儀的輸出信號接口。
根據(jù)SysML模型與Simulink模型集成的第二種方法,先重新設(shè)置Simulink模型的Configuration Parameters,啟動模型編譯“Build model”生成模型對應(yīng)的rtw文件,生成的rtw文件中所包含的底層代碼具體如下圖10所示:
圖10 rtw文件包含底層代碼的示意圖
再將底層代碼導(dǎo)入SysML模型,得到圖11中右邊模塊。此時,該模塊代替main函數(shù),來調(diào)用Simulink模型,從而實現(xiàn)了SysML模型與Simulink模型的集成仿真。另外,為實現(xiàn)兩個模塊數(shù)據(jù)之間無縫傳輸,需要傳遞的屬性參數(shù)的數(shù)據(jù)類型一致。
圖11 SysML模型與Simulink模型的集成結(jié)構(gòu)示意圖
給上述MEMS陀螺儀模型的相關(guān)屬性參數(shù)賦值,并進行仿真,得到模型的輸出電壓信號曲線如圖12所示。圖中,藍(lán)色曲線表示不考慮環(huán)境因素影響下模型的輸出曲線,紅色曲線表示在考慮機體振動干擾下MEMS陀螺儀模型的輸出曲線。圖13所示為MEMS陀螺儀正常工作時的狀態(tài)圖。當(dāng)MEMS陀螺儀發(fā)生故障的條件滿足時,則其從正常狀態(tài)切換為故障狀態(tài),并通過OPORT函數(shù)調(diào)用下個余度傳感器。如圖14表示的是:傳感器由于激勵電源過大,從而突發(fā)故障。其正確地模擬了真實傳感器的狀態(tài)邏輯關(guān)系。
圖12 在不同條件下MEMS陀螺儀模型的輸出信號曲線圖
圖13 MEMS陀螺儀正常工作狀態(tài)圖
圖14 MEMS陀螺儀突發(fā)故障狀態(tài)切換圖
本文基于MBSE思想,提出一種高度還原飛行器管理系統(tǒng)傳感器特性的建模方法,并給出建模步驟?;赟ysML構(gòu)建飛行器管理系統(tǒng)傳感器與其它子系統(tǒng)的頂層結(jié)構(gòu),并實現(xiàn)了對傳感器的物理部件、不同工作狀態(tài)、余度設(shè)計等特性進行建模;借助Simulink工具對傳感器的連續(xù)狀態(tài)行為建模,模型中考慮了環(huán)境影響因素;研究了SysML模型與Simulink模型的集成仿真技術(shù);最后,以MEMS陀螺儀傳感器為實例,在機理分析的指導(dǎo)下建模,并集成仿真驗證。通過仿真,驗證了所建的傳感器模型輸出信號曲線的真實性、狀態(tài)邏輯的準(zhǔn)確性;提高了飛行器管理系統(tǒng)傳感器模型的仿真度。結(jié)果表明,該方法不僅實現(xiàn)描述傳感器的不同工作狀態(tài),而且對余度設(shè)計進行了模擬,模型中還考慮了環(huán)境影響因素。