基于Unity3D的机床加工系统设计与实现*

2022-05-12 07:21:52殷民艇石瑞敏
制造技术与机床 2022年5期
关键词:网页页面机床

殷民艇 董 磊 张 星 石瑞敏

(中北大学机械工程学院,山西 太原 030051)

数控机床是一种运用程序来驱动系统的自动化机床,可以对复杂、精密的小零件进行精准加工,是如今高新制造业中必不可少的精密加工设备[1]。但由于其自动化以及程序化的特点,对于使用数控机床的工作人员有着很高的技术要求,所以在当前的教学过程中,对于数控机床的学习是一门必修课程。

由于机床的昂贵性以及其占地面积过于庞大,很难提供机床为学习人员提供现场指导培训,各大院校的这种限制尤为突出。随着计算机信息技术的高速发展以及虚拟现实技术[2-4]的应用成功解决了诸多教学难题。虚拟现实技术是以计算机技术为基础,凭借其真实性、交互性等特点被应用于众多领域中。

国内外学者基于虚拟现实技术对机床仿真进行了大量的研究。国外Mcmaster大学对机床铣削过程切削厚度的瞬时变化进行了研究,实现在仿真中物理与几何的结合[5]。英国Delcam公司开发出了一款名为PowerMILL的独立运行的数控仿真软件[6]。国内,大连理工大学何福本等人将虚拟仿真技术应用于普通车床加工工艺实训教学环节[7],上海工程技术大学赵中华等人实现VDM-320五轴机床数控模拟加工[8],长春工业大学李静等人利用EON虚拟现实软件实现对于数控机床加工过程的仿真[9]。目前大多数对于机床仿真系统的研究成果均需要下载对应软件方可使用,对于使用设备配置也有一定要求。本论文搭建出B/S模式的数控仿真平台,对于培训者更为便捷,改进了数控技术人才培养模式,从必须下载大型相关软件的限制中解放出来。

本文以CY-K360n型机床为研究对象,利用SolidWorks软件进行机床模型的建立,同时选用可以实现逼真效果的Unity3D软件来进行机床控制系统的搭建,最后利用Visual Studio软件开发出B/S模式的机床虚拟加工系统,满足了基本的机床教学需要。

1 系统整体结构

本文系统是B/S模式的可实现人机交互的机床虚拟加工系统。其中,机床虚拟加工系统主要功能有:机床开关机操作、工件装夹操作、常用刀具选择以及虚拟加工演示。系统整体结构可以分为3部分,机床模型、交互式机床加工系统以及网页系统。系统开发流程图如图1所示。

图1 系统开发流程

2 机床模型的建立以及渲染

目前主流建模软件有SolidWorks、UG等,基于SolidWorks软件简单便捷的设计功能对建模以及模型的装配较为友好,所以本文选择使用SolidWorks软件进行机床模型的建立以及机床零件的装配。基于3ds MAX软件的动画渲染、模型优化以及材质贴图等优势功能,本文选择将SolidWorks模型导入至3ds MAX软件后对机床模型进行优化、渲染,再将其以.FBX格式导入至Unity3D软件[10]。

值得注意的是将机床模型导入至3ds MAX软件后,该软件会自动为机床模型增加一些辅助物件,这些辅助物件直接删除即可。接着对模型可以进行进一步的优化,模型多边形数量会大大地降低,得到精简化。同时在导入Unity3D软件前需要调整3ds MAX以及Unity3D中的单位和坐标系,因为这两个软件的默认单位和坐标系并不一致,若不加以调整,可能会在后续工作中有所影响。其次,由于Unity只支持自己的材质和光照,所以在导入后可能会出现图像失真的情况,这里可以使用烘培贴图的方式来使得在Unity中表现VRay渲染后效果。

3 交互式机床系统的建立

3.1 机床动作的设置

将机床模型成功导入至Unity3D软件后,需要给与机床模型以特定的动作。Unity3D中,控制不同的动作拥有着不同的指令。但原理均为赋予动作帧数,改变所指定的物体每一帧的位置信息从而达到控制其不同动作的需求[11]。

