沉浸式车身修复教学系统

2019-10-11 11:24王大虎张孟军孙存远
软件导刊 2019年7期
关键词:教学系统手柄虚拟现实

王大虎 张孟军 孙存远

摘 要:针对传统汽车维修教学因设备不足、代价昂贵而导致教学力度远远无法满足实际需求的问题,以车门损伤修复为例,利用HTC vive硬件设备与unity3d引擎技术,为增强汽修教学力度与效果,开发沉浸式车身修复教学系统。首先对车门、损伤区域、维修工具等设备进行3D建模,构建车间全景;然后将模型制作一份简模,导入到unity3D中,利用Vive Input Utility 插件连接unity3D引擎与HTC vive硬件,编程开发交互操作,将设备信息保存于SQL server数据库;最后在操作任务结束后,开发一套理论考核系统,检验学员培训效果。该系统在高校教学中取得了较好的效果,沉浸式培训方案在教学应用中改善了传统教学不足之处。

关键词:3D仿真;汽车维修;虚拟现实;沉浸式教学

DOI:10. 11907/rjdk. 182681 开放科学(资源服务)标识码(OSID):

中图分类号:TP319文献标识码:A 文章编号:1672-7800(2019)007-0104-04

Immersive Body Repair Teaching System

WANG Da-hu, ZHANG Meng-jun, SUN Cun-yuan

(School of Electrical Engineering and Automation, Henan Polytechnic University, Jiaozuo 454000, China)

Abstract: In view of the problem that the traditional vehicle maintenance teaching has insufficient equipment and high cost, the teaching intensity is far from being enough to meet the actual demand. For the repair of the door damage,in order to enhance the teaching strength and effect of auto repair, the HTC vive hardware device and the unity3d engine are used to develop the immersive body repair teaching system. First, 3D modeling of the door, damage area, maintenance tools and other equipment build a workshop panorama, then make a simple model, import the models into unity3d, and then use the Vive Input Utility plug-in to connect the unity3d engine and HTC vive hardware, programming development Interactive operation, save the device information to the SQL server database, and after the operation task is finished, develop a theoretical evaluation system to test the training effect of the students.The system has achieved good results in the teaching of colleges and universities. The application of immersion training program in colleges and universities has improved the shortcomings of traditional teaching methods.

Key Words: 3D simulation; vehicle maintenance; virtual reality; immersive teaching

基金項目:国家自然科学基金项目(61601172);河南理工大学电气工程与自动化学院开放课题项目(KFKT00000000)

作者简介:王大虎(1969-),男,河南理工大学电气工程与自动化学院教授、硕士生导师,研究方向为虚拟现实、图像处理;张孟军(1995-),男,河南理工大学电气工程与自动化学院硕士研究生,研究方向为虚拟现实、图像处理;孙存远(1995-),男,河南理工大学电气工程与自动化学院硕士研究生,研究方向为虚拟现实、图像处理 。

0 引言

传统汽修教学面临诸多限制,因实训设备非常昂贵,包括汽车部件样本及维修套件,校方往往难以承担;其次,教学场地受限,由于汽修专业需使用体积较大的工作台与专业仪器,如门板支架、钣金工作站等,需要更多的教学空间;第三,学员在学习过程中,因操作不熟练,时常损坏设备,甚至可能引发危险,导致学校在设备维护与安全保障方面投入加大。基于以上原因,课程内容时常被简化,甚至用播放视频等方式取代实际操作,大幅降低了学员学习效率,达不到实际需要的教学力度,导致学员需接受二次培训,耗时耗力。同时,教员在授课时局限性比较大,如讲解盘式打磨机与外形修复机的正确使用方法时,难以进行详尽描述。

因此,本文充分发挥软件教学优势,开发沉浸式车身修复教学系统,以期解决设备成本高与场地受限的问题,该系统还可重复利用,节约资源。

