尚麗娜 張國旺 張芹芹
中國飛行試驗研究院
虛擬現實監控軟件的設計
尚麗娜 張國旺 張芹芹
中國飛行試驗研究院
利用虛擬現實技術,以三維立體圖形方式形象地顯示飛機的三維姿態及內部測試設備的健康狀態和內部座艙狀態,提高了實時監控系統的可視性。目前,該軟件已在型號試飛中得到驗證,實踐證明軟件運行穩定,視景界面逼真,能夠準確、實時地輸出飛行參數,系統操縱性、通用性和可擴展性良好。
由于某大型運輸機將要承擔著運輸重要戰略物資和人員的任務,因此針對飛機安全性的驗證試飛尤其重要,飛行試驗安全監控也必不可少。對于大型運輸機要進行測試驗證的參數有10000個左右,怎樣讓這些參數更好地服務于試飛,如何以形象、生動、直觀的形式將試飛數據呈現在實時監控人員的眼前,讓監控人員在緊張的工作環境中,通過虛擬現實技術開發的實時監控畫面給以視覺和感官上形成巨大的沖擊,能夠吸引監控人員將更多的目光和注意力集中到實時監控畫面上。因此,在飛行試驗中開展虛擬現實技術的實時監控的研究是必須的。
目前機載測試設備健康狀態實時監控處于空白,所以開展這方面的工作很有必要。測試設備在飛行過程中,如果出現故障能夠及時發現,在飛機落地前就可以著手進行排故工具、技術力量和相關備件的調度和準備,能夠大大縮短故障定位和排除時間,對提高大型飛機的試飛效率提供重要技術保障。
虛擬座艙實時監控技術在某型機飛行試驗中起到至關重要的作用,目前使用的實時監控畫面主要是簡單的單參數驅動的平面圖形,與座艙中的真實儀表差別很大,不能形象生動、直觀的顯示真實的座艙布局,不能完整、精細的表現座艙中所有顯示屏中測試參數的變化情況,采用虛擬現實技術,開發多種適合于大型飛機飛行試驗的虛擬座艙監控畫面,給指揮員“沉浸”于等同真實駕駛艙的感受和體驗。
虛擬現實( Virtual Reality,簡稱VR) 是近年來出現的高新技術,又稱虛擬仿真。虛擬現實是利用電腦模擬產生一個3 維空間的虛擬世界,提供使用者關于視覺、聽覺、觸覺等感官的模擬,讓使用者如同身臨其境一般,不僅可以及時、沒有限制地觀察三度空間內的事物,還可以通過對目標進行操縱,使用戶產生一種身臨其境的感覺。
為了達到虛擬現實的實際效果,滿足軟件的功能使用要求,系統設計時要考慮軟件升級、擴展的需求,因此,虛擬現實監控軟件采用模塊化設計思想,將各個功能模塊獨立起來,并實現有機地結合,利于各功能模塊的復用、擴展與維護。
總體結構設計
根據系統總體的要求,根據功能性的劃分,把系統分為基礎層和應用層,基礎層包括任務管理,應用層包括可視化監控軟件包(包括任務編輯軟件、二三維可視化監控軟件、機載測試系統監控軟件、虛擬座艙監控軟件和數據記錄回放軟件)。
系統總體結構示意圖如圖1所示。
接口設計與軟件流程圖
虛擬現實監控軟件的輸入接口主要有任務編輯、任務管理、數據記錄等部分模塊。
虛擬現實監控軟件的輸出接口主要有二三維可視化監控軟件、記載測試設備狀態監控模塊、虛擬座艙監控模塊等。
任務管理是整個系統的任務信息數據管理中心,主要實現任務的保存功能,各個應用模塊根據使用任務配置信息方式,通過相同的接口方式實現任務配置信息的上傳和下載。
任務編輯軟件是用于配置任務相關的信息的程序,主要包括任務文件的保存和讀取、二三維顯示的任務信息設置、任務的上傳和下載。
二三維可視化監控軟件是用于飛機起飛、降落和空中飛行等關鍵試飛科目試驗任務保障程序。包括運行管理模塊、數據接收處理模塊、三維模擬顯示模塊、二維電子地圖顯示、安全監控模塊。軟件可以通過配置進行三維和二維的同屏顯示或者拆分獨立顯示。
數據記錄軟件采用系統服務程序的方式運行,提供數據記錄操作。
根據以上描述,實時監控軟件的總體數據流向圖如圖2所示。

