黃 成,孫茂義
(中國人民解放軍91550部隊,遼寧 大連 116023)
姿態(tài)控制系統(tǒng)是影響運載火箭或?qū)楋w行成敗的關(guān)鍵系統(tǒng)之一,姿態(tài)控制精度直接影響飛行器入軌精度和落點命中精度。在運載火箭或?qū)椢淦飨到y(tǒng)型號研制及鑒定過程中,需要建立具備姿態(tài)控制系統(tǒng)控制律設(shè)計、系統(tǒng)頻域分析和時序仿真等功能的姿態(tài)控制系統(tǒng)仿真平臺,對姿態(tài)控制系統(tǒng)總體方案進行閉合論證,對導(dǎo)彈飛行過程穩(wěn)定性進行評估。目前傳統(tǒng)姿態(tài)控制系統(tǒng)仿真平臺設(shè)計時,多采用順序編程方式實現(xiàn),該方式下建立的仿真平臺的直觀性、操作性和通用性均有所欠缺,在型號姿態(tài)控制系統(tǒng)構(gòu)型變化時系統(tǒng)移值性較差。
仿真軟件是姿態(tài)控制系統(tǒng)仿真的靈魂[1]。國內(nèi)外均建立了通用性較好的仿真軟件平臺,開展航空航天領(lǐng)域仿真軟件研發(fā)。SDP是基于C++研發(fā)的開放型系統(tǒng)[2],通過人機界面方便用戶調(diào)度元推理機,提供了與大型數(shù)據(jù)庫互訪的接口,利用軟件的圖形支撐軟件可對AutoCAD、IDEAS等造型軟件進行二次開發(fā)。清華大學(xué)基于HLA開發(fā)了SISP一體化支撐平臺,利用該軟件用戶只需要讀取對象模型信息和模型交互信息及配置參數(shù),即可建立飛行器仿真軟件。飛思技術(shù)團隊研發(fā)的FlightSim軟件,基于工具和模型的科學(xué)計算平臺,在底層解釋語言和計算引擎的基礎(chǔ)上,封裝了專業(yè)設(shè)計工具和計算模型,提供工具與模型之間的相互調(diào)用機制,為特定的設(shè)計仿真任務(wù)提供一體化的解決方案。國防科技大學(xué)研發(fā)的YHSIM一體化實時仿真軟件[3-4],主要由YHSIM程序、數(shù)據(jù)文件和外部C代碼三部分組成,用戶將自己編寫的C代碼加入到程序中,即可編譯鏈接成可執(zhí)行文件。這些仿真平臺功能多,通用性強,且不限于控制系統(tǒng)仿真,要求用戶具有比較高的專業(yè)知識,且模塊接口相對封閉[5]。由于在型號預(yù)發(fā)展階段和方案論證階段,姿態(tài)控制系統(tǒng)構(gòu)型、系統(tǒng)參數(shù)等可能頻繁變化,上述仿真平臺難以滿足方案快速閉合論證的需求,也難以滿足與型號研制同步開展鑒定技術(shù)研究的要求,為此需研究更加切合用戶使用需求的控制系統(tǒng)仿真平臺設(shè)計方法。
本文基于姿態(tài)控制系統(tǒng)構(gòu)型、系統(tǒng)參數(shù)等可能頻繁變化的情況,提出了一種基于圖形組態(tài)的姿態(tài)控制系統(tǒng)仿真平臺設(shè)計方法,該系統(tǒng)基于模塊化、層次化和圖態(tài)化的設(shè)計思想,建立圖形組態(tài)建模環(huán)境,基于鄰域矩陣樹搜索算法實現(xiàn)系統(tǒng)分隔和仿真排序,基于靜態(tài)模型庫中基礎(chǔ)模塊進行控制系統(tǒng)三通道可視化建模,可實現(xiàn)不同構(gòu)型下的姿態(tài)控制系統(tǒng)快速構(gòu)建。
圖形組態(tài)仿真軟件[6]主要包含框圖類、仿真計算類。框圖類又包含組件框圖類和組件連線類,組件框圖類內(nèi)部封裝了模塊的功能函數(shù)和屬性參數(shù),組件連線類用于連接各模塊之間輸入和輸出。仿真計算類功能是完成仿真軟件的仿真計算和結(jié)果輸出。
圖形組態(tài)仿真軟件設(shè)計中,需要將仿真對象功能模塊添加到工作區(qū)中,然后利用連線將各功能模塊的輸入和輸出連接到一起,待設(shè)置完成仿真步長、采樣步長、仿真時間、仿真算法等模塊初始參數(shù)后,對仿真系統(tǒng)進行模塊分隔和排序,確定模塊計算順序后,點擊仿真開始按鈕,即可完成系統(tǒng)仿真。
姿態(tài)控制系統(tǒng)仿真平臺主要用于完成運載火箭或?qū)椫鲃佣物w行的仿真計算,實現(xiàn)六自由度綜合仿真,具體功能包括:彈體姿態(tài)運動建模、彈性振動建模、速率陀螺建模、平臺建模、伺服機構(gòu)建模、模型辨識、連續(xù)模型離散化、控制律設(shè)計、時/頻域特性分析、增益自動調(diào)節(jié)、校正網(wǎng)絡(luò)設(shè)計、全彈道時域仿真、報告自動生成等功能,仿真平臺總體結(jié)構(gòu)如圖1所示。
圖1 基于圖形組態(tài)的姿態(tài)控制系統(tǒng)仿真平臺總體結(jié)構(gòu)
姿態(tài)控制系統(tǒng)仿真平臺以模塊功能作為劃分條件,將功能較為一致的部分劃分為一個模塊。整個平臺則是將各個模塊進行合理組織與安排,并且按照一定時序運行來完成實際任務(wù)[6]。
圖形組態(tài)系統(tǒng)設(shè)計,即把各種不同的算法設(shè)計成一系列的組件框圖類,用戶根據(jù)實際控制回路結(jié)構(gòu),調(diào)出相應(yīng)的組件框圖按控制順序用組件連線連接起來,即可構(gòu)成相應(yīng)的仿真系統(tǒng)框圖。圖形組態(tài)方式具有形象直觀、功能豐富、組態(tài)靈活、操作方便、代碼重復(fù)使用性強等優(yōu)點,是構(gòu)成控制系統(tǒng)組態(tài)方法的最優(yōu)選擇[7]。
本文提出在姿態(tài)控制系統(tǒng)仿真平臺設(shè)計中,采用圖形組態(tài)方式,給出開/閉環(huán)系統(tǒng)基本組成和數(shù)據(jù)流的標(biāo)示,從而可便捷地進行模型查看,并進行對象的開環(huán)/閉環(huán)特性分析。針對所得到的微分方程或傳遞函數(shù)給出其基本特性描述。在仿真平臺中,將按對象、傳感器、伺服機構(gòu)和控制器進行基本的模型作為模板提供,可降低重新構(gòu)建新的控制系統(tǒng)構(gòu)型的工作量。此外,系統(tǒng)可提供模型更新的功能,并可將模型以模型數(shù)據(jù)文件形式予以添加。
在圖形組態(tài)建模系統(tǒng)中,系統(tǒng)分隔與仿真排序是生成姿控仿真系統(tǒng)的關(guān)鍵步驟。系統(tǒng)分隔與仿真排序的目的是將仿真任務(wù)分隔成若干個相對獨立的不可再分功能模塊,并確定每個功能模塊的計算順序。從而使仿真任務(wù)得到簡化,實現(xiàn)更容易,計算效率相對提高[8]。
系統(tǒng)分隔與仿真排序的具體思路如下:1)在圖中確定一個節(jié)點,沿有向邊搜索,檢查是否能找到返回該節(jié)點的環(huán)路;2) 若不存在,則單獨構(gòu)成一個獨立不可再分的功能模塊;3) 若存在,則該節(jié)點與環(huán)路中其他節(jié)點一起構(gòu)成不可再分的功能模塊;4) 重復(fù)上述1)~3)方法,繼續(xù)檢查下一個節(jié)點,直到遍歷所有的節(jié)點及所在的環(huán)路;5) 檢查所有環(huán)路,存在共同節(jié)點的環(huán)路以及這些環(huán)路內(nèi)的節(jié)點應(yīng)屬于同一不可再分功能模塊;6) 根據(jù)有向邊的指向,確立各功能模塊的仿真計算次序。
基于圖形組態(tài)的姿態(tài)控制系統(tǒng)建模環(huán)境,采用搜索算法對功能模塊進行仿真排序,最后采用序貫?zāi)K法在單個工作點上進行時域仿真。將圖形化姿態(tài)控制系統(tǒng)構(gòu)型應(yīng)用于全彈道時域仿真運算中,實時解算控制指令及控制器輸出。
在全彈道時域仿真運算中,根據(jù)控制周期實時插值計算姿態(tài)指令角,并賦值于姿態(tài)控制構(gòu)型中各通道的指令輸入模塊,隨后進行圖形化姿態(tài)控制構(gòu)型解算。與單工作點上姿態(tài)控制系統(tǒng)時域仿真不同的是,當(dāng)模塊解算至彈體模型時,統(tǒng)一根據(jù)彈體模塊設(shè)定的輸入和輸出信號類型,將控制指令直接賦值給完整的彈體數(shù)學(xué)模型,而非線性化模型。當(dāng)彈體數(shù)學(xué)模型解算完成后,將姿態(tài)信息重新賦值給姿態(tài)控制構(gòu)型中彈體模塊的輸出端口。用實際的彈體數(shù)學(xué)模型代替了線性化模型,保證了全彈道時域仿真運算的真實性和可靠性。
系統(tǒng)分隔要求對不可再分功能模塊內(nèi)所有環(huán)路進行切斷,因此有必要找出不可再分功能模塊內(nèi)的所有環(huán)路。樹搜索法是一種基于通路搜索法樹狀搜索原理的系統(tǒng)分解方法。樹搜索法既可用于對不可再分功能模塊搜索環(huán),也可以直接用于系統(tǒng)在找出所有環(huán)路的同時對系統(tǒng)進行分隔(找出不可再分功能模塊以及不可再分功能模塊之間的計算順序)。本文采用基于鄰接矩陣的樹搜索系統(tǒng)分隔與仿真排序方法,以圖2所示圖形組態(tài)仿真系統(tǒng)為例,說明該方法的基本步驟。
圖2 圖形組態(tài)仿真系統(tǒng)實例示意圖
1)鄰接矩陣建立:
將工作區(qū)內(nèi)的模型圖元統(tǒng)一編號(從1號開始),建立兩個鏈表,一個用來保存圖元框圖,一個用來保存圖元連線。圖元連線類中包含所連接的頭、尾節(jié)點編號。首先建立一個足夠大的鄰接矩陣,并初始化,然后搜索圖元連線鏈表,將鄰接矩陣中以圖元連線類中頭節(jié)點編號為行、尾節(jié)點編號為列的元素置1。從而完成鄰接矩陣的建立。如圖2所示圖形組態(tài)仿真系統(tǒng),其鄰接矩陣計算結(jié)果見式(1)。
(1)
2)找到所有具有系統(tǒng)輸入的單元,如果鄰接矩陣的第i列之和為零,則說明編號為i的模塊為系統(tǒng)輸入模塊,則從這些模塊開始搜索;
3)沿有向邊方向前溯,每添一個前溯節(jié)點,馬上回溯,檢查有無相同節(jié)點,若無繼續(xù)前溯,構(gòu)成“枝”;若有,則找到一個環(huán)路,將其記錄在案,并停止生長該枝;然后轉(zhuǎn)向其他分枝搜索;搜索到的環(huán)路記錄方案包括兩種:按有向邊順序記錄節(jié)點編號和使用列號代表節(jié)點編號。
按有向邊順序記錄節(jié)點編號時,環(huán)路內(nèi)的計算順序就是相應(yīng)的存儲順序,但查找沒有在環(huán)路中的獨立節(jié)點困難。
(2)
按列號代表節(jié)點編號時,查找沒有在環(huán)路中的獨立節(jié)點算法簡單容易實現(xiàn)并且容易查找重復(fù)環(huán)路,但獲得環(huán)路內(nèi)計算順序困難。
(3)
4)繼續(xù)搜索,逐步構(gòu)成樹,直至全部枝條停止生長;
5)收集找到的所有環(huán)路,合并具有公共模塊的環(huán),構(gòu)成若干整體(不可再分功能模塊);
6)找到除系統(tǒng)輸入模塊以外,只含有一個模塊的不可再分功能模塊,就完成了系統(tǒng)的分隔。
7)根據(jù)有向邊的方向確定所有不可再分功能模塊的計算次序。
本文根據(jù)飛行器系統(tǒng)和仿真模塊組成,建立了彈體模塊、控制系統(tǒng)、數(shù)學(xué)運算和信號相關(guān)工具箱。根據(jù)飛行器姿態(tài)控制系統(tǒng)組成,將各功能模塊添加到工作區(qū),待設(shè)置完成各模塊的初始參數(shù)后,利用連線將各功能模塊的輸入和輸出依次連接起來,即可完成姿控系統(tǒng)的設(shè)計,基于圖形組態(tài)的姿態(tài)控制系統(tǒng)控制律構(gòu)型設(shè)計界面如圖3所示。點擊“開始”鍵,即可完成姿態(tài)控制系統(tǒng)仿真任務(wù),獲取時域仿真結(jié)果,自動生成仿真結(jié)果報告。
圖3 圖形組態(tài)控制律設(shè)計界面
本文提出了一種基于圖形組態(tài)的姿態(tài)控制系統(tǒng)仿真平臺設(shè)計方法,采用圖形組態(tài)技術(shù)搭建圖形化的姿態(tài)控制系統(tǒng)建模環(huán)境與工具。通過對圖形化仿真模塊進行系統(tǒng)分隔和仿真排序,解決了控制器時域仿真運算的問題。本文提出的基于圖形組態(tài)的姿態(tài)控制系統(tǒng)仿真平臺對不同構(gòu)型下姿態(tài)控制系統(tǒng)進行快速構(gòu)建,具備控制律設(shè)計、時序仿真分析、頻域仿真分析和穩(wěn)定性評估等功能,實現(xiàn)姿態(tài)控制系統(tǒng)方案快速閉合論證,后續(xù)可應(yīng)用于型號預(yù)發(fā)展階段和方案論證階段,可通過與研制同步進行鑒定仿真技術(shù)儲備來有效縮短相關(guān)仿真評估系統(tǒng)建設(shè)周期[9-10]。