虚拟现实技术(Virtual Reality)最早应用于美国航天部门飞行员培训中,它是一种可创建、体验虚拟世界的计算机系统,利用电脑模拟产生一个三维空间的虚拟世界,提供用户关于视觉等感官模拟,让用户感觉仿佛身历其境,可以在三维空间中观察及操作互动。将虚拟现实技术应用于汽修教学是必然趋势,但经文献调研发现,国内学者对虚拟现实类教学系统虽极度认可,却并没有提出一项真正可行性方案与具体开发流程。陈卫国[1]提出对汽车零部件进行数字建模,借助搜集的数据,将设备以3D的新型形式带入课堂,可解决硬件资源有限的问题,但不涉及到人机交互,无法完成实操训练;蔡伟明[2]提出将VR技术融入到汽车职业教育领域,以分布式教学方式将教员与学员放置于同一虚拟环境内,但并没有提出可实施性开发流程;滕菲[3]提出将虚拟现实技术与汽修实验教学相结合,将设备建模后进行拆装实验,有助于部分简单的实验课程讲解,但设备模型没有进行处理,制作粗糙,且没有以实际汽修厂工作流程制定系统方案,没有完整的工作流程仿真,培训效果不佳。针对以上不足,本文开发了沉浸式车身修复教学系统。

1 系统方案设计

本系统以常见汽修操作为例。在实际教学过程中,首先对车门制作损伤,然后进行修复工作:用钣金锤对车身损伤处均匀敲击,用带式打磨机将损伤处打磨光滑,用记号笔在损伤区四周画一个近似椭圆的区域,用盘式打磨机把椭圆区域内部打磨光滑,在车身筋线处焊接成排介子,使用菱线拉力器对筋线进行整体拉拔作业,最后用测量尺对损伤区域进行反复测量,观察是否存在高低点,如果存在,则使用外形修复机进行精修。操作前需要对车门、门板支架、钣金顶铁组套、B-2000外形修复机、B-3000钣金工作站、菱线拉力器气、动盘式打磨机、环带打磨机、圆口大力钳、砂纸砂带等设备进行三维可视化建模,并进行交互仿真。沉浸式车身修复教学系统人机交互框架如图1所示。

由图1可知,沉浸式车身修复教学系统主要分为3个部分,首先进行实地考察,然后开发软件部分,最后引入硬件部分。实地考察时需详细了解汽修工作流程与工作原理,在员工指导下进行实操训练。拍照取材,分析系统功能需求,由于使用工具时容易引起车门变形,在系统开发时应将细节凸显出来。软件部分首先对照图片与CAD图纸,用3Dmax进行高精度建模,力求设备模型尺寸形状与实物保持一致[4]。由于unity3D运行性能受模型面数影响,面数越多运行速度越慢,因此需将高精度模型重新制作一份低模,低模外形大致与高模保持一致,将高模纹理与贴图信息烘焙到低模上,这样既保留了高精度模型表面信息,又减少了模型面数,建低模时应保证不能出现超过4条边的面,否则在unity3D中运行时会计算出错。将制作好的低模导入到unity3D中,建立一个完整的工位场景[5],在场景添加灯光、自然气流、环境光等自然元素,模拟真实的自然环境。

利用CSharp脚本语言开发人机交互系统、虚拟操作流程与考评模块,借助Vive Input Utility插件接入HTC vive硬件设备,学员通过头戴显示器“进入”虚拟工位环境中[6],通过VR手柄,拿起场景中的钣金锤,打磨机等工具,走到损伤车门前,进行修复作业,操作完成后,调出考评模块进行考核,返回的成绩信息将被记录在数据库中。

2 系统硬件配置

为增强学员在虚拟环境中的沉浸感和想象性,提高人机交互的流畅性、舒适性[7],虚拟现实技术相关硬件设备发展迅速。本文系統使用HTC与Value公司共同开发的一款头戴显示器HTC vive[8],其使用一块OLED屏幕,单眼有效分辨率为 1 200×1 080,双眼合并分辨率为 2 160×1 200,画面刷新率为 90Hz,延迟为22ms,实际体验为零延迟,无眩晕感[9]。2 000分辨率降低了画面颗粒感,没有纱门效应。近视在400度以下者无需佩戴近视眼镜依然能看清画面细节。两个单手持控制器,配备 24 个感应器、多功能触摸板、双阶段触发器、高清触觉反馈与可充电电池。内置定位系统(Lighthouse),可同时追踪显示器与控制器位置,追踪位置4.5*4.5m,内部有Steam box主机、光敏传感器、陀螺仪、加速度计等。嵌入高精度激光定位传感器,追踪精度为0.1度[9]。Lighthouse由两个可移动便捷基站组成,基站的LED闪光与头盔及手柄光敏传感器信号同步,根据位置差计算学员当前位置。

