李海軍,孫偉瑋
(1.海軍航空工程學院兵器科學與技術系,山東煙臺 264001;
2.海軍航空工程學院研究生管理大隊,山東煙臺 264001)
大型、復雜裝備由于造價昂貴、結構復雜,裝備數量一般較少,且某些部件是不允許分解的,維修訓練難以在實裝上全面展開.同時,實裝訓練還容易造成裝備不可避免的人為損壞,影響裝備的戰備水平.對于具有火工品和戰斗部的裝備或具有輻射源的裝備,實裝訓練存在不安全的因素.因此,對于武器裝備來說,運用虛擬現實技術,模擬裝備真實的物理結構和維修訓練環境,建立虛擬維修訓練系統,可以不受時間、場地、培訓規模及部件拆卸可達性等各種因素的制約,大大提高維修訓練效率,是一種有效的維修訓練輔助手段.
虛擬維修的應用研究目前主要集中在兩個領域:產品開發與維修訓練.在產品研制早期從維修性的角度改進產品功能和結構設計,在產品開發中發現維修性問題并改正,不必等到物理樣機制造完成再實施.波音、洛克希德、普惠、BMW等工業巨頭對虛擬維修技術非常重視,開展了多項在產品開發階段對維修性進行研究的相關工作[1];國內外許多研究機構對維修訓練系統也進行了大量研究,如日本京都大學[2]、新加坡國立大學[3]以及國內的清華大學、北京航空航天大學、浙江大學及有關軍隊院校都在研究將虛擬維修技術應用于維修訓練中.
本文就虛擬維修訓練系統中的坐標變換與導航技術進行分析研究.
為精確描述虛擬環境中各對象之間的裝配關系、解除約束的運動關系,在構建虛擬維修環境時,需要為虛擬環境建立整體坐標系(亦即世界坐標系),為每個對象定義局部坐標系.當對象運動時,局部坐標系的位置根據運動方程在世界坐標中發生相應的變化,描述對象的圖形元素如點、線、面等會隨坐標系的變化而變化.視覺上,對象的運動是以相對于世界坐標系靜止的對象為參照物而形成的運動效果.對象間的相對運動關系可以世界坐標系為過度坐標系,分別通過與世界坐標系的運動關系求得.因此,坐標變換技術是虛擬維修中精確描述對象運動的關鍵技術.
虛擬環境下,虛擬樣機是基于層次結構的構造模型,零部件之間的層次結構決定了它們之間的父子關系.虛擬維修中,對象的拆卸和裝配就是層次模型中節點的邏輯分離與結合,交互控制是解除對象間的幾何約束,在運動約束條件下形成合理的運動視覺表示.層次結構中節點間坐標關系如圖1所示.其中,Oxyz代表父節點坐標系;O1 x1 y1 z1表示子節點坐標系.
虛擬拆卸與裝配需要解決如下技術問題:
1)節點運動獨立性.拆卸時,節點分離后父節點與子節點的運動不能相互影響;裝配操作時,子節點的運動具有隸屬父節點運動的特性,子節點運動應跟隨父節點形成整體的運動,即具有繼承特性;
2)部件導航的合理性.根據配合及運動約束關系,分離節點可以采用螺旋、平移、旋轉等運動方式與父節點實現脫離或結合.部件導航要根據對象的幾何構造和交互設備的要求,能夠方便地實現操作和觀察,并且采用適當的碰撞檢測和干涉剔出算法,使交互操作順利、合理地進行.
虛擬樣機的建模是基于一定坐標系的,為了建模的方便,不同的零件可能選擇了不同的坐標系.層次結構的裝配關系反映了零部件之間的父子關系,為了描述零部件的運動關系,需要建立子節點與父節點之間的坐標轉換關系.
實際上,只要知道任意兩個坐標系各對應軸的相互方位,就可以用一個確定的變換矩陣給出它們之間的變換關系.
虛擬對象的拆卸和裝配操作需要反映對象間的相對運動,為了表示子節點與父節點的相對運動關系,需要將子節點的運動投影至父節點坐標系.子節點的運動可以分解為相對父節點的平移運動和子節點坐標系的旋轉運動,因此子節點對象的坐標變換到父節點坐標系的數學表示可以寫成式(1)的形式.

圖1 層次結構中節點間的坐標關系Fig.1 Relationship of nodes among h ierarch ical structure

圖2 坐標系之間的關系Fig.2 Relationship between systems of coordinates

式中:L(h,p,r)為子節點到父節點的基元變換矩陣.為了得到變換矩陣,我們將子節點坐標系進行平移,使兩個坐標系的原點重合,兩坐標系三個軸之間的關系可以由 h,p,r來表示,如圖2所示.
假定起始狀態時,兩個坐標系重合,當子節點對象相對父節點有相對運動時,用 h表示子節點坐標系繞 O1 y1軸的旋轉角度,表示 O1 x1軸在 Oxz平面上的投影與 Ox軸之間的夾角;r表示子節點坐標系繞O1 x1軸的旋轉角度,表示 O1 y1軸與 Oxy平面的夾角;p表示子節點坐標系繞 O1 z1軸的旋轉角度,表示O1 x1軸與 Oxz平面的夾角.
可以得到:由子節點坐標系到父節點坐標系的變換矩陣為[4]

