Design of virtual training system for core drill based on Unity3D
-
摘要: 大型岩心钻机价格昂贵、操作工序复杂且十分危险,导致传统的培训技术难以高产出操作纯熟的技术人员,同时传统的培训技术以理论学习与直接上机相结合,如此跨越式培训增加了岩心钻机损坏与报废的风险,也提高了培训者自身门槛。基于此,提出了基于Unity3D的岩心钻机虚拟实训系统设计方案,并以XY-4型岩心钻机为例,采用SolidWorks与Maya联合建模、Unity3D进行软件系统开发。Unity3D可模拟出真实工作场景,让系统使用者有身临其境的感觉。实训系统设置4个学习场景:认知视频学习、操作要领学习、单步训练以及整体训练,操作知识环环相扣,人与场景融为一体。Abstract: Large-scale core drill is expensive, complicated in operation and dangerous to manipulators, leading to the difficulty in traditional training techniques for skilled technicians. What's more, the leap type of traditional training of theoretical learning and practice on-board increases the risk of rig damage and scrap, also raises the threshold of trainers. Therefore, this paper proposes a design scheme of core drill training system based on Unity3D, and taking XY-4 core drill as an example, which is modeling by SolidWorks and Maya. The software system is developed with Unity3D, which is able to simulate real-life work scenarios, and gives system users an immersive feeling. The training system sets up four learning scenarios: cognitive video learning, operational essentials learning, single-step training, and overall training. In this system, operational knowledge is interlocked, with people and scenes blended together.
-
Key words:
- core drill /
- virtual training /
- Unity3D development /
- 3D modeling
-
传统的岩心钻机培训方式,理论学习后直接进行场地实操,学员操作熟练度不足,容易造成机械设备的损坏,导致设备投入费用居高不下,维护费用和耗油量过高,并存在人员安全隐患[1-3]。在此之前,中国地质大学(武汉)数字化虚拟技术实验室团队通过VRML虚拟环境以及VB语言进行虚拟实训系统设计与实现,该系统存在模型与现实钻机不一致、无法再现全操作过程(比如卷扬机升降、上下钻杆等)、VB程序复杂等问题。
针对上述问题,设计了基于Unity3D的岩心钻机虚拟实训系统[4-11]。该系统通过SolidWorks进行三维建模、Maya材质贴图,运用Unity3D搭建虚拟场景,并通过C#编程,加入相应的控制逻辑,通过Unity3D与VR设备相结合呈现出沉浸感与交互性于一体的岩心钻机虚拟实训系统。
1. Unity3D系统开发
系统通过Unity3D开发,其开发过程以软件工程方法学为基础,以实际需求为导向,设计系统内各个功能模块[12-17]。其主要流程分为4个部分:模型构建、3D虚拟场景搭建、控制逻辑以及调试。同时,Unity3D开发系统还具备跨平台兼容的特性。如图 1所示Unity3D系统开发流程。
2. 岩心钻机
2.1 岩心钻机3D模型
针对XY-4型岩心钻机[18-19],采用SolidWorks进行模型构建,Maya软件进行贴图渲染,同时导出.fbx格式文件。如图 2,XY-4型岩心钻机主要分为3个部分:动力机、钻机本体、连接机构。动力机主要是选择495型柴油机或JO272-4型电动机,本系统采用电动机模型。钻机本体主要有:离合器、变速箱、分动箱、回转器、卷扬机、液压操作系统、前后机架以及机座。连接机构主要是:花键、弹性联轴节、万向轴等。
2.2 岩心钻机钻进工序
本系统以XY-4型岩心钻机为例,该钻机是一种机械传动、液压给进的立轴式岩心钻机。动力机可配电动机或者柴油机,其传动分两部分:一部分由动力机向液压系统供油,实现液压给进、绞车取心等;另一部分是动力机连接万向传动轴与分动箱输入轴,其中分动箱将动力分别传到回转器和卷扬机,最终实现钻机正常工作。钻进工序主要是:起下钻、回次、给进、倒杆、进尺。
根据XY-4型岩心钻机钻进工序,将所有操作模块分解,先进行分步练习再整体训练。其中,单步操作如下:离合器手柄操作、变速箱手柄操作、钻机移动、卡盘夹紧松开、油缸上升下降、分动箱手柄切换以及卷扬机手柄切换。
3. 系统设计
3.1 3D虚拟场景
岩心钻机虚拟实训系统的UI元素(纹理、图像、按钮、滑动条等)主要是通过Photoshop制作完成,图 3为系统UI界面所用到部分图片素材,主要体现在主场景中。
3D虚拟场景主要分为主场景与4个分场景,其中图 4-a主场景目的是信息登记与功能选择,图 4-b分别是4个分场景示意图:第1个分场景(图 4-b-1、图 4-b-2)是观看钻机基本操作指南以及钻机钻进视频;第2个分场景(图 4-b-3)是训练钻机基本操作,如离合器手柄操作、变速箱手柄操作等;第3个分场景(图 4-b-4)是卷扬机的使用操作以及提钻等;第4个分场景(图 4-b-4)是实际钻进,假定已钻有一定深度,在此基础上进行实际钻进操作训练。
3.2 控制逻辑
3.2.1 漫游逻辑
自动漫游是在漫游事件触发后无任何输入的情况下,允许角色沿着既定路线进行漫游。
手动漫游即通过外部设备的控制信息操纵系统内角色的移动,本系统主要采用头盔手柄式,以人物自由行走与转动结合进行漫游,同时通过贝塞尔曲线进行位置瞬移如图 5所示。
其中p0、p02、p2 3点在同一个抛物线上,p1点是过p0和p2点的两切线的相交点,在p02点的切线交p0p1和p2p1于p10和p11,则如下比例成立: p0p10p10p1=p1p11p11p2=p10p20p20p11。假设给定n+1个点p0,p1,p2,…,pn,利用公式(1)可构建一条参数曲线叫做n次贝塞尔曲线。同时称p0,p1,p2,…,pn为p(t)的控制点。
p(t)=n∑i=0piBi,n(t),0⩽t⩽1 (1) 式中:Bi,n(t)=(ni)ti(1−t)n−i, i=0, …, n, 又称作n阶的伯恩斯坦基底多项式。
3.2.2 交互逻辑
交互体现沉浸感,本系统中最主要的交互是射线与碰撞[20-22]。
射线是在三维空间中从一个点沿一个方向发射的一条无限长的线。在射线的轨迹上,一旦与添加了碰撞器的物体发生碰撞,将停止发射。可以利用射线获取目标的信息实现系统所需要的目标选择等功能。本系统中使用到射线的地方,如点击悬浮在半空的UI界面以及虚拟键盘等。
虚拟现实更注重与对象的真实接触,更多的使用物理性接触的碰撞行为。图 6为碰撞检测算法逻辑,操作钻机的绝大部分行为都是通过物理碰撞行为来完成的。例如操纵控制手柄,拾取地面上的物件。碰撞器按外形可以分为盒子碰撞器、圆碰撞器、胶囊碰撞器、轮碰撞器、网格碰撞器以及地形碰撞器,同时,产生碰撞信息所需要的条件为:双方都有碰撞器或触发器,其中一方还需要刚体。不同的碰撞器可以模拟不同的碰撞行为,例如钻杆用盒子碰撞器,液压手柄用网格碰撞器,人用胶囊体碰撞器,扳手用盒子碰撞器,山脉用地形碰撞器等。
交互的重点就是实现人与场景的互动,一旦达到射线或碰撞条件就需要实现对应的功能模块,钻机部件基本的运动C#代码如表 1所示。要实现整个钻机的操作,同时还需要旋转、伸缩以及头盔手柄插件等代码。
表 1 钻机部件交互运动C#伪代码Table 1. Rig component interaction motion C# pseudo codeC#伪代码 坐标移动
<summary>
<param name="trans">需要移动的对象</param>
<param name="dir">方向</param>
<param name="speed">速度</param>
void PosChange(Transform trans, Vector3 dir, float speed)
{
trans.position += dir * Time.deltaTime * speed;
}4. 系统运行测试
Unity3D最大的优点就是支持多平台:移动平台、桌面平台、游戏主机、网页游戏、虚拟现实与增强现实。由于在测试阶段,为了能验证各项功能的准确完整,受加工条件限制,采用桌面平台与VR头盔结合方式。经过模型搭建、材质贴图、场景布置以及逻辑代码编写,整个系统基本完成。图 7是设计的系统运行流程,由于使用的是HTC VIVE头盔手柄,还需要安装相应的驱动等配置文件。系统操作流程:第一步启动程序自动进入登录界面;第二步戴上VR头盔和拿起VR手柄,通过手柄引导位置瞬移到登陆界面前,继续使用手柄发出射线完成信息的录入;第三步信息录入完成后就进入到场景选择,一共有4个场景;第四步依次选择4个场景训练测试。
图 8是通过头盔看到的场景,在使用头盔时,操作者可以任意时刻用手柄进行位置选定并快速移动到该位置,并可以使用手柄进行点击开关按钮、拉动控制手柄、拿起工具等操作。总之,操作者能够完全沉浸于头盔场景中,完成所有的岩心钻机实际操作。
5. 结语
Unity3D是目前用于虚拟实训仿真的常用软件,本系统正是运用Unity3D具有交互沉浸感的特性实现了现实场景中岩心钻机的实际操作,通过几个场景内容的学习,可以让培训者从认知层面到熟练操作虚拟XY-4型岩心钻机的层面。基于Unity3D的岩心钻机虚拟实训系统的成功开发,让培训者身临其境地学习操作钻机,解决了大批量人员培训的问题,也降低了培训成本和培训过程中存在的安全隐患。同时,本系统正在进行混合现实系统开发测试,以便使操作者能够完全掌握岩心钻机的操作实训。进一步来说,由于地质工程机械操作危险、设备体积大以及价格昂贵等特点,使得基于Unity3D开发的虚拟实训系统将备受欢迎。
-
表 1 钻机部件交互运动C#伪代码
Table 1. Rig component interaction motion C# pseudo code
C#伪代码 坐标移动
<summary>
<param name="trans">需要移动的对象</param>
<param name="dir">方向</param>
<param name="speed">速度</param>
void PosChange(Transform trans, Vector3 dir, float speed)
{
trans.position += dir * Time.deltaTime * speed;
} -
[1] 刘凡柏, 任启伟, 伍晓龙, 等.3500 m岩心钻探装备的研制及应用[C]//李艺.第十九届全国探矿工程(岩土钻掘工程)学术交流年会论文集.北京: 地质出版社, 2017: 242-247. [2] 王亚.基于知识的岩心钻机参数化设计系统研究[D].南京: 东南大学, 2016. [3] 李文秀, 孟义泉, 董向宇, 等.YDX-1型轻便岩心钻机的研制与应用[J].探矿工程:岩土钻掘工程, 2015, 42(2):8-14. http://www.cqvip.com/QK/90665A/20152/663875001.html [4] Guberek R, Schneiberg S, Sveistrup H, et al.Application of virtual reality in upper limb rehabilitation[P].Virtual Rehabilitation, 2008. [5] Goldstone W.Unity 3.x game development essentials[M].UK:Packt Publishing Ltd., 2011. [6] 文国军, 夏雨, 王玉丹, 等.基于Unity3D的水平定向钻机虚拟实训系统设计[J].系统仿真学报, 2020, 32(5):801-807. http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=xtfzxb202005006 [7] 康坤坤, 钱锋, 尤伟星, 等.水平定向钻孔壁稳定性影响因素分析[J].地质科技情报, 2016, 35(2):45-48. http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=dzkjqb201602011 [8] 刘全利, 周广言, 白世武, 等.水平定向钻孔剖面测量系统的研制[J].地质科技情报, 2016, 35(2):10-14. http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=dzkjqb201602003 [9] 苏楠.基于Unity3D的驾考模拟平台的设计与制作[J].信息与电脑:理论版, 2018(21):96-97. http://www.cnki.com.cn/Article/CJFDTotal-XXDL201821041.htm [10] Jie J, Yang K, Haihui S.Study on the virtual natural landscape walkthrough by using unity 3D[C]//Computational and Information Sciences(ICCIS), 2013 Fifth Internayional Conference on.IEEE, 2013: 1-4. [11] 郑贵洲, 晋学领, 彭俊芳.工程勘探钻孔岩心图像管理技术[J].地质科技情报, 2017, 36(2):272-278. http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=dzkjqb201702036 [12] 魏育坤.基于Unity3D的虚拟现实交互系统的设计与实现[J].电子技术与软件工程, 2018(14):45-46. http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=0120181105430062 [13] Jiang Chengwei, Kang Xingwu, Wang Xuping, et al.Development of a virtual equipment training system based on multi-platform integration[P].DEStech Transactions on Computer Science and Engineering, 2018. [14] Jae H B, Ae H K.Design and development of Unity3D game engine-based smart SNG(Social Network Game)[J].International Journal of Multimedia and Ubiquitous Engineering, 2014, 9(8):261-266. doi: 10.14257/ijmue.2014.9.8.23 [15] Oboe R, Antonello R, Biral F.Development of a water ski simulator for indoor training with proprioceptive and visual feedback[M].[S.l.]:RELX Group, 2014:35-70. [16] 杨睿, 范雯杰, 孙景荣.虚拟实训平台的建设与思考[J].继续教育, 2015, 29(8):38-39. http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=jxjy201508013 [17] Zheng Y.Research on virtual experiment system on PLC education based on teaching materials[J].CSEE, 2011:, 216:552-556. http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=10.1177/030913259001400103 [18] 卢春阳, 欧阳志强.XY-4L型岩心钻机的研制与应用[J].地质装备, 2010, 11(1):11-12. http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=dzzb201001002 [19] 冉灵杰, 宋殿兰, 刘家荣.30 m无循环取样钻机的研制[J].地质科技情报, 2016, 35(5):221. http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=dzkjqb201605031 [20] 王娇君.基于虚拟现实的化工实验仿真软件开发与应用研究[D].杭州: 浙江大学, 2018. [21] Smith M, Maiti A, Maxwell A D, et al.Using unity 3D as the augmented reality framework for remote access laboratories[J].Lecture Notes in Networks and Systems, 2019, 47:581-590. doi: 10.1007/978-3-319-95678-7_64 [22] Olaverri M C, Errea M J, Diaz A A, et al.Connection of the SUMO microscopic traffic simulator and the unity 3D game engine to evaluate V2X communication-based systems[J].Sensors, 2018, 18(12):4399. doi: 10.3390/s18124399 -