在PC机上调试HTC,系统PC机CPU为英特尔酷睿i7 8700K(6-核/12-线程,12MB 缓存,最高可超频至 4.6GHz),显卡为NVIDIA Forced GTX 1080 Ti含11GB GDDR5X,16GB内存[10],单通道为HyperXDDR4 XMP 2933MHz专业版本。将HTC live与PC机连接后,搭建基站,选择进入房间校准头盔与手柄的位置,运行软件系统,调试距离与高度。

3 关键技术

通过3Dmax建模软件、unity3D引擎、HTC vive硬件设备开发系统的流程如图2所示。首先通过获取的车间、车身设备、维修工具等照片与图纸进行三维可视化建模,模型质量直接关系到系统性能与界面美观性,因此模型的合理制作与多级处理是开发中的重要技术;然后将处理过的模型导入unity3D引擎中,开发交互功能,完成所有虚拟维修工作流程[11]。因程序量大,所以系统逻辑功能与层级关系应合理流畅,如何维持运行稳定是系统技术难点;最后接入HTC vive硬件设备,实现沉浸式教学,学员能够进入虚拟工位进行相关操作,将现实世界与虚拟世界进行连接,在现实中控制虚拟场景中的设备。

图2 系统开发流程

3.1 三维可视化建模技术

汽修设备与工作环境的建模分为基本模型构建与添加材质纹理两个部分。基本模型构建需严格按照CAD图纸与照片等素材数据进行规范建模[12],力求与生产工艺保持一致,为模型添加贴图、材质、细节,能使模型看上去更加真实,添加材质时对光线参数进行调节,如增添金属边缘高光反射、灯光下设备背面的阴影。

设备基本模型主要利用3Dmax建模软件完成,PS辅助贴图的制作。3Dmax建模方式有多种,可分为网格建模、多边形建模、样条线建模。系统使用多边形建模完成车间环境与维修工具的制作,在构建模型时,在最简单的模型如长方体圆柱体的基础上,添加点线面,并使用挤出、塌陷、切割等快捷命令将基本模型逐渐勾勒成目标形状,不停地添加点、线进行位置调整,使模型更加精致,在建模时删除看不见的面,减少场景面数,提高系统性能[13]。

场景基本模型制作完成后,需要对模型添加纹理信息与颜色信息。为使模型更加逼真,直接将原物体部分图片贴在材质球上,再将材质球附着到模型上,为材质球添加环境光,勾选菲涅尔设置,模拟模型处在真实自然环境中的光线效果,高光与阴影十分逼真。真实设备表面一般有些灰层,为表现出粗糙感、颗粒感,在材质球上添加纹理贴图,将纹理贴图与颜色贴图相互叠加后,模型表面基本接近真实物体[14]。在制作贴图时为保证不会出现拉伸与扭曲现象,应先将模型的UV模板拆开展平,再调整贴图大小,使其与UV模板完全一致。菱线拉力器模型处理前后对比如图3所示。为使场景更加美观,打上3层灯光,一层主照明,两层补光,使画面看起来更加明亮。

(a)菱线拉力器                                  (b)拉力器支腿

(c)基本模型                                    (d)上材质后模型

图3 基本模型与添加材质后对比

3.2 沉浸式培训系统

3.2.1 车间漫游

在虚拟工作环境中漫游,给学员身临其境的真实感。学员戴上VR头盔后可以通过手柄选择想要进入的工位,每个工位环境相同,作业内容与使用的设备不同。学员首先熟悉工作环境,浏览工具位置,进行360度视角环绕观察,与到达真实现场的感受一致。场景漫游如图4所示。

图4 车间场景漫游