將式(2)得到的變換矩陣代入式(1)就可將子節點的坐標變換到父節點坐標系上.如果要想實現父節點坐標到子節點坐標系的變換,只需將平移坐標取反,式(2)所示的變換矩陣求逆即可.
這樣,虛擬對象間的相對運動關系就可以通過上述的矩陣變換方法進行變換得到.假定對象 A到整體坐標系的變換矩陣為 L a,對象 B到整體坐標系的變換矩陣為 L b,則對象 A到對象 B的坐標變換矩陣可以由 Lab=La? L-b1求得;對象 B到對象 A的坐標變換矩陣可以由 Lba=Lb?L-a1求得.
運動導航包括場景漫游和拆卸部件的運動學及動力學描述.場景漫游主要是視點變化設計,在虛擬維修系統中就是設計虛擬攝像機控制模型,使得操作人員能夠方便地觀察場景中的任何對象;拆卸部件的運動學和動力學描述就是要建立一個真實的拆卸環境,能夠模擬零部件拆卸過程,比如對象解除約束的過程,運動形式,重力、彈力等力學特性表示等.
運動導航包括場景視點變換、對象的分離與結合、運動行為的描述以及交互方法的設計等.
視點變換的主要目的是在虛擬維修過程中如何獲得最佳的視覺效果,能夠直觀、清楚地觀察對象間解除約束的過程和分離及結合過程.視點變換設計就是獲取視點坐標、改變視線方向的方法,能根據用戶在虛擬裝配環境中的視點位置和視線方向控制環境中的顯示內容.虛擬現實仿真軟件 EON采用透視投影的方法,將對象的三維空間坐標映射到位于攝像機的二維屏幕上,其原理如圖3所示.
1)虛擬攝像機位于投影中心,由投影中心到三維物體各點的連線與視平面的交點就形成了物體的透視投影.三維物體投影定義為從一個投影中心發出的射線穿過物體上各點,并與視平面相交形成投影.
2)由于攝像機的視場角有限,需要在視平面定義一個二維矩形窗口,其高為 H,寬為 W,從而確定可視區域.為了建立與對象坐標系的聯系,將坐標原點位于窗口中心的坐標系定義為觀察坐標系.虛擬攝像機攝像時,投影平面應垂直于世界坐標系的 z軸,這樣當虛擬攝像機在三維空間移動時,只要給定投影中心、窗口中心等相關參數,即可將世界坐標系中的位置轉換到攝像機的觀察坐標系位置,從而實現投影變換.假設在實際物體上取任意一點P,設它在世界坐標系中的坐標為(xw,yw,zw),如圖4所示.

圖3 虛擬攝像機透視投影原理Fig.3 Principle of camera perspective projection

圖4 透視投影幾何關系Fig.4 Geometrical relationship of perspective projection
令 (xp,yp,zp)為該三維物體在視平面上的二維投影透視圖上對應的點坐標.由于 z永遠為常數,根據世界坐標系的定義可知 zp=0,因此僅需要求出 xp和 yp.利用圖4中的相似三角形可得

式中:d為世界坐標系與視平面之間的距離,它是一個縮放比例:加大 d值,透視圖會隨之加大,反之亦然.例如,如果 d增大了,則實物與視平面越來越靠近,透視圖將增大.
EON的視點變換技術主要反映在 Camera和 View port功能節點上,Cam era節點本質上是一個框架(Frame)節點,只不過它被關聯復制到了 View port節點下的 Camera文件夾內,從而能夠對整個系統產生影響[7].
View port節點可以使模擬視窗呈現多窗口顯示,方便用戶在操作時全方位地對操作過程進行監控.此節點主要用來定義呈現的視野,以及模擬場景是如何顯示在模擬視窗中的.但它必須與用來定義攝像機鏡頭位置的框架(Frame)節點互相連接使用.
基于以上的使用方法,可以在 Camera節點下添加關鍵幀(Key Frame)節點,在其中設置需要變換的視點位姿,定義 TPO(Tim e&Position&Orientation)函數來描述 Camera節點時刻的位置、姿態信息,也就是時刻的視點位置或視角,TPO函數形式如式(5)所示[7].

