APP下载

基于Jack平台的虚拟维修仿真及动作捕捉驱动

2017-06-19黄一峰陆诗楠吴予忠王娜何曦

科技创新导报 2017年6期
关键词:虚拟现实

黄一峰+陆诗楠+吴予忠+王娜+何曦

摘 要:随着虚拟现实技术的发展,虚拟维修在工业设备保障领域越来越受到重视。该文将基于一款国际上广泛认可的人机功效评估平台——Jack平台,以民用航空器使用环境为背景,进行虚拟维修仿真作业。此处,我们将对航空发动机电子样机的起动机维护项目进行虚拟仿真,并在此基础上,辅之动作捕捉设备,头戴式虚拟现实显示设备,进行动作捕捉数据的骨骼驱动。

关键词:虚拟维修 Jack平台 动作捕捉 虚拟现实

中图分类号:TP39 文献标识码:A 文章编号:1674-098X(2017)02(c)-0145-06

Abstract:With the development of virtual reality technology, virtual maintenance in the field of industrial equipment support more and more attention. This article will be based on an internationally recognized human-machine efficiency evaluation platform--Jack, to the civil aircraft environment for the background, the virtual maintenance simulation operations. Here, we will be on the aero engine electronic prototype of the starter maintenance project virtual simulation, and on this basis, supplemented by the motion capture device, head-mounted virtual reality display device, the motion capture data of bone-driven.

Key Words:Virtual maintenance;Jack; Motion Capture;Virtual Reality

從目前航空器等工程机械的发展境况来看,维修成为在研发能力已有保障的前提下,限制工程机械广泛、高效应用的短板。该类产品的高成本性及整体与部分的紧密联系性,是对维修性验证技术的极大需求。因此,文中技术的应用,可减少设计阶段的迭代次数,提高维修性。而且,维修手册的编制也可由该项目的支持更加具有实用性。同时,Jack平台的开放性,虚拟现实设备的普及化,计算机技术的进步,为该项目的实施提供了可行性。

文章主要从两个方面进行阐述,第一个是基于Jack平台的虚拟维修的仿真作业(起动机维护项目的虚拟仿真);第二个就是辅之动作捕捉设备,通过对穿戴人员的动作采集,实时地传入计算机并进行数据处理,然后导入Jack平台中,骨骼绑定驱动平台中的虚拟人进行运动,并将所见视野再实时传出来。

1 平台介绍

该部分主要介绍人机功效评估平台Jack和动作捕捉设备(Neuron)。

1.1 Jack平台

JackTM是一个人体建模与仿真以及人机工效评价软件解决方案,帮助各行业的组织提高产品设计的工效学因素和改进车间的任务。JackTM最初是由宾夕法尼亚大学的人体模型和模拟中心(Center for Human Modeling and Simulation at the University of Pennsylvania) 开发,目前是西门子PLM旗下的软件解决方案一员。如图1所示,使用Jack可以:

(1)建立一个虚拟的环境;

(2)创建一个虚拟人;

(3)定义人体形状和生理参数;

(4)把人加入虚拟环境中;

(5)给虚拟人指派任务;

(6)分析虚拟人体如何执行任务;

(7)对于虚拟人进行工效学评价;

(8)支持多种虚拟现实外设。

1.2 动作捕捉设备(Neuron)

Neuron动捕系统是一款轻便、灵活的高性能动作捕捉系统。这个高度模块化的系统基于Neuron传感器:全世界最小的,集成了加速度计、陀螺仪以及磁力计的惯性测量传感器节点。这套系统的强大之处不仅仅是因为这枚性能优秀的超小型传感器,还在于Neuron研发团队对于数据融合、人体动力学和物理法则的深刻理解让捕捉流畅、自然与低延迟的人体动作成为可能(见图2)。

2 基于Jack平台的虚拟仿真

2.1 仿真环境创建

