彭昌毅
(蕪湖航翼集成設(shè)備有限公司,安徽 蕪湖 241000)
本研究結(jié)合現(xiàn)有的實(shí)裝飛行模擬器搭載的機(jī)械式驅(qū)動和嵌入式驅(qū)動兩種半實(shí)物仿真儀表,通過拆解修理分析,總結(jié)兩者的優(yōu)缺點(diǎn),并結(jié)合現(xiàn)有技術(shù),提出一種全新的飛行模擬器半實(shí)物仿真儀表的設(shè)計(jì)思路。
傳統(tǒng)的機(jī)械式儀表通常是由航空總線接口、電機(jī)、傳動齒輪以及機(jī)械式儀表面板組成。所以,傳統(tǒng)的機(jī)械式儀表也可理解為機(jī)電一體化儀表。以某發(fā)動機(jī)排氣溫度表為例,其工作流程為:通過總線接口傳遞電信號,驅(qū)動電機(jī)轉(zhuǎn)動,進(jìn)而帶動傳動齒輪運(yùn)動,最終實(shí)現(xiàn)表盤的指針轉(zhuǎn)動。
在飛行時,機(jī)械式儀表具有較強(qiáng)的抗干擾能力,目前應(yīng)用的飛行模擬器均采用傳統(tǒng)的機(jī)械式儀表。為了能夠控制機(jī)械式儀表的指針轉(zhuǎn)動,特別是在跨360°(也即0°)角時,需要設(shè)計(jì)復(fù)雜的PID控制算法進(jìn)行跨臨界角轉(zhuǎn)動。為了提高模擬器的仿真逼真度,需要提高對機(jī)械儀表齒輪等精密器件的設(shè)計(jì)精度與制造要求,導(dǎo)致機(jī)械式儀表的生產(chǎn)成本增加。
飛行模擬器作為地面模擬飛行訓(xùn)練的裝備,對實(shí)裝飛機(jī)來說,其運(yùn)行環(huán)境相幾乎沒有外界強(qiáng)烈的干擾,所以在對座艙儀表進(jìn)行仿真過程中,可使用非機(jī)械式儀表來代替。目前,較為常見的方法是采用機(jī)械表盤結(jié)合嵌入式驅(qū)動模塊來實(shí)現(xiàn)飛行模擬器的仿真儀表。以某襟翼冷氣壓力表為例,其工作流程為:通過總線接口來傳遞電信號,使能驅(qū)動模塊,進(jìn)而傳動電機(jī)運(yùn)動,從而實(shí)現(xiàn)表盤的指針轉(zhuǎn)動。
在不考慮抗干擾因素的影響下,航空儀表的驅(qū)動效果與機(jī)械式儀表是一樣的,不同之處在于,航空儀表控制儀表指針在臨界點(diǎn)的轉(zhuǎn)動可通過對驅(qū)動模塊編程來實(shí)現(xiàn),減少對機(jī)械式表盤控制算法的設(shè)計(jì)。當(dāng)被仿真的航空儀表較為復(fù)雜時,如指令地平儀和航道羅盤指示器,這種設(shè)計(jì)方式對驅(qū)動模塊的功能選型提出了更多的要求。另外,隨著儀表指針轉(zhuǎn)向維度的增加,轉(zhuǎn)動電機(jī)的個數(shù)也會逐級遞增。
機(jī)械式儀表存在制作工藝復(fù)雜、經(jīng)濟(jì)成本較高、要設(shè)計(jì)復(fù)雜的控制算法、指針轉(zhuǎn)動精度一般等問題。機(jī)械表盤結(jié)合嵌入式驅(qū)動模塊的仿真儀表同樣也存在制作工藝復(fù)雜、難以仿真較為復(fù)雜的航空儀表等問題。本研究提出一種嵌入式計(jì)算機(jī)圖形仿真儀表,可滿足小型化、高精度、可更換等要求,采用GL Studio軟件架構(gòu),并結(jié)合拿鐵熊貓硬件平臺,以指令地平儀為研究對象,開發(fā)出一種嵌入式飛行模擬器半實(shí)物仿真儀表。
GL Studio由圖形設(shè)計(jì)區(qū)(Geometry)、代碼編輯區(qū)(Code)、應(yīng)用設(shè)計(jì)區(qū)(Application)、源碼生成區(qū)(Generation)和資源編輯區(qū)(Resources)組成。其中,設(shè)計(jì)過程中主要使用的是圖形設(shè)計(jì)區(qū)和源碼生成區(qū)。圖形設(shè)計(jì)區(qū)提供一個“所見即所得”的圖形編輯交互窗口,并提供設(shè)計(jì)模式(Modes)、設(shè)計(jì)轉(zhuǎn)換(Convert)、設(shè)計(jì)調(diào)整(Modify)和創(chuàng)建設(shè)計(jì)(Create)等交互式操作接口,從而使用戶的可視化創(chuàng)建與設(shè)計(jì)變得更加便捷。代碼生成區(qū)用于創(chuàng)建可視化界面對象,并生成對應(yīng)的C++類模塊,使用者可通過編輯、調(diào)試及調(diào)用該類,從而實(shí)現(xiàn)對可視化對象的控制。
孫艷麗等[1]為解決院校實(shí)驗(yàn)教學(xué)、裝備培訓(xùn)等要滿足大量人員同時使用的需求,基于GL Studio軟件開發(fā)出電源柜和示波器,取得了較好的教學(xué)培訓(xùn)效果;徐國標(biāo)等[2]探討了如何利用GL Studio軟件來設(shè)計(jì)實(shí)現(xiàn)“照片級”的虛擬儀表,為本研究的軟件開發(fā)提供了借鑒思路;李建海等[3]利用GL Studio軟件實(shí)現(xiàn)了氣壓高度表,并通過UDP實(shí)現(xiàn)對飛行模擬器的數(shù)據(jù)交互,但該方法僅在軟件工程中實(shí)現(xiàn),并沒有在實(shí)際中設(shè)計(jì)出可用于模擬器實(shí)裝的表盤。
參考上述設(shè)計(jì)實(shí)例,本研究以某型飛機(jī)機(jī)載指令地平儀為例,設(shè)計(jì)出基于GL Studio的飛行模擬器半實(shí)物仿真指令地平儀,具體流程如圖1所示。
結(jié)合圖1的半實(shí)物仿真儀表的設(shè)計(jì)流程,指令地坪儀的設(shè)計(jì)步驟如下。
1.2.1 指令地平儀的圖形準(zhǔn)備工作。通過對指令地平儀的實(shí)物組件進(jìn)行劃分,其表盤由5個可單獨(dú)拼接的子部件組成。因此,指令地平儀的圖形準(zhǔn)備工作階段主要是通過繪圖工具來繪制出5個子部件的紋理圖片(見表1)。
表1 指令地平儀的紋理創(chuàng)建
1.2.2 指令地平儀的模型創(chuàng)建。在GL Studio軟件中創(chuàng)建并設(shè)計(jì)指令地平儀的模型。①在MS VC++8.0中新建基于“GL Studio 3.2 Application Wizard”的工程,并命名為“MeterHorizon”;②打開該工程下后綴名為“.gls”的文件,設(shè)計(jì)指令地平儀模型;③在GL Studio繪制面板中添加“Rectangle”對象并命名,并在該命名對象上添加紋理;④重復(fù)第③步,添加的“Rectangle”對象和對應(yīng)紋理順序依次為:刻度板部件、儀表轉(zhuǎn)動背景部件、指針部件、指針刻度板部件和儀表內(nèi)殼部件。至此,完成了基于GL Studio的指令地平儀模型搭建工作。
1.2.3 GL Studio結(jié)合MS VC++8.0的指令地平儀功能軟件開發(fā)。結(jié)合上述搭建的指令地平儀模型,首先在GL Studio的Code頁面中編輯指令地平儀控制代碼,在void Calculate(double time)內(nèi)編輯如下代碼,用于實(shí)現(xiàn)指令地平儀的仿真運(yùn)動。
∕∕實(shí)現(xiàn)刻度板部件的俯仰運(yùn)動
f=gRecvData.horizon_pitch*-2.5f;
ScalePitch->DynamicTranslate(0,f,0,false);
∕∕實(shí)現(xiàn)刻度板部件的滾轉(zhuǎn)運(yùn)動
f=gRecvData.horizon_roll*-1;
ScalePitchGroup->DynamicRotate(f,Z_AXIS);
∕∕實(shí)現(xiàn)指針部件中的飛機(jī)標(biāo)轉(zhuǎn)動
f=gRecvData.horizon_plane;
PlaneLeft->DynamicTranslate(0,f,0,false);
PlaneRight->DynamicTranslate(0,f,0,false);
∕∕實(shí)現(xiàn)指針部件中飛機(jī)標(biāo)陰影轉(zhuǎn)動
PlaneShaderL->DynamicTranslate(0,f,0,false);
PlaneShaderR->DynamicTranslate(0,f,0,false);
然后生成指令地平儀對象的頭文件和源文件代碼,在MeterHorizon工程中添加上述頭文件和源文件,并增加基于UDP協(xié)議的網(wǎng)絡(luò)通信模塊,編輯并生成指令地平儀仿真儀表的可執(zhí)行文件。
在本研究所提出的飛行模擬器半實(shí)物仿真儀表設(shè)計(jì)方案中,仿真儀表的設(shè)計(jì)與開發(fā)工作主要是在裝有Windows操作系統(tǒng)的個人計(jì)算中完成,最終生成仿真儀表對應(yīng)的可執(zhí)行文件。
結(jié)合飛行模擬器半實(shí)物仿真儀表的應(yīng)用場景,選型LattePanda Win10企業(yè)版的嵌入式硬件平臺,將上述可執(zhí)行文件部署在該平臺上,即可完成對飛行模擬器半實(shí)物仿真儀表的軟硬件搭建與部署。以指令地平儀為例,具體的實(shí)現(xiàn)流程見圖2。
圖2 指令地平儀半實(shí)物仿真儀表的部署與實(shí)現(xiàn)流程
從圖2可以看出,半實(shí)物仿真指令地平儀的軟硬件開發(fā)過程可分為3個階段。
2.2.1 在Windows XP及以上操作系統(tǒng)中開發(fā)基于GL Studio的飛行模擬器仿真儀表,完成開發(fā)后,將生成相應(yīng)的可執(zhí)行文件進(jìn)行打包。
2.2.2 完成基于拿鐵熊貓開發(fā)板的操作系統(tǒng)安裝和硬件連接。在該開發(fā)板中安裝Win10的操作系統(tǒng),然后通過飛行模擬器座艙牽引出5 V∕2 A予以供電,并通過網(wǎng)線連接實(shí)現(xiàn)UDP報(bào)文的傳輸。
2.2.3 將第一階段生成的可執(zhí)行文件部署在拿鐵熊貓開發(fā)板中,運(yùn)行執(zhí)行文件,最后通過HDMI視頻信號將具體的儀表信息通過視頻信號驅(qū)動板和定制顯示器顯示給用戶端。
為滿足某型飛行模擬器中半實(shí)物仿真指令地坪儀的修理要求,通過原機(jī)測繪,設(shè)計(jì)出本研究研制的飛行模擬器半實(shí)物仿真指令地平儀外觀結(jié)構(gòu)(見圖3至圖6)。
圖3 半實(shí)物仿真指令地平儀三維示意圖
圖6 半實(shí)物仿真指令地平儀后視圖(單位:mm)
將本研究所提出的嵌入式計(jì)算機(jī)圖形仿真儀表與傳統(tǒng)的機(jī)械式仿真儀表、機(jī)械表盤組合嵌入式驅(qū)動式模塊仿真儀表進(jìn)行對比分析(見表2)。
圖4 半實(shí)物仿真指令地平儀主視圖(單位:mm)
由表2可知,本研究所提出的基于GL Studio結(jié)合嵌入式計(jì)算機(jī)半實(shí)物仿真圖形儀表較其他兩種儀表具有明顯的優(yōu)勢:①軟件具有很好的可拓展性,通過修改GL Studio配置文件,可實(shí)現(xiàn)對不同類型的儀表設(shè)計(jì)與開發(fā);②硬件平臺具有低成本、易更換、連接方式簡單等優(yōu)點(diǎn);③儀表外殼的機(jī)械加工同樣可實(shí)現(xiàn)不同需求的個性化定制。
表2 三種半實(shí)物仿真儀表的對比分析
圖5 半實(shí)物仿真指令地平儀俯視圖(單位:mm)
本研究利用GL Studio軟件架構(gòu)實(shí)現(xiàn)對半實(shí)物仿真儀表的建模設(shè)計(jì)以及儀表驅(qū)動程序的開發(fā),并結(jié)合嵌入式拿鐵熊貓硬件平臺,安裝嵌入式Win10操作系統(tǒng),將GL Studio的儀表仿真模型部署到該嵌入式計(jì)算機(jī)中,基于UDP報(bào)文協(xié)議與飛行模擬器主仿真程序通信,通過HDMI輸出目標(biāo)儀表的視頻顯示結(jié)果。最后,通過原機(jī)測繪,設(shè)計(jì)目標(biāo)半實(shí)物仿真儀表的機(jī)械外殼。將總裝集成后的儀表裝配于待修理飛行模擬器,完成該項(xiàng)修理任務(wù)。