基于 Unity3D 的《工程制图》 虚拟仿真实验平台设计及应用论文

2023-01-29 09:35:10 来源: 作者:lvyifei
摘要:摘要:针对目前高校智能制造相关课程教学中普遍存在机械拆装麻烦、设备操作危险、实验教学设备台套数不足、教学效果不佳 等问题, 以 《工程制图》 课程为例, 运用 Unity3D 软件开发了一套形象逼真、交互功能强的虚拟仿真实验平台, 包括减速器拆装、 溢流阀拆装、叶片泵拆装及工程制图基础知识案例演示等 4 部分内容。以减速器拆装为典型案例, 详细介绍了3D 模型建立与2D 工 程图绘制、文件格式转换、模型的渲染和装配、脚本编写与功能实现、 UI 界面设计等开发设计过程, 从而实现虚拟仿真实验
摘要:针对目前高校智能制造相关课程教学中普遍存在机械拆装麻烦、设备操作危险、实验教学设备台套数不足、教学效果不佳等问题,以《工程制图》课程为例,运用Unity3D软件开发了一套形象逼真、交互功能强的虚拟仿真实验平台,包括减速器拆装、溢流阀拆装、叶片泵拆装及工程制图基础知识案例演示等4部分内容。以减速器拆装为典型案例,详细介绍了3D模型建立与2D工程图绘制、文件格式转换、模型的渲染和装配、脚本编写与功能实现、UI界面设计等开发设计过程,从而实现虚拟仿真实验平台的自由观察功能、组合体拆装功能,以及3D模型图到2D工程图的转场渐变功能。结果表明,通过仿真实验平台的模拟交互的效果优于实物平台,可以增强体验感,提高学习积极性,加深对《工程制图》知识点的理解。平台搭建后成功应用于实训教学过程中,为智能制造的相关课程实训教学提供重要借鉴,同时也能提升高校智能制造专业应用型人才的培养质量。
关键词:智能制造;工程制图;虚拟仿真;Unity3D;实训教学
引言大等问题[1]。越来越多的高等院校希望能通过“虚实融合”进教育部职成司于2020年印发《关于开展职业教育示范性行实训教学,增强学生的学习兴趣,提高实训教学质量。虚拟仿真实训基地建设的通知》,指出在信息技术快速发展的背景下,迫切需要建设虚拟仿真实训基地,这既是对传统教学的革新,深化人才培养模式改革,也是强化“虚实”融合的教育教学活动,有效弥补实训中学习兴趣低、设备不足、危险性大等问题[1]。越来越多的高等院校希望能通过“虚实融合”进教育部职成司于2020年印发《关于开展职业教育示范性行实训教学,增强学生的学习兴趣,提高实训教学质量。
在《中国制造2025》纲要中,智能制造起着至关重要作用,同时也对智能制造系列课程教学提出了更高的要求的《工程制图》是智能制造系列课程中的一门专业基础课,是一门机械、建筑、平面设计等专业的基础学科,是体现工科学科特点的入门课程,也是学习工科的学生必须学习掌握的一项专业基础课程之一。在培养学生发挥创造性思维基础的空间想象力以及构思能力、促进工业化的进程等许多方面发挥了非常重要的作用。
在传统的《工程制图》课程里,多数学校习惯将学生安排在普通教室上课,教师使用讲授法和演示法进行教学,在实训过程中需要教师及时给学生解答疑问,而不应该仅局限于理论知识的传授[2]。学生主要是在观察教师画图的方式,接着模仿教师的画法,学生学习兴趣不高、主动性不强。传统的教学模式很难培养学生的创新能力和综合素养,与高端技术技能型人才培养目标存在差距[3-4]。学习《工程制图》的目的其实是能让学生在学习这门课后能正确地对一些经典的机械组合体进行制图,以及在设计产品的时候能让生产部门轻易理解图纸表达的意义[5]。为此,在《工程制图》课中同步采用虚拟仿真平台进行授课,可以让学生能更直观地感受由图形到立体感和空间感的变化,能有效提高学生的学习积极性与体验感[6],加深学生对工程制图的学习理解。
虚拟仿真实验教学是推进现代信息技术融入实验教学项目的重要举措[7],同时也是培育我国创新型和复合型技术技能型人才的辅助手段[8-10]。Unity3D是专门针对虚拟交互开发的,是一套能进行视、景仿真,并满足多平台部署应用需求的三维模拟仿真引擎,能够很好地帮助开发者构建一套满足使用的虚拟仿真平台[11]。在面向智能制造背景下,借助Unity3D软件,采用工程实例与可视化仿真教学有机结合[12-13],转变传统的教学模式,培养学生的创新能力[14]。
1《工程制图》虚拟仿真实验平台总体设计方案
从《工程制图》实验教学应用的基础出发,选取有代表性的零部件、组合体和知识点作为虚拟仿真对象,开发一款具有可自由观察、能拆装运动、实现3D模型图到2D工程图的转场渐变功能、页面美观简洁、易于操作等特点的虚拟仿真平台,能实际、有效地运用在《工程制图》课程的教学中。图1所示为总体设计方案。
2《工程制图》虚拟仿真实验平台开发
通过建模、绘制工程图,导出FBX格式。使用C#编程语言编写交互代码,在Unity3D参数面板设置参数进行交互设计,最终导出软件发布到PC端。虚拟仿真实验平台开发流程如图2所示。
2.1模型建立与工程图的绘制
通过查阅资料,确定减速器零件模型特征,使用UG进行模型的建立,模型图为PRT格式。在UG中将模型图生成工程图,通过AutoCAD对减速器的装配图和零件图进行修正,工程图为DWG格式。
2.2格式转换
在Unity软件里,不支持PRT格式和DWG格式的文件,而FBX格式文件和PNG格式文件可作为开发虚拟仿真平台的主要导入文件格式。使用UG完成3D模型,导出为STL格式文件,再通过使用3Dmax将STL格式文件转换为FBX格式的文件。通过截图的方式可导出PNG格式的2D工程图。
2.3模型零件的渲染和装配
使用UG建模并装配好的减速器经过FBX格式转换后形成了一个整体,无法拆卸零件。所以,应先导出减速器的各个零件,逐个进行文件格式转换,再逐个导入Unity3D进行渲染和组装。图3所示为在Unity3D中减速器底座和齿轮轴透盖的装配示意图。
组合体进行动态观察,能控制摄像机对组合体的环绕运动、拉远、推近运动,称为自由观察功能。实现自由观察功能的脚本程序,主要运用到的API的内容与控制摄像头活动的知识。C#语言编写脚本的主要程序段如下:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
//C#默认命名空间,不可省略。
if(Input.GetMouseButton(0))
//鼠标左键能实现的功能。
CurrentAngleX+=Input.GetAxis("Mouse X")*XSpeed*Time.deltaTime;
CurrentAngleY-=Input.GetAxis("Mouse Y")*YSpeed*Time.deltaTime;
CurrentAngleY=ClampAngle(CurrentAngleY,yMinLim⁃it,YMaxLimit);
if(Input.GetMouseButton(2)&&IsZoom)
//鼠标中键和滚轮能实现的功能。
CurrentPosX-=Input.GetAxis("Mouse X")*ZSpeed;CurrentPosY-=Input.GetAxis("Mouse Y")*ZSpeed;
关联脚本与摄像机、模型,实现自由观察功能,确定模型是摄像机的跟随目标,完成关联,实现自由观察功能。
2.5拆装功能
为了能更好地了解和观察减速器的内部结构和组合方式,需要实现组合体拆装的功能,且拆装的过程要与现实中的拆装顺序相符。需要实现的效果是:将减速器拆分为若干个部分,拆装过程中在一定时间里位于同一部分的零件能一起运动。当点击到界面的某一部分时,组件就会一同运动到合适位置,再进行分离运动,当再次点击同一部件时,则可顺着分离的路径重新进行组合。
2.5.1拆装前后坐标记录
在录制动画前,确定好组合体拆装前后运动的路径、坐标,记录下各部分运动的坐标、零件运动的坐标。
例如,记录透气塞拆装前后的0~2 s时间内坐标变化。移动前,组件坐标为(0,0,0),组件内的零件透气塞为(-0.002,2.152,-0.632);1 s时,组件的坐标为(0,2.597 85,0),此时组件已运动完成,但透气塞仍需继续运动;2 s时,组件内的透气塞的坐标为(-0.002,2.859 43,-0.632),此时运动完成。
2.5.2动画录制
记录组合体的坐标,录制动画就有了先决条件。录制动画,就是依据时间指定给模型前后两个坐标,模型就会依照设定的时间从第1个坐标移动到第2个坐标,图4所示为拆装动画效果。
2.5.3动画播放逻辑设置
录制完动画,要依靠动画器组件对动画进行逻辑设置保证动画的播放顺序。逻辑顺序:要有一定的条件才能进行动画播放,安装动画必须要在拆装动画播放之后才能播放。
2.5.4脚本编写
实现鼠标右键点击物体达到拆装效果的功能。主要脚本程序段如下:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
//默认命名空间
private int Trigger名称=Animator.StringToHash("Trigger名称");
private Animator animator;
//定义触发器
if(Input.GetMouseButton(1))
//如果按下鼠标右键
if(hit.transform.tag=="标签名")
//检测到了标签
animator.SetTrigger(Trigger名称);
//触发Trigger
2.5.5脚本关联动画设置
一套拆装动画对应一个触发程序。在程序编译完成后,将脚本添加到相对应的零件上即可。 导入的模型不具备物理性质,需要给模型添加碰撞体组件,赋予模型物理性质,使得API能检测到模型的存在。 2.6转场渐变功能
转场渐变功能能直观观察到组合体和零件的制图过程,也能很好地体会到3D模型实体与2D工程图的异同之处。
实现方法:将3D模型和2D工程图分别放置在两个场景中,在3D模型所在场景转场到2D工程图所在场景时,呈现出渐变效果,使得在视觉上两个场景的转换过程更为流畅与平滑。学习者在观看这一过程时,也就能有3D模型慢慢“变”成2D工程图的效果。
2.6.1录制模型旋转动画
对于3D的模型来说,可以360°旋转观察特征。但对于2D的工程图,只能从一个视角观看。但转场渐变功能要求摄像头能观察到的3D模型场景和2D工程图场景的角度一致。例如当减速器上箱体需要从3D模型转换到2D的左视图时,就需要在转换前将减速器的角度调整到左视角度。运行场景,即可观察到上箱体的旋转过程。
2.6.2匹配转场前后场景
由于3D模型视图和2D工程图大小不一致,在进行转场渐变的时候会显得突兀。需进行一定的调整设置,使得两个场景看起来大小一致,这样进行转场渐变就会显得平滑、流畅了。同样以减速器上箱体为例。首先是3D模型的调整方法。单击“摄像机”,在“检查器界面投影”栏将“透视”改为“正交”,在大小栏调整视角大小,直至合适的尺寸。接着是2D工程图的调整方法。将图片资源装载到四边形,单击工程图,在“检查器坐标栏”修改合适的坐标使工程图置于摄像机视线的最中心处。用“检查器”调整工程图的大小,使之与3D模型大小相同。转场渐变效果如图5所示。
2.6.3编写转场渐变效果脚本
设置“L”键转场渐变功能,按下“L”键,画面即从3D模型转场渐变为2D的工程图,学习者就能直观观察模型图到工程图的过程。脚本大致分为3个模块;按下“L”键打开新场景;场景间切换的效果;效果实现后进行销毁。程序段如下:
UsingUnityEngine.SceneManagement;
//实现功能要使用的类
if(Input.GetKeyDown(KeyCode.L))
//按下“L”后
{isSceneStarting=false;
isSceneEnding=true;}
if(GUIColorAlpha>=0.95f){
GUIColorAlpha=1.0f;
isSceneStarting=true;
SceneManager.LoadScene("新场景名称");//进入新场景}
2.7 UI界面设计
主界面上设置4个按钮,分别链接到减速器、叶片泵、溢流阀和工程制图基础知识的子界面,界面分布如图6所示。主界面制作效果如图7所示。
3《工程制图》虚拟仿真实验平台教学应用
基于Unity3D的《工程制图》虚拟仿真实验平台可帮助学习工程制图基础知识、组合体拆装与工程图绘制等内容。根据《工程制图》实训环节培养要求,开发减速器结构及其工程图绘制实验并实施到教学中。借助机电学院3D裸眼虚拟显示设备,增强沉浸感,实现更加逼真的仿真实验,减速器拆装实验显示效果如图8所示。
3.1实训教学项目
3.1.1实训目标
学习减速器的结构,了解减速器的内部构造和零件组成,提升学生的空间想象能力;对减速器整体及其主要零件的工程图进行绘制,了解减速器模型图与2D工程图的画法区别,提升学生对工程制图的运用能力。
3.1.2实训教学内容
(1)学生进行减速器的拆装操作
依次点击螺钉、上箱体、齿轮轴,完成减速器主要组件的拆卸过程;旋转、移动减速器,观察研究减速器内部结构的组合方式,增强学生对减速器结构的好奇心与学习积极性,加深学生对减速器内外部结构的认识,图9所示为学生拆卸减速器的过程。
(2)学生直观体验3D模型与2D工程图的异同
学生进入到装配图模型界面,可以通过单击“L”键,让画面由3D模型渐变成2D工程图,为了强化学生对三维模型与二维工程图的认知,该过程可重复切换操作,通过虚拟仿真技术[15-16],学生能“身临其境”地感受到“真实”的场景,图10所示为减速器正视图渐变过程。
(3)分组探究,提升空间想象能力
将班级里的学生进行分组,4人为一组进行合作探究,让学习者仔细观察各零部件的3D模型与2D工程图的转化,并让学生进行总结和分享,以此提升学生的空间想象能力。
(4)课堂练习与课后作业
拆装减速器,找到主要零件在里面的位置,并说明所起到的作用(教师随机提问)。在减速器装配图三视图内找出9个主要零件,能自主操作将零件分离开,并画出该零件的简图(教师随机提问)。参考所学减速器零件图的画法,绘制出图11所示的三视图。
3.2教学效果
为探究虚拟仿真实验平台在《工程制图》课程中的应用效果,选择机电学院20机械1班和20机械2班进行教学实验,共80名本科学生,两个班上一学年综合成绩基本一致,因此符合开展本次教学实验的条件。20机械1班为对照班(40人),20机械2班为实验班(40人),对照班实施传统实操教学,实验班采用结合虚拟仿真平台的实操教学,对两个班进行一学期的教学实验,表1所示为实验班与对照班的实训成绩对比表。
从实训成绩上看,对照班学生的成绩在60~69分之间人数占比为40%,成绩在80~89分之间的人数占比为17.5%。而实验班学生的成绩在60~69分之间的人数占比为12.5%,成绩在80~89分之间的人数占比为50%。因此,将虚拟仿真平台应用到本科《工程制图》课实训教学中,能够有效提高学生的学习效果。虚拟仿真实验程制图》课程实训教学效果不佳的问题。
4结束语
《工程制图》虚拟仿真实验平台实训教学打破了传统的“教师讲授”、“教师演示,学生简单模仿”的教学模式,利用虚拟仿真系统为学生呈现更为直观的学习情境,一方面不仅有利于提高学生的学习兴趣与体验感,让学生通过“玩”内化知识,另一方面有利于提高学生的空间想象能力,突破思维能力不高的局限,学生通过自己动手操作,加强学生对工程制图的运用能力。依托虚拟仿真实验平台开展实训教学,发挥了虚拟仿真技术的优势和长处,打破了传统实训教学的时空限制,有效解决了高校实训教学效果不佳、设备不足、学生课堂学习兴趣与体验感不高等问题。智能制造系列课程实训教学改革是一个长期积累的过程,要结合学生的学习特点不断优化虚拟仿真系统,从而促进教学水平和教学质量的持续提升。
参考文献:
[1]曾照香,刘哲,李金亮.新时代职业院校智能制造虚拟仿真实训基地建设研究[J].教育与职业,2022(9):109-112.
[2]黄仲庸.面向智能制造的机械专业技能人才实训模式研究与实施[J].机械职业教育,2018,393(10):43-46.
[3]张萌.GMP虚拟仿真软件在生物制药专业学生培养中的作用研究[J].职业,2021(10):63-64.
[4]汤继辉,宋珏,刘小燕,等.基于虚拟仿真及翻转课堂药剂学教学的设计及实践[J].齐齐哈尔医学院学报,2020,41(1):104-108.
[5]杨亮亮.基于"课堂教学-虚拟仿真-工程实践"的工程制图及CAD课程的教学改革[J].中国现代教育装备,2019(1):58-59.
[6]王志琼,刘广武,刘津彤,等.多维协同虚拟仿真创新实践教学体系构建[J].实验室研究与探索,2021,40(5):198-202.
[7]范高福,汤洁,戴若萌,等.虚拟仿真实验在药物制剂技术课程实践教学中应用与探索[J].广西中医药大学学报,2022,25(2):83-86.
[8]教育部.关于开展国家虚拟仿真实验教学项目建设工作的通知[EB/OL].(2018-06-05).http://www.moe.gov.cn/srcsite/A08/s7945/s7946/201806/t20180607_338713.html.
[9]王新,刘诗琳,项峥,等.基于虚拟仿真技术的药物分析实验教学改革[C]//第十八届沈阳科学学术年会,2021.
[10]教育部.关于学习宣传贯彻习近平总书记重要指示和全国职业教育大会精神的通知[EB/OL].(2021-04-29).http://www.moe.gov.cn/srcsite/A07/s7055/202104/t20210429_ 529235.html.
[11]赵英,李源,孙美英.数字化、信息化教学在技工院校工程制图课程中的应用[J].职业,2020(16):80-81.
[12]孙文静,刘珂,张孟喜,等.互联网+虚拟仿真在土力学实验教学中的应用初探[J].实验室研究与探索,2018,37(1):181-185.
[13]罗晓东,尹立孟,王青峡,等.基于虚拟仿真技术的实验教学平台设计[J].实验室研究与探索,2016,35(4):104-107.
[14]谭拂晓,王戴木.面向智能制造的自动控制原理课程教学改革[J].阜阳师范学院学报(自然科学版),2016,33(2):122-126.
[15]马志国,徐俊,王峰,等.药学虚拟仿真实验教学平台的建设与实践[J].实验技术与管理,2020,37(4):224-226.
[16]刘秀清,葛文庆,焦学健,等.国家级虚拟仿真实验教学中心建设与管理[J].实验技术与管理,2018,35(11):225-228.
