Loading [MathJax]/jax/output/SVG/jax.js

虚拟装配系统开发中参数化模型表达与交互意图识别研究

胡兆勇, 何梓秋, 何汉武, 吴悦明

胡兆勇, 何梓秋, 何汉武, 吴悦明. 虚拟装配系统开发中参数化模型表达与交互意图识别研究[J]. 华南师范大学学报(自然科学版), 2021, 53(3): 113-121. DOI: 10.6054/j.jscnun.2021050
引用本文: 胡兆勇, 何梓秋, 何汉武, 吴悦明. 虚拟装配系统开发中参数化模型表达与交互意图识别研究[J]. 华南师范大学学报(自然科学版), 2021, 53(3): 113-121. DOI: 10.6054/j.jscnun.2021050
HU Zhaoyong, HE Ziqiu, HE Hanwu, WU Yueming. The Parametric Model Expression and Interactive Intention Recognition in the Virtual Assembly System[J]. Journal of South China Normal University (Natural Science Edition), 2021, 53(3): 113-121. DOI: 10.6054/j.jscnun.2021050
Citation: HU Zhaoyong, HE Ziqiu, HE Hanwu, WU Yueming. The Parametric Model Expression and Interactive Intention Recognition in the Virtual Assembly System[J]. Journal of South China Normal University (Natural Science Edition), 2021, 53(3): 113-121. DOI: 10.6054/j.jscnun.2021050

虚拟装配系统开发中参数化模型表达与交互意图识别研究

基金项目: 

国家重点研发计划项目 2018YFB1004902

详细信息
    通讯作者:

    胡兆勇,Email: zhy.hu@gdut.edu.cn

  • 中图分类号: TP391.9