将模型导入到unity3D引擎后,调整各模型位置,为增强画面效果,调节室内光线亮度[15],引入Vive Input Utility插件,该插件是在steam VR的基礎上进行开发的。将Prefabs的CameraRig拖入到场景中,将HTC vive头戴显示器与unity3D场景进行连接,调节CameraRig的Steam VR_Play Area脚本参数,设置学员移动区域,避免撞墙或者移动到场景范围之外。运行系统时,学员戴上VR头盔后拿起手柄,CameraRig的Steam VR_Tracked Object脚本实时跟踪学员位置,将位置信息在unity3D场景中进行同步,学员便可以在虚拟场景中自由移动,为使学员漫游时移动方便,在左手手柄model上添加VTRK_ControllerEvents、VRTK_Pointer、VRTK_Bezier Pointer Renderer3个脚本组件,实现瞬移功能[16]。

3.2.2 设备交互

学员进入虚拟工位后,可与操作设备进行交互,在虚拟场景中,使用手柄接触设备,当手柄进入设备collision碰撞器区域内,界面弹出设备信息,如设备名称、设备型号、设备功能的简单介绍等。按下手柄扳机键,工具会被手柄抓起,对工具进行移动旋转,使用模拟工具。学员可以将工具拉近到眼前从各个角度观察工具结构,借助文字标注,尽快掌握工作流程中各工具的用法。模拟物体力学时,为各工具模型添加Rididbody组件,勾选Use Gravity,为模型添加质量与重力,松开手柄扳机键后,工具从手中掉落。

在与设备交互时,手柄模型、工具模型均配置Collision碰撞器,实时检测碰撞器的碰撞信息,当检测到与工具模型碰撞器接触的是手柄碰撞器[17],触发程序命令,调出设备信息面板。在手柄上添加VRTK_ControllerEvents脚本组件,监听手柄的输入信息,当扣下扳机键,工具模型位置与手柄位置相对静止,实现抓取功能,如图5所示。

(a)弹出设备信息                                (b)拿起钣金锤

图5 设备交互

3.2.3 考核平台

为检验学员培训效果,开发考核模块。根据工作流程中涉及到容易操作失误的知识点设计考核题目,学员在完成培训内容后,使用VR手柄选择考核子模块并填写学员信息,教员登入后具有后台管理权限,可实时更改题目与每道题分值,学员每次考核卷面及系统自动返回的成绩信息将保存在SQL server数据库中,学员可随时调出数据库表单进行查阅[18]。

系统使用Transact-SQL脚本语句开发数据库保存信息的功能,在数据库中添加CREATE、INSERT、SELECT语句为学员考核信息创建数据表单,并通过脚本程序对数据进行修改、插入等操作。分别为学员与教员设置Students_table和Teacher_table两份不同的数据表,教员有修改学员数据表的权限。

4 系统发布

沉浸式车身修复教学系统开发完成后,对系统进行适配与发布。unity3d引擎支持一键发布成.exe应用程序结合AndroidSDK与java虚拟机,可发布成.apk安卓版应用程序,同样支持发布webGL网页端。本次系统发布为exe单机版,将创建的4个场景按照顺序添加到Sence In Build中,在Build之前对屏幕分辨率进行适配处理,将UI画布中的Scale Mode设置为Scale With Screen模式,在系统启动脚本的Awake方法中加入Screen。设置SetResolution(1280,700,false)程序命令运行窗口的长、宽[19],发布的exe文件可直接点击运行,如图6所示。

(a)主界面                                 (b)考核模块登陆界面

图6 系统发布运行

5 结语

本文采用虚拟现实的实验课程摆脱了传统教学模式,能够模拟真实的实验场景,为学员提供多种感官刺激。在实验过程中,虚拟现实可以提供专业知识的游戏教学模式,激发学员强烈的学习欲望,提高学员学习兴趣。每个学员均可参加虚拟实验的课堂[14],解决了部分学员无法参与动手的弊端,提高了学员学习积极性。学员先在虚拟维修环境练习后,再进行实际维修作业可以减小、避免错误操作,减小对设备的损坏,降低设备维修成本[20]。沉浸式车身修复教学系统具有价格低、扩展性强的特点,而且可以长期反复使用。

软件系统教学任务依据实际汽车维修工作,将理论知识点、技能仿真训练、职业素养结合到学习任务中,学员按照学习任务进行学习,即可达到教学与仿真实训的目的[21]。该系统在高校与企业中的培训效果显著,将难以在传统教学中有效教授的知识难点生动地展现出来,同时解决了理论学习内容枯燥、学生学习兴趣低的问题。虚拟现实技术在教学中的应用是一种趋势,将为传统教学方式带来颠覆性改革。

