陳俊杰,吳盤龍,何 山,姚文典
(南京理工大學(xué),江蘇 南京 210094)
對(duì)于導(dǎo)彈制導(dǎo)控制系統(tǒng)仿真,半實(shí)物仿真是除了導(dǎo)彈發(fā)射試驗(yàn)外,可以驗(yàn)證導(dǎo)彈制導(dǎo)控制系統(tǒng)設(shè)計(jì)正確性的唯一方式。相較純數(shù)字仿真,半實(shí)物仿真通過在仿真閉環(huán)回路中接入物理設(shè)備[1-3],仿真數(shù)據(jù)更加接近實(shí)際,是導(dǎo)彈制導(dǎo)控制系統(tǒng)研制過程中必需環(huán)節(jié)。
半實(shí)物仿真平臺(tái)可以實(shí)現(xiàn)半實(shí)物物理設(shè)備連接、數(shù)據(jù)檢測(cè)、信號(hào)傳輸、仿真過程控制、制導(dǎo)模型仿真驗(yàn)證等功能[4-6]。隨著導(dǎo)彈制導(dǎo)技術(shù)的發(fā)展,半實(shí)物仿真平臺(tái)對(duì)實(shí)時(shí)性、通用性、可靠性及可擴(kuò)展性要求越來越高。操作系統(tǒng)、半實(shí)物仿真系統(tǒng)必須滿足高實(shí)時(shí)性,目前多采用RTX、dSPACE、FreeRTOS、RT-Lab,Speedgoat等其他實(shí)時(shí)操作系統(tǒng)。dSpace是一種實(shí)時(shí)仿真系統(tǒng),是一套基于MATLAB/Simulink的控制系統(tǒng)開發(fā)及半實(shí)物仿真的軟硬件工作平臺(tái)。多應(yīng)用于微處理器的FreeRTOS實(shí)時(shí)操作系統(tǒng),是一個(gè)輕量級(jí)的操作系統(tǒng)。RT-Lab實(shí)時(shí)操作系統(tǒng)是一種用于動(dòng)力與電氣工程領(lǐng)域的科學(xué)儀器,是一套工業(yè)級(jí)的系統(tǒng)實(shí)時(shí)仿真平臺(tái)軟件包。Speedgoat實(shí)時(shí)系統(tǒng)中Simulink Real-Time工具箱與Matlab/Simulink兼容最好,仿真操作均在Matlab中進(jìn)行。基于本文的設(shè)計(jì)方案,工業(yè)控制計(jì)算機(jī)工作在Windows系統(tǒng)下,RTX實(shí)時(shí)子系統(tǒng)是Windows系統(tǒng)的擴(kuò)展子系統(tǒng),可以充分利用Windows系統(tǒng)下各種資源、API函數(shù)等,方便針對(duì)硬件實(shí)時(shí)驅(qū)動(dòng)、人機(jī)交互界面等方面進(jìn)行開發(fā)。文獻(xiàn)[7-8]分別介紹了導(dǎo)彈半實(shí)物仿真的三維場(chǎng)景構(gòu)建和導(dǎo)引頭半實(shí)物模型構(gòu)建,但均未搭建一套完整的導(dǎo)彈制導(dǎo)控制半實(shí)物仿真系統(tǒng)。本文根據(jù)目前飛行器制導(dǎo)控制技術(shù)[9-11]和半實(shí)物仿真裝備研究現(xiàn)況與進(jìn)展,設(shè)計(jì)一套基于RTX的導(dǎo)彈制導(dǎo)控制半實(shí)物仿真系統(tǒng),滿足了半實(shí)物仿真系統(tǒng)高實(shí)時(shí)性、高通用性、高擴(kuò)展性的要求,且通過了制導(dǎo)武器半實(shí)物仿真試驗(yàn)可信度評(píng)估[12-13],在保留Windows系統(tǒng)優(yōu)勢(shì)的基礎(chǔ)上,通過引進(jìn)RTX實(shí)時(shí)子系統(tǒng),解決了Windows系統(tǒng)實(shí)時(shí)性較弱的問題。
RTX實(shí)時(shí)系統(tǒng)是Windows系統(tǒng)下的一個(gè)實(shí)時(shí)擴(kuò)展子系統(tǒng),也是一個(gè)基于軟件的硬實(shí)時(shí)解決方案。它通過對(duì)IRQ、I/O、系統(tǒng)內(nèi)存等的精確控制,確保實(shí)時(shí)任務(wù)的可靠性、數(shù)據(jù)傳輸?shù)臏?zhǔn)確性。RTX實(shí)時(shí)子系統(tǒng)還支持30 kHz的持續(xù)中斷觸發(fā)速度,平均延遲小于1 μs。
RTX實(shí)時(shí)子系統(tǒng)與Windows操作系統(tǒng)之間可以實(shí)現(xiàn)全面兼容,并且可以充分保留Windows系統(tǒng)的各種資源,其中包括Windows系統(tǒng)下大量標(biāo)準(zhǔn)的API函數(shù)、Windows系統(tǒng)的內(nèi)存管理機(jī)制等。作為Windows系統(tǒng)下的一個(gè)實(shí)時(shí)擴(kuò)展系統(tǒng),RTX不會(huì)對(duì)Windows系統(tǒng)下的架構(gòu)作任何封裝和修改。
RTX實(shí)時(shí)子系統(tǒng)擁有精確高速的任務(wù)調(diào)度器,其最多支持1 000個(gè)獨(dú)立的進(jìn)程。RTX實(shí)時(shí)子系統(tǒng)擁有128個(gè)優(yōu)先級(jí),并且針對(duì)線程切換時(shí)間具有嚴(yán)格要求,可以滿足幾乎所有用戶的編程需要。
RTX實(shí)時(shí)子系統(tǒng)同時(shí)也是軟件開發(fā)解決方案,可以將包括Windows 2000、Windows XP等各版本系統(tǒng)拓展到時(shí)間控制領(lǐng)域,使得上述各版本系統(tǒng)轉(zhuǎn)為實(shí)時(shí)操作系統(tǒng)。因此基于RTX實(shí)時(shí)子系統(tǒng)拓展的RTOS,不僅可以實(shí)現(xiàn)對(duì)實(shí)時(shí)性要求高的任務(wù)開發(fā),也可以實(shí)現(xiàn)非實(shí)時(shí)性任務(wù)開發(fā)。
半實(shí)物仿真需要真實(shí)硬件參與制導(dǎo)控制解算回路,半實(shí)物仿真平臺(tái)需要可操作性、通用性,更需要保證半實(shí)物仿真平臺(tái)的高實(shí)時(shí)性,以保證半實(shí)物仿真系統(tǒng)的可靠性,進(jìn)而檢驗(yàn)導(dǎo)彈制導(dǎo)系統(tǒng)設(shè)計(jì)結(jié)果和軟件設(shè)計(jì)的正確性。實(shí)時(shí)仿真軟件中采用共享內(nèi)存交互機(jī)制,能夠高速且準(zhǔn)確實(shí)現(xiàn)RTX與Windows之間的數(shù)據(jù)交互,并且滿足上述所有要求。
共享內(nèi)存是進(jìn)程間共享數(shù)據(jù)的最快的方法,一個(gè)進(jìn)程向共享內(nèi)存池寫入數(shù)據(jù),共享內(nèi)存池的所有進(jìn)程均擁有讀權(quán)限。根據(jù)仿真數(shù)據(jù)交互需求,本文介紹的半實(shí)物仿真系統(tǒng)需要提供兩片共享內(nèi)存池,該半實(shí)物仿真系統(tǒng)中共享內(nèi)存的數(shù)據(jù)交互工作流程如圖1所示。
圖1 數(shù)據(jù)交互流程圖Fig.1 Data interaction flowchart
在仿真流程開始前,Win32進(jìn)程讀取仿真各初始參數(shù)后,需要傳輸給RTSS進(jìn)程,此時(shí)Win32進(jìn)程需要?jiǎng)?chuàng)建第一片共享內(nèi)存池,同時(shí)擁有寫權(quán)限,RTSS進(jìn)程僅擁有讀權(quán)限。
在仿真流程開始后,RTSS進(jìn)程收到控制組合模擬單元解算數(shù)據(jù),需要上傳至Win32進(jìn)程,Win32進(jìn)程通過光纖上傳至工作站的監(jiān)控軟件。此時(shí)RTSS進(jìn)程需要?jiǎng)?chuàng)建第二片共享內(nèi)存池,擁有寫權(quán)利,Win32進(jìn)程僅擁有讀權(quán)利。
基于RTX的制導(dǎo)控制半實(shí)物仿真系統(tǒng)結(jié)構(gòu)如圖2所示。半實(shí)物仿真系統(tǒng)主要由工作站、工業(yè)控制計(jì)算機(jī)、控制組合模擬單元組成。
圖2 基于RTX的制導(dǎo)控制半實(shí)物仿真系統(tǒng)結(jié)構(gòu)Fig.2 Basic structure of RTX-based hardware-in-the-loop simulation system for guidance and control
3.1.1 工作站
工作站主要負(fù)責(zé)數(shù)據(jù)采集、顯示、控制組合模擬單元軟件調(diào)試、上傳,數(shù)據(jù)處理與分析。
工作站通過RS422串口與控制組合模擬單元連接,實(shí)現(xiàn)控制組合模擬單元軟件調(diào)試與上傳,并接收控制組合模擬單元按周期發(fā)送的實(shí)時(shí)仿真數(shù)據(jù)并上傳到地面監(jiān)控軟件,實(shí)現(xiàn)數(shù)據(jù)采集和顯示。
光纖通信模塊主要完成工作站與工業(yè)控制計(jì)算機(jī)之間的光纖通信。工作站和工業(yè)控制計(jì)算機(jī)分別搭載VMIPMC-5565反射內(nèi)存實(shí)時(shí)網(wǎng)卡,并通過光纖連接,構(gòu)成VMIC實(shí)時(shí)網(wǎng)絡(luò)。
3.1.2 工業(yè)控制計(jì)算機(jī)
工業(yè)控制計(jì)算機(jī)主要用于硬件接口模擬和為飛控算法的運(yùn)行提供實(shí)時(shí)運(yùn)行環(huán)境,可實(shí)現(xiàn)在RTX環(huán)境下進(jìn)行制導(dǎo)姿控算法計(jì)算。
工業(yè)控制計(jì)算機(jī)的串口通信模塊負(fù)責(zé)半實(shí)物仿真過程中與控制組合模擬單元的數(shù)據(jù)交互,通過4路RS422串口與控制組合模擬單元的串口卡相連,其中1路串口負(fù)責(zé)仿真指令發(fā)送與接收,其余3路串口分別負(fù)責(zé)將GPS、IMU、裝訂數(shù)據(jù)發(fā)送至控制組合模擬單元。
工業(yè)控制計(jì)算機(jī)中1553B通信模塊實(shí)現(xiàn)與控制組合模擬單元之間飛控?cái)?shù)據(jù)交互,其中工業(yè)控制計(jì)算機(jī)作為BC(工控機(jī)),控制組合模擬單元作為RT(彈載計(jì)算機(jī))。
工業(yè)控制計(jì)算機(jī)搭載的時(shí)鐘同步模塊主要負(fù)責(zé)接收同步時(shí)鐘信號(hào);模擬量輸入/輸出模塊模擬實(shí)際舵偏的采集及舵偏指令的下發(fā);數(shù)字量輸入/輸出模塊作為備用接口,便于二次開發(fā)。
3.1.3 控制組合模擬單元
控制組合模擬單元主要提供嵌入式的軟硬件運(yùn)行環(huán)境,該單元帶有開關(guān)量輸入/輸出模塊、模擬量輸入/輸出模塊、時(shí)鐘同步模塊、1553B通訊模塊、RS422串口通信模塊。
控制組合模擬單元搭載的RS422串口通信模塊共搭載8路串口,其中1路串口與工作站連接,用于實(shí)現(xiàn)控制組合模擬單元軟件調(diào)試與上傳;4路串口與工業(yè)控制計(jì)算機(jī)連接,1路串口用于接收與發(fā)送仿真相關(guān)指令,3路串口分別用于接收工業(yè)控制計(jì)算機(jī)發(fā)送的GPS、IMU、裝訂數(shù)據(jù);1路串口發(fā)送1 kHz時(shí)鐘信號(hào),用于時(shí)鐘同步。
半實(shí)物仿真軟件是仿真系統(tǒng)的核心部分,系統(tǒng)軟件結(jié)構(gòu)先進(jìn)性、可靠性、功能完備性是半實(shí)物仿真系統(tǒng)成敗的關(guān)鍵。
該半實(shí)物仿真系統(tǒng)軟件主要包括工作站搭載的地面監(jiān)控軟件、工業(yè)控制計(jì)算機(jī)搭載的實(shí)時(shí)仿真軟件及控制組合模擬單元搭載的導(dǎo)航、制導(dǎo)與控制仿真軟件。
工作站搭載的地面監(jiān)控軟件主要完成控制組合模擬單元軟件上傳、數(shù)據(jù)采集、數(shù)據(jù)顯示與數(shù)據(jù)存儲(chǔ)。
工業(yè)控制計(jì)算機(jī)搭載的實(shí)時(shí)仿真軟件包括了彈道仿真軟件及通信管理軟件。彈道仿真軟件基于RTX環(huán)境下開發(fā),進(jìn)行實(shí)時(shí)飛控計(jì)算;通信管理軟件是基于Windows環(huán)境下開發(fā)的人機(jī)交互界面,完成I/O卡參數(shù)設(shè)定、諸元裝訂、仿真指令下發(fā)等功能。工業(yè)控制計(jì)算機(jī)是在Windows和RTX實(shí)時(shí)操作系統(tǒng)環(huán)境下完成實(shí)時(shí)仿真軟件開發(fā),Windows環(huán)境下的任務(wù)和RTX環(huán)境下的任務(wù)可以通過共享內(nèi)存共享數(shù)據(jù),使用Windows和RTX的架構(gòu)既可以擁有Windows環(huán)境下的特性,也提高了系統(tǒng)的實(shí)時(shí)性。
控制組合模擬單元搭載的導(dǎo)航、制導(dǎo)與控制仿真軟件具有上電初始化及自檢、數(shù)據(jù)上傳和下載、數(shù)據(jù)固化、內(nèi)存單元讀取和回傳等功能。
基于RTX的制導(dǎo)控制半實(shí)物仿真系統(tǒng)試驗(yàn)流程主要包括:
1)工作站上的監(jiān)控界面打開光纖通信模塊,發(fā)送試驗(yàn)開始指令;
2)在工業(yè)控制計(jì)算機(jī)的實(shí)時(shí)仿真軟件進(jìn)行串口號(hào)以及波特率的設(shè)置,然后進(jìn)行系統(tǒng)通信自檢;
3)自檢成功后,地面監(jiān)控軟件向控制組合模擬單元發(fā)送向內(nèi)存寫入固件指令;
4)控制組合模擬單元收到指令后將待寫固件寫入對(duì)應(yīng)內(nèi)存,等待工業(yè)控制計(jì)算機(jī)發(fā)送仿真初始條件;
5)工業(yè)控制計(jì)算機(jī)的實(shí)時(shí)仿真軟件加載工況,將GPS、IMU、裝訂數(shù)據(jù)分別通過串口2、3、4發(fā)送給控制組合模擬單元;
6)控制組合模擬單元進(jìn)行模型解算,并實(shí)時(shí)向工業(yè)控制計(jì)算機(jī)傳輸仿真數(shù)據(jù);
7)工業(yè)控制計(jì)算機(jī)將接收到的數(shù)據(jù)通過光纖通信模塊傳輸給監(jiān)控界面。
為驗(yàn)證半實(shí)物仿真系統(tǒng)的性能,按照該仿真試驗(yàn)流程進(jìn)行場(chǎng)景驗(yàn)證,試驗(yàn)主要包括對(duì)數(shù)據(jù)傳輸實(shí)時(shí)性、數(shù)據(jù)可靠性、半實(shí)物仿真試驗(yàn)流程正確性進(jìn)行驗(yàn)證。
表1的測(cè)試數(shù)據(jù)可以得出,多個(gè)實(shí)時(shí)性能指標(biāo)RTSS線程明顯優(yōu)于Win32線程。作者利用RTSS工作線程來完成仿真,可以獲得較好的實(shí)時(shí)性能,滿足實(shí)時(shí)仿真對(duì)實(shí)時(shí)性的要求。
表1 RTSS進(jìn)程性能測(cè)試(CPU滿負(fù)荷下)
本文設(shè)計(jì)的半實(shí)物仿真系統(tǒng)中加入了導(dǎo)彈制導(dǎo)控制6DoF模型、調(diào)度流程等,需要對(duì)半實(shí)物仿真系統(tǒng)的實(shí)時(shí)性進(jìn)行性能測(cè)試。在運(yùn)行導(dǎo)彈制導(dǎo)控制半實(shí)物仿真系統(tǒng)后,對(duì)系統(tǒng)的延遲情況進(jìn)行了20 ms的測(cè)試。表2的測(cè)試數(shù)據(jù)表明,基于RTX的制導(dǎo)控制半實(shí)物仿真系統(tǒng)在加入了導(dǎo)彈制導(dǎo)控制模型后仍具有良好的實(shí)時(shí)性。
表2 系統(tǒng)延遲測(cè)試結(jié)果
作者需要通過工業(yè)控制計(jì)算機(jī)對(duì)控制組合模擬單元進(jìn)行諸元裝訂,實(shí)時(shí)仿真軟件中Win32進(jìn)程通過讀取本地文件初始諸元參數(shù),再通過共享內(nèi)存下傳到RTSS進(jìn)程,仿真結(jié)果如圖3所示。
圖3 地面監(jiān)控軟件數(shù)據(jù)與控制組合模擬單元數(shù)據(jù)對(duì)比Fig.3 Data comparison of ground monitoring software and control combined simulation unit
在半實(shí)物仿真過程中,RTSS進(jìn)程通過定時(shí)器以5 ms 為周期,將慣導(dǎo)和導(dǎo)引頭數(shù)據(jù)通過RS422串口下傳到控制組合模擬單元進(jìn)行模型解算,然后控制組合模擬單元通過RS422串口將模型解算數(shù)據(jù)上傳至實(shí)時(shí)仿真軟件中RTSS進(jìn)程,RTSS進(jìn)程再通過共享內(nèi)存上傳至Win32進(jìn)程,Win32進(jìn)程通過VMIC光纖通信模塊上傳至工作站中地面監(jiān)控軟件,完成實(shí)時(shí)仿真數(shù)據(jù)監(jiān)控。
圖3中藍(lán)線表示地面監(jiān)控軟件通過光纖通信模塊接收RTSS進(jìn)程發(fā)送的模型解算數(shù)據(jù),紅線表示控制組合模擬單元發(fā)送至工業(yè)控制計(jì)算機(jī)中RTSS進(jìn)程的數(shù)據(jù)。
通過對(duì)比可以得到結(jié)論:地面監(jiān)控軟件接收的數(shù)據(jù)與控制組合模擬單元遙測(cè)輸出的數(shù)據(jù)相同,半實(shí)物仿真系統(tǒng)數(shù)據(jù)傳輸沒有誤差,該半實(shí)物仿真系統(tǒng)可靠性和數(shù)據(jù)傳輸準(zhǔn)確性高。
綜上所述,本文所介紹的半實(shí)物仿真系統(tǒng)設(shè)計(jì)合理,且具有高實(shí)時(shí)性、高準(zhǔn)確性、高可靠性。
本文主要介紹了基于RTX的制導(dǎo)控制半實(shí)物仿真系統(tǒng)的基本原理與系統(tǒng)組成,通過詳細(xì)描述半實(shí)物仿真系統(tǒng)的組成及工作原理,并且根據(jù)場(chǎng)景驗(yàn)證,基于RTX的制導(dǎo)控制半實(shí)物仿真平臺(tái)可實(shí)現(xiàn)控制組合模擬單元軟件上傳、實(shí)時(shí)控制導(dǎo)彈制導(dǎo)半實(shí)物仿真指令下發(fā)、實(shí)時(shí)監(jiān)控仿真過程中導(dǎo)彈各參數(shù)等功能。測(cè)試結(jié)果表明該半實(shí)物仿真系統(tǒng)是正確且合理的。