摘 要:某型飛機發動機綜合電子調節器的校驗是一項非常復雜的工作,基于裝備安全的考慮,難以在實際裝備上進行維修訓練,因此面向維修訓練的裝備檢測虛擬仿真成為一種需求。為使維護操作人員盡快掌握用校驗工作,我們以GL Studio這一虛擬現實軟件作為開發平臺,研制了虛擬仿真訓練系統軟件,使得受訓人員能夠與虛擬設備進行交互,取得了良好的訓練效果。
關鍵詞:發動機綜合電子調節器 GL Studio 虛擬仿真
中圖分類號:V231文獻標識碼:A文章編號:1674-098X(2011)02(c)-0072-02
由于現代裝備結構復雜,技術含量高,特別是各種電子裝備,造價昂貴,無法保證訓練使用裝備的數量,而且基于裝備安全的考慮,難以在實際裝備上操作訓練,因此面向維修訓練的裝備檢測虛擬仿真成為一種需求。隨著計算機技術的發展,出現了模擬儀器儀表面板的二維圖形仿真,并逐漸發展到三維的虛擬儀器儀表仿真。利用儀器儀表的虛擬仿真,可以真實的模擬檢測過程,訓練效果好,費用低廉,具有巨大的技術優勢和發展潛力。
儀器儀表的虛擬仿真的對象主要是各種電子裝備的面板,如飛機座艙面板;各種檢測儀器儀表,如示波器,電壓電流表等。由于傳統的建模工具,如3DMax,Creator等建模工作量大,難度大,效率低。使用專業的儀器儀表仿真工具GL Studio可以大大縮短開發周期,它支持照片級的紋理,降低了建模難度,提高了效率,建模效果逼真。GL Studio還可生成Visual C++直接可用的代碼,因此成為儀器儀表仿真工具的最優選擇。
1 GL Studio的基本開發流程
如圖1所示,第一步Photograph,就是要獲取所要仿真對象的圖片;第二步處理圖片以獲得操作面板和各組件的圖片,并以png格式保存在Textures文件夾中,即上圖中的Create Textures;第三步,圖中五個強調顏色方框所示:安排圖片,命名對象,生成組件,產生動作,生成程序代碼。這一系列過程都要依賴于虛擬現實軟件GL Studio來完成;第四步,在Microsoft Visual C++的環境下編譯運行以上生成的程序代碼,對于編譯及運行過程中所產生的錯誤,要在GL Studio環境下反復修改,直到所生成的可執行文件能夠實現各種功能。
1.1 GLStudio圖形設計器
圖形設計器是一個直觀的圖形界面,包括了所有現代圖形界面的元素,如浮動工具條、工具提示、多文檔界面、在線查找幫助、內容敏感菜單和最近調用的文件列表。GL Studio設計器能使1個圖形處理者迅速而且容易地繪制圖形界面,并且該圖形界面能快速地被模型化,這并不需要編程的知識。除了眾多圖形應用程序都提供的畫布之外,GL Studio設計器也包含了分層視圖。分層視圖顯示了所有設計中的對象列表,用1個可折疊的樹狀結構來顯示。GL Studio設計器有10種圖像原形,包括規則多邊形、花鍵和TrueType文本對象。設計器支持所有的繪圖操作和每個文檔的多視圖,并支持照片級紋理的應用,一切多邊形的對象都可以貼圖。紋理工具可以導入使用大多數普通格式的貼圖,紋理能與對象顏色混合,并支持透明度,如圖2所示。
1.2 GL Studio代碼生成器
GL Studio代碼生成器允許程序員取出1個GL Studio設計文件并將其轉換為C++和OpenGL源代碼。代碼生成器能提取GL Studio設計器中的對象專門組,并從中生成定制的軟件組件。這些組件能加到/組件調色板中,可將它們拖放到設計文件中.代碼生成器也是模塊化的,并且被設計成能為除C++和OpenGL外的其他平臺生成代碼。GL Studio代碼生成器把GL Studio設計創建的文件生成C ++和OpenGL源代碼。任何可由GL Studio設計器繪出的對象都能生成C++源代碼,代碼生成器允許把對象組生成為定制的C++類,這些C++類能被輕松集成到仿真應用程序中。
2 發動機綜合電子調節器的虛擬仿真實現
2.1 基本仿真方案
某型飛機的發動機工作狀態控制系統的主要部件是綜合電子調節器(簡稱發動機電調),其主要功用為調節發動機參數、向發動機控制設備和機載飛行參數記錄系統等輸送信號。發動機電調協同液壓機械附件,即燃油泵調節器和噴口加力調節器等共同完成任務系統所要求的監控、限定、控制和保護等15項工作。
2.2 實現過程
2.2.1 紋理的制作
首先用數碼相機拍攝實物照片,然后運用圖形編輯軟件Photoshop處理,如圖3。
2.2.2 軟件開發設計
1)自檢部分代碼
bool rval=1;
if(ObjectEventIs(ev,\"DetentVal\"))
{ if(self->DetentVal()==1B->DetentVal()==1) { L_57->Visibility(true);L_NM7->Visibility(true);
}
else{ L_57->Visibility(1);L_NM7->Visibility(1);}
rval=true;
}
return rval;
2)低壓轉子轉速調節器通道部分代碼
bool rval=1;
if(ObjectEventIs(ev,\"DetentVal\"))
{if(roll_oneGlsKnob->DetentVal()==3)// display 50±0.3detect n1
{ if(n1_1->DetentVal()==1n1_2->DetentVal()==1b_un->DetentVal()==1)
{if(self->DetentVal()==1) {;}
else if(self->DetentVal()==2)
{ four_0->Visibility(1);
three_0->Visibility(1);
two_0->Visibility(1);
one_0->Visibility(1);
five_0->Visibility(true);four_3->Visibility(true);
three_6->Visibility(true); two_10->Visibility(true);
one_5->Visibility(true); }
…………………………………………………….
else if(self->DetentVal()==9)
{one_2->Visibility(1); one_3->Visibility(true); }
else if(self->DetentVal()==10) {;}}}
rval=true;n1=true;// n1 is a flag
}
return rval;
2.2.3 編譯、連接和調試
在Visual C++環境下測試運行。會有***.obj和***.exe的文件被組建,,編譯通過則生成所建立的儀器儀表控制顯示面板
3 結語
基于在真實電子裝備實現訓練困難的特點,本文中提出在虛擬的環境下,使用GL Studio仿真軟件作為電子裝備虛擬仿真訓練中裝備面板和檢測設備的建模和仿真工具,已經在多個培訓班次使用該軟件,取得了良好的訓練效果。