APP下载

面向虚拟装配培训的约束引导通道轻量化构建方法

2024-09-26程思博李智白翱

现代信息科技 2024年14期

摘 要:随着虚拟现实技术日益成熟,其在工业制造领域得到了广泛的应用,为产品可装配性验证和装配培训提供了新的途径。现阶段虚拟装配培训领域的研究主要集中在虚拟环境的真实感设计、用户界面与交互设计、硬件设计与优化等方面,其中存在对算法实时性和硬件设备计算性能要求高的问题。文章提出一种面向虚拟装配培训的约束引导通道轻量化构建方法,解耦约束引导通道的模型构建和引导使用两个阶段,采用离线预先计算约束引导通道的方法,提高了在线检测碰撞阶段效率和实时性;结合WebGL技术的跨平台优势,复用前序装配工艺仿真数据,提升了虚拟装配场景的可交互性。

关键词:Three.js;虚拟装配培训;三维可视化;轻量化构建方法

中图分类号:TP305 文献标识码:A 文章编号:2096-4706(2024)14-0054-05

A Lightweight Construction Method for Constraint-guided Channel for Virtual Assembly Training

CHENG Sibo, LI Zhi, Baiao

(Institute of Machinery Manufacturing Technology, China Academy of Engineering Physics, Mianyang 621900, China)

Abstract: Nowadays, Virtual Reality technology is becoming more and more mature and widely used in industrial manufacturing field, which provides a new way for product assemblability verification and assembly training. At this stage, the research in the field of virtual assembly training mainly focuses on the design of virtual environment realism, user interface and interaction design, hardware design and optimization. However, there is the problem of high requirements for algorithms' real-time performance and computational performance of hardware devices. This paper proposes a lightweight construction method of constraint-guided channel for virtual assembly training, decoupling the two phases of model construction and guidance use of constraint-guided channel, adopting the method of offline pre-calculation of constraint-guided channel, improving the efficiency and real-time performance of online detection collision phase. It combines the cross-platform advantage of WebGL technology, reuses the simulation data of the previous assembly process, and improving the interactivity of the virtual assembly scene.

Keywords: Three.js; virtual assembly training; 3D visualization; lightweight construction method

0 引 言

装配是按照规定的技术要求和相关工艺,将零部件进行配合和连接,使之成为半成品或成品的工艺过程[1]。它是整个制造过程中最后也是最重要的一个环节,对产品性能、开发周期以及成本起着决定性的作用。在当代装备制造领域,装配工作量占据整个产品生产工作量的20%~70%之间[2],因此,有必要对装配人员进行专业培训。装配培训主要分为两个主要方面,即装配流程培训和装配操作培训。前者主要通过视觉和听觉的方式使得受训者对整体装配流程进行了解和学习,经历了工艺文件、PPT、师徒教学、IETM等发展阶段。后者通过触觉的方式,使受训者能够感受到装配过程中的实际“手感”,建立操作记忆,发展经历了实物模拟件和虚拟装配等方式。

值得注意的是,采用实物模拟件的培训方式存在成本较高、且无法迅速适应设计的变更的问题。由于模拟件可能与实际装配产品细节存在差异,因而其培训效果较为有限。随着计算机技术的迅速发展以及人机交互方式的不断演进,虚拟装配培训成为广受关注的技术。

1 虚拟装配培训研究现状

虚拟装配(Virtual Assembly, VA)作为虚拟现实技术(Virtual Reality, VR)在产品装配领域的典型应用,通过利用计算机图形模拟真实装配场景,结合显示设备和人机交互设备,为用户提供了一种身临其境的高度沉浸感,能够在数字化环境中对产品装配过程进行模拟和优化,提前检查零部件之间的干涉和碰撞,预先解决装配中可能出现的问题[3-4]。

