基于循环迭代的飞机虚拟拆装过程建模方法

2020-03-07 12:48董健康
计算机工程与设计 2020年2期
关键词:手部姿态部件

董健康,杨 柳,耿 宏

(中国民航大学 电子信息与自动化学院,天津 300300)

0 引 言

虚拟拆装训练是飞机维修训练系统的重要组成之一[1],对民航维修人员熟悉工作,提高维修人员的拆装操作水平具有重要意义。采用虚拟拆装仿真训练的方式,是较为有效的维修训练途径,虚拟拆装仿真主要包括人与拆装部件的行为、人与拆装部件的交互,行为是交互过程中产生的一系列动作,为更好地实现虚拟拆装训练的仿真效果,提高拆装训练效率,很多学者对拆装过程进行研究[2]。

如刘佳等基于Petri网[3]、UML状态机[4]等方法对飞机拆装部件间的约束关系、运动方式及拆装序列进行描述;张云荣等利用着色Petri网[5]、资源竞争机制[6]等方法建立虚拟拆装过程模型,研究了拆装对象的结构、人员间的协作关系,将虚拟人定义为维修资源、“空闲”状态、“忙碌”状态等形式。以上的学者只考虑了虚拟场景中拆装部件的状态变迁和行为变化,对“人”的站立、行走、拆装操作等行为及人与部件间的交互关系考虑较少,沉浸感不足;另外,在对虚拟人拆装行为进行仿真时,国内外学者通过捕获人体动作数据[7]、运动跟踪系统[8]、动作组合[9]等方法,实现了虚拟人拆装行为的控制,但没有从拆装任务角度去描述虚拟人在拆装过程中的行为变化。

考虑到拆装过程不仅包含拆装部件,也包含虚拟人,且部件的拆装是由虚拟人完成,因此可以通过描述虚拟人行为动作反映部件的运动方式,以虚拟人逐步完成拆装的过程体现部件的拆装流程,减少对部件拆装信息的表达。

针对上述问题和思想,以飞机部件的拆装为对象,研究在拆装部件的过程中虚拟人与拆装部件的交互关系及虚拟人拆装行为的表达方式。首先将拆装过程分为拆装部件的状态变化过程和虚拟人多个拆装子过程交叉构成;建立语义通用的虚拟人拆装行为参数化模型,用于统一表示虚拟人行为信息;最后分析虚拟人与拆装对象的交互关系,建立虚拟拆装模型,并依据飞机虚拟拆装过程循环性和迭代的思想,构建虚拟人拆装行为、部件状态、拆装次序之间的迭代关系函数,以循环迭代的方式表示虚拟人拆装行为变化过程及部件的拆装流程。

1 飞机虚拟拆装过程分析

1.1 拆装过程特性分析

拆装过程是指下发拆装任务后,虚拟人依照飞机维护手册,通过工具或徒手与拆装对象进行交互的过程,主要包含虚拟人拆装行为信息,拆装对象的状态信息,以及虚拟人、维修工具、拆装对象之间的交互信息,分析拆装过程中虚拟人、拆装对象之间的关系,总结拆装过程主要具有以下特性:①动态性:拆装部件是由多个零件组成的,动态是指拆装部件的状态随着各零件拆装的完成而发生改变;②循环性:虚拟人拆装某一零件的过程可以看作一个子过程,子过程分为准备拆装、正在拆装、结束拆装,而整个拆装过程则由子过程多次循环组成,构成了循环事件系统。

根据拆装过程的特性分析,可将拆装过程分为拆装部件的状态变化过程和虚拟人拆装多个子过程交叉构成,如图1所示。

图1 拆装过程特性分析

1.2 拆装任务层次划分

拆装任务划分是拆装过程描述的前提,是为虚拟人更容易理解具体的拆装指令,有利于虚拟人的拆装操作,基于以上对拆装过程的特性分析,依据拆装任务的层次关系,对拆装任务进行划分,往往一个拆装任务包含不同的拆装部件,每个拆装部件又由多个元部件组成,元部件是不可再分的零件,如螺钉、螺帽等,以黄系统储压器拆装为例,具体划分如图2所示。

图2 拆装任务层次分析