Jack三维仿真环境的创建主要是通过向场景中导入实体来实现的。Jack软件自身就提供了丰富的实体数据库,用户可以直接在实体数据库中寻找自己需要的实体工具,通过导入实体命令将实体导入指定的环境,并通过移动实体到合适的位置以创建符合用户需求的三维仿真环境。

2.2 仿真制作工具

Animation和TSB是Jack软件提供的两种仿真动画制作工具,这两个工具在使用上和输出上各有自己的优势和特点。Animation工具可以控制虚拟人的头部、眼睛、躯干、骨盆、质心、手臂、手、脚的动作,而且各部位的动作可以同时进行,并且指定时间间隔。TSB工具即人物仿真创建工具,与Animation相比,TSB创建任务流程更加方便,TSB工具中包含虚拟人和实体工具的基本运动模型。

2.3 起动机简介

起动机驱动发动机,用于发动机的起动和运行过程中。它是通过将气体的压力能转变为机械能实现对发动机的驱动。

2.4 维修任务描述

起动机位于发动机的左前部,拥有两个端口,一个是进气端,为起动机供气,驱动起动机工作,另一个端口为输出端,带动发动机工作,驱动发动机。在起动机外侧的后端下部,安装有磁堵,在拆起动机前,需要先拆下磁堵,放出起动机壳体中残存的的滑油(见图3)。

2.5 起动机拆卸任务分解

该任务由human和human0两个虚拟人共同完成,为了提高效率,对两个人的工作进行分工,共同完成任务。

我们将任务分成3个阶段:

(1)放泄滑油,human拆下磁堵,human0使用集油盆接滑油。

(2)拆卸起动机与其他部位的连接,human 使用扳手拆下连接卡环,human0用双手稳定起动机。

(3)拆下起动机,human0拆下起动机并加上堵塞,human为供气管加上堵塞。

2.6 仿真任务

对于任务的仿真,根据分解的仿真流程,编辑出每一个时间段的工作姿势,将工作姿势赋予相应的工作时间,就可以得到一段段的仿真片段,将每个仿真片段进行拼接,得到每个工作阶段的仿真动画,再将各个阶段的仿真动画进行调整拼接,就可以得到一个完整任务的仿真动画,因为每一段的小片段都可以进行单独编辑,所以当某些动作姿态不协调或者不合理时,就可以对单个片段进行修改,再进行重新拼接,这样就可以很大程度上减轻工作量。

在创建仿真动画的过程中将Animation、TSB和channel交替混合使用,可以减轻工作量,加快进度,并且能提高仿真的精准性和真实性。例如在进行抓取动作时,将抓取动作分为抓取前动作和抓取后动作,抓取前的动作可以使用TSB或Animation工具进行动作设计,在使用TSB工具时可以直接将仿真动画保存为channel文件或者将仿真动画转换为Animation动画再将其保存成channel文件,即制作完成抓取动作的仿真(见图4、图5)。

3 基于Jack平台的动作捕捉驱动

Jack平台自身是支持动捕设备的驱动的,但是由于骨骼匹配的问题,使得一些主流的动捕设备或者主流的动作捕捉数据格式并不能原生支持。在此,我们通过自己的算法对获取的动捕数据进行处理,然后进行导入驱动。

3.1 操作流程

具体操作流程见图6。

3.2 数据通讯端口的准备工作

3.2.1 动作捕捉设备

首先,要把动作捕捉设备的配套软件中的数据输出端口打开,后文会讲到具体数据格式的使用,考虑到数据处理的对比和优化,在此选择全部打开(见图7)。

3.2.2 Jack平台的Mocap Communication Port

如图8所示,我们选用默认的端口号4085即可,然后点击“Start Server”。

3.3 启动前准备

系统启动前还需要对设备连通性检查、初始姿态的校准,以及Jack虚拟环境中虚拟人的布置和检查。在这里,主要取决于所采用的动作捕捉设备厂商的要求。在完成启动前的准备,就可以进行动捕驱动任务了。

3.4 动作捕捉数据的处理

3.4.1 骨骼转换问题

