張 琦,張?jiān)浦伲K凡囤,袁 博
(解放軍理工大學(xué) 工程兵工程學(xué)院,江蘇 南京 210007)
某型推土機(jī)以其機(jī)動(dòng)性強(qiáng)、自動(dòng)化程度高、響應(yīng)迅速等特點(diǎn),在完成多樣化軍事保障任務(wù)以及搶險(xiǎn)救援、事故勘察等非戰(zhàn)爭軍事行動(dòng)中發(fā)揮著重要作用.此類裝備結(jié)構(gòu)復(fù)雜,實(shí)施良好的技術(shù)保障是提高裝備工作可靠性的關(guān)鍵.目前,該裝備的維修訓(xùn)練普遍以物理樣機(jī)為訓(xùn)練對象,結(jié)合教師講解、二維多媒體演示等輔助手段進(jìn)行,此類訓(xùn)練方法實(shí)施范圍有限,人力、財(cái)力、裝備資源及時(shí)間消耗大.
虛擬現(xiàn)實(shí)技術(shù)的日益成熟為上述問題提供了很好的解決辦法.通過對保障過程進(jìn)行仿真,人可以沉浸在虛擬環(huán)境中,加深了人們對裝備保障的準(zhǔn)確理解和直觀感受.這種訓(xùn)練方式具有安全、經(jīng)濟(jì)、可控、無風(fēng)險(xiǎn)、不受氣候條件和空間限制等優(yōu)勢.
在充分分析用戶需求的基礎(chǔ)上,設(shè)計(jì)開發(fā)了數(shù)字樣機(jī)、虛擬訓(xùn)練環(huán)境、保障過程仿真、保障知識庫、考核評價(jià)方法和系統(tǒng)管理等內(nèi)容,根據(jù)系統(tǒng)所要實(shí)現(xiàn)的功能構(gòu)建某型推土機(jī)保障虛擬訓(xùn)練系統(tǒng)框架.
虛擬保障依托虛擬場景和數(shù)字樣機(jī)技術(shù)來實(shí)現(xiàn)人機(jī)交互,雖然它與實(shí)際保障在過程和行為上具有一致性,但在操作方法和實(shí)現(xiàn)手段上都與實(shí)際維修過程存在著差別.為保證與真實(shí)裝備保障過程的一致性和交互過程的真實(shí)性和靈活性,虛擬訓(xùn)練系統(tǒng)應(yīng)滿足如表1所示的幾方面要求.
表1 系統(tǒng)需求分析Tab.1 System demand analysis
1.2.1 系統(tǒng)功能結(jié)構(gòu)
在開發(fā)系統(tǒng)平臺前,參考對系統(tǒng)的需求分析,準(zhǔn)確描述系統(tǒng)是十分必要的.而描述系統(tǒng)最直觀的方式是設(shè)計(jì)系統(tǒng)功能結(jié)構(gòu),通過對功能的設(shè)計(jì)來構(gòu)建系統(tǒng)總體框架.考慮到某型工程裝備的復(fù)雜性、系統(tǒng)面向?qū)ο蟮亩鄻有浴⒂?xùn)練系統(tǒng)的通用性以及使用對象認(rèn)知和操作水平的差異,系統(tǒng)功能設(shè)計(jì)應(yīng)主要體現(xiàn)以下幾個(gè)方面,如圖1所示.
1.2.2 平臺總體框架
在虛擬環(huán)境下,模型的建立和維修過程的實(shí)現(xiàn)技術(shù)難度大,因此虛擬訓(xùn)練所涵蓋的內(nèi)容超越真實(shí)保養(yǎng)的內(nèi)容范圍.依據(jù)系統(tǒng)功能模塊設(shè)計(jì),平臺組織框架如圖2所示[1],主要包括:① 虛擬樣機(jī)的建立.利用實(shí)體建模技術(shù)建立操作對象和虛擬環(huán)境模型庫,建立零件模型信息、維修工藝和故障診斷專家知識數(shù)據(jù)庫.② 信息獲取.對模型、位姿、科目等信息進(jìn)行獲取,為虛擬訓(xùn)練的實(shí)現(xiàn)做準(zhǔn)備.③ 模擬仿真過程的實(shí)施.依據(jù)維修內(nèi)容規(guī)劃,對虛擬人和維修過程進(jìn)行模擬仿真,實(shí)現(xiàn)人機(jī)交互.④ 反饋評價(jià).對位姿、碰撞、控制信息的改變做出響應(yīng),使用反饋信息對訓(xùn)練質(zhì)量進(jìn)行考核評價(jià),包括知識考核和過程考核[1].
依據(jù)交互形式劃分,虛擬訓(xùn)練系統(tǒng)可分為桌面式、沉浸式、增強(qiáng)式、分布式等類型.考慮教育機(jī)構(gòu)投入成本等因素,桌面式虛擬訓(xùn)練系統(tǒng)為較好的選擇.其投入成本不高,在訓(xùn)練教學(xué)領(lǐng)域內(nèi)應(yīng)用范圍廣、推廣價(jià)值高.高速輪式裝備保障虛擬訓(xùn)練系統(tǒng)為桌面式虛擬訓(xùn)練系統(tǒng),在平臺設(shè)計(jì)上,力求簡潔實(shí)用,控制臺體積小.軟件部分使用VR環(huán)境開發(fā)平臺、建模平臺和方案實(shí)施平臺來實(shí)現(xiàn)交互信息的輸入和輸出.硬件平臺采用手柄、軌跡球、鼠標(biāo)等來實(shí)現(xiàn)人機(jī)交互,并且控制臺上備有相應(yīng)的輸入、輸出設(shè)備通信接口,便于虛擬訓(xùn)練系統(tǒng)的功能擴(kuò)展,保證虛擬訓(xùn)練系統(tǒng)運(yùn)行穩(wěn)定、可靠.系統(tǒng)功能結(jié)構(gòu)采用模塊化設(shè)計(jì),人機(jī)交互界面更加人性化,科目設(shè)置具有通用性,便于拓展用于其他裝備的保障虛擬訓(xùn)練.系統(tǒng)平臺的組成如圖3所示.
圖1 系統(tǒng)功能結(jié)構(gòu)圖Fig.1 Structure of the system function
圖2 平臺組織框架Fig.2 Organization framework of the platform
圖3 系統(tǒng)平臺組成Fig.3 Composition of the system platform
在訓(xùn)練科目規(guī)劃上,采用模塊化設(shè)計(jì)思想,在主程序框架下,設(shè)置各個(gè)訓(xùn)練主模塊及子模塊,通過主程序?qū)φ麄€(gè)訓(xùn)練過程進(jìn)行管理和控制.不同層次的用戶可以有針對性地選擇訓(xùn)練內(nèi)容.系統(tǒng)將訓(xùn)練教學(xué)模塊劃分為4個(gè)模塊:基礎(chǔ)訓(xùn)練、保養(yǎng)訓(xùn)練、拆裝訓(xùn)練和維修訓(xùn)練.訓(xùn)練過程中,用戶可以通過基礎(chǔ)訓(xùn)練了解裝備的構(gòu)造、性能、原理等知識,為之后的維修保養(yǎng)訓(xùn)練打下理論基礎(chǔ).各訓(xùn)練模塊相互銜接,且互不干擾,既可連續(xù)進(jìn)行,也可獨(dú)立完成,訓(xùn)練科目模塊化體系的構(gòu)建如圖4所示.
在虛擬訓(xùn)練系統(tǒng)的開發(fā)過程中,模型的精確建立發(fā)揮著至關(guān)重要的作用.高仿真度的三維模型可以真實(shí)再現(xiàn)實(shí)驗(yàn)場景、零件外觀甚至內(nèi)部結(jié)構(gòu),給用戶以良好的沉浸感,獲得如同甚至超過真實(shí)實(shí)驗(yàn)環(huán)境中的學(xué)習(xí)感受和體驗(yàn).
2.2.1 幾何建模及優(yōu)化
幾何模型在虛擬維修訓(xùn)練環(huán)境中的有效表達(dá)是構(gòu)建整個(gè)虛擬維修訓(xùn)練環(huán)境的重要因素.為了使裝備模型和場景模型更加貼近真實(shí),需要對CAD模型進(jìn)行二次開發(fā).常用的方法是在多邊形建模的基礎(chǔ)上對模型進(jìn)行NURBS(Non-Uniform Rational B-Splines)曲面修改,通過控制點(diǎn)和權(quán)因子來靈活地改變形狀,從而精確地表示二次規(guī)則曲面.
圖4 訓(xùn)練科目模塊化體系構(gòu)建Fig.4 Construction of the training course modular system
針對不同的訓(xùn)練目的,對模型也有不同的要求.虛擬訓(xùn)練環(huán)境中的對象多數(shù)需要進(jìn)行實(shí)體建模,但是如果所有模型都采用實(shí)體建模方法表現(xiàn),則系統(tǒng)的運(yùn)行負(fù)擔(dān)是非常大的,必須采用模型優(yōu)化技術(shù)對復(fù)雜場景進(jìn)行處理.使用基于單元分割、可見消隱、紋理映射、實(shí)例化和LOD(Levels of Detail)等的技術(shù)對模型結(jié)構(gòu)、紋理、實(shí)體、場景等進(jìn)行優(yōu)化[2],可以提高系統(tǒng)運(yùn)行速度和表現(xiàn)效果.虛擬訓(xùn)練的環(huán)境設(shè)計(jì)流程如圖5所示.
2.2.2 訓(xùn)練過程建模
為了保證虛擬訓(xùn)練過程更加真實(shí),需要準(zhǔn)確描述訓(xùn)練過程.目前應(yīng)用比較多的虛擬維修過程規(guī)劃方法主要有使用UML(Unified Modeling Language)技術(shù)[3]和改進(jìn)的 Petri網(wǎng)技術(shù)[4]兩種.使用UML對象類圖、狀態(tài)視圖、順序視圖等建立訓(xùn)練過程模型,比較明確地表示了整個(gè)系統(tǒng)所包含的訓(xùn)練科目和各科目所具有的功能,以及這些訓(xùn)練過程的實(shí)現(xiàn)途徑.為了突出虛擬訓(xùn)練過程及其訓(xùn)練模式的多樣化,在借鑒上述方法的基礎(chǔ)上,針對某型工程裝備保障訓(xùn)練的特點(diǎn),提出了面向任務(wù)的虛擬訓(xùn)練任務(wù)層次規(guī)劃方法.
圖6 維修任務(wù)層次規(guī)劃Fig.6 Hierarchical structure planning of maintenance tasks
根據(jù)維修任務(wù)性質(zhì),可以把維修事件劃分為下級層次維修子事件(如圖6).例如,對于單個(gè)維修事件進(jìn)行的分類僅是整體上的一個(gè)描述,具體的維修訓(xùn)練還要求更細(xì)致具體的過程規(guī)劃.對于系統(tǒng)內(nèi)的單個(gè)維修任務(wù),按其出現(xiàn)的故障現(xiàn)象進(jìn)行分塊處理,每一模塊內(nèi)又根據(jù)不同的故障原因,列出維修作業(yè)選項(xiàng),在選擇維修作業(yè)后進(jìn)而可以完成一系列維修任務(wù).
維修保養(yǎng)訓(xùn)練是虛擬訓(xùn)練的重要組成部分,需要提供必要的交互手段來實(shí)現(xiàn)虛擬人行為、工具動(dòng)作、裝備模型運(yùn)動(dòng)等過程,仿真過程需要滿足真實(shí)性要求,以保證虛擬訓(xùn)練的真實(shí)感和沉浸感.
2.3.1 碰撞檢測
在工具和零件拾取、虛擬拆卸與裝配、虛擬人動(dòng)作、視角轉(zhuǎn)移過程中,為防止占據(jù)不同空間位置的對象之間發(fā)生穿越現(xiàn)象,必須在虛擬訓(xùn)練環(huán)境中體現(xiàn)真實(shí)操作中的碰撞現(xiàn)象,包括碰撞檢測及碰撞響應(yīng).虛擬訓(xùn)練過程中,運(yùn)動(dòng)對象多,工具拾取、零件拆裝、虛擬人動(dòng)作、視角轉(zhuǎn)移等過程發(fā)生的碰撞往往同時(shí)發(fā)生.針對不同的應(yīng)用目的,對碰撞檢測的精確程度也有不同的要求,如在視角轉(zhuǎn)移或工具拾取過程中,只需粗略檢測,防止穿越現(xiàn)象發(fā)生;在零件拆卸與裝配過程中,依據(jù)工藝要求,對碰撞檢測的精確性要求較高,需要顯示碰撞對象、碰撞位置、碰撞時(shí)間等信息,進(jìn)而觸發(fā)相應(yīng)的碰撞相應(yīng)事件,給出諸如文本、聲音、圖像、色彩變換、振動(dòng)等反饋信息,使用這些信息指導(dǎo)完成訓(xùn)練任務(wù).
碰撞檢測算法在處理包含大量物體的復(fù)雜場景時(shí),首先將多數(shù)明顯不相交的物體對進(jìn)行快速排除,然后采用體包圍盒的方法,再對可能相交的物體對進(jìn)行進(jìn)一步檢測[5],碰撞檢測流程如圖7所示.
2.3.2 運(yùn)動(dòng)控制方法
為防止運(yùn)動(dòng)過程的不確定性,需要用解析法和數(shù)值法求解虛擬訓(xùn)練過程中涉及的運(yùn)動(dòng)學(xué)問題,解析法精度高,且能達(dá)到實(shí)時(shí)效果,但隨著自由度增加,運(yùn)動(dòng)對象建模也變得更加復(fù)雜,數(shù)值法通過不斷迭代,逐步縮小目標(biāo)誤差,最終求得關(guān)節(jié)位置的近似解.
為簡便設(shè)計(jì)開發(fā)過程,將訓(xùn)練任務(wù)進(jìn)行分解,并將維修動(dòng)作進(jìn)行分類,建立基本動(dòng)作庫,形成一系列可重用的基本動(dòng)作,作為虛擬人動(dòng)作的基礎(chǔ),根據(jù)訓(xùn)練目標(biāo)對虛擬人動(dòng)作進(jìn)行規(guī)劃,形成完整的動(dòng)作序列完成訓(xùn)練任務(wù).
圖7 碰撞檢測流程圖Fig.7 Flow chart or the collision detection
將某型推土機(jī)保障虛擬訓(xùn)練系統(tǒng)設(shè)計(jì)為桌面式虛擬訓(xùn)練系統(tǒng),在平臺設(shè)計(jì)上,力求簡潔實(shí)用,控制臺體積小.軟件平臺使用CAD等建模軟件建立裝備模型及環(huán)境模型信息庫,使用SQL Server提供數(shù)據(jù)庫開發(fā)環(huán)境,Visual C++6.0及EON Studio開發(fā)虛擬現(xiàn)實(shí)訓(xùn)練平臺,最大限度地挖掘桌面式虛擬訓(xùn)練系統(tǒng)功能,為用戶提供便捷的操作方法.訓(xùn)練科目規(guī)劃主要包含結(jié)構(gòu)演示規(guī)劃、工作原理演示規(guī)劃、虛擬拆裝序列規(guī)劃、拆卸路徑規(guī)劃、保養(yǎng)過程仿真、維修過程仿真等,做到功能全面,使訓(xùn)練質(zhì)量得到保證.系統(tǒng)控制臺及操作界面如圖8所示.
圖8 系統(tǒng)界面與虛擬環(huán)境Fig.8 System interface and the virtual environment
某型推土機(jī)保障虛擬訓(xùn)練系統(tǒng)的設(shè)計(jì)開發(fā)能有效解決裝備訓(xùn)練中面臨的時(shí)效滯后、技術(shù)保障能力不足、資源消耗大等問題,為教學(xué)單位、科研單位、維修保障單位提供了一個(gè)經(jīng)濟(jì)高效的訓(xùn)練手段.系統(tǒng)功能全面,兼顧知識的深度和廣度,用戶在操作時(shí),能夠逐漸掌握裝備結(jié)構(gòu)性能、使用方法、工作原理和維修保養(yǎng)手段,對于改善訓(xùn)練效果、提高人才培養(yǎng)、探索新的教學(xué)模式具有很大的促進(jìn)作用,具有較高的經(jīng)濟(jì)效益和軍事價(jià)值.
[1]焦玉民,蘇凡囤,張琦,等.基于EON的挖掘機(jī)虛擬訓(xùn)練系統(tǒng)[J].中國制造業(yè)信息化,2009,38(13):38-42.
JIAO Yumin,SU Fantun,ZHANG Qi,et al.Virtual maintenance of excavator based on EON[J].Manufacture Information Engineering of China,2009,38(13):38-42.
[2]劉佳,劉毅.虛擬維修技術(shù)發(fā)展綜述[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2009,21(11):1519-1533.
LIU Jia,LIU Yi.A survey of virtual maintenance technology[J].Journal of Computer-Aided Design & Computer Graphics,2009,21(11):1519-1533.
[3]張?zhí)燧x,劉穎,朱元昌.UML在軍用裝備虛擬維修訓(xùn)練系統(tǒng)開發(fā)中的應(yīng)用[J].軍械工程學(xué)院學(xué)報(bào),2004,16(1):56-59.
ZHANG Tianhui,LIU Ying,ZHU Yuanchang.Application of UML in the design of virtual maintain-train system[J].Journal of Ordnance Engineering College,2004,16(1):56-59.
[4]蔣雙雙.一種基于Petri網(wǎng)的虛擬維修過程建模方法[J].系統(tǒng)仿真學(xué)報(bào),2007,19(11):2488-2491.
JIANG Shuangshuang.Method of process-modeling in virtual maintenance based on petrinet[J].Journal of System Simulation,2007,19(11):2488-2491.
[5]JIMENEZ P,THOMAS F,TORRAS C.Collision detection:a survey[J].Computers and Graphics,2001,25(2):269-285.