图2中,黄系统储压器拆装任务中包含拆装部件PTU隔离耦合器、储压器,元部件端盖、螺帽、螺钉等,则虚拟人在拆装过程中直接执行的指令是拆装端盖、螺钉、螺帽。

2 虚拟人拆装行为分析

图1中,部件的状态变化是由虚拟人拆装子过程的结束而触发的,因此可将子过程的结束看成是部件状态变化的标志,虚拟人拆装子过程是指虚拟人拆装元部件的过程,由虚拟人的行为动作组成,通过对拆装行为进行抽象分析,归纳出行为的基本特点,建立通用的行为表示模型,从而简化对元部件的位置、外部特征、运动方式等信息的描述,减少了模型信息量。

2.1 虚拟人拆装元部件的行为特点分析

虚拟人在飞机虚拟拆装过程中改变自身的行为与元部件进行交互,从而实现部件状态的改变,行为的改变主要由虚拟人的动作变化产生,分析虚拟人的拆装动作特点,总结为以下3点:

(1)并行性:指虚拟人在拆装元部件时伴随着与元部件拆装不相关的动作同时并行,如拆装大气资料惯性基准组件时,虚拟人不仅用手拧螺帽且伴随着身体蹲下的动作;

(2)相似性:指在拆装过程中存在相似的元部件,使得虚拟人在拆装元部件时,用到相同的工具或相似的动作,如拆装辅助动力装置启动接触器和引起负载控制活门都需用螺丝刀拧螺钉;

(3)有序性:虚拟人在拆装元部件时会依次调整自身的位置、姿态及手部的动作,以达到可以拆装的目的。

分析虚拟人拆装元部件的动作特点,可将虚拟人的拆装动作分为:拆装不相关动作和拆装相关动作。其中拆装不相关动作是指虚拟人在准备拆装和结束拆装中所做的姿态调整动作,如虚拟人的抬低头、弯腰、下蹲等动作;拆装相关动作是指虚拟人正在拆装时利用工具或徒手拆装元部件的手部动作,如握、拧、拉等。

2.2 虚拟人拆装行为参数化建模

在拆装不同的元部件时,虚拟人的拆装行为变化不唯一,但拆装动作类型和动作变化顺序一致,为将虚拟人拆装行为表示规范化,需建立虚拟人拆装行为模型,该模型应具备以下特性:①语义性:模型中的参数应具备一定的拆装语义,便于虚拟人理解,且通过参数的组合可以表述某一拆装行为;②通用性:即通过修改模型中参数可以生成各种拆装行为,以适用于不同的拆装对象。

基于以上对拆装动作特点的总结及动作的分类,拆装行为模型包含虚拟人的姿态调整动作、拆装工具、手部拆装动作,依据拆装行为的有序性:调整姿态—使用工具/徒手操作—调整手部拆装动作,依次用参数的形式表示,建立虚拟人拆装行为模型。

定义1 虚拟人拆装行为参数化模型

Di={Human,Posture,Tool,HMotion}

(1)

Di为拆装元部件i的拆装行为集合,其中Human用于表示执行拆装行为的虚拟人代号,Posture表示虚拟人在拆装元部件i时身体保持的姿态动作集合,Tool表示虚拟人拆装使用的工具集合,主要包括徒手(Hand)、螺丝刀(Sdriver)、扭力扳手(TWrench)、柳钉枪(GRivet)、剪钳(CPattern)、扳手(Wrench)、榔头(Hammer)等工具,HMotion表示虚拟人拆装元部件i时的手部拆装动作集合。在飞机拆装过程中常用姿态动作(Posture)和手部拆装动作(HMotion),见表1,若虚拟人拆装元部件i的行为参数为Di={Human,Squat,Wrench,WScrew}, 根据以上定义可将虚拟人的拆装行为描述为:虚拟人拆装元部件i时,身体保持下蹲的姿势,用扳手沿着元部件i的运动方向拧动元部件i。

3 飞机虚拟拆装模型的建立

3.1 虚拟拆装模型

虚拟人在拆装操作时,根据部件的信息,调整自身的姿态,并选择相应的工具对部件进行拆装操作,虚拟人与

表1 拆装动作描述