前文有提到,Jack所采用的骨骼结构和我们现采用的动捕设备的骨骼结构是不一样的。前者主要是基于宾夕法尼亚人体建模中心所研究出来的人机工程模型,而后者为标准的BVH骨骼模型。

通俗来讲,就是Jack骨骼更像是一个人,完全基于人的机理所搭建的一个骨骼模型,其受到一些人体生理功能的约束,比如各躯干、肢体的旋转和位移角度都是有限制的;而BVH骨骼模型可以看成是一个机器人,并没有太多的约束限制。

除此之外,两种骨骼的差别还在于关节点的不同。此处列出骨骼编号对照表(见表1)。

按照此骨骼编号对照表,写出相应的算法进行数据的处理。

3.4.2 动捕数据的格式

通过一定的实验,我们发现采用BVH数据流的处理方案累计误差较大,Jack中的虚拟人关节扭曲较明显,检查研究后发现,算法不是主要问题,而在数据流的降噪上可能有一定的欠缺,而这部分属于动捕设备的内部处理,所以研究后决定,采用中间级数据(Calculation Data)进行处理。

All the data types:

World coordinate displacement:X(X、Y、Z),unit is meter.

World coordinate displacement:V(X、Y、Z),unit is meter per second. World Coordinate modules posture data:Q(W、X、Y、Z).

Module coordinate accelerated speed:A(X、Y、Z),unit is g.

Module coordinate accelerated speed:M(X、Y、Z),unit is radian per second.

图9为编写完成的数据处理及发送软件。

3.5 Jack平台中的骨骼驱动

驱动Jack人物模型需要输入20个关节点的位置和角度坐标。

如表2所示:按顺序开启系统后,我们启动编写好的数据处理及发送软件,然后将处理好的数据发送到Jack平台中。添加虚拟人,并进行骨骼绑定,然后就可以成功驱动Jack平台中的虚拟人进行运动了。

骨骼绑定时,打开Motion Capture选项中的Tracking Setup,选取虚拟人Hunman和骨骼数据CaucMan,然后进行骨骼绑定(见图10、图11)。

3.6 视野返回目标对象

为了达到虚拟现实的体验效果,我们需要把被驱动的虚拟人所看到的视野返回到穿戴人员的眼镜中。此处我们使用Jack平台中的模拟左右眼视窗的功能,然后对视窗的景深等图像参数进行一定的调整后,分别发送到目标对象佩戴的眼镜中,以此达到完整的虚拟维修体验效果。

4 结语

在项目开展过程中,遇到不少问题。比如无线数据传输问题,骨骼点的转换问题,数据处理带来的延迟问题,尤其是在中间级数据(Calculated Data)类型的选取和换算问题上,经过反复试验和优化,最后选取以世界绝对坐标(Global Position)为主的数据进行转换、计算来获得最终所需的结果数据。相比于动捕驱动,传统的虚拟维修仿真从技术难度上讲相对要容易一些,但其独立于动捕驱动的优点在于该作业仿真可以进行维修性评价分析,从未对维修作业决策提供很好的参考。

参考文献

[1] 王異香.基于虚拟维修仿真的人机工效分析研究[D].南京航空航天大学,2007.

[2] 王海燕.虚拟现实环境下动作分析与人因工效评价方法研究[D].浙江理工大学,2014.

[3] 刘毅,刘佳.维修技术发展综述[J].计算机辅助设计与图形学学报,2009(11):1519-1534.

[4] 陈萌,陈立平.基于人机工效学的人体建模和运动仿真[J].机械科学与技术,2001(4):597-599.

猜你喜欢

虚拟现实
论虚拟现实艺术的“沉浸”
REALITY BITES
虚拟现实产业进入高速发展期
虚拟现实技术向科幻小说借灵感
虚拟现实:另一个真实世界
诺基亚推出虚拟现实摄像机OZO
虚拟现实炫酷来袭走出实验室坎坷漫长
浅谈虚拟现实