The Parametric Model Expression and Interactive Intention Recognition in the Virtual Assembly System

  • 摘要: 面向教育培训的虚拟装配系统开发经常涉及多同类型任务、多培训模式、多显示终端的任务需求,传统开发方式往往是逐个定制开发. 为了提高重复性开发工作的效率和解决通用性问题,文章凝练了虚拟拆装操作的共性要素,提出了由任务要素、静态要素和动作要素构建的装配序列参数化表达模型,并设计了基于XML数据格式的参数化表达方法;基于此表达方法,研究了装配操作-交互意图的识别机理,实现了演示、练习和考核3种培训模式的人机交互操作的逻辑解析. 减速器虚拟装配案例表明了基于XML数据格式的参数化表达方法可以提高虚拟装配系统开发的效率.
    Abstract: The development of the virtual assembly system oriented to education and training usually involves similar tasks, multiple training modes and many terminals, which are usually customized. In order to improve the efficiency and universality of development, the common elements of virtual assembly operations are summarized and a parametric model that includes task elements, static elements and action elements is proposed to describe the assembly operation process. A parametric presentation method based on XML is designed. The recognition mechanism of assembly operation-interactive intention is studied. Based on it, the logical expression and analysis of the three training modes of demonstration, practice and examination is realized. The example for a reducer virtual assembly shows that the parametric presentation method based on XML can improve the efficiency of virtual assembly system development.
  • 近年来,虚拟现实技术在教学培训方面应用日益广泛. 其中,虚拟装配训练能够有效解决传统装配训练中场地、人力和设备短缺问题,同时也能充分规避传统装配训练中潜在的安全隐患、昂贵设备损坏等风险[1-2];除此之外,虚拟环境中可以加入视觉反馈等真实场景所不具备的因素[3],辅助装配训练过程,提高培训效果.

    目前,国内外对虚拟装配训练系统的研究取得不少的成果,如:研发了以数据手套进行交互的医疗器械装配训练系统,实现了从基于任务到基于动作的多级训练场景[4];研发了基于Unity3D的VR民航虚拟训练软件,可选择拆装工具,利用鼠标拖拽进行拆卸与装配训练[5];研发了以HTC VIVE交互的模具虚拟装配培训系统,利用Petri网构建装配序列,使用预分割策略对OBB树算法进行改进,使得碰撞检测更加贴合零件[6];研发了一种液压支架装配系统,通过为每个部件建立装配顺序数据表,实现了基于概率的装配顺序自学习[7].

    文献[6-7]设计了装配序列表达,但大多采取定制化开发方式,且交互操作真实感不足. 在实际虚拟装配开发时,有一大类涉及到具有多个同类型的装配科目任务,每个任务可能需要演示、练习和考核等多种培训模式的需求. 随着终端显示设备的不同,虚拟装配系统需要适应PC机、VR头盔和zSpace等不同平台. 为满足这种多同类型任务、多培训模式的开发需求,需要构建一定程度上通用的系统,实现可通过装配序列构建基础数据驱动的高效开发.

    因此,本文将常见拆装操作描述为几种规范的几何运动,进一步形成了拆装动作序列的参数化表达模型;采用主流的可扩展标记语言(XML),设计了该参数化模型的数据表达方法;结合Unity3D引擎,研究了XML参数化表达模型的解析原理,从而实现了拆装操作与用户交互意图的响应机理识别;针对演示、练习、考核3种培训模式,研究了逻辑实现的解析方法.

    利用参数描述操作过程的形式有多种,如:采用ASO建模方法,将装配行为划分为对象交互特征和虚拟人的基本动作,建立了虚拟人的行为模型[8];利用UML类图构建了设备拆装的动作过程模型[9];分析飞机拆装过程参数,对虚拟人行为进行参数化建模, 从而建立一种循环迭代的拆装过程模型[10].

    在开发某航天地检设备的虚拟拆装训练系统时,面临众多仪器模块拆装科目、3种培训模式和zSpace/HTC的多终端开发任务需求. 结合文献[9-10]和该拆装开发任务的实际需求,本文将不同装配操作动作的共性特征通过若干个参数进行统一、规范地描述,每个操作步骤分解为3类参数化要素:

    (1) 任务要素:描述该操作步骤在装配任务中的信息,包括该步骤的索引号、操作完成标志位.

    (2) 静态要素:描述操作运动发生前的准备要素,包括所操作的零部件、所用工具.

    (3) 动作要素:描述装配操作的各个动作要素参数,包括操作动作要素类型和所需参数等. 常见的装配操作动作要素类型包括隐藏、显示、触碰、旋转和移动.

    隐藏、显示操作用于模型的消隐需求,触碰操作用于表示点击开关(按钮)的瞬间操作. 这3类操作类型不需要动作要素参数. 旋转和移动可细分为自转、公转、平移和自由移动4种操作动作要素类型(表 1). 各动作要素所需参数中,自转轴、平移方向和公转轴均可使用三维向量进行描述,称为操作方向;旋转量和平移量可使用一个数值来描述,称为终止阈值;对自由移动的目的地参数则通过交互逻辑确定.

    表  1  常见装配操作的动作要素
    Table  1.  The action element of general assembly operations
    装配操作 动作要素类型 所需参数
    拧螺丝/螺母/螺栓 自转 自转轴、旋转量
    扭动阀门类零件 自转 自转轴、旋转量
    推/拉/插/拔/提 平移 平移方向、平移量
    扳动 公转 公转轴、旋转量
    开关盖/罩/门 公转 公转轴、旋转量
    搬运/放置 自由移动 目的地
    下载: 导出CSV 
    | 显示表格

    虚拟装配动作序列可概括为单一步骤串联式线性序列和多步骤并联式并行序列两大类型逻辑关系. 本文通过每步与其先行步来表达这2种逻辑关系. 设第i步的先行步集合为{j, k, …},完成该集合中的所有步骤后,第i步方可执行,则第i步可描述为:

    i|{j,k,}(i,j,k=0,1,,n,ijk),

    其中, 当i=0时不存在先行步集合.

    基于先行步集合的思路,本文设计了一种表达装配序列逻辑关系的路由图模型(图 1).

    图  1  装配序列逻辑关系路由图模型
    Figure  1.  The routing map of the logical relationship of assembly sequence

    用户可自行定义每个操作步骤的先行步集合,按照自己的需求来设定装配序列的分支与汇合. 如图 1中的1、3、4为分支步,7、8为汇合步.

    本文选用XML语言[11-12]来描述装配序列的参数化表达模型. XML是一种自描述的可扩展标记语言,可以定义任意类型标记节点,用于存储元数据,通过多层子节点存储多层数据关联信息[13].

    基于XML语言的规范,本文使用1个标记节点表示1个操作步骤. 根据1.1的参数化描述,综合考虑父子装配体间运动关系和提示信息参数,在每步标记节点下设计11个子标记节点,用于参数化描述操作步骤. XML数据文件结构如图 2所示.

    图  2  XML数据文件结构图
    Figure  2.  The structure of XML data file

    为了便于用户编写装配序列数据,本文设计了用于输入装配序列的路由图状逻辑关系的Excel数据文件,自动解析并生成装配序列的XML数据文件,并通过C#的OleDbConnection和OleDbDataAdapter类描述装配序列XML文件的参数化模型.

    本文选用了虚拟训练系统开发的主流引擎Unity3D. 在程序中使用C#脚本创建一个解析器类ActionStep,将XML中的数据读入到虚拟装配系统中. XML数据节点名称与C#脚本数据对照表如表 2所示. 表中的“子装配体联动”数据用于确定某一步骤对应的零部件是否与模型结构树中其余同级零部件共同运动.

    表  2  XML数据节点与C#脚本数据类型对照表
    Table  2.  The XML data nodes corresponding to C# scripts data types
    XML数据节点名称 C#脚本数据名称 C#脚本数据类型
    步骤索引号 ID int
    零部件 GameObject GameObject
    操作类型 MoveType 自定义枚举MoveType
    所用工具 ToolType 自定义枚举ToolType
    操作方向 Axis Vector3
    终止阈值 Treshold float
    子装配体联动 OtherChildrenMove bool
    是否已完成 IsDone bool
    先行步索引集合 MustAfter List < int>
    目的地 Destination GameObject
    提示信息 UIText string
    下载: 导出CSV 
    | 显示表格

    仿真训练系统的架构可用多种模式. 本文设计了Winform程序与VR仿真训练环境的双向通讯模式. 用户在Winform程序选择运行模式后,系统将启动相应模式的VR仿真训练环境,利用带参数启动传入用户信息;在VR仿真训练环境操作完成后,系统将用户的使用记录写入数据库,供用户在Winform查看. 通讯流程划分为4层架构,如图 3所示.

    图  3  系统通讯流程架构图
    Figure  3.  The communication flow framework of the system

    装配动作序列的解析与表达是虚拟装配训练系统开发的核心. 根据本文的参数化描述方法,定义3个数据集合(表 3).

    表  3  数据集描述
    Table  3.  The definition of data set
    数据集名称 数据集合符号 集合数据类型
    所有操作步骤 S ActionStep
    已完成步骤 A Int
    当前可操作步骤 C ActionStep
    下载: 导出CSV 
    | 显示表格

    上述3个数据集合的数据流解析流程(图 4)具体为:首先,读取XML格式的数据文件,获取所有操作步骤得到的信息并将其存入集合S; 其次,从第i=0步开始,遍历集合S下的操作步骤,判断先行步是否已全部完成;然后,筛选出当前可操作步骤并进行初始化,为可操作步骤对应的零部件添加碰撞器和高亮组件,使这些可操作步骤可以进行人机交互操作,并在步骤完成后注销初始化的内容;最后,递增步序直到完成所有操作步骤,从而将用户按照规范设计的装配序列进行数据呈现.

    图  4  系统数据呈现流程
    Figure  4.  The data presentation diagram of the system

    系统使用Unity3D的碰撞器组件以及碰撞检测回调函数作为虚拟场景交互的基础. 虚拟场景初始化后,系统将在虚拟手柄、工具上添加BoxCollider碰撞器(图 5A, 图 5B), 并添加刚体组件. 在初始化一个可操作步骤时,将为该步骤所对应的虚拟零件添加MeshCollider碰撞器(图 5C).

    图  5  各部件碰撞器示意图
    Figure  5.  The collider diagram of each part

    虚拟手柄通过碰撞检测可拾取工具,使用SetParent()方法把工具设置为虚拟手柄的子物体,使工具跟随手柄移动;亦可直接对零件进行交互操作. 工具被拾取后,若检测到工具碰撞器与零件碰撞器相碰,则可对零件进行交互操作. 根据XML数据文件中存储的装配信息,系统调用相应的操作方法感知用户的交互意图,零件将根据用户的交互作出位姿和状态变化,从而完成装配操作.

    系统中设置了一个累加器,用于实时存储当前步操作的零件逐帧累加起来的运动变化量,当累加器的值等于终止阈值时,该步骤操作完成. 每步的操作动作要素类型决定了调用何种操作方法,各个操作方法的核心即为实时计算累加器的值以及解算零件的最新位姿. 以下是各操作方法的具体实现:

    (1) 自转操作:零件的自转轴用vRot=(aRot, bRot, cRot)来表示. 如图 6所示,设对零件进行自转操作时工具或手柄绕vRot每帧旋转的角度为θ,则零件自转的角度亦为θ.

    图  6  自转操作计算示意图
    Figure  6.  The computing diagram of rotation operation

    一帧的旋转运动用四元数表示如下:

    Q(vRot,θ)=cosθ2+i(aRotsinθ2)+j(bRotsinθ2)+k(cRotsinθ2). (1)

    将其与零件当前的姿态四元数Q相乘,可得到零件旋转后的姿态Qnew

    Qnew=QQ. (2)

    为了确保交互真实感,规定手柄或工具自身坐标系的Z轴与零件不超过15度时方可进行自转操作.

    (2) 平移操作:如图 7所示,在一帧内,手柄移动前后的2个位置点构成vFrm=(aFrm, bFrm, cFrm). vFrm在指定平移方向上投影为vdis,|vdis|为有效移动距离值. 若vdis与指定平移方向的夹角大于90度,则有效移动距离为负数. 设零件平移前的位置为p0,零件平移后的位置p1为:

    p1=p0+vdis. (3)
    图  7  平移操作计算示意图
    Figure  7.  The computing diagram of translation operation

    (3) 公转操作:如图 8所示,零件的公转轴可为任意方向的vRev=(aRev, bRev, cRev). 建立平面P, PvRev垂直相交于O(xO, yO, zO),则P的方程为:

    aRev(xxO)+bRev(yyO)+cRev(zzO=0.) (4)
    图  8  公转操作计算示意图
    Figure  8.  The computing diagram of revolution operation

    手柄带动零件运动时,手柄当前帧所在位置为n1,而零件上一帧所在位置为n0n1n0点构成手柄一帧内的运动方向vHand. n1n0点在平面P的投影分别为m1m0,可见n1m1n0m0vRev平行,根据平行关系可得:

    xmixniaRev=ymiynibRev=zmiznicRev=t(i=0,1). (5)

    同时m0m1为平面P上一点,满足式(4). 结合式(4)、(5),可以得到t的值以及m1m0的坐标,从而得到vHandP平面上的投影vP. |Om0|为公转轨迹的半径rvP向公转轨迹的过m0的切线方向上投影,从而得到vEff. 最后计算Om0Om2的夹角θ,即可得到这一帧零件所转过的角度. 根据公转轨迹圆的半径和旋转角,可以得到零件的最新位置,将θ代入式(1)、(2)可以得到零件的最新姿态. 当累加器的值超过终止阈值时,公转动作完成.

    (4) 自由移动操作:当零件被手柄拾取时,使用Unity3D的transform.SetParent()函数,使虚拟零件成为手柄的子物体,虚拟零件跟随手柄运动. 当虚拟零件足够接近目的地时,它将脱离与手柄的父子关系,Vector3.Lerp()和Quaternion.Lerp()函数进行位姿插值计算,使零件自动向目的地移动,并设置累加器的值等于1.

    (5) 隐藏操作:触发后更改零件材质图形着色器,替换后的着色器在渲染管线的片元着色器阶段剔除所有处于虚拟场景地面以上的像素,使之不渲染,并设置累加器的值等于1.

    (6) 显示操作:与隐藏操作相反,触发后把零件材质的图形着色器替换为常规的着色器,并设置累加器的值等于1.

    UI分为手柄按键UI及场景空间UI. 手柄按键UI使用SteamVR插件,将各功能映射到HTC手柄的按键上,点击手柄按键即可触发. 根据常用功能需求,设计了“挂载”“瞬移”“跳步”“退出”4个功能(图 9A). 其中,“瞬移”解决了大场景漫游问题. 通过使用SteamVR的Nav Mesh和Teleporter插件,将虚拟场景的地面分割为若干个单元格,并在手柄按键UI定义一个“瞬移”功能,向虚拟地面射出抛物线,指向某个单元格,触发该功能后,用户位置将被转移到该单元格,如图 9B所示.

    图  9  UI交互与场景漫游示意图
    Figure  9.  The diagram of UI interaction and scene roaming

    对于虚拟装配系统常用的练习模式和考核模式来说,两者在装配序列的人机交互逻辑实现原理是一致的. 相同点是用户通过VR交互设备自主操作虚拟模型完成装配,不同点是前者有提示信息而后者无提示信息及考核要求.

    人机交互逻辑模型(图 10)主要含以下部分:

    图  10  人机交互逻辑模型
    Figure  10.  The logical model of human-computer interaction

    (1) 知识模型. 为了描述虚拟场景中的交互信息,本文选择场景上下文和用户上下文来描述知识模型. 其中,场景上下文是指当前可操作步骤所包含的场景信息,一部分由XML数据文件规定,包括零部件、操作类型、操作方向、终止阈值、累加器、子装配体联动、正确工具、错误工具和目的地等;另一部分由用户的交互输入决定,包括零件状态和工具状态,由各自的有限状态机[14]管理. 用户上下文是指用户在交互过程中的动作语义,包括当前手柄发生碰撞的物体、手柄的位姿、手柄旋转和手柄移动等. 由于用户的交互实时刷新,使得场景上下文实时发生改变,因此,知识模型是动态的,不同时刻的知识模型可以匹配不同的规则,以完成不同的交互.

    (2) 规则库. 规则库以产生式规则“IF…THEN…”的形式描述虚拟拆装中各项的交互规则,分为动作规则库和感知规则库. 动作规则库的作用是将当前的用户上下文和场景上下文结合,产生交互意图. 感知规则库的作用是感知用户交互意图产生决策,进而使用户完成交互.

    (3) 规则推理机. 规则推理机是运行在平台中的逻辑代码块,包括解释器和匹配器. 系统通过匹配器将当前的知识模型与动作规则库进行匹配,进而由规则库中的某一规则确定用户的动作语义所隐含的交互意图. 解释器根据感知规则库的决策进行计算,根据2.2.3所阐述的各操作类型得到零件的最新位姿,完成装配操作.

    演示模式下用户无需与零件进行交互,装配将通过系统控制自动执行. 根据用户需求,本文把虚拟模型设置为摄像机的子物体,确保演示时虚拟模型一直在视野正前方.

    本文提出了基于装配序列的虚拟装配自动演示算法,使开发过程无需额外制作动画便实现了虚拟装配的演示模式. 系统初始化一个操作步骤后,进入自动演示流程,该流程分为以下4个阶段:

    (1) 姿态调整阶段:使模型发生旋转,以使得用户获得最好的观看视角. 若该步骤操作类型为平移或自转,则操作方向定义为vAuto;否则,遍历当前零件局部坐标系的6个正负轴方向,与相机+Z轴夹角最小的坐标轴方向定义为vAuto. 设vAuto与相机坐标系+Z轴的夹角为α,与相机坐标系-Z轴的夹角为β. 若αβ,则旋转后vAuto对齐+Z轴;否则,旋转后vAuto对齐-Z轴.

    为计算姿态调整的旋转轴,定义向量vZ平行于Z轴且与+Z轴同向. 利用叉积可得到旋转轴L

    L=vAuto×vZ. (6)

    利用式(1)、(2)构建四元数并求得模型旋转后的姿态,使用Quaternion.Slerp()函数对设备进行位姿插值计算,使用户能看清整个设备模型的姿态调整过程.

    (2) 位置调整阶段:调整整个设备模型与相机的距离,使整个设备模型移动到视野中央,即相机坐标系下的坐标(0, 0, z). 首先,读取待操作零件模型在相机局部坐标系下的坐标PC(xC, yC, zC). 其次,根据下式计算整个设备模型沿着相机坐标系-X、-Y和-Z轴的移动距离:

    {DX=xC,DY=yC,DZ=zCVpε, (7)

    其中,Vp为待操作零件包围盒的体积,ε为常数.

    使用函数Vector3.Lerp()使整个设备模型沿着相机坐标系3个坐标轴移动,使用户能看清整个设备模型的位置调整过程.

    (3) 工具就位阶段:使工具以正确的位姿出现在零件处,其作用是告知用户如何利用工具进行拆装操作. 工具模型在建模过程中设置了局部坐标系,坐标系的原点设定为工具与操作零件的接触点,并设置局部坐标系+Z轴为工具的主方向. 如:扳手工具的主方向(图 11A)为扳手的旋转轴方向. 通过逐帧插值更新四元数,令工具的主方向与相机坐标系的+Z轴对齐,同时逐帧插值使工具运动到目标位置. 设待操作零件的位置为(0, 0, z0),零件包围盒沿Z轴方向的长度为L1,工具的包围盒沿Z轴方向的长度为L2,则工具的目标位置为(0, 0, z1),其中z1为:

    z1=z0L12L22. (8)
    图  11  工具模型示意图
    Figure  11.  The diagram of tool model

    工具就位后效果如图 11B所示.

    (4) 自动演示阶段:自动演示将2.2.2节中的各操作类型计算过程封装为自动执行的方法,根据当前操作步骤的操作类型,调用相应的演示方法. 方法函数调用时,将工具绑定为待操作零件的子物体,使工具与零件同步更新位姿. 系统通过逐帧调用自动演示方法,逐帧使零件运动并计算累加器的值,从而完成自动装配.

    鉴于某型号航天地检设备的涉密性,本文以二级减速器虚拟安装与拆卸的仿真开发为例. 将减速器模型导入Unity3D引擎中,编辑模型结构树(图 12),再根据本文的参数化表达模型制作规范的装配序列XML数据文件(图 13). 需确保XML数据文件中模型命名与模型结构树中的模型名称相同,否则虚拟拆装时的交互操作无法匹配到正确的虚拟模型.

    图  12  减速器模型预处理
    Figure  12.  The preprocessing of gear reducer model
    图  13  减速器装配序列的XML数据示意
    Figure  13.  The XML data of gear reducer assembly

    登陆PC端程序选择模式和科目后,系统将加载与已选择科目名称相同的模型与XML数据文件,进入VR环境,如图 14A所示. 练习模式的操作步骤的提示信息UI如图 14B所示,演示模式的界面如图 14C所示. 退出VR环境后,在成绩查询界面中可查询到考核成绩,如图 14D所示.

    图  14  减速器案例
    Figure  14.  The case of gear reducer

    为验证XML数据文件跨平台的通用性,选用桌面式VR设备zSpace平台进行虚拟装配训练系统开发. zSpace以六自由度操控笔作为交互输入设备,利用zCore SDK和射线检测搭建该平台的人机交互操作功能. 通过DOM技术读取并解析与HTC VIVE客户端相同的XML数据文件,即可生成zSpace的虚拟装配环境. 以减速箱安装为例,如图 15所示,使用zSpace可顺利完成桌面式虚拟装配训练.

    图  15  zSpace客户端开发案例
    Figure  15.  The case of zSpace client development

    同理,若把系统移植到更多的引擎与平台,亦无需修改XML数据文件,仅需在VR客户端程序中实现对应的解析器类,以储存XML数据文件解析后的数据;同时,使用适配于该引擎及设备的SDK,结合本文的方法实现交互操作功能. 通过载入同一份模型文件和XML数据文件,即可获得多平台的虚拟装配环境.

    为了提高重复性开发工作的效率和解决通用性问题,本文定义了11个参数表达的虚拟装配操作步骤参数化模型,利用XML描述了装配序列的路由图状的线性和并行逻辑关系,研究了拆装操作逻辑与人机交互操作意图的识别机理,实现了7种装配交互操作的逻辑解析. 减速器的开发实例证明参数化模型及对应的交互操作意图识别的虚拟装配系统可有效缩短开发时间、降低开发难度,且有利于跨平台的数据移植.

  • 图  1   装配序列逻辑关系路由图模型

    Figure  1.   The routing map of the logical relationship of assembly sequence

    图  2   XML数据文件结构图

    Figure  2.   The structure of XML data file

    图  3   系统通讯流程架构图

    Figure  3.   The communication flow framework of the system

    图  4   系统数据呈现流程

    Figure  4.   The data presentation diagram of the system

    图  5   各部件碰撞器示意图

    Figure  5.   The collider diagram of each part

    图  6   自转操作计算示意图

    Figure  6.   The computing diagram of rotation operation

    图  7   平移操作计算示意图

    Figure  7.   The computing diagram of translation operation

    图  8   公转操作计算示意图

    Figure  8.   The computing diagram of revolution operation

    图  9   UI交互与场景漫游示意图

    Figure  9.   The diagram of UI interaction and scene roaming

    图  10   人机交互逻辑模型

    Figure  10.   The logical model of human-computer interaction

    图  11   工具模型示意图

    Figure  11.   The diagram of tool model

    图  12   减速器模型预处理

    Figure  12.   The preprocessing of gear reducer model

    图  13   减速器装配序列的XML数据示意

    Figure  13.   The XML data of gear reducer assembly

    图  14   减速器案例

    Figure  14.   The case of gear reducer

    图  15   zSpace客户端开发案例

    Figure  15.   The case of zSpace client development

    表  1   常见装配操作的动作要素

    Table  1   The action element of general assembly operations

    装配操作 动作要素类型 所需参数
    拧螺丝/螺母/螺栓 自转 自转轴、旋转量
    扭动阀门类零件 自转 自转轴、旋转量
    推/拉/插/拔/提 平移 平移方向、平移量
    扳动 公转 公转轴、旋转量
    开关盖/罩/门 公转 公转轴、旋转量
    搬运/放置 自由移动 目的地
    下载: 导出CSV

    表  2   XML数据节点与C#脚本数据类型对照表

    Table  2   The XML data nodes corresponding to C# scripts data types

    XML数据节点名称 C#脚本数据名称 C#脚本数据类型
    步骤索引号 ID int
    零部件 GameObject GameObject
    操作类型 MoveType 自定义枚举MoveType
    所用工具 ToolType 自定义枚举ToolType
    操作方向 Axis Vector3
    终止阈值 Treshold float
    子装配体联动 OtherChildrenMove bool
    是否已完成 IsDone bool
    先行步索引集合 MustAfter List < int>
    目的地 Destination GameObject
    提示信息 UIText string
    下载: 导出CSV

    表  3   数据集描述

    Table  3   The definition of data set

    数据集名称 数据集合符号 集合数据类型
    所有操作步骤 S ActionStep
    已完成步骤 A Int
    当前可操作步骤 C ActionStep
    下载: 导出CSV
  • [1] 徐召, 胡宁, 李昂, 等. 虚拟现实技术在大型仪器用户培训中的应用[J]. 实验室技术与管理, 2018, 35(10): 106-108. https://www.cnki.com.cn/Article/CJFDTOTAL-SYJL201810026.htm

    XV Z, HU N, LI A, et al. Application of virtual reality technology in large-scale instrument users' training[J]. Experimental Technology and Management, 2018, 35(10): 106-108. https://www.cnki.com.cn/Article/CJFDTOTAL-SYJL201810026.htm

    [2] 周韶泽, 杨文庆, 聂春戈, 等. 基于虚拟现实的动车组虚拟检修仿真研究[J]. 机械设计与制造, 2020(3): 190-193. https://www.cnki.com.cn/Article/CJFDTOTAL-JSYZ202003047.htm

    ZHOU S Z, YANG W Q, NIE C G, et al. Simulation research of EMU virtual maintenance based on virtual reality[J]. Machinery Design & Manufacture, 2020(3): 190-193. https://www.cnki.com.cn/Article/CJFDTOTAL-JSYZ202003047.htm

    [3] 秦志南. 沉浸式虚拟装配系统的可用性研究[D]. 广州: 华南理工大学, 2018.

    QIN Z N. Usability research of an immersive virtual assembly system[D]. Guangzhou: South China University of Technology, 2018.

    [4]

    NICHOLAS H, POOI M W, MATTHEW C, et al. Virtual reality training for assembly of hybrid medical devices[J]. Multimedia Tools and Applications, 2018, 77(23): 30651-30682. doi: 10.1007/s11042-018-6216-x

    [5]

    TIAN Y, LI M, LIU H, et al. Research on 3D virutal trai-ning courseware development system of civil aircraft based on virtual reality technology[C]//Proceedings of the 2019 3rd International Conference on Artificial Intelligence and Virutal Reality. Singapore: ACM, 2019: 21-25.

    [6] 朱正伟, 祝磊, 饶鹏. 面向工业培训应用的虚拟现实装配系统研究[J]. 现代电子技术, 2019, 42(20): 58-63. https://www.cnki.com.cn/Article/CJFDTOTAL-XDDJ201920016.htm

    ZHU Z W, ZHU L, RAO P. Research on virtual reality assembly system for industrial training application[J]. Modern Electronics Technique, 2019, 42(20): 58-63. https://www.cnki.com.cn/Article/CJFDTOTAL-XDDJ201920016.htm

    [7] 李金涛, 郑晓雯, 孙宇飞, 等. 自学习液压支架虚拟装配交互系统[J]. 煤矿机械, 2020, 41(3): 167-169. https://www.cnki.com.cn/Article/CJFDTOTAL-MKJX202003056.htm

    LI J T, ZHENG X W, SUN Y F, et al. Virtual assembly interaction system of hydraulic support based on autonomous learning[J]. Coal Mine Machinery, 2020, 41(3): 167-169. https://www.cnki.com.cn/Article/CJFDTOTAL-MKJX202003056.htm

    [8] 吴珍发, 赵皇进, 郑国磊. 人机任务仿真中虚拟人行为建模及仿真实现[J]. 图学学报, 2019, 40(2): 410-415. https://www.cnki.com.cn/Article/CJFDTOTAL-GCTX201902028.htm

    WU Z F, ZHAO H J, ZHENG G L. Modeling and simulation implementation of virtual human behavoir for ergonomics simulation[J]. Journal of Graphics, 2019, 40(2): 410-415. https://www.cnki.com.cn/Article/CJFDTOTAL-GCTX201902028.htm

    [9] 王常乐, 王启峰. 基于动作类的虚拟拆装过程运动建模仿真[J]. 现代电子技术, 2019, 42(6): 149-153. https://www.cnki.com.cn/Article/CJFDTOTAL-XDDJ201906037.htm

    WANG C L, WANG Q F. Motion modeling and simulation of virtual disassembly and assembly process based on action classes[J]. Modern Electronics Technique, 2019, 42(6): 149-153. https://www.cnki.com.cn/Article/CJFDTOTAL-XDDJ201906037.htm

    [10] 董健康, 杨柳, 耿宏. 基于循环迭代的飞机虚拟拆装过程建模方法[J]. 计算机工程与设计, 2020, 41(2): 494-499. https://www.cnki.com.cn/Article/CJFDTOTAL-SJSJ202002030.htm

    DONG J K, YANG L, GENG H. Aircraft virtual disassembly process modeling method based on cyclic iteration[J]. Computer Engineering and Design, 2020, 41(2): 494-499. https://www.cnki.com.cn/Article/CJFDTOTAL-SJSJ202002030.htm

    [11] 颜洁, 聂瑞华. 作业可分割的数据采集系统[J]. 华南师范大学学报(自然科学版), 2014, 46(5): 32-36. doi: 10.6054/j.jscnun.2014.06.043

    YAN J, NIE R H. Data acquisition system based on divisible job[J]. Journal of South China Normal University (Natural Science Edition), 2014, 46(5): 32-36. doi: 10.6054/j.jscnun.2014.06.043

    [12] 李智. 基于XML描述的动态可扩展数据报文的模型构建方法[J]. 计算机测量与控制, 2020, 28(4): 191-195.

    LI Z. Model construction method of dynamic extensible data packet based on XML description[J]. Computer Measurement and Control, 2020, 28(4): 191-195.

    [13] 李晋芳, 蔡嘉鸿, 谭静, 等. 虚拟康复训练中个性化场景建立的方法[J]. 实验室研究与探索, 2019, 38(10): 100-104;114. https://www.cnki.com.cn/Article/CJFDTOTAL-SYSY201910025.htm

    LI J F, CAI J H, TAN J, et al. Establishing personalized scene in virtual rehabilitation training[J]. Research and Exploration in Laboratory, 2019, 38(10): 100-104;114. https://www.cnki.com.cn/Article/CJFDTOTAL-SYSY201910025.htm

    [14] 张硕, 杨贤, 何汉武. 多通道融合的虚拟实验环境设计[J]. 实验室研究与探索, 2018, 37(12): 112-115;181. https://www.cnki.com.cn/Article/CJFDTOTAL-SYSY201812028.htm

    ZHANG S, YANG X, HE H W. Multi-channel fusion virtual experiment environment design[J]. Research and Exploration in Laboratory, 2018, 37(12): 112-115;181. https://www.cnki.com.cn/Article/CJFDTOTAL-SYSY201812028.htm

  • 期刊类型引用(2)

    1. 蔚燕舞,郭润平. 双创背景下基于SVM的虚拟装配系统装配性能分析预测研究. 自动化与仪器仪表. 2025(01): 201-205 . 百度学术
    2. 曾秋玮,胡兆勇,王志乐,张锐林,邹刚. 面向航空发动机的虚拟多人拆装任务的驱动方法. 系统仿真学报. 2024(01): 220-231 . 百度学术

    其他类型引用(1)

图(15)  /  表(3)
计量
  • 文章访问数:  384
  • HTML全文浏览量:  206
  • PDF下载量:  53
  • 被引次数: 3
出版历程
  • 收稿日期:  2020-05-07
  • 网络出版日期:  2021-07-05
  • 刊出日期:  2021-06-24

目录

/

返回文章
返回