王 穎 王愛民
(東南大學儀器科學與工程學院 南京 210096)
慣性導航[1]是利用慣性元件測量載體相對于慣性空間的運動參數、并經計算后來實施導航任務的一種尖端技術。慣性導航系統的組成設備安裝在載體上,它不依賴外界信息,也不向外輻射能量,不易受到干擾,是一種自主式導航系統。與平臺式慣性導航相比,捷聯式慣性導航省去了慣性平臺,陀螺儀和加速度計直接安裝在載體上,系統體積小、重量輕、成本低、維護方便。隨著高速、大容量的數字計算機和一些新技術的發展,捷聯慣導已經得到越來越廣泛的應用。
把虛擬現實技術[2]應用到捷聯慣性導航系統開發是新的設計思想,它是在建造真實器件和物理樣機之前,利用虛擬現實技術建立三維模型,通過動態試驗仿真,給出系統的可視化運行過程。相比運用Matlab或Labview進行導航算法仿真的傳統方法,利用虛擬現實技術的導航試驗系統有以下優點:1)給用戶提供了更豐富的信息、人—機配合效率高;2)采用面向對象的設計思想開發,明確劃分各模塊功能,系統組件化、擴展性強;3)突破環境限制,以虛擬景象和聲音給人以身臨其境之感。
基于虛擬現實的捷聯慣性導航試驗系統可簡單概括為捷聯慣導數字仿真加圖形可視化。捷聯慣性導航虛擬試驗系統的基本組成包括高性能計算機、計算機網絡、圖像生成與顯示系統、數據庫(包括捷聯慣導算法數據、慣性器件數據、導航數據、三維模型數據)以及相應的人機接口和軟件支撐環境,系統結構圖如圖1所示。

圖1 基于虛擬現實的捷聯慣導仿真系統拓撲結構圖
基于虛擬現實的捷聯慣性導航試驗系統主要包括:虛擬建模系統、虛擬試驗環境生成系統、軌跡仿真系統、慣性導航仿真系統、試驗管理系統、虛擬試驗可視化系統、虛擬試驗運行支撐環境、試驗結果評價系統幾大部分。考慮到虛擬視景仿真部分對計算機運算能力的較高要求以及系統實際運用中的靈活可用性,系統采用分布式的組織形式。以上組成要素分為四塊:虛擬可視化部分、慣性器件仿真部分、捷聯慣導解算部分以及試驗管理、結果評估系統。各部分由局域網相互連接,如圖2所示。

圖2 基于虛擬現實的捷聯慣導試驗系統功能框圖
捷聯慣導系統仿真主要是指慣性導航仿真系統和軌跡仿真系統,包含慣性器件(陀螺儀和加速度)數學模型的程序實現、類接口設計,以及導航捷聯算法的程序實現、類接口設計和導航軌跡的實現。關系框圖[3]如圖3所示。

圖3 捷聯慣性導航系統仿真框圖
姿態微分方程是捷聯系統的動態方程之一。根據姿態微分方程計算姿態矩陣是捷聯慣性導航最重要的一部分工作,由此確定載體坐標系與導航坐標系之間的方向余弦矩陣,是導航計算和準確控制的基礎。姿態矩陣即時修正算法主要有三種[4]:歐拉角法(三參數法)、轉動四元數法(四參數法)、方向余弦矩陣法(九參數法),它們通過解不同的微分方程得到姿態矩陣。考察驗證算法的運行效果是導航試驗的主要任務之一。為了滿足多樣性需求,研究各種不同算法的特性,系統內置了多種算法。
3.2.1 四元數畢卡迭代法
捷聯陀螺的輸出一般情況下是采樣時間間隔內的角增量,為了避免噪聲的微分放大,應直接用角增量來確定四元數,而不應該將角增量換算成角速度。畢卡算法[5]就是由角增量計算四元數的常用算法。
四元數微分方程為:

用畢卡算法求解微分方程得:


3.2.2 四元數四階龍格庫塔法
龍格庫塔算法是一種便于使用計算機求解微分方程的數值積分算法,表達為當已知方程式解的初值時,可在解存在的區間各點上,逐點求出方程式的近似解,算法的階次越高,計算精度越高。
利用四階龍格-庫塔法求解四元數微分方程:

虛擬環境建模是虛擬環境生成中非常關鍵的一環。導航仿真的場景為虛擬船舶在海洋環境中航行,航行過程中場景的真實感主要依賴于周遭地理環境的自然變化來體現,這使得地形的建立在整個虛擬環境的建模中尤為重要[6]。
常見的地形可視化分為根據地學圖形數據的精確描述以及模擬自然場景中的地形兩種[7~8]。為了增加導航虛擬仿真系統的真實性,更好地模擬運載體的實際航線并考察實際航線下的導航誤差,本文采用基于數字高程模型(Digital Elevation Model)[9]的地形模型生成。
建立三維地形模型的過程為:
1)組織準備:根據系統仿真的需要確定模型的位置和范圍,選取合適的地理數據,并對數據進行一些必要的轉換與處理。
2)創建與測試:使用數字高程數據創建地形數據,并組織層次細節。測試創建好的模型,檢驗其是否能正常和高效的運行。
3)增加特征屬性:測試正常后,決定仿真系統所需要的信息特征,在確保信息數據準確的前提下,將這些特征屬性加入到數據中。
4)檢驗與優化:在實時仿真系統中運行,檢驗是否正常滿足要求。并在此基礎上,對數據進行進一步的優化。
最后生成的群島模型如圖4所示。

