面向飞机装配的装配动作混合仿真方法研究
2015-05-30中航工业成都飞机工业集团有限责任公司邱世广
中航工业成都飞机工业(集团)有限责任公司 邱世广 周 勇
上海交通大学机械与动力工程学院 范秀敏 何其昌
尽管装配工艺仿真技术在飞机装配过程中已有相当的研究与应用成果,但工程实际使用过程中存在仿真效率低的问题,工艺人员通常只能根据个人经验,对容易出现问题的部分装配工艺或者装配流程的某个阶段进行仿真分析与评估,装配工艺仿真效率已成为制约虚拟装配仿真技术深度应用的主要瓶颈。导致仿真效率低的主要原因是虚拟人的装配操作姿态与动作需要工艺人员手工调整,动作参数设置过程十分繁琐,不仅工作量大,且要求工艺人员对人体生理结构及动作行为规律具有深刻的理解和掌握。目前飞机装配仿真普遍采用DELMIA,该软件仍旧依赖于直接使用FK、IK方法来编辑虚拟人行为,实际应用效果并不理想[1]。因此,这种直接由底层的控制函数(人体关节和运动链的控制)来实现装配操作过程仿真的方式亟待改变。
为提高装配工艺的仿真效率,国内外学者对其进行了大量研究。研究人员通过使用运动跟踪系统Kinect、ShapeWrap、Vicon等捕获动作数据,以实现真人实时驱动虚拟人进行操作仿真,但其交互性能受到硬件性能和虚拟人驱动精度的制约[2]。另一类方法是基于运动跟踪系统采集真实动作来建立相应的参数化模型,通过调节参数生成逼真的人体动作以实现拆装操作仿真[3-4];然而在实际拆装操作过程中,虚拟人拆装动作受到操作对象的约束,例如拧紧动作,需要根据拧紧对象的位置和轴线确定,故完全基于运动捕捉的真实动作数据库来建立精确的交互模型非常困难。
第三类方法是对底层的控制函数进行封装来建立参数化装配动作模型。Badler等研究了虚拟人参数化建模方法(PAR),给出了虚拟人动作参数化描述,然而PAR方法描述的动作范围比较宽泛,缺乏对具体装配动作的定义,因此动作参数设置非常复杂,增加了应用的难度。王丰产等人在PAR方法的基础上,对动作模型进行了进一步的组合[5];KUO等采用语义逻辑来组织虚拟人作业行为以实现装配动作自动生成[6-7],但上述研究缺乏对动作仿真过程中相关功能约束的考虑。装配作业过程中,装配动作受到零部件拆装特点、工具使用特点、操作空间、人体生理条件、人因工程法则等多个方面的约束,例如拧紧动作,拧紧对象的螺距、拧紧深度等工程属性,操作过程中拧紧对象、工具的空间位姿变化、作业空间、操作者视野等都对拧紧动作产生直接影响。
为提高装配工艺仿真效率,提出面向飞机装配的装配动作混合仿真方法,首先面向飞机装配仿真对装配作业过程进行分解;随后对装配动作进行归纳和仿真特性分析,总结出不同装配动作类型的快速仿真方法,即充分利用虚拟现实(VR)外设驱动虚拟人和算法驱动虚拟人的优点,来仿真不同特性的装配动作;建立典型的装配动作模型;最后以油泵装配为例对所提方法进行应用验证。
1 虚拟人混合驱动下的装配动作仿真
1.1 面向飞机装配仿真的装配作业分解
装配作业分解是实现装配操作仿真的前提,即如何根据装配任务,分解并归纳出既易于装配仿真、又能完整表达装配作业的装配动作。人因工程中常见的动作分析方法,如MTM法、模特排时法,主要是面向动作时间的测定与分析,分解层次较低且缺乏特定的装配语义,因此不适用于装配仿真的实现。
借鉴维修工程中维修分解思想,将飞机装配活动分解为装配事件、装配作业(Assembly Task, AT)和基本装配作业(Elementary Assembly Activity, EAA)3个层次。装配事件指一项具体的装配任务,比如中机身装配、机翼装配等;装配作业是操作工人按照装配大纲(AO)执行装配工艺的活动过程;EAA指一项装配活动可以分解成的工作单元,它是装配作业分解的最低层次,例如拧紧螺钉、钻孔、铆接等。
为实现在虚拟环境下对装配作业过程进行仿真,需要对EAA继续分解,如图1所示。目前装配动作分类方法通常将操作者姿态调整视为独立的装配动作来对待,与基本装配动作并列,层次关系不够清晰。实际上,任何装配动作都需要操作人员进行姿态调整,因此人体姿态调整应当隶属于装配动作,是装配动作的下一层次。
图1 面向仿真的装配作业分解Fig.1 Assembly task deposition for assembly simulation
EAA中除了操作者本身的动作,同时还包括操作对象本身的动作,如零部件的动作、工具设备的动作。操作对象的动作行为由装配约束、环境约束以及操作者共同决定,操作对象的动作反过来也会影响操作者动作(图1中虚线框)。装配动作的自动仿真方法本质即通过数学方法正确描述和处理操作者、零部件、工具设备以及环境之间相互作用关系,需要考虑到具体装配动作中包含的零部件装配特点、工具使用特点、环境影响以及操作者本身的生理约束等因素。
操作者是装配行为的发起者,支配其他装配要素的动作,操作者动作的仿真效率直接决定了整个装配过程的仿真效率,进而决定了装配工艺仿真效率。依据不同装配动作的仿真特性,采用不同驱动方式对装配动作进行混合仿真,包括采用VR外设实时驱动虚拟人的方式和基于虚拟人自适应行为模型的方式。
1.2 基于EAA过程分段的装配动作归纳
装配动作的集合形成装配动作库,它具有完备性的特点,即任何装配作业都可以通过装配动作库中的装配动作有序组合得到。装配动作库的设计直接关系到装配仿真实现的难易程度,单个装配动作还应具备以下特点:
(1)独立性:装配动作是从EAA过程中抽象出来的,它能够独立于产品的具体结构;装配动作之间在语义上是相互独立的,不存在相互包含关系。
(2)参数性:通过修改模型参数生成不同的装配动作,以适应不同约束条件的装配操作仿真。
(3)语义性:装配动作应当具备一定的装配语义,便于用户理解和使用。
本文通过对EAA的业务流程进行分段描述,在综合考虑装配动作库及单个装配动作设计需要满足上述特点基础上,总结和归纳基本装配作业各个阶段所需要的装配动作。EAA的完整业务流程可划分为3个阶段:装配操作准备阶段、装配操作执行阶段和装配操作结束阶段,各个阶段的含义如图2所示。
“拧紧螺钉”是装配作业过程中最常见的常见装配活动,根据上述划分方法对该作业流程进行分析。首先,装配作业准备阶段,操作者拾取工具并移动至装配操作位置,调整到准备拧紧操作的姿态;然后,装配操作执行阶段,操作者使用工具开始进行拧紧操作,直至螺钉完全拧到位置;最后,装配操作结束阶段,即螺钉拧紧之后,操作者需要将工具移动至合适的位置,以便进行下一次装配操作。操作者按照上述过程逐条执行装配工序,最终完成整个装配作业。
图2 基本装配作业过程分段描述Fig.2 General work process of elementary assembly activity
通过对EAA各个阶段完整的业务流程分析,并充分考虑装配仿真的实现特点,归纳出各个阶段包括的装配动作。装配作业准备阶段各个动作的含义如表1所示。装配作业结束阶段的装配动作同准备阶段的动作类似。装配操作执行阶段即操作者开始进行操作,各个装配动作的基本含义如表2所示。
表1 EAA准备与结束阶段的装配动作
表2 EAA执行阶段基本装配动作
表1中,抓取和释放指手指的动作。准备动作具有两种含义,在“准备阶段”的含义为“当前姿态到装配操作初始姿态的动作过程,包括操作对象的动作过程”,在“结束阶段”的含义为:“装配操作终了姿态到最终结束姿态的动作过程,包括操作对象的动作过程”。过渡动作主要指人体方位转换,同时包含转换过程中姿态的调整。例如操作者抓取零件,如果零件距离操作者较近,则操作者站在原地不动,通过弯腰、伸手、扭转等姿态调整就可以触及零件实现抓取,上述过程包含了准备、抓取两种动作;如果零件本身距离操作者很远,则操作者需要通过转身、步行等方位变换操作才能到达零件附近,再通过姿态调整才能抓取零件,除了准备、抓取,还包括过渡装配动作。
1.3 装配动作特性分析、归类与混合仿真
为提高装配工艺仿真效率,分析装配动作的实际作业过程,根据其作业过程中操作者的动作特点,结合虚拟人常用驱动方式的优点,提出不同装配动作采用相适应的虚拟人驱动方式来实现其快速仿真。 装配动作的分类及其采用的仿真方法如图3所示,划分为精细装配动作(Fine Assembly Motion, FAM)、普通装配动作(General Assembly Motion, GAM)和过渡装配动作(Transitional Assembly Motion, TAM)3种类型,各种类型定义及所采用的仿真方法如下。
部分装配动作具有如下特征: (1)需要依赖于操作者的实际感知才能够正确完成的装配动作,且动作本身与零件的工程属性紧密相关,拧紧(出)、旋入(出)、敲打等均属于这一类动作,比如使用扳手拧紧螺钉,拧紧动作与螺纹长度、螺距等螺钉的工程属性密切相关,操作是否完成需要操作者通过感知拧紧力的大小来最终确定。(2)具有精度要求的装配动作,例如精确插入动作,对插入深度有准确的要求。本文将局部操作区域具备上述特点的一类装配动作称之为精细装配动作。
由于基于VR外设在线仿真方式目前存在的局限性,使得这种仿真方式对装配操作过程中精细动作支持不足,操作者难以根据自身的实际经验去控制虚拟人完成上述精细动作,进而造成紧固件如螺钉、螺母等的交互式拆装操作十分困难。因此,采用包含零部件工程属性的参数化装配动作模型方法来自动仿真精细动作。
局部操作区域除了精细装配动作之外,还有一类不需要依赖于操作者的实际感知,仅通过操作者自身经验或者仅借助于几何约束定位就能够正确完成的装配动作,将这一类装配动作称之为普通装配动作。例如在局部操作区域中,操作者凭借经验伸手抓取目标对象;抓取以后,凭借经验将其移动至装配操作位置,然后继续进行放上、插入、装上、卸下等操作,操作过程具有一定的位置约束,比如螺钉插入螺孔的过程中,操作者须保证螺钉沿着二者轴线方向插入。
采用VR外设在线仿真的方法具有如下优点:首先,可以有效避免复杂的路径规划问题;其次,更加逼真和高效地生成虚拟人装配动作。因此,对于普通装配动作,采用VR外设驱动虚拟人的方法快速生成,即通过运动捕捉设备来捕捉操作者的真实运动数据以控制虚拟环境中的虚拟人,通过数据手套捕捉手的真实运动数据来控制虚拟手的运动,从而实现对虚拟对象的抓取、移动、装上、卸下等装配操作。普通装配动作中对部分具有位置约束的装配动作,采用几何约束自动处理的方法来解决完全依赖经验无法正确完成的问题,例如插入操作过程中通过轴线约束来引导和保证操作者正确的插入路径。
过渡装配动作是指需要借助于人体方位转换才能正确完成的动作。如图3所示,操作者在A位置局部区域内的操作结束后,需要到B位置局部区域继续进行操作,此时需要的人体方位转换动作,包括步行,转身等动作。实际装配过程中,经常需要在不同的区域执行不同的操作,例如工具或零部件一般摆放在工具小车或物料架上,从装配位置到达工具小车或物料架,装配人员常常需要转身,步行等一系列动作才能到达。由于运动捕捉系统跟踪范围、精度以及仿真试验环境大小等限制因素,操作者难以像在真实装配环境中一样的自由转移,故基于VR外设的在线仿真方式目前仍主要是局部区域内的装配操作仿真。因此,过渡装配动作亦采用参数化模型的方法自动仿真。
表3 常见装配动作分类及其仿真方法
综上所述,装配动作分类及其仿真方法总结如表3所示。根据操作精度要求,插入动作可分为一般插入和精确插入两种类型。当插入过程通过面约束进行定位就可完成,此时属于普通装配动作;当对插入深度有明确要求的时候,且无法通过约束来实现精确定位的情形,则属于精细装配动作。
由于上述装配动作采用不同的虚拟人驱动方式进行仿真,因此装配操作混合驱动过程中必然涉及到不同仿真方式之间的转换,包括从外设控制到模型控制以及从模型控制到外设控制的转换。从外设控制到模型控制转换有在线和离线两种方法,在线方法是指根据虚拟场景中操作姿态、操作对象、工具的工程属性等信息,识别操作意图,判断装配动作类型,获取装配动作参数,实现外设控制与模型控制的自动转换。离线方法是指提供用户停止外设控制装配仿真的方法, 用户通过停止外设控制以进行模型控制。本文采用第二种方法进行转换。从模型控制到外设控制的转换相对简单,装配动作仿真结束后自动转换为外设控制即可。
2 典型装配动作参数化建模及自动仿真
螺钉的拧紧是最常见的装配动作之一,本文以拧紧动作来说明装配动作参数化建模及自动仿真的实现过程。拧紧操作一般流程如下:首先,操作者VO按照预定的旋入深度l1将P旋入到对应的螺纹孔中,然后使用拧紧工具T,沿着紧固件的中心轴线AS,将P完全拧紧,拧紧深度l2等于P的螺纹长度l0减去已旋入深度l1。拧紧动作参数化模型表示如下:
式中:VH&T表示操作过程中虚拟手已抓取工具,v表示装配动作仿真速度,通过设置它的大小可调节动作的快慢。拧紧动作的自动仿真过程可分为以下步骤:
Step1:确定拧紧工具T的初始操作位置。通过处理T与被操作紧固件之间的几何约束关系,实现拧紧工具的准确定位;同时,拧紧工具与被拧紧紧固件的固联矩阵MT-P自动记录,且拧紧过程中MT-P保持不变。关于几何约束处理的详细过程可参考文献[8]。
Step2:计算紧固件的旋转和平移增量矩阵。P的增量矩阵由下式计算:
其中,makeTrans和makeRotation为生成平移和旋转矩阵数学方法;ΔMtran和ΔMrot分别表示位置和旋转增量矩阵。
Step3:计算紧固件终了位姿矩阵。可在初始位姿状态的基础上叠加增量矩阵获得:= ΔMrot× ΔMtran。
Step4:计算拧紧工具的终了位姿矩阵。根据紧固件的终了位姿矩阵以及二者存在的固联关系,可通过下式计算:
Step5:计算虚拟手的终了位姿矩阵。根据虚拟手与拧紧工具之间的位姿关系,由下式计算:
Step6:自动解算虚拟人操作姿态。将和输入到虚拟人自适应行为模型中,解算出当前子操作的虚拟人操作姿态序列,即上一次终了姿态{到下一次初始操作姿态}的中间姿态,并同步记录操作工具及紧固件的装配关键点序列,解算结果自动追加至 中。,···,}=VHAAM(),式中,VHAAM表示虚拟人自适应行为模型,即已知虚拟人两种姿态,自动解算虚拟人中间姿态的方法,具体原理参考文献[9]。
Step7:判断当前操作是否结束。判断操作者、操作对象是否与周围环境发生干涉,如果发生干涉,则提示修改装配动作模型参数,重新生成装配动作;如果没有发生干涉,比较P总的拧紧深度lc和预定义拧紧深度l2。lc≥l2表明已完全安装到位,进入Step10;lc<l2表明P尚未到达正确的装配位置,进入Step8。
Step8:计算拧紧工具T下一次操作初始位姿矩阵。
其中,是工具在当前操作初始位姿矩阵的旋转信息则表示本次操作终了状态工具的空间位置分量。由虚拟手与工具之间的位姿关系,计算虚拟手下一次操作的初始位姿矩阵
Step9:自动解算虚拟人上一次终了姿态到下一次初始操作姿态的中间姿态,解算结果追加至中;然后返回Step2,继续进行子操作的循环。
Step10:结束拧紧动作仿真流程。首先解除拧紧工具与被操作紧固件之间的约束关系;虚拟人抓取工具由操作终了姿态回到初始操作姿态,中间操作姿态序列通过虚拟人自适应行为模型解算。至此,拧紧动作所包含的虚拟人装配姿态序列、操作对象(P、T)的关键点序列生成完毕。
3 应用案例
采用上海交通大学自主研发的虚拟装配软件VESP,以油泵安装过程为案例,对所提的方法进行验证。采用VR外设跟踪人体动作,操作者实时驱动虚拟人将油泵放置在基座上,然后左手从安装孔中伸入拖起油泵,左右手协同逐渐将其移动至基座附近。移动过程中实时计算约束识别精度,当满足识别精度要求后,油泵和装配基座之间的轴线约束自动识别,约束确认后通过约束导航实现油泵的正确定位,安装过程如图4所示。
图4 基于VR外设的安装动作仿真Fig.4 Installing hydraulic motor through VR devices
使用专用扳手拧紧螺钉的过程(精细装配动作)如图5所示,首先输入拧紧动作的相关参数,包括选择虚拟人,虚拟手的类型以及螺钉相关参数,如图5(a)所示。图5(b)为虚拟人拧紧操作的初始状态,第一次拧紧操作后,虚拟人将扳手沿着螺钉轴线方向移动,扳手与螺钉脱离,虚拟人移动扳手至初始的旋入姿态,然后虚拟人移动扳手重新与螺钉定位,准备下一次拧紧操作,如此重复,直到完全拧紧,最终状态如图5(c)所示。
图5 拧紧动作自动仿真Fig.5 Tightening motion automatic generation
上述操作过程中,实时记录装配过程的关键帧,形成装配关键帧序列,通过对不同方法获得的装配动作关键帧序列进行合并和编辑,最终形成与装配工艺映射的完整装配操作关键帧序列。
4 结束语
针对现阶段装配工艺仿真与效率低的问题,本文围绕装配动作混合仿真相关关键技术进行了研究与实践,提出了混合驱动虚拟人进行装配操作仿真的方法,在对基本装配作业过程分段分析的基础上,总结和归纳了装配作业中的基本装配动作,通过对装配动作特性分析,将装配动作具体分解为普通装配动作、精细装配动作和过渡装配动作。针对前者,采用VR外设实时驱动虚拟人进行装配动作仿真;针对后两者,采用自适应行为模型驱动虚拟人进行装配动作仿真。最后通过油泵装配过程仿真验证了所提出的虚拟人装配动作混合仿真方法的正确性与有效性。下一步工作将研究虚拟人装配操作混合驱动的自动转换机制,以减少仿真过程中的人工干预。
[1] 王朝晖, 陈恳, 朱心雄. 一种虚拟人作业行为的自主优化模型. 软件学报, 2012, 23(9): 2358-2373.
[2] LI Y, LV C, ZHOU D, et al. An application of immersive virtual simulation technology in maintenance. Chemical Engineering, 2013, 33(1):313-318.
[3] HAN G, WU Song. Motion capture of maintenance personnel based on multi-Kinect//2013 IEEE International Conference on Quality,Reliability, Risk, Maintenance, and Safety Engineering. IEEE,2013:1297-1299.
[4] ZONG D, LI C, XIA S, et al. Instruction level motion control of virtual human for maintenance process simulation//Proceedings of the 2010 IEEE International Conference on Audio Language and Image Processing.IEEE,2010:1289-1294.
[5] DENG G, HUANG X, GAO Q, et al. A real–time interaction strategy for virtual maintenance based on motion capture. International Journal of Computer Applications in Technology, 2014, 49(3):332-339.
[6] 王丰产,孙有朝. 基于参数化动作描述的虚拟维修过程仿真. 图学学报, 2013, 34 (2): 119-124.
[7] KUO CF, Wang MJJ. Motion generation and virtual simulation in a digital environment. International Journal of Production Research, 2012,50(22):6519-6529.
[8] QIU S, FAN X, WU D, et al. Virtual human modeling for interactive assembly and disassembly operation in virtual reality environment. The International Journal of Advanced Manufacturing Technology, 2013, 69(9-12):2355-2372.
[9] QIU S, HE Q, FAN X, et al. Virtual human hybrid control in virtual assembly and maintenance simulation. International Journal of Production Research, 2014, 52(3):867-887.