浦樂,王西超,楊藝
1.中國空空導彈研究院,河南洛陽471000
2.上海電機學院電氣學院,上海201306
3.江蘇理工學院,江蘇常州213000
空空導彈系統(tǒng)是一個涉及機械、控制、電子、液壓和軟件等多種領域的復雜大系統(tǒng)[1,2]。傳統(tǒng)的空空導彈設計方法是一種文檔驅動式設計方法,主要包括系統(tǒng)方案設計、系統(tǒng)詳細設計、系統(tǒng)軟硬件聯(lián)調、系統(tǒng)驗證分析等多個步驟。隨著航空技術的發(fā)展,當前空空導彈設計方法轉變?yōu)榛谖臋n和數字化模型混合的設計方法,但其本質上還是文檔驅動式的設計方法。該方法各階段的設計成果均為文字、圖表等文檔,導致在各階段之間傳遞的信息也是各種文檔,造成了設計方案表達不充分、信息表達的二義性、領域設計之間存在鴻溝、文檔的不可執(zhí)行性以及軟件測試工作量大等缺點。近年來,基于模型的系統(tǒng)工程(MBSE)技術越來越得到工業(yè)界的認可[3-5],MBSE 是系統(tǒng)設計工作通過數字化設計手段的實現,因此在工作流程上與傳統(tǒng)系統(tǒng)工程并無太大差異,仍然分為需求分析、系統(tǒng)分析、系統(tǒng)設計三個步驟[6-8]。MBSE與傳統(tǒng)系統(tǒng)工程方法主要的區(qū)別是利用模型代替?zhèn)鹘y(tǒng)的文檔方式,模型具有的唯一性和可執(zhí)行性是其最大的特點。基于此,本文引入基于SysML的系統(tǒng)架構建模方法[9,10],在方案設計階段利用基于MBSE的設計方法對空空導彈系統(tǒng)架構進行建模,并對不同系統(tǒng)架構進行仿真分析,最終獲得最優(yōu)系統(tǒng)架構,實現在方案論證階段減少甚至消除設計中的邏輯錯誤,避免到設計后期才發(fā)現由于邏輯錯誤而造成循環(huán)設計[11-13]。
本文展開基于MBSE 的空空導彈系統(tǒng)架構設計工作。從需求分析和用例出發(fā),利用RHAPSODY 建模工具,基于MBSE 方法和SysML建模語言,對空空導彈系統(tǒng)架構進行建模與仿真,主要包括基于SysML 的需求分析、系統(tǒng)分析和系統(tǒng)設計三個部分,最終實現在空空導彈系統(tǒng)方案設計階段對其架構進行仿真,獲得最優(yōu)系統(tǒng)架構。
該階段目的是將軍方原始需求轉化為系統(tǒng)需求,同時依據需求定義空空導彈用例,詳細描述系統(tǒng)的行為,主要通過SysML的需求圖和用例圖表達。
該階段主要是把系統(tǒng)需求分解為功能性需求和非功能性需求,同時將系統(tǒng)功能性需求轉化為若干個可執(zhí)行模型,利用SysML 的順序圖、活動圖和狀態(tài)來實現每一個用例的分析。
該階段分為架構分析與架構設計兩個階段。架構分析階段是利用順序圖、活動圖和狀態(tài)圖對不同的系統(tǒng)架構進行評估分析,獲得最佳系統(tǒng)架構。架構設計階段功能性需求分配到系統(tǒng)架構的結構中,從而完成系統(tǒng)設計。
需求分析是指對空空導彈進行詳細的分析,弄清楚空空導彈的戰(zhàn)術要求,包括需要輸入什么命令、什么數據,最后應該輸出什么、做出什么機動動作。具體的需求分析包括功能需求、性能需求、接口需求和約束需求等。首先將DOORS中條目化的軍方需求和量化的性能需求逐條轉化為SysML的需求圖,使得每條細化后的需求都能夠以用例圖來進行動態(tài)行為分析。需求模型的功能主要是將軍方提出的戰(zhàn)術需求轉換為系統(tǒng)需求,軍方需求是以自然語言表達的,如飛行速度達到馬赫數5等,其中系統(tǒng)需求的表達形式要符合空空導彈領域專業(yè)術語規(guī)范。需求模型既包含軍方對空空導彈提出的各種需求,如空空導彈的功能需求和非功能性需求等,還包含相關的空空導彈設計規(guī)范和空空導彈設計相關的國軍標。SysML設計的空空導彈需求模型可以逐層分解為多個具體的需求圖,圖1為其中一幅空空導彈需求圖,圖中軍方需求ID 用“ARMY”開頭,系統(tǒng)需求ID 用“SYS”開頭。其中“ARMY_GJB1”和“ARMY_GJB2”表示相關的國軍標軍方需求,其余的9個需求均是由這兩個軍方需求進行內部具體分析獲得。“<<trace>>”由系統(tǒng)需求指向軍方需求,表示該系統(tǒng)需求是由所連接的軍方需求進一步分析獲得。另外要注意的是,軍方需求和系統(tǒng)需求不是一一對應的關系,如系統(tǒng)需求“SYS4”是由兩個軍方需求共同具體分析后獲得的,系統(tǒng)需求本身之間也存在層次性關聯(lián),如系統(tǒng)需求“SYS2.1”和“SYS2.2”均是由“SYS2”進一步細化而來。
系統(tǒng)分析主要運用SysML 的行為圖,包括用例圖、活動圖、狀態(tài)圖和順序圖。其中用例圖用來描述系統(tǒng)的功能性需求行為,并確定系統(tǒng)邊界和參與者;活動圖描述系統(tǒng)的工作流程;狀態(tài)圖描述單個對象的內部狀態(tài)變化;順序圖描述不同對象之間的順序交互。
圖1 空空導彈頂層需求圖Fig.1 Requirements diagram of air-to-air missile
在軍方需求模型設計完成后,空空導彈設計師需要將需求模型分為功能性需求和非功能性需求,其中功能性需求主要包含空空導彈本身需要做的事情以及軍方期望空空導彈將來要做的事情。非功能性需求主要包含空空導彈的性能、可靠性和安全性等。其中,功能性需求能夠使用用例圖進行建模。空空導彈用例模型建模的基本方法是:首先依據功能性需求劃定空空導彈系統(tǒng)邊界,然后根據空空導彈的典型使用方式挖掘出在系統(tǒng)邊界以外直接與空空導彈進行交互的各種參與者,最后針對功能性需求所期望的空空導彈應該提供的每一項功能定義一個用例。圖2為空空導彈主用例圖,主要包含初制導、中制導、末制導、彈道解算和攻擊區(qū)解算5個子用例。彈道解算用于實時解算攻擊過程中被攻擊目標的位置、速度和姿態(tài)信息,初制導、中制導和末制導均包含彈道解算用例;攻擊區(qū)計算用例是計算空空導彈的攻擊覆蓋范圍,其方法是利用空空導彈載機和被攻擊目標的相對態(tài)勢進行計算,根據計算結果判斷空空導彈是否滿足發(fā)射條件,初制導包含攻擊區(qū)計算用例。
按照以上方法,對每個功能性需求都進行層次性的用例分解,直至將所有的功能性需求全部用相關用例表達出來,完成空空導彈的需求分析。圖3 對導彈典型飛行狀態(tài)進行系統(tǒng)分析,獲得傳感器、制導計算機、飛控計算機、發(fā)動機和空空導彈本體這五者之間的順序交互行為,慣導等多種傳感器將采集到的空空導彈飛行狀態(tài)信息發(fā)送給制導計算機,制導計算機依據導彈飛行狀態(tài)進行制導律解算,并發(fā)送制導指令給飛控計算機,飛控計算機依據制導指令向發(fā)動機和導彈本體的執(zhí)行部件發(fā)送發(fā)動機控制命令和姿態(tài)控制命令。
圖2 空空導彈頂層用例圖Fig.2 Use case diagram of air to air missile
圖3 空空導彈飛行狀態(tài)順序圖Fig.3 Sequence diagram of air-to-air missile
至此,經系統(tǒng)分析可以得到空空導彈系統(tǒng)的外圍參與者,交互對象傳感器、制導計算機、飛控計算機、發(fā)動機和空空導彈本體模塊的部分輸入輸出事件、屬性、操作、狀態(tài)以及模塊間的事件、數據傳遞等信息均已獲得。
系統(tǒng)設計依照特定的系統(tǒng)設計邏輯方法,完成系統(tǒng)功能、結構設計,以及參數化表征,即對上述系統(tǒng)分析獲得的系統(tǒng)信息,設計空空導彈架構模型,包括靜態(tài)結構建模、動態(tài)行為建模以及約束關系建模三個部分。
其中靜態(tài)結構模型由包圖、塊定義圖、對象圖、內部塊圖構成。包圖的主要功能是對SysML 的各種圖按性質進行分類;塊定義圖顯示了使用“塊”的組件進行系統(tǒng)靜態(tài)結構建模的基本構成,這些組件可以通過接口與其他組件進行連接,“塊”可以代表硬件,也可以代表軟件,還可以代表其他類型的組件;內部塊圖則是顯示組件內部的組成,其中連接器顯示內部“零件”如何連接到外部接口以及彼此之間是如何連接的;對象圖是組成系統(tǒng)的各個“塊”的實例化模型,可以進行仿真運行。圖4 給出了由塊定義圖建模的空空導彈靜態(tài)結構模型,空空導彈模型(AtAM)由制導系統(tǒng)模型(Guidance)、控制系統(tǒng)模型(Control)、傳感器模型(Sensor)、推力系統(tǒng)模型(Thrust)和導引頭模型(Seeker)構成。塊定義圖采用自頂向下的分解模式,將空空導彈的功能分解到不同的子系統(tǒng),各個子系統(tǒng)分別進行建模,子系統(tǒng)間通過接口進行數據和信息的傳遞。
圖4 空空導彈靜態(tài)結構模型Fig.4 Static structure model of air-to-air missile
動態(tài)行為模型由順序圖、狀態(tài)圖和活動圖組成,其中順序圖用來描述組成空空導彈的各個組件之間的交互順序;活動圖是整個空空導彈各個組件間的功能流程;活動圖用來描述單個組件內部的狀態(tài)變化。狀態(tài)圖是描述一個對象基于事件或者守衛(wèi)條件反應的動態(tài)變化行為,描述了對象自身是如何依據當前狀態(tài)對不同條件和不同事件做出反應的。
圖5 為空空導彈典型作戰(zhàn)過程狀態(tài)圖描述,將整個導彈作戰(zhàn)過程分解為隨載機飛行、導彈加電、自檢、對準、準備、發(fā)射、自主飛行和擊中目標8 個狀態(tài),各個狀態(tài)間以飛行員操作、載機飛行參數條件和導彈自身狀態(tài)作為狀態(tài)遷移條件,建立空空導彈典型作戰(zhàn)過程描述。
圖5 空空導彈動態(tài)行為模型Fig.5 Dynamic behavior model of air to air missile
空空導彈的約束關系眾多,如彈體、制導設備、導引頭等部件之間的質量約束關系,空空導彈氣動力、空氣阻力間的約束關系等,約束關系建模由需求圖和simulink擴展圖構成。參數圖是SysML的一種內部塊圖,描述了“塊”及其內部屬性和零件之間的約束關系,參數圖描述了一種系統(tǒng)結構參數的變化如何影響其他結構參數的變化。圖6為空空導彈力和力矩的參數約束關系模型,空空導彈模塊的各個屬性通過約束參數端口傳遞給約束屬性模塊(Constrant Property),圖中“Fxyz_and_Txyz”約束屬性模塊表示空間三軸方向上的力和力矩計算;“DynamicModel”約束屬性模塊表示空空導彈所受力、力矩與線速度、角速度之間的約束關系。
系統(tǒng)驗證主要為經過靜態(tài)結構圖、動態(tài)行為圖和參數圖的協(xié)同仿真,驗證系統(tǒng)設計是否滿足需求。圖7為“自主飛行”狀態(tài)的仿真圖,可以看出RHAPSODY中“AutoFlight”模態(tài)變?yōu)榧t色,表明目前空空導彈狀態(tài)為“自主飛行”狀態(tài),滿足設計要求。
圖6 空空導彈參數圖Fig.6 Parameter diagram of air to air missile
圖7 自主飛行狀態(tài)驗證Fig.7 Autonomous flight status verification
本文采用MBSE 和SysML 對空空導彈系統(tǒng)進行可視化建模,通過SysML 的需求圖、用例圖、塊定義圖、內部塊圖、順序圖、狀態(tài)圖和參數圖對空空導彈的軍方需求、架構模型和約束關系進行了分析。建立了空空導彈從隨載機飛行到擊中目標全過程的狀態(tài)遷移模型,并結合參數約束關系模型,實現了空空導彈架構離散狀態(tài)行為和連續(xù)動態(tài)行為的完整描述。應用實例表明,利用SysML 是實現MBSE方法的最優(yōu)選擇,并可有效提高空空導彈系統(tǒng)開發(fā)的進度與質量。