董健康,楊 柳,耿 宏
(中國民航大學(xué) 電子信息與自動化學(xué)院,天津 300300)
虛擬拆裝訓(xùn)練是飛機維修訓(xùn)練系統(tǒng)的重要組成之一[1],對民航維修人員熟悉工作,提高維修人員的拆裝操作水平具有重要意義。采用虛擬拆裝仿真訓(xùn)練的方式,是較為有效的維修訓(xùn)練途徑,虛擬拆裝仿真主要包括人與拆裝部件的行為、人與拆裝部件的交互,行為是交互過程中產(chǎn)生的一系列動作,為更好地實現(xiàn)虛擬拆裝訓(xùn)練的仿真效果,提高拆裝訓(xùn)練效率,很多學(xué)者對拆裝過程進(jìn)行研究[2]。
如劉佳等基于Petri網(wǎng)[3]、UML狀態(tài)機[4]等方法對飛機拆裝部件間的約束關(guān)系、運動方式及拆裝序列進(jìn)行描述;張云榮等利用著色Petri網(wǎng)[5]、資源競爭機制[6]等方法建立虛擬拆裝過程模型,研究了拆裝對象的結(jié)構(gòu)、人員間的協(xié)作關(guān)系,將虛擬人定義為維修資源、“空閑”狀態(tài)、“忙碌”狀態(tài)等形式。以上的學(xué)者只考慮了虛擬場景中拆裝部件的狀態(tài)變遷和行為變化,對“人”的站立、行走、拆裝操作等行為及人與部件間的交互關(guān)系考慮較少,沉浸感不足;另外,在對虛擬人拆裝行為進(jìn)行仿真時,國內(nèi)外學(xué)者通過捕獲人體動作數(shù)據(jù)[7]、運動跟蹤系統(tǒng)[8]、動作組合[9]等方法,實現(xiàn)了虛擬人拆裝行為的控制,但沒有從拆裝任務(wù)角度去描述虛擬人在拆裝過程中的行為變化。
考慮到拆裝過程不僅包含拆裝部件,也包含虛擬人,且部件的拆裝是由虛擬人完成,因此可以通過描述虛擬人行為動作反映部件的運動方式,以虛擬人逐步完成拆裝的過程體現(xiàn)部件的拆裝流程,減少對部件拆裝信息的表達(dá)。
針對上述問題和思想,以飛機部件的拆裝為對象,研究在拆裝部件的過程中虛擬人與拆裝部件的交互關(guān)系及虛擬人拆裝行為的表達(dá)方式。首先將拆裝過程分為拆裝部件的狀態(tài)變化過程和虛擬人多個拆裝子過程交叉構(gòu)成;建立語義通用的虛擬人拆裝行為參數(shù)化模型,用于統(tǒng)一表示虛擬人行為信息;最后分析虛擬人與拆裝對象的交互關(guān)系,建立虛擬拆裝模型,并依據(jù)飛機虛擬拆裝過程循環(huán)性和迭代的思想,構(gòu)建虛擬人拆裝行為、部件狀態(tài)、拆裝次序之間的迭代關(guān)系函數(shù),以循環(huán)迭代的方式表示虛擬人拆裝行為變化過程及部件的拆裝流程。
拆裝過程是指下發(fā)拆裝任務(wù)后,虛擬人依照飛機維護(hù)手冊,通過工具或徒手與拆裝對象進(jìn)行交互的過程,主要包含虛擬人拆裝行為信息,拆裝對象的狀態(tài)信息,以及虛擬人、維修工具、拆裝對象之間的交互信息,分析拆裝過程中虛擬人、拆裝對象之間的關(guān)系,總結(jié)拆裝過程主要具有以下特性:①動態(tài)性:拆裝部件是由多個零件組成的,動態(tài)是指拆裝部件的狀態(tài)隨著各零件拆裝的完成而發(fā)生改變;②循環(huán)性:虛擬人拆裝某一零件的過程可以看作一個子過程,子過程分為準(zhǔn)備拆裝、正在拆裝、結(jié)束拆裝,而整個拆裝過程則由子過程多次循環(huán)組成,構(gòu)成了循環(huán)事件系統(tǒng)。
根據(jù)拆裝過程的特性分析,可將拆裝過程分為拆裝部件的狀態(tài)變化過程和虛擬人拆裝多個子過程交叉構(gòu)成,如圖1所示。
圖1 拆裝過程特性分析
拆裝任務(wù)劃分是拆裝過程描述的前提,是為虛擬人更容易理解具體的拆裝指令,有利于虛擬人的拆裝操作,基于以上對拆裝過程的特性分析,依據(jù)拆裝任務(wù)的層次關(guān)系,對拆裝任務(wù)進(jìn)行劃分,往往一個拆裝任務(wù)包含不同的拆裝部件,每個拆裝部件又由多個元部件組成,元部件是不可再分的零件,如螺釘、螺帽等,以黃系統(tǒng)儲壓器拆裝為例,具體劃分如圖2所示。
圖2 拆裝任務(wù)層次分析
圖2中,黃系統(tǒng)儲壓器拆裝任務(wù)中包含拆裝部件PTU隔離耦合器、儲壓器,元部件端蓋、螺帽、螺釘?shù)?,則虛擬人在拆裝過程中直接執(zhí)行的指令是拆裝端蓋、螺釘、螺帽。
圖1中,部件的狀態(tài)變化是由虛擬人拆裝子過程的結(jié)束而觸發(fā)的,因此可將子過程的結(jié)束看成是部件狀態(tài)變化的標(biāo)志,虛擬人拆裝子過程是指虛擬人拆裝元部件的過程,由虛擬人的行為動作組成,通過對拆裝行為進(jìn)行抽象分析,歸納出行為的基本特點,建立通用的行為表示模型,從而簡化對元部件的位置、外部特征、運動方式等信息的描述,減少了模型信息量。
虛擬人在飛機虛擬拆裝過程中改變自身的行為與元部件進(jìn)行交互,從而實現(xiàn)部件狀態(tài)的改變,行為的改變主要由虛擬人的動作變化產(chǎn)生,分析虛擬人的拆裝動作特點,總結(jié)為以下3點:
(1)并行性:指虛擬人在拆裝元部件時伴隨著與元部件拆裝不相關(guān)的動作同時并行,如拆裝大氣資料慣性基準(zhǔn)組件時,虛擬人不僅用手?jǐn)Q螺帽且伴隨著身體蹲下的動作;
(2)相似性:指在拆裝過程中存在相似的元部件,使得虛擬人在拆裝元部件時,用到相同的工具或相似的動作,如拆裝輔助動力裝置啟動接觸器和引起負(fù)載控制活門都需用螺絲刀擰螺釘;
(3)有序性:虛擬人在拆裝元部件時會依次調(diào)整自身的位置、姿態(tài)及手部的動作,以達(dá)到可以拆裝的目的。
分析虛擬人拆裝元部件的動作特點,可將虛擬人的拆裝動作分為:拆裝不相關(guān)動作和拆裝相關(guān)動作。其中拆裝不相關(guān)動作是指虛擬人在準(zhǔn)備拆裝和結(jié)束拆裝中所做的姿態(tài)調(diào)整動作,如虛擬人的抬低頭、彎腰、下蹲等動作;拆裝相關(guān)動作是指虛擬人正在拆裝時利用工具或徒手拆裝元部件的手部動作,如握、擰、拉等。
在拆裝不同的元部件時,虛擬人的拆裝行為變化不唯一,但拆裝動作類型和動作變化順序一致,為將虛擬人拆裝行為表示規(guī)范化,需建立虛擬人拆裝行為模型,該模型應(yīng)具備以下特性:①語義性:模型中的參數(shù)應(yīng)具備一定的拆裝語義,便于虛擬人理解,且通過參數(shù)的組合可以表述某一拆裝行為;②通用性:即通過修改模型中參數(shù)可以生成各種拆裝行為,以適用于不同的拆裝對象。
基于以上對拆裝動作特點的總結(jié)及動作的分類,拆裝行為模型包含虛擬人的姿態(tài)調(diào)整動作、拆裝工具、手部拆裝動作,依據(jù)拆裝行為的有序性:調(diào)整姿態(tài)—使用工具/徒手操作—調(diào)整手部拆裝動作,依次用參數(shù)的形式表示,建立虛擬人拆裝行為模型。
定義1 虛擬人拆裝行為參數(shù)化模型
Di={Human,Posture,Tool,HMotion}
(1)
Di為拆裝元部件i的拆裝行為集合,其中Human用于表示執(zhí)行拆裝行為的虛擬人代號,Posture表示虛擬人在拆裝元部件i時身體保持的姿態(tài)動作集合,Tool表示虛擬人拆裝使用的工具集合,主要包括徒手(Hand)、螺絲刀(Sdriver)、扭力扳手(TWrench)、柳釘槍(GRivet)、剪鉗(CPattern)、扳手(Wrench)、榔頭(Hammer)等工具,HMotion表示虛擬人拆裝元部件i時的手部拆裝動作集合。在飛機拆裝過程中常用姿態(tài)動作(Posture)和手部拆裝動作(HMotion),見表1,若虛擬人拆裝元部件i的行為參數(shù)為Di={Human,Squat,Wrench,WScrew}, 根據(jù)以上定義可將虛擬人的拆裝行為描述為:虛擬人拆裝元部件i時,身體保持下蹲的姿勢,用扳手沿著元部件i的運動方向擰動元部件i。
虛擬人在拆裝操作時,根據(jù)部件的信息,調(diào)整自身的姿態(tài),并選擇相應(yīng)的工具對部件進(jìn)行拆裝操作,虛擬人與
表1 拆裝動作描述
部件的交互作用關(guān)系如圖3所示。
圖3 人與部件的交互關(guān)系
通過對虛擬人拆裝部件的分析,虛擬人拆裝部件所包含的信息有:組成部件的所有元部件信息、虛擬人拆裝部件的姿態(tài)動作、拆裝部件使用的工具、虛擬人的手部動作,對其集中表示,建立虛擬拆裝模型。
定義2 虛擬拆裝模型為
DI=(C,P,T,M)
(2)
式中:C=(c1,c2,…,ci,…,cn)Τ表示拆裝任務(wù)中所有元部件的列向量,元素ci對應(yīng)元部件的名稱;P=(p1,p2,…,pi,…,pn)Τ為虛擬人在拆裝過程中姿態(tài)動作列向量,向量中的元素pi屬于同一虛擬人姿態(tài)動作集合,即pi∈Posture, 為拆裝元部件i時,對應(yīng)的虛擬人姿態(tài)動作參數(shù);T=(t1,t2,…,ti,…,tn)Τ為虛擬人拆裝元部件使用的工具列向量,向量中的元素ti屬于工具集合,即ti∈Tool;M=(m1,m2,…,mi,…,mn)Τ為虛擬人拆裝部件過程中手部動作列向量,向量中的元素mi表示拆裝元部件i時,虛擬人手部動作的參數(shù),mi∈HMotion。
由虛擬拆裝模型可知,DI的每一行表示虛擬人拆裝元部件的各種行為信息,如DI中第i行為 (ci,Stand,Hand,Insert), 表示虛擬人拆裝元部件ci的行為信息為虛擬人保持站立的姿態(tài),用手插入元部件ci。
分析飛機虛擬拆裝過程的循環(huán)特性,拆裝過程是由拆裝多個元部件循環(huán)重復(fù)組成的活動,將每一次對拆裝部件過程的重復(fù)稱為一次“迭代”,將每一次迭代得到的拆裝信息作為下一次迭代的初始值,因此根據(jù)飛機虛擬拆裝過程循環(huán)性和迭代的思想,建立基于循環(huán)迭代的飛機虛擬拆裝過程模型(disassembly process model cycle iteration,DPMCI),并引入與飛機虛擬拆裝相關(guān)聯(lián)的參數(shù),即部件狀態(tài)、拆裝次序,從而給出DPMCI的定義。
定義3 基于循環(huán)迭代的飛機虛擬拆裝過程模型(DPMCI)
DPMCI={DI,S,DS,f}
(3)
式中:DI為虛擬人拆裝行為,詳解見式(2);S為拆裝部件的狀態(tài),部件的初始狀態(tài)S0=E為n階的單位陣;DS表示虛擬人拆裝元部件的次序
DS=(ds1,ds2,…,dsi,…dsn)Τ
其中,dsi=(dsi1,dsi2,…,dsij,…dsin) 表示元部件i與其它元部件之間的拆裝次序,dsij=0或1,若dsij=1, 則虛擬人需先執(zhí)行元部件i拆裝,再執(zhí)行元部件j拆裝,若dsij=0表示無拆裝次序;f為DI,S,DS之間的迭代關(guān)系函數(shù), (DIci+1,Sci+1,DSci+1)=f(DIci,Sci,DSci), 表示虛擬人完成元部件ci的拆裝操作后,使得拆裝部件C的狀態(tài)改變,由迭代函數(shù)f獲得虛擬人拆裝元部件ci+1的行為等信息。
基于循環(huán)迭代的思想,虛擬人對元部件數(shù)為n的部件進(jìn)行拆裝,由以上定義得初始值DI0,S0,DS0, 搜索S0中的每一列S0[:,k],k=1,2,…,n, 計算DS0×S0[:,k], 若結(jié)果等于0,表示元部件k準(zhǔn)備進(jìn)行拆裝,當(dāng)元部件k拆裝完成后,部件狀態(tài)S0發(fā)生一次改變,S1=zero(S0(:,k)), 表示將S0的第k列置0,并由S1得出虛擬人的拆裝行為DI1=S1×DI0及虛擬人拆裝元部件的次序DS1=S1×DS0, 完成一次迭代過程,得出的結(jié)果作為下次迭代的初始值,虛擬人準(zhǔn)備進(jìn)行下一步拆裝操作。當(dāng)虛擬人完成n次拆裝操作后,DIn=0, 迭代結(jié)束,表示部件拆裝完成,實現(xiàn)了虛擬人拆裝部件的過程描述,其DPMCI算法偽代碼描述如下:
DPMCI算法:
Input: 初始值DI0,S0,DS0,n
Output: 虛擬人拆裝行為DIx,Sx
(1) Initializex←0,U[n];
(2)ifDIx!=0then
(3)fork ←x+1 to n do
(4)ifDSx×Sx[:,k]=0then
(5) i←0;
(6)U[i]←k;
(7) i←i+1;
(8)end
(9)end
(10)Sx+1←zero(Sx[:,U[0]]);
(11)DIx+1←Sx+1×DIx;
(12)DSx+1←Sx+1×DSx;
(13)U[n]←{0};
(14) returnDIx+1,Sx+1;
(15) x←x+1;
(16)end
結(jié)合A320分布式虛擬維修訓(xùn)練系統(tǒng),以集中故障顯示接口組件(CFDIU)的拆卸實驗為例進(jìn)行驗證,其安裝過程為逆過程,這里不具體闡述,CFDIU的拆卸流程如圖4所示。
圖4 CFDIU拆卸流程
分析CFDIU的拆卸流程,需拆卸的元部件有:工作平臺(c1)、艙門按鈕(c2)、艙門把手(c3)、艙門(c4)、螺帽(c5、c6)、CFDIU組件(c7)、堵蓋(c8),虛擬人的姿態(tài)動作包含直立(Stand)、蹲下(Squat),手部動作包含推(Push)、按壓(Press)、旋轉(zhuǎn)(Rotate)、拉出(Pull)、插入(Insert)、徒手?jǐn)Q(Screw)。拆卸過程中虛擬人行為與元部件的交互關(guān)系如圖5所示。
圖5 虛擬人行為與部件的交互關(guān)系
依據(jù)虛擬人行為與元部件間的交互關(guān)系及所需描述的信息,建立CFDIU的虛擬拆裝模型DI0依據(jù)DPMCI算法步驟,可得拆卸CFDIU的虛擬人行為描述為:
步驟1 虛擬人推放工作平臺到824電子艙處,接近824電子艙;
步驟2 用手按壓艙門按鈕,艙門把手彈出;
步驟3 虛擬人手握艙門把手并旋轉(zhuǎn);
步驟4 推開艙門,進(jìn)入824電子艙中,接近CFDIU;
步驟5 虛擬人保持身體蹲下的姿勢,用手?jǐn)Q松左/右螺帽并放低;
步驟6 手握CFDIU組件把手并拉出CFDIU組件;
步驟7 雙手抱住CFDIU組件,將組件放置在工作平臺上;
步驟8 手持堵蓋并插入到電插頭上。
當(dāng)完成第一次循環(huán)迭代后,得出迭代結(jié)果DI1
將DI1作為下次迭代的初始值,進(jìn)入下一步操作,以此類推,當(dāng)虛擬人完成最后一次操作后,得出迭代結(jié)果DI8=0, 表示迭代結(jié)束,CFDIU拆卸完成,虛擬人拆卸CFDIU的過程仿真如圖6所示。
圖6 CFDIU拆裝過程仿真
結(jié)合CFDIU拆卸任務(wù)應(yīng)用實例,對文獻(xiàn)[3]Petri網(wǎng)模型、文獻(xiàn)[4]狀態(tài)機模型、DPMCI的拆裝效率采用以上4個指標(biāo)進(jìn)行評估對比,評估結(jié)果見表2。
表2 拆裝效率評估
如表2所示,在拆卸任務(wù)相同的情況下,元部件種類、數(shù)量及使用的工具也都相同,因此3種方法所得的工具更換次數(shù)與部件的穩(wěn)定性一致;而在執(zhí)行者拆裝部件的過程中,DPMCI考慮了虛擬人的拆裝行為及虛擬人與部件的交互關(guān)系,以虛擬人拆裝行為變化表示部件的狀態(tài)變化,減化拆裝部件間的約束、狀態(tài)等信息的描述,給出了虛擬人拆裝行為的參數(shù)化表達(dá),從虛擬人的角度進(jìn)行拆裝操作,增強拆卸目標(biāo)與虛擬人的交互作用,使虛擬拆卸仿真效果更貼近實際拆卸過程,并且實驗結(jié)果得出的元部件可見性值為0.8932和拆裝角度值為0.7646均大于文獻(xiàn)[3]的0.7854和0.6739、文獻(xiàn)[4]的0.6023和0.7333,且總值最大,為2.4245。由文獻(xiàn)[15]知,元部件的拆裝可見性和拆裝角度值越大,維修人員完成拆裝訓(xùn)練任務(wù)越方便,拆裝效率越高,參照以上實驗結(jié)果及對比分析說明,將DPMCI虛擬拆裝過程建模方法應(yīng)用到拆裝仿真訓(xùn)練中,可以提高部件的拆裝效率。
對飛機拆裝過程進(jìn)行研究,結(jié)合參數(shù)化行為描述和循環(huán)迭代法建立了飛機虛擬拆裝過程模型,實現(xiàn)虛擬人拆裝行為的參數(shù)化描述及部件狀態(tài)變化的表達(dá),并將這種模型應(yīng)用在基于OSG開發(fā)的分布式三維虛擬維修訓(xùn)練平臺中,經(jīng)實例驗證與對比,該方法從虛擬人行為變化角度描述的部件拆裝過程,增加了部件可見性和拆裝角度,使虛擬人與拆裝對象間的交互關(guān)系更為簡單直觀,受訓(xùn)人員更容易完成拆裝任務(wù),從而提高拆裝訓(xùn)練效率。