在Unity3D中利用Transfrom组件来完成对于机床模型的动作设定。Transfrom组件中可以针对选定模型零件的位置(position),旋转(rotation)以及缩放(scale)来实现模型按照自己意愿调整位置[12]。

其中,Transfrom组件中的位置(position)选项是用来将模型从当前所在位置移动至指定的位置。可以通过直接设定其起始坐标来实现其起始位置信息的赋予。旋转(rotation)选项是用来指定模型部件以其默认坐标轴为轴心进行旋转。同时,其默认坐标轴中X轴、Y轴以及Z轴均可作为轴心,旋转角度可以同时围绕三轴进行设置输入。这样可以实现模型指定部件按照任意方向旋转任一角度。缩放(scale)选项是用来改变指定模型零件大小,通过输入其初始大小的缩放倍数来改变,以X、Y和Z轴3个方向为中心进行缩放。

3.2 机床碰撞体的设置

为提升机床的真实感,给机床各零部件均添加碰撞体单元,防止虚拟机床在运行中零部件碰撞时出现相互穿过的现象。在Unity3D软件中碰撞体分为6种类型,可根据机床零部件的形状以及用途来添加不同的碰撞体类型。

通过碰撞体的设置可以实现机床切削工件的动作。刀具以及工件设置碰撞体之后,添加二者间的触发事件。当刀具与工件发生碰撞后,引发触发事件,此时工件与刀具接触部分将会隐藏,连续碰撞将会表现为切削状态。

3.3 UI界面的设计与实现

在赋予机床动作指令后,需要创建按钮来实现机床的交互。当点击界面中的按钮时,就会调用对应函数来执行对应动作。按钮的添加以及其功能的实现即是关键所在。利用Unity3D中的自带功能UI函数即可实现[13]。

首先在SampleScene下创建名为menu的空对象,在这个空对象中直接添加1个UI选项下的按钮,这时便初步定义了1个按钮对象。在Button下点击Text即可进入按钮文字脚本,可以在内为按钮进行命名,以及对文字的风格、大小和对齐方式等进行调节。由于Unity3D默认字体为Arial,所以最后将制作完成的系统导出后会出现无法显示中文的问题。可自行从网上下载格式为.ttf的中文字体,将其替换软件默认字体即可解决。点击Button进入按钮脚本,在其内可设置按钮的位置,大小以及各个状态时的颜色等等。在对应脚本On Click下即可设置其执行事件。首先在Assets下创建名为Animator Changer 的C#脚本,程序如下:

将程序添加至机床模型脚本中,进入按钮脚本控制面板On Click,点击右下方的加号来进行添加反应事件。在第1个下拉框中选择Editor And Runtime,这样点击按钮不仅在发布之后有效,在测试阶段点击也同样有效。第2个下拉框选中程序所建立的animatorChanger选项下的ChangeAnimations程序,场景选择为机床模型。同理定义其他按钮。这样便完成机床交互系统UI界面的设置。

4 网站系统的搭建

4.1 网页搭建

VS在制作网页时利用其自身的组件即可完成基本的构造。首先新建1个空项目,在项目中添加1个空网站,然后添加.aspx格式的Web窗体,便会在解决方案下添加1个.aspx的项目,这样就成功创建出网页。在刚刚创建出的网页项目下拉列表可以看到有1个.aspx.cs的文件,该页面中负责填写相应页面的方法以及逻辑判断。

通过VS软件主界面上方目录栏中格式以及表格2个组件可以对其页面布局以及背景色,字体颜色等进行基本的设置。

4.2 机床加工系统导出

网站搭建好后需要将机床加工系统嵌入至网站中。首先将系统从Unity3D软件中导出,Unity3D支持多种导出模式,包括常用的Windows、IOS、Android以及WebGL,根据本文最终要建立用户在网页端进行机床控制的要求,选择导出格式为WebGL[14]。此种方式便是以.html的格式导出,通过该网页即可浏览使用Unity3D软件中完成的系统。