部件的交互作用关系如图3所示。

图3 人与部件的交互关系

通过对虚拟人拆装部件的分析,虚拟人拆装部件所包含的信息有:组成部件的所有元部件信息、虚拟人拆装部件的姿态动作、拆装部件使用的工具、虚拟人的手部动作,对其集中表示,建立虚拟拆装模型。

定义2 虚拟拆装模型为

DI=(C,P,T,M)

(2)

式中:C=(c1,c2,…,ci,…,cn)Τ表示拆装任务中所有元部件的列向量,元素ci对应元部件的名称;P=(p1,p2,…,pi,…,pn)Τ为虚拟人在拆装过程中姿态动作列向量,向量中的元素pi属于同一虚拟人姿态动作集合,即pi∈Posture, 为拆装元部件i时,对应的虚拟人姿态动作参数;T=(t1,t2,…,ti,…,tn)Τ为虚拟人拆装元部件使用的工具列向量,向量中的元素ti属于工具集合,即ti∈Tool;M=(m1,m2,…,mi,…,mn)Τ为虚拟人拆装部件过程中手部动作列向量,向量中的元素mi表示拆装元部件i时,虚拟人手部动作的参数,mi∈HMotion。

由虚拟拆装模型可知,DI的每一行表示虚拟人拆装元部件的各种行为信息,如DI中第i行为 (ci,Stand,Hand,Insert), 表示虚拟人拆装元部件ci的行为信息为虚拟人保持站立的姿态,用手插入元部件ci。

3.2 DPMCI建立

分析飞机虚拟拆装过程的循环特性,拆装过程是由拆装多个元部件循环重复组成的活动,将每一次对拆装部件过程的重复称为一次“迭代”,将每一次迭代得到的拆装信息作为下一次迭代的初始值,因此根据飞机虚拟拆装过程循环性和迭代的思想,建立基于循环迭代的飞机虚拟拆装过程模型(disassembly process model cycle iteration,DPMCI),并引入与飞机虚拟拆装相关联的参数,即部件状态、拆装次序,从而给出DPMCI的定义。

定义3 基于循环迭代的飞机虚拟拆装过程模型(DPMCI)

DPMCI={DI,S,DS,f}

(3)

式中:DI为虚拟人拆装行为,详解见式(2);S为拆装部件的状态,部件的初始状态S0=E为n阶的单位阵;DS表示虚拟人拆装元部件的次序

DS=(ds1,ds2,…,dsi,…dsn)Τ

其中,dsi=(dsi1,dsi2,…,dsij,…dsin) 表示元部件i与其它元部件之间的拆装次序,dsij=0或1,若dsij=1, 则虚拟人需先执行元部件i拆装,再执行元部件j拆装,若dsij=0表示无拆装次序;f为DI,S,DS之间的迭代关系函数, (DIci+1,Sci+1,DSci+1)=f(DIci,Sci,DSci), 表示虚拟人完成元部件ci的拆装操作后,使得拆装部件C的状态改变,由迭代函数f获得虚拟人拆装元部件ci+1的行为等信息。

3.3 DPMCI算法实现

基于循环迭代的思想,虚拟人对元部件数为n的部件进行拆装,由以上定义得初始值DI0,S0,DS0, 搜索S0中的每一列S0[:,k],k=1,2,…,n, 计算DS0×S0[:,k], 若结果等于0,表示元部件k准备进行拆装,当元部件k拆装完成后,部件状态S0发生一次改变,S1=zero(S0(:,k)), 表示将S0的第k列置0,并由S1得出虚拟人的拆装行为DI1=S1×DI0及虚拟人拆装元部件的次序DS1=S1×DS0, 完成一次迭代过程,得出的结果作为下次迭代的初始值,虚拟人准备进行下一步拆装操作。当虚拟人完成n次拆装操作后,DIn=0, 迭代结束,表示部件拆装完成,实现了虚拟人拆装部件的过程描述,其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

4 实例验证

结合A320分布式虚拟维修训练系统,以集中故障显示接口组件(CFDIU)的拆卸实验为例进行验证,其安装过程为逆过程,这里不具体阐述,CFDIU的拆卸流程如图4所示。