徐特等[5]基于数字化虚拟仿真技术,成功实现了在实际装配前即可发现装配工艺不足的目标。然而,该方法主要依赖于软件的干涉检查和目视性分析,局限于对固定装配路径约束下的碰撞预警,对于不会发生碰撞的场景下,受限狭窄空间等条件下可装配性和装配难度难以评估,理想装配路径和实际操作空间存在差距。魏士松等[6]设计并开发了一款基于桌面虚拟现实设备的航天器维修仿真系统。通过六自由度操控笔实现输入,该系统在人机交互时仅考虑了笔通过射线碰撞检测与模型交互,但忽略了在模型移动过程中模型之间的碰撞,导致与实际维修存在一定的差异性。这些研究凸显了虚拟装配技术在提高设计效率和装配质量方面的巨大潜力,但同时也强调了在实际应用中仍需解决的挑战和限制。

鉴于前述研究中存在的问题,可以通过多个模型间的实时碰撞检测实现,然而该方法对软件算法的实时性与硬件设备的计算性能要求较高。本文旨在提出一种面向虚拟装配培训的约束引导通道轻量化构建方法,解耦约束引导通道的模型构建和引导使用两个阶段,采用离线预先计算约束引导通道的方法,提高在线检测碰撞阶段效率和实时性。该通道描述了标准装配路径上每一点法平面内的可操作范围。在通道建立后,可以将在线实时碰撞检测从多个模型间减少到通道模型和装配零件两个模型,减少了对算法实时性和高性能计算机的需求。该通道构建方法在基于WebGL的Three.js上实现验证,无须配置复杂的开发环境,具有跨平台轻量化构建和集成的优点。

2 关键技术

OpenGL(Open Graphics Library)[7]是用于渲染2D、3D矢量图形的跨语言、跨平台的应用程序编程接口(API)。这个接口由近350个不同的函数调用组成,用来绘制从简单的图形到比较复杂的三维景象,允许开发者利用硬件加速来进行图形渲染。WebGL(Web Graphics Library)[8]是一种3D绘图协议,这种绘图技术标准允许把JavaScript和OpenGL ES 2.0结合在一起,通过增加OpenGL ES 2.0的一个JavaScript绑定,WebGL可以为HTML5 Canvas提供硬件3D加速渲染,这样Web开发人员就可以借助系统显卡来在浏览器里更流畅地展示3D场景和模型了,还能创建复杂的导航和数据视觉化。Three.js [9]是基于WebGL的用于创建Web上交互式3D图形的跨平台轻量级JavaScript库,封装了3D图形编程中常用对象,提供如粒子系统、后期处理效果、阴影效果、纹理映射、动画等功能强大且易于使用的库,允许开发者轻松创建如雨、雪、光晕、平行光阴影等复杂效果,简化了在浏览器中创建和展示3D图形的过程,广泛应用于游戏开发、数据可视化、模型加载和特殊效果渲染等领域。

与传统的OpenGL和WebGL开发相比,开发人员不需要高级的计算机图形学知识,只需通过易于使用的API接口实现渲染器、场景、摄像机和光源等对象的图形渲染,入门难度更低,但可扩展性更强,提高了开发效率和易用性,降低了时间成本。

3 装配培训约束引导通道构建方法

3.1 约束引导通道模型

约束引导通道描述了标准装配路径上每一点法平面内的可操作范围,当装配零件偏离标准装配路径时,在视觉上给予可视化提醒,包括闪烁变色等;在触觉上给予力反馈引导,包括震动和与偏离距离成正相关的反方向阻尼。分析可知,操作零件在标准装配路径上的不同位置允许偏离程度不同,其几何模型应为变截面曲面。对其进行定义可以使用参数方程,设θ为角度参数,θ ∈ (0,2π);A为法平面采样精度系数,B为曲线采样精度系数,fθ为法平面实际采样值,ft为曲线实际采样点,(x0( ft ),y0( ft ),z0( ft ))为变截面曲面的轴线参数方程,t ∈ (-∞,+2∞);S(s)为在轴线上位置为ft处的截面形状,s ∈ (0,1);装配培训难度的参数方程为(Ux(u),Uy(u),Uz(u)),u ∈ (0,1),给出定义如式(1)至式(5):

(1)

(2)

(3)

(4)

(5)

基于上述约束引导通道的几何模型定义,给出其物理模型定义,如式(6)和式(7):

(6)

(7)

其中,在装配培训难度参数为u,操作零件的空间位置为(x,y,z),姿态为(rx,ry,rz)时,F为力反馈引导函数模型,L为视觉提醒函数模型。