圖1 監控顯示軟件結構示意圖
虛擬現實監控軟件整個處理功能模塊整體性強、功能明確、運行效率較高。根據軟件功能要求,軟件流程為系統初始化設置、模型加載、啟動定時器、數據解算、畫面輸出等。其軟件流程如圖3所示。

圖2 軟件數據流向示意圖

圖3 軟件流程圖
主要模塊設計
虛擬現實實時監控軟件的主要模塊是測試設備健康狀態監控軟件和虛擬座艙監控軟件兩部分,下面具體就這兩部分的軟件設計進行介紹。
測試設備健康狀態監控軟件
機載測試系統要表現整個飛機內部的機載測試設備的工作狀態、各個設備的連接關系、通訊關系和板卡的數據信息。同時整個配置流程對靈活性要求比較高,要求能夠使用工具進行飛機和設備的控制。目前為止從來沒有嘗試過的新思路,但對測試設備的狀態、試飛任務的執行起著至關重要的作用,大大提高測試設備工作、排故效率。
(1)采用單獨的配置環境
針對需求的可變性要求,設計了單獨的設備配置管理工具,通過管理工具,用戶能夠根據實際工程的需要,對各個設備進行位置的擺放、參數的連接、連接關系的定義,采用了所見即所得的可視化設計方法,讓用戶能夠比較輕松的配置完成設備信息,完成監控任務的前期資源的準備。
(2)編譯器優化
在系統設計時,要能夠編輯選中設備和移動位置,容易進行設備控制,能夠比較方便的進行編輯。編輯器需要使用外部的配置文件,以便進行參數連接,明確的分工處理,簡化了操作的復雜性。
虛擬座艙監控軟件
虛擬座艙仿真模塊調用三維場景、二維儀表模型和相應的字符/符號與圖形,生成并驅動三維場景和二維虛擬儀表畫面,并在顯示器上輸出。監控人員對所看到的信息進行反饋,從而構成人在監控回路中的實時監控。
座艙虛擬顯示技術就是在實時監控系統中建立一個虛擬的座艙顯示軟件,通過測試數據對虛擬座艙中的屏顯進行驅動,還原飛機的真實座艙顯示情況,可以把所有儀表和部分重要數據集中到幾個監控畫面上,場景實時驅動模塊使用OpenGL來進行座艙、儀表模型的顯示和驅動,使用雙緩存技術進行畫面的顯示,避免了畫面閃爍。其中幾何頂點數據包括模型的頂點集、線集、多邊形集,這些數據經過流程圖的上部,包括運算器、逐個頂點操作等;圖像數據包括像素集、影像集、位圖集等,圖像像素數據的處理方式與幾何頂點數據的處理方式是不同的,但它們都經過光柵化、逐個片元處理直至把最后的光柵數據寫入幀緩沖器。在OpenGL中的所有數據包括幾何頂點數據和像素數據都可以被存儲在顯示列表中或者立即可以得到處理。
OpenGL要求把所有的幾何圖形單元都用頂點來描述,這樣運算器和逐個頂點計算操作都可以針對每個頂點進行計算和操作,然后進行光柵化形成圖形碎片;對于像素數據,像素操作結果被存儲在紋理組裝用的內存中,再像幾何頂點操作一樣光柵化形成圖形片元。
整個流程操作的最后,圖形片元都要進行一系列的逐個片元操作,這樣最后的像素值送入幀緩沖器實現圖形的顯示。OpenGL基本工作流程圖如圖4所示。
界面設計
根據軟件各功能模塊,遵循面向用戶的軟件界面設計風格,從軟件易操作性出發,進行了整體布局設計。虛擬現實實時監控軟件的主界面如下圖5,6所示。
數據平滑技術與局部驅動技術
虛擬化實時監控技術研究中,首次研究處理高效而穩定的數據平滑算法,首次實現了三維模型局部驅動技術在試飛實時監控畫面中的應用。
三維實體建模技術,不僅描述了實體全部的幾何信息,而且定義了所有的點、面、體的拓撲信息,可對實體信息進行全面完整的描述,能夠實現消隱、剖切、有限元分析、數控加工、外形計算等各種處理和操作。模型建好之后主要使用真實的試飛數據驅動它,能夠逼真地展現飛機空中姿態,如機翼變形的動態顯示、起落架動態監視等。
如果使用機載記錄數據進行回放,飛機姿態會非常平穩,局部活動部件的動作也非常流暢,但是遙測數據往往因為復雜的電磁環境、飛行動作對天線的影響、飛行距離、高度、地理環境等因素的影響,遙測信號會受到頻繁干擾,當遙測數據中跳點出現時,軟件要能判斷出是跳點還是出現了異常的真實數據,因為造成信號干擾的原因很多,所以判斷起來非常困難。

