直升機虛擬儀表DLL設(shè)計與實現(xiàn)
摘要 為了簡化項目分工,使系統(tǒng)易于擴充和維護,采用虛擬儀表DLL設(shè)計方法。利用GL Studio開發(fā)工具進行虛擬儀表開發(fā),用3D MAX和Ph-otoshop軟件制作儀表紋理。在GL Studio中創(chuàng)建虛擬儀表模型,定義與外界進行數(shù)據(jù)交換的接口函數(shù),編寫行為代碼,并將其編譯成DLL,供主程序動態(tài)調(diào)用。該方法使系統(tǒng)層次清晰,提高了系統(tǒng)開發(fā)和維護效率。
關(guān)鍵詞 CBT;GL Studio;3D MAX;DLL;屬性;接口
計算機輔助訓練(CBT,Computer Based Training)系統(tǒng)是在世界航空業(yè)廣泛應(yīng)用的一種培訓方式。直升機CBT系統(tǒng)主要用于實現(xiàn)直升機飛行員各項模擬訓練,包括通電檢查、空域飛行、飛行中特情處理等。
直升機CBT系統(tǒng)主要采用計算機仿真、計算機控制和圖像處理顯示等高新技術(shù),實現(xiàn)一個融圖形、圖像、文字、曲線、圖表、聲音為一體的多媒體仿真平臺。它可以為飛行員提供多方位的信息流,充分發(fā)揮飛行員多感官接收信息、應(yīng)用信息的能力。
直升機CBT系統(tǒng)的組成包括主控計算機系統(tǒng)、網(wǎng)絡(luò)通訊系統(tǒng)、環(huán)境音響系統(tǒng)、座艙、航電及操縱系統(tǒng)、視景系統(tǒng)等。座艙、航電及操縱系統(tǒng)采用軟硬結(jié)合的方法進行設(shè)計,座艙中儀表板和中央操縱臺上的分立儀表均為觸摸響應(yīng)的虛擬儀表,用GL Studio進行虛擬儀表開發(fā)。座艙結(jié)構(gòu)、座椅、飛行操作聯(lián)動機構(gòu)、駕駛桿、總距桿等均做成硬件結(jié)構(gòu),通過網(wǎng)絡(luò)將硬件機構(gòu)的控制信號傳給主控計算機進行處理。
直升機CBT系統(tǒng)中的分立儀表有氣壓高度表、空速表、陀螺地平儀、綜合顯示器、多功能鍵盤、油量控制板等,下面將詳細介紹虛擬儀表DLL的設(shè)計開發(fā)過程,以及在GL Studio中進行調(diào)用的方法。
1 GL studio開發(fā)平臺簡介
直升機本文基于仿真平臺GL Studio,其是Disti公司為儀表仿真軟件開發(fā)提供的一套系統(tǒng)解決方案。用戶可以利用其圖形交互界面以所見即所得的方式完成儀表面板的制作,通過其代碼編輯器完成儀表內(nèi)部的邏輯仿真。其代碼生成器能夠?qū)⒂脩舻闹谱鹘Y(jié)果自動生成C++和Op-enGL源代碼,用戶既可以將代碼進行單獨編譯,也可以嵌入到其他程序中進行編譯,從而避免了大量繁瑣的底層OpenGL開發(fā)過程。
GL Studio工程可以生產(chǎn)兩種類型的文件:一種可執(zhí)行文件.exe;另一種是可獨立使用的文件即DLL。在用GL Studio進行直升機CBT系統(tǒng)中虛擬儀表開發(fā)的時候,各分立儀表都做成單獨的DLL,將虛擬儀表的輸入和輸出接口定義為屬性。在最后的主程序開發(fā)時,只需在GLStudio的圖形界面上插入各虛擬儀表DLL,根據(jù)飛行模型的需要傳遞參數(shù)即可。GL Studio開發(fā)虛擬儀表DLL的流程如圖1所示。
評論