圖4 基于真實地理信息的海島模型
三維場景繪制是將建模時生成的三維幾何模型,采用透視投影的方法,將其繪制到計算機屏幕上去。本文采用三維可視化視景仿真軟件Vega實現虛擬場景的繪制。
基于Vega開發視景仿真程序的基本步驟[10]是:
1)利用ADF(Application Definition Files)文件進行初始化設置;
2)編寫仿真程序,調用初始化系統和模塊的函數,讀入ADF文件中數據并裝載相關的數據庫,創建并配置類的實例;
3)完成初始化,調用循環函數,執行相關功能的程序庫以渲染、刷新場景。
典型Vega應用程序的框架如圖5所示。
Vega應用程序可以分成兩個主要的階段,首先是靜態描述階段,然后進入Vega系統的動態循環[12]。
第一個階段主要為通過讀入應用定義文件ADF對Vega系統正確運行進行必要的系統配置,包括內存分配,參數設置,Vega類的定義等。
ADF文件建立在Vega的應用開發界面LynX中完成[13],主要完成以下任務:
1)加載航行場景所需的各種模型:包括建立的艦船模型、地形模型,以及Vega中的海洋模塊等航行場景中的必需元素。
2)設置調整模型對象參數:包括對象的方位、運動方式以及深度使用等一些高級功能。
3)添加環境效果:包括光源、天空、各種大氣層物理現象、天體運行等等。

圖5 Vega應用程序框架圖
4)設置顯示通道、窗口。
而Vega仿真應用程序主要是在第二個階段Vega動態循環中實現的。在該階段視景仿真系統部分通過與捷聯慣導仿真部分通信得到的艦船實時信息控制虛擬船舶航行。
系統最終運行效果如圖6所示。

圖6 系統運行效果圖
基于虛擬現實的捷聯慣性導航試驗系統是慣性導航與虛擬現實技術相結合的產物。虛擬現實技術多感知性、交互性、沉浸感和想象性的引入使得系統的仿真效果相比傳統的導航仿真有了質的飛躍,方便了用戶深入了解不同導航系統的特性,并且提供了系統演示、教學等一系列新的應用方向。
仿真中真實地形的應用使運載體能夠模擬實際運行中的航線,大大增強了虛擬可視化的真實性并使導航仿真精確度的提高成為可能。
算法和慣性器件的多樣性,可以使系統實現不同的組合,輔助捷聯慣導系統的快速開發,縮短開發周期。
由于條件所限,目前的捷聯慣導虛擬試驗系統還是桌面式的非沉浸虛擬現實系統。通過使用一些虛擬現實設備如立體眼鏡、頭盔式顯示器、數據手套、3D跟蹤設備能夠大大提高系統的真實感、沉浸感以及與用戶之間的交互水平。
[1]秦永元.慣性導航[M].第1版.北京:科學出版社,2006
[2]洪秉镕,蔡則蘇,唐好選.虛擬現實及其應用[M].北京:國防工業出版社,2005
[3]趙玉霞.捷聯慣導系統仿真算法的研究及其實現[D].大連理工大學,2005
[4]孫麗,秦永元.捷聯慣導系統姿態算法比較[J].中國慣性技術學報,2006,14(3):6~10
[5]周紹磊,叢源材,李娟,等.方向余弦矩陣中四元數提取算法比較[J].中國慣性技術學報,2008,16(4):415~418
[6]羅雙艷.氣墊船海上運動的視景仿真技術研究[D].哈爾濱工程大學,2007
[7]李慶忠,高秀榮.三維可控真實感地形生成方法研究[J].系統仿真學報,2008,20(11):2938~2941
[8]齊敏,郝重陽,佟明安.三維地形生成及實時顯示技術研究進展[J].中國圖象圖形學報,2000,5(4):269~276
[9]何輝明.數字高程模型DEM的建模及其三維可視化研究[D].東南大學,2004
[10]王乘,李利軍,周均清,等.Vega實時三維視景仿真技術[M].武漢:華中科技大學出版社,2005
[11]孔藝權,王文娟.模擬器和虛擬機在網絡協議虛擬實驗的應用[J].計算機與數字工程,2008,36(7)
[12]Vegaprogrammer's guide.version 3.7.1MultiGen-Paradigm Inc.,2001
[13]Vega Lynx User's Guide Version 3.7.1MultiGen-Paradigm Inc.,2001