圖4 OpenGL基本工作流程圖

圖5 機載測試設備狀態實時監控界面

圖6 虛擬座艙軟件主界面
因此三維模型建好之后,還必須根據飛機各部位的動作特點和規律進行數學建模,采用微分方程、代數方程、邏輯關系式等表達形式來抽象出其運動規律,還要考慮到信號受到干擾時的要進行嚴密的平滑處理,平滑處理算法是非常復雜,因為異常情況的種類非常多,相關因素復雜。針對以上的這些特點,可以對飛機的各重要部位進行單獨的三維實體信息描述,配合數學模型和實時飛行數據的驅動,從而真實展現其飛行姿態,包括起落架收放信息。
在設計和實現過程中為了達到理想效果,對部分參數數據在三維模型上的體現進行了適當的修改,因為部分部件的數值很小在模型上即時變化了不仔細看也發現不了,因此將顯示幅度相應放大,但界面上增加了數據顯示功能,指揮員和試飛工程師看動作的同時能看到實際參數數值,不會因為動作幅度的微小放大而對他們造成錯覺,而且提高了三維模型可動部件的易于發現期變化的監控效果。
數據接入技術
系統開始的數據接入方式是針對已有的幾套系統的進行設計的,在系統開發過程中,需要接入單獨的結構數據包的數據,與已有的系統存在較大的分歧,因此設計者通過分析,以最小的程序改動量的方式進行處理,在保證系統穩定性的基礎上,完成了新的數據接入,從而保證了系統軟件的正確實施,有效的解決外來數據不一致的問題。
增加系統引入模塊之后的虛擬現實實時監控軟件,首先由用戶來判斷當前選擇使用的是哪種實時監控系統,如果用戶選擇Magali實時監控系統,則調用通信協議參數初始化函數,對通信協議相關參數如:服務器IP、通信協議類型、端口號等信息;如果用戶選擇的是開放式遙測數據處理系統,則進入創建TCP套接字,使用TCP協議將監控軟件所需參數名數組發送給視圖驅動接口;將需要監控的參數名組包后,發送給通信函數,通信函數從服務器接收到的所測試參數數組中挑出所需監控參數,按照監控軟件所需參數名順序,將服務器發送的數據進行重新挑選后放到客戶端數據緩存中,通過接口控制函數將重新組包后的參數,用UDP協議發送給實時監控軟件。
不同于以往的飛機實時監控軟件的設計,虛擬現實實時監控系統具有以下的特點。
(1)采用了鏤空方式表現飛機內部測試系統
編寫了針對系統的靈活可配置的圖形編輯界面,對系統的實現,提供了有效的可視化編輯工具。采用分步加載的方式,提高的畫面的連續顯示,讓顯示的板卡信息正確顯示。
(2)高度靈活的試驗任務管理框架
編寫了針對性比較強的獨立任務配置程序,以可配置方式實現參試裝備數據的編輯功能。試驗目標的可配置,使新增目標能夠方便的導入到系統中使用。
(3)預定航跡的規劃
提供外部設置接口,讓用戶根據實際情況設置航跡。在航跡的關鍵點位置,能夠顯示出相關的關鍵數據信息,同時能夠根據設置,播放出提示聲音。
(4)分層多級顯示場景
實現了快速加載三維場景,采用優化算法,保證地景的連續性,大幅運動的情況下沒有撕裂現象出現。采用分級網格技術,實現了多分辨率的地景圖片的融合。
虛擬現實實時監控系統能夠形象直觀地反映飛機真實飛行狀況,軟件達到了形象、生動、逼真的理想效果,在某大型運輸機中已經得到應用,效果顯著,反應良好。由于系統采取模塊化設計,進行模型庫升級之后,可以應用于大客飛機試飛數據遙測監控任務中,對以后更多的大型飛機測試系統健康狀態監控和虛擬座艙監控打下堅實的技術基礎。
10.3969/j.issn.1001-8972.2015.06.033