最终导出1个文件夹,文件内有3个文件,分别为html文件,Build文件夹以及Template Date文件夹。通过浏览器打开html文件,会出现浏览器不支持运行文件中Unity WebGL的提示(使用Edge或者火狐可以直接打开),可以利用IIS将该文件发布,便可通过浏览器直接打开。其后,利用C#函数即可实现网站与该系统的链接。打开后系统界面如图2所示。

图2 机床加工系统界面

利用该系统可以进行装夹刀具、对刀以及切削工件等,实现普通机床的简要操作。对刀与切削工件操作设置近距离视角,便于观测。操作步骤进行到切削工件步骤时,可以对主轴转速与进给速度进行选择设置,如图3所示。结束操作后拥有查看机床运行程序功能。

图3 切削工件操作

主轴转速为500 r/min、进给速度为250 mm/min时程序如下所示:

4.3 留言板页面的搭建

一个好的学习网站,实现用户间的交流是不可或缺的。利用搭建留言板,实现用户留言与回复他人留言的功能。

留言板会与数据库相连接,用户在发表言论后,言论内容以及发表时间会储存在数据库中新建的表中,同时展示在该留言板上,可以被其他访问者浏览、回复。为保证留言板的干净整洁,管理员可以通过数据库删除留言板中的不当言论。留言板界面如图4所示。

图4 留言板界面

4.4 数据库的搭建

数据库利用Microsoft SQL Server软件来搭建。数据库会存储留言板中的所有留言信息,是留言板页面的核心。数据库不是独立存在,它必须同具体的设计应用功能相关联,此时就需要在数据库中建立1个留言信息统计表,用户在留言成功后其发表信息会存储进此表。管理员可以通过该表格对留言板中内容进行整理。

在数据库内建立好相应表格后,需要将数据库与留言板页面进行连接,连接核心代码如下:

连接成功后用户留言信息便会储存于数据库相应表单中。数据库储存信息界面如图5所示。

图5 数据库储存信息界面

5 系统最终效果

将VS软件搭建的网页系统与Unity3D搭建的交互式机床加工系统相结合后,最终成功实现以网页形式来访问的交互式机床加工系统。

在浏览器中输入网址即可进入主页面,主页面如图6所示。下方有各种加工方式的对应分类以及机床虚拟操作的选项。以打开面铣削下拉列表表面铣为例,打开对应页面后拥有表面铣简单介绍以及视频演示。点击机床虚拟操作选项即可进入交互式机床加工系统。同时可以在留言板留下自己在工作中遇到的问题或者去回复其他人的留言,以此来建立谈论的环境,促进大家共同进步。

图6 网站主页面

6 结语

本论文开发了B/S模式的数控仿真平台,通过SolidWorks对机床零部件进行实体建模以及床体的装配;通过Unity3D软件,实现机床动作设置;通过点击设置好的UI按钮即可控制机床做出相应的运动,同时可实时观测到运动状态,构建出了机床虚拟加工系统;利用VS软件实现以B/S模式来访问该系统。最终实现从网页端来控制机床运动,满足了数控机床仿真训练的基本需求,同时建立基于数据库的留言板,给用户提供交流的平台。该系统相对于其他机床虚拟加工系统有两大优点:

(1)传统的机床虚拟加工系统均为EXE格式的单机版,用户在使用前往往需要下载极大的执行程序方可使用,对于用户的设备要求较高,使用极不方便。本系统是以B/S模式来访问,用户在PC端通过浏览器即可访问,对于设备基本没有硬件要求。

(2)本系统通过Unity3D软件开发,同其他开发工具相比,效果更加逼真,更接近于现实,同时该系统也更稳定。

猜你喜欢
网页页面机床
机床展会
刷新生活的页面
保健医苑(2022年1期)2022-08-30 08:39:14
机床展会
2019,中国机床变中求进
基于CSS的网页导航栏的设计
电子制作(2018年10期)2018-08-04 03:24:38
基于通用机床的100%低地板有轨电车轮对旋修
基于URL和网页类型的网页信息采集研究
电子制作(2017年2期)2017-05-17 03:54:56
网页制作在英语教学中的应用
电子测试(2015年18期)2016-01-14 01:22:58
10个必知的网页设计术语
同一Word文档 纵横页面并存