本文系统以车身修复为例,解决了当前高校与企业最为关心的培训成本问题,系统中将前沿科技应用到实际生活中,解决了实际问题。但由于虚拟现实技术尚未成熟,系统中对汽修原理性知识点仿真成果较少,下一步研究重点是纵向原理问题的仿真,将抽象原理可视化,同时横向扩展虚拟现实技术在其它领域的应用。

参考文献:

[1] 陈卫国. 基于虚拟仿真技术的汽车维修教学系统的研究与设计[J]. 科技创新导报,2017(4):160-161.

[2] 蔡伟明. VR技术在汽车职业教育领域中的应用综述[J]. 漳州职业技术学院学报,2017,19(1):78-81.

[3] 滕菲,李慶华,李未. 虚拟现实技术在汽车类专业实验教学中的应用[J]. 吉林工程技术师范学院学报,2018(1):90-93.

[4] 董春侠,司占军. 基于Unity3D的虚拟校园App设计与开发[J]. 软件导刊,2017,16(2):94-96.

[5] 岑焕云. 中职汽修专业数学课程开发初探[J]. 职教论坛,2007(18):51-52.

[6] 王大虎,刘海洋,王敬冲. 基于虚拟现实的采煤机培训系统开发[J]. 计算机仿真,2015,32(6):262-265+283.

[7] 陈刚,赵鲁冰,陈伟,等. 基于虚拟现实技术的配电安全规范培训系统研究[C]. 成都:中国电机工程学会年会,2013.

[8] 梁功涛. 基于FPGA的一维激光位移传感器的研究[D]. 哈尔滨:哈尔滨工业大学,2013.

[9] 张奇知,王兴鲁. 工业产品虚拟展示系统设计与开发[J]. 电子世界,2017(7):184-185.

[10] 鲁哲. 中职学校汽修专业学生实践技能培养的对策研究[D]. 烟台:鲁东大学,2014.

[11] 张进. 浅谈中职汽修专业教学中存在的问题和对策[J]. 才智, 2011(1):291.

[12] 张弘. 面向Web3D应用的虚拟场景轻量化建模[C]. 2010国际数字科技博物馆学术论坛暨数字科技馆技术与应用研讨会,2010:218-222.

[13] 郭艳. 基于3ds Max和Virtools的虚拟校园漫游系统设计与实现[D]. 成都:电子科技大学, 2014.

[14] 汪立亮. 基于虚拟现实技术课程资源建设实践——以苏教社国示范校汽车维修专业核心课程系列教材为例[J]. 云南开放大学学报,2018(1):13-16.

[15] 林娟. 虚拟现实及其在汽车维修专业教学中的应用[J]. 新课程学习,2014(11):222-223.

[16] 王伟. 汽修虚拟仿真实训教学方案[J]. 工程技术:引文版:32.

[17] 丁秀云. 表单用户界面自动生成方法的研究[D]. 济南:山东大学,2007.

[18] 文敏飞,尚林燕,张帅武,等. 虚拟现实技术在汽修专业信息化教学中的应用分析[J]. 湖北工业职业技术学院学报, 2017, 30(2):108-111.

[19] 王长亮. VR虚拟现实在汽车专业实训教学中应用[J]. 现代经济信息,2017(21):397-397.

[20] 左华山,樊少军. 虚拟现实技术在汽车故障教学中的应用思考[J]. 读写算:教师版, 2017(23):23.

[21] 庞建刚. 浅析虚拟现实技术(VR)在网络化教学中的应用[J]. 江苏商论,2005(4):57-58.

(责任编辑:江 艳)

猜你喜欢
教学系统手柄虚拟现实
基于Unity的计算机硬件组装仿真教学系统设计
基于PLC控制的手柄座钻孔攻丝一体机的研发
多地远程互动同步教学系统的设计与实现
一种多功能无线手柄的设计
REALITY BITES
基于交互式双板教学系统的高中地理教学研究
虚拟现实技术向科幻小说借灵感
汽车配件营销实践教学系统开发
银行家
浅谈虚拟现实