图4 CFDIU拆卸流程

分析CFDIU的拆卸流程,需拆卸的元部件有:工作平台(c1)、舱门按钮(c2)、舱门把手(c3)、舱门(c4)、螺帽(c5、c6)、CFDIU组件(c7)、堵盖(c8),虚拟人的姿态动作包含直立(Stand)、蹲下(Squat),手部动作包含推(Push)、按压(Press)、旋转(Rotate)、拉出(Pull)、插入(Insert)、徒手拧(Screw)。拆卸过程中虚拟人行为与元部件的交互关系如图5所示。

图5 虚拟人行为与部件的交互关系

依据虚拟人行为与元部件间的交互关系及所需描述的信息,建立CFDIU的虚拟拆装模型DI0依据DPMCI算法步骤,可得拆卸CFDIU的虚拟人行为描述为:

步骤1 虚拟人推放工作平台到824电子舱处,接近824电子舱;

步骤2 用手按压舱门按钮,舱门把手弹出;

步骤3 虚拟人手握舱门把手并旋转;

步骤4 推开舱门,进入824电子舱中,接近CFDIU;

步骤5 虚拟人保持身体蹲下的姿势,用手拧松左/右螺帽并放低;

步骤6 手握CFDIU组件把手并拉出CFDIU组件;

步骤7 双手抱住CFDIU组件,将组件放置在工作平台上;

步骤8 手持堵盖并插入到电插头上。

当完成第一次循环迭代后,得出迭代结果DI1

将DI1作为下次迭代的初始值,进入下一步操作,以此类推,当虚拟人完成最后一次操作后,得出迭代结果DI8=0, 表示迭代结束,CFDIU拆卸完成,虚拟人拆卸CFDIU的过程仿真如图6所示。

图6 CFDIU拆装过程仿真

结合CFDIU拆卸任务应用实例,对文献[3]Petri网模型、文献[4]状态机模型、DPMCI的拆装效率采用以上4个指标进行评估对比,评估结果见表2。

表2 拆装效率评估

如表2所示,在拆卸任务相同的情况下,元部件种类、数量及使用的工具也都相同,因此3种方法所得的工具更换次数与部件的稳定性一致;而在执行者拆装部件的过程中,DPMCI考虑了虚拟人的拆装行为及虚拟人与部件的交互关系,以虚拟人拆装行为变化表示部件的状态变化,减化拆装部件间的约束、状态等信息的描述,给出了虚拟人拆装行为的参数化表达,从虚拟人的角度进行拆装操作,增强拆卸目标与虚拟人的交互作用,使虚拟拆卸仿真效果更贴近实际拆卸过程,并且实验结果得出的元部件可见性值为0.8932和拆装角度值为0.7646均大于文献[3]的0.7854和0.6739、文献[4]的0.6023和0.7333,且总值最大,为2.4245。由文献[15]知,元部件的拆装可见性和拆装角度值越大,维修人员完成拆装训练任务越方便,拆装效率越高,参照以上实验结果及对比分析说明,将DPMCI虚拟拆装过程建模方法应用到拆装仿真训练中,可以提高部件的拆装效率。

5 结束语

对飞机拆装过程进行研究,结合参数化行为描述和循环迭代法建立了飞机虚拟拆装过程模型,实现虚拟人拆装行为的参数化描述及部件状态变化的表达,并将这种模型应用在基于OSG开发的分布式三维虚拟维修训练平台中,经实例验证与对比,该方法从虚拟人行为变化角度描述的部件拆装过程,增加了部件可见性和拆装角度,使虚拟人与拆装对象间的交互关系更为简单直观,受训人员更容易完成拆装任务,从而提高拆装训练效率。

猜你喜欢
手部姿态部件
手部皮肤软组织缺损修复的皮瓣选择
加工中心若干典型失效部件缺陷的改进
攀爬的姿态
奥迪e-tron纯电动汽车的高电压部件(下)
全新一代宋的新姿态
跑与走的姿态
基于Siemens NX和Sinumerik的铣头部件再制造
皮瓣修复手部皮肤软组织缺损的临床应用
发生于手部的硬下疳一例
复明胶囊疑致手部肿痛1例