式中:t為相對于起始時刻的時間;x,y,z為 t時刻 Camera節點的相對于三個坐標軸(世界坐標系)的坐標;h,r,p為 t時刻的 Camera節點相對于三個坐標軸(世界坐標系)的夾角.
這樣視點變換過程就表示為 Cam era節點時刻位置元的鏈表.
維修過程不可避免地涉及到操作方向的變化以及分離節點的獨立運動操作,當設備上的某一部件被拆卸下來后,該部件就與其它部件脫離了連接關系,操作人員對被拆卸部件以及拆卸裝配體的操作均不會相互影響.但是,虛擬維修系統中,虛擬樣機建立是基于一個裝配坐標系的層次結構模型,對象間存在有隸屬關系[6],即使零部件與裝配體脫離了物理連接,但它們之間的父子關系并沒有改變,在子坐標系下對子節點的操作不會影響父節點對象的狀態,但由于節點的運動隸屬性,父節點(如裝配體)的運動會使子節點對象隨動,這不符合現實的拆卸過程.如何改變這種現象呢?根據 EON軟件的特點,我們的設計方法描述如下.
1)節點邏輯分離方法設計
所謂邏輯分離是不改變節點間的物理連接關系,通過一定的方法使得節點在形式上分離,達到視覺上完全分離的目的.
EON軟件運行中不能改變節點間的隸屬關系,我們采用節點復制的辦法在其它節點下生成操作節點對象的一個副本,對象的拆卸裝配操作在副本上進行,在運行中采用節點隱藏和顯示的方法實現節點的邏輯分離.這種方法的關鍵是操作對象和副本之間的坐標傳遞,邏輯分離流程設計如圖5所示.
圖5中 Obj-Original代表操作對象,Obj-Copy代表操作對象的副本,裝配操作的流程與之相反,坐標的傳遞可通過編寫腳本語言實現,能夠在運行中實時更新[9].
2)交互設備的局部與全局響應設計
虛擬對象的操作是靠交互設備實現的,交互設備的響應應與操作對象一致,比如要將裝配體整體旋轉或移動,交互設備則應響應全局對象,但是如果要對子對象進行操作,交互設備應僅對子對象響應.
以鼠標交互為例,說明交互響應的觸發設計.EON軟件中鼠標的響應是靠 Click Sensor節點來感應的,視具體操作和功能節點關聯實現不同的操作.交互設備的響應主要應解決以下幾個問題:①交互設備對當前對象響應激活;②交互設備對其它對象響應屏蔽;③兩種響應的邏輯設計.響應的觸發可由菜單或快捷鍵實現,響應設計流程如圖6所示.

本文對虛擬維修系統中的坐標變換技術以及運動導航技術進行了研究,基于 EON Studio虛擬現實開發平臺,開發了“某型飛機彈射救生裝備虛擬維修訓練系統”和“某型導彈通用測試系統模擬器”等應用系統.
圖7(a)是某型彈射救生裝備中央燃爆器撞針組件分解的一個場景,采用節邏輯分離算法,已分離部件(如放置于工作臺上的拔銷螺母、螺蓋等)與裝配體之間的運動互不干涉[9];圖7(b)是采用不同視點觀察某型導彈通用測試系統的場景.實際應用證明,我們提出的坐標變換方法和導航方法實用性強、交互效率高.

圖7 應用實例Fig.7 Application instance
[1] 馬麟,呂川.虛擬維修技術的探討[J].計算機輔助設計與圖形學學報,2005,17(12):2729-2733.
Ma Lin,Lu Chuan.Study on virtualmaintenance techno logy[J].Journal o f Computer2aided Design&Computer Graphics,2005,17(12):2729-2733.(in Chinese)
[2] Ishii H.Development ofmachine-maintenance training system using Petri net and virtua l reality[C].Proceedings of Cognitive Systems Engineering in Process Control.Kyoto.,1996,1:130-137.
[3] Lin Fuhua.Developing virtualenvironments for industrial training[J].Information Sciences,2002,140(1P2):153-170.
[4] 李相民,孫瑾,謝曉方.火力控制原理[M].北京:國防工業出版社,2007:16-42.
[5] 李世停,朱波,陳力生,等.基于 Script交互控制的船用核動力裝置虛擬維修研究 [J].船海工程,2006,35(1):43-45.
Li Shiting,Zhu Bo,Chen Lisheng,etal.Study on the VRmaintenanceofmarine nuclear pow er p lan based on script language interaction contro l[J].Ship and sea engineering,2006,35(1):43-45.(in Chinese)
Sun Dongming,W ei Jingtao,Li Shan,et al.The subordination of parts in the virtua l p roduct design[J].Machinery design and manufacture,2004(2):31-32.(in Chinese)
[7] 北京易用偉業計算機應用技術有限公司.EON Studio快速入門指南[M],2007.
[8] 王松山,郝建平.基于交互特征的虛擬維修樣機建模[J].計算機仿真,2004,21(12):139-142.
W ang Songsan,Hao Jianping.Interaction feature-based modeling for virtualmaintenance prototype[J].Computer Simulation,2004,21(12):139-142.(in Chinese)
[9] 李林,李海軍.基于 EON Pro fessional 5.0的導彈虛擬維修訓練系統[J].山東輕工業學院學報,2007,21(4):11-13.
Li Lin,Li Haijun.V irtualmaintenance o fm issile based on EON Professional 5.0[J].Journal o f Shandong Institute of Light Industry,2007,21(4):11-13.(in Chinese)