3.2 数据源

产品的装配制造阶段处于整个产品制造过程的后期,其前序阶段包含了模型设计阶段,结构和工艺仿真阶段。本文基于单一数据源[10]思想,从装配制造过程的前序装配工艺仿真阶段中获取已有的模型数据、标准装配路径和工艺要求等,用于构建面向虚拟装配培训的约束引导通道,减轻数据准备的重复工作,同时也充分保证数据一致性、可靠性和灵活性。

3.3 应用场景

装配操作培训主要有两方面内容,一方面是对操作流程进行示教,一方面是对操作的动作进行练习。进行装配操作练习时,标准装配路径是理想情况下的安装轨迹,而实际移动轨迹会与之产生偏差。为避免实际装配时操作零件与周围零件之间产生碰撞,仅给定标准装配路径是不满足要求的,需要基于标准装配路径和与其他零件的相对位置关系计算出路径上每一点的允许偏离程度。将所有路径点上的允许偏离程度进行整合处理,构建完整的约束引导通道。

约束引导通道的应用场景如图1所示,中间深色曲线为标准装配路径,两侧浅色曲线之间为建立的约束引导通道区域。当操作零件位置偏离标准装配路径达到如图中位置a所示,即与约束引导通道相交时,给予视觉提醒如图中点划线所示;当装配零件偏离标准装配路径,如图中位置b所示,给予力反馈引导,包括震动和与偏离距离成正相关的反方向阻尼。

3.4 构建方法

约束引导通道的构建方法如图2所示。

首先从前序的装配工艺仿真中获取标准装配路径点坐标、场景模型数据和其空间位姿表示为式(8)至式(10):

(8)

(9)

(10)

其中,模型数据由四部分组成,face为模型的面片数组;vertice为几何体对象中的顶点坐标;normal为用于描述顶点的朝向;uv定义了模型表面上的每个顶点与纹理之间的映射关系。获取上述数据后,在三维场景中重构零件模型,并使用Catmull-Rom算法[11]对标准装配路径点拟合出平滑的3D样条曲线。将曲线上的点到曲线某一端点(起点)的弧长与曲线的总弧长的比值arcRatio作为变量,如式(11)所示,迭代可以获取整条曲线上的点:

(11)

图3中arcRatio的计算值即为迭代到B点时的计算值。根据arcRatio获取相对应的样条曲线上的点坐标arcPoint和曲线在该点的切向量 如式(12)和式(13)所示:

(12)

(13)

取向量 ,满足 ,如图3所示,则 表示为:

(10)

将向量 绕着向量 旋转θ,旋转角度范围涵盖从0到2π,得到的新向量 作为射线交互的方向,样条曲线上的arcPoint作为射线起点,获取与场景模型的相交信息,若相交,保存相交点坐标、射线方向以及交点与起点距离,继续获取样条曲线上的下一点,并重复上述操作,完成遍历整条曲线后,根据设定的装配培训难度,完成对整条通道构建。

4 方法实现

4.1 实现平台

实验平台性能参数如下:CPU为8核16线程,基本时钟频率为2.9 GHz;RAM为16 GB,频率3 200 Hz;GPU为6 GB,拥有1 920个CUDA内核。

4.2 实现方案及效果

本研究采用Three.js进行实现验证。图4所示为约束引导通道单点截面实现示意图:图中黑色小球所示为设定的标准装配路径点;网格模型为随机生成摆放的多种模型,包括圆环、球、正方体、圆柱体等,以评估在复杂场景下的可行性;穿过标准装配路径点的实线表示基于标准装配路径关键点拟合的3D样条曲线;平面代表当前装配操作经过点对应的法平面。法平面内,对射线与模型的交点和相交方向进行了可视化处理,并根据最小相交距离及设定的装配培训难度,绘制不同半径的同心圆,标注可移动范围,用于提示与理想装配路径的偏差是否超过设定阈值。图5所示为完整约束引导通道的构建,设定的装配培训难度在各个方向上均为0.1,即截面圆半径为该截面与场景模型相交距离最小值的1/10。从图中可以发现,不同位置的允许偏离程度不同。装配操作培训时,视觉上可以更直观地实现提示效果;在线碰撞检测时,可以将实时碰撞检测从多个模型间减少到通道模型和装配零件两个模型,减少了对算法实时性和高性能计算机的需求,并为后续触觉上的反馈引导提供基础。

本样例对所提出的约束引导通道方法进行了验证,以确保其满足轻量化的需求。在验证平台上,在满足144 Hz的刷新率的情况下,CPU占用率维持在10%以下,内存占用率保持在约300 MB左右,GPU占用率控制在30%以内。

4.3 复杂度分析

分析图2可知,该构建方法存在两层嵌套循环,即单点截面构建的时间复杂度为O(n),完整约束引导通道构建的时间复杂度为O(n2)。在解耦约束引导通道的模型构建和引导使用两个阶段后,离线单点截面构建时间与法平面采样精度系数A有关,完整约束引导通道构建时间与法平面采样精度系数A和曲线采样精度系数B有关,二者均与场景数量无关,如图6所示。

在约束引导通道的在线使用阶段,可以将在线实时碰撞检测从多个模型间减少到通道模型和装配零件两个模型。与传统多模型碰撞检测在不同场景模型数量下单位时间内在线碰撞检测次数对比如图7所示。由图可知,该方法减少了对算法实时性和硬件设备高性能计算的需求,适用于复杂场景。

5 结 论

本文提出的面向虚拟装配培训的约束引导通道轻量化构建方法,解耦了约束引导通道的模型构建和引导使用两个阶段,采用离线预先计算约束引导通道的方法,以空间换时间,减少了对算法实时性和硬件设备高性能计算的需求,适用于复杂场景,提高了在线检测碰撞阶段效率和实时性。该方法在基于WebGL的Three.js上实现验证,无须配置复杂的开发环境,具有跨平台轻量化构建和集成的优点。

参考文献:

[1] 杨建,谢志强,王坚,等.虚拟装配技术概述 [J].机械制造,2013,51(2):61-64.

[2] 刘检华,宁汝新,姚珺,等.面向产品全生命周期的虚拟装配技术研究 [J].计算机集成制造系统,2005(10):1430-1437.

[3] 叶开成.机械设计中虚拟装配数字化设计方法 [J].农机使用与维修,2023(11):49-52.

[4] 杨丽君.汽车发动机和变速箱自动化装配技术分析 [J].农机使用与维修,2020(9):75-76.

[5] 徐特,耿宝寒,杨智程,等.数字化装配仿真技术在空调领域中的应用 [J].机械设计,2023,40(S2):181-184.

[6] 魏士松,周正东,章栩苓,等.基于桌面虚拟现实技术的航天器虚拟维修训练系统 [J].系统仿真学报,2021,33(6):1358-1363.

[7] 蒋成龙,杨应迪,黄建达.基于OpenGL的矿井三维可视化通风系统构建 [J].煤矿安全,2022,53(1):128-133.

[8] 王希.一种基于Three.js的航空虚拟维修培训系统设计 [J].中国科技信息,2023(3):26-28.

[9] ALMANSOURY F,KPODJEDO S,BOUSSAIDI E G. Investigating Web3D Topics on StackOverflow: a Preliminary Study of WebGL and Three.js [C]//Web3D' 20: Proceedings of the 25th International Conference on 3D Web Technology.[S.I.]:ACM,2020:1-2

[10] 朱跃进,余林.重塑PBOM单一数据源条件下面向功能的EBOM展示方案研究 [J].航空标准化与质量,2023(5):37-40+45.

[11] 贺卫中,陈昀.基于Catmull-Rom算法的样条曲线在测绘CAD制图软件中的应用研究 [J].现代测绘,2022,45(3):50-52.

作者简介:程思博(1998.12—),男,满族,辽宁本溪人,硕士在读,研究方向:制造信息化、虚拟现实、装配培训。

收稿日期:2024-01-11

基金项目:国家自然科学基金(51705485);装配工艺优化项目(K1217-1923-TCA);国防基础科研项目(JCKY2020212B003)

DOI:10.19850/j.cnki.2096-4706.2024.14.011