缩略图

基于Unity3D智能制造虚拟加工仿真系统设计

作者

李立琳 王林园 常景景 李子琛 王炜琦 黄思园

河南工程学院工业软件学院郑州451191

基金项目:大学生创新创业训练计划项目“数字驱动,仿真革新”——智能制造虚拟加工仿真系统(202411517029)

摘要:为解决智能工厂中的操作失误导致的安全隐患和资源浪费问题,利用SolidWorks、3ds Max建模,VisualStudio编写脚本,基于Unity3D开发了智能制造虚拟加工仿真系统。该系统分为机械和控制两部分:机械部分通过优化3D模型构建虚拟加工场景;控制部分采用级联控制技术实现站场调度与界面同步,并使用C语言确保系统正常运行。通过AnimatorController制作多场景动画,并运用碰撞检测原理实现流畅的场景转换。测试结果表明,该系统能够模拟线上下单、加工、检测、入库等流程,有效降低实训成本,具有较高的应用价值。

关键词:Unity3D、智能制造、虚拟仿真、

一.引言

随着人工智能、大数据、5G等技术的发展,虚拟仿真已广泛应用于各领域[1]。2023年教育部工作重点提出,推动信息技术与高等教育实验教学深度融合,实施“系列101计划”,虚拟仿真2.0时代全面兴起[1,2]。

Unity3D作为一款高度集成的三维虚拟仿真引擎,支持图像、音频、物理特性、粒子系统及网络通讯等功能,兼容主流3D软件格式。其内置的PhysX物理系统能真实模拟物体运动规律,增强仿真真实性[3]。此外,Unity3D具有跨平台、人机交互性好、仿真速度快、支持虚拟现实设备等优势[4,5]。

本文设计了基于Unity3D的智能制造虚拟加工仿真系统,可在虚拟环境中完成下单、领取、加工、检测、入库等流程。该系统通过虚实结合的教学方式,帮助学生掌握操作知识,提升实践能力和操作熟练度,同时实现节能减排与安全教学的目标。

二.系统工作路线及技术路线

1.工作路线

智能制造虚拟加工仿真系统的整体工作路线如图1所示,分别为系统初始,订单下发与预览,物料领取,机床加工,成品检测,成品储存。

2.系统设计方案

智能制造虚拟加工仿真系统设计方案如图2所示,分为机械与控制两大模块。机械模块通过SolidWorks、3ds Max构建机械臂、机器人、AGV小车及智能仓储模型;控制模块采用VisualStudio编写人机交互逻辑代码,结合Unity3D实现机械臂抓取、AGV运动、加工动画等仿真功能。系统由车间与仓储两大子系统构成,涵盖订单下发、物料领取、机床加工、成品检测、入库存储五阶段流程:物料经车间加工后检测,合格品入立库,瑕疵品转入废品仓。关键技术涵盖人机交互系统、AGV路径规划、机械臂精准控制、视觉检测算法及智能仓储管理等核心环节。

3.平台开发流程

基于Unity3D智能制造虚拟加工仿真系统设计是以某高校智能制造平台为模板,采用精细化建模的方法搭建三维模型,为确保真实性,在设计之初需要收集设备三维模型参数,在3ds Max中完成精细化建模,导入到Unity3D引擎中;使用开源Animator动画组件和C#脚本语言,完成对模型的旋转、拖拽和动态拆解展示和动画演示功能;基于开源UI组件,在Unity3D平台下设计良好人机交互页面,包括登入登出按钮、跳转页面、声音控制等。

三.机械部分设计

根据系统整体工作情况,需要建立机械臂、机器人、智能仓储系统等三维模型,使用SolidWorks进行三维模型的建立,保存为stp格式文件,然后导入3ds Max渲染与坐标调整,最终导入Unity3D进行智能工厂的仿真。

1.机械臂设计

将机械臂所需的各个零件在SolidWorks中完成建模,然后创建装配体空模板。把底座装配体、平面连杆机构装配体、末端执行器装配体导入该空模板,利用重合约束、平行约束、相切约束、同轴心约束等操作,将所有子装配体组成如图3所示的机械臂模型各成分。

3.智能仓储系统设计

智能仓储系统主要由堆垛机,立库支架等组成,使用3ds Max搭建完成,如图4和图5所示。

四.控制部分设计

将系统所需模型使用Visual Studio进行代码编写,导入到Unity3D中进行编译,验证代码的可行性。

1.视角移动设计

为演示系统整体工作流程,需要让视角进行移动,因此在系统中添加摄像头,并在摄像头上加入脚本代码,脚本代码可以使摄像头在调试过程中呈现第三视角进行移动,W/A/S/D按键分别控制视角前进、后退、左移、右移。Q/E按键控制视角升降,鼠标右键控制视野方向,前进时点击shift键加速前进。

2.任务唤醒与成品检测设计

(1)任务唤醒设计

点击界面上的机器人移动按钮,按钮在提醒面板上供操作者点击,如图10所示,按钮点击后,蓝色机器人派发任务显示到所举的牌子上,并移动到摄像头前,方便操作者查看。

(2)成品检测设计

在成品检测步骤中,成品被送到检测台进行检测,当成品被送到检测台后,点击按钮“请点击”,上方会出现合格或不合格字样。为模拟现实生活中视觉检测的效果,可以通过编写概率代码实现,可以通过改变数据更改合格率。

3.动画播放设计

包括AGV小车的全程运动,机械臂的移动、旋转、抓取、放置等,立库储存成品等操作均通过动画演示,AGV小车运动动画贯穿整个场景,设计了多个动画模板,并通过树状图的方式将所有动画联系起来,机械臂的零部件众多,需将各部分均制作动画,制作面板。立库储存也采用相同制作方法,由于立库的库位众多,为方便演示,通过制作多个场景同时制作按钮控制场景切换,从而进行库位的选择。

五.系统整体流程设计

将精细化三维模型从SolidWorks中以stp文件格式导入3ds Max,并进行渲染与坐标调整,再从3ds Max中以fbx文格式导入至Unity3D。在Unity3D项目工程中对模型赋予相应的材质、灯光、颜色和尺寸大小,完成后做成预制体文件,将预制体文件存放在Unity3D项目工程根目录Assets下。

从预制体文件中选择拖拽出三维模型,放在Hierarchy面板上的Cavans父物体下,通过使用C#脚本语言控制模型放大与缩小;使用鼠标点击事件和脚本语言实现对模型及其组件的移动、旋转和动态拆分功能;给三维模型及其子物体添加碰撞体和刚体,防止物体移动时产生穿模、叠加等问题。完成之后,将设置好的模型加入系统进行场景搭建。

系统场景分为系统初始,订单下发与预览,物料领取,机床加工,成品检测,成品储存六部分。

在系统初始间添加摄像头,并在摄像头上加入脚本代码,可以使摄像头在调试过程中呈现第三视角进行移动,W/A/S/D按键分别控制视角前进、后退、左移、右移。Q/E按键控制视角升降,鼠标右键控制视野方向,前进时点击shift键加速前进。

在订单下发与预览间加入唤醒任务机器人,通过点击任务领取面板上的按钮进行任务领取,按钮点击后,蓝色机器人派发任务显示到所举的牌子上,并移动到摄像头前,方便操作者查看。

在物料领取间添加任务触发机器人,通过鼠标左键控制移动,当移动到触发器上时,会弹出模型介绍及相关视频演示窗口。通过点击AGV移动按钮触发AGV小车的动画演示,将移动至机械臂前领取未加工物料。机械臂的移动、旋转、抓取、放置等操作均通过动画演示。

在机床加工间添加机床模型,AGV小车会移动到机床前进行物料的运输,我们根据订单下发与预览间领取到的任务点击相应的按钮,通过机械臂将物料夹至机床进行加工,机床上方设有进度条,当进度条结束后,加工完成的物料会被重新送至AGV小车,运送至下一车间。

在成品检测间,成品被送到检测台进行检测,当成品被送到检测台后,点击按钮“请点击”,上方会出现合格或不合格字样。为模拟现实生活中视觉检测的效果,可以通过编写概率代码实现。检测完成后,成品和废品都会被AGV小车运至下一车间。

在成品储存间,通过设置按钮来控制储存和丢弃。点击相应按钮,废品将会被机械臂夹取丢弃,成品将会进行储存。立库储存成品等操作均通过动画演示来完成,由于立库的库位众多,为方便演示,通过制作多个场景同时制作按钮控制场景切换,从而进行库位的选择。

储存完成后,控制面板上会出现AGV归位按钮和重新开始按钮,点击AGV归位按钮,AGV小车回归原位置,点击重新开始按钮,则回归第一房间操作者能够重新操作。

六.总结

1.开发了一套基于Unity3D的智能制造虚拟加工仿真系统,覆盖智能工厂加工全流程,包括下单、物料流转、加工、检测、仓储等环节。

2.系统支持支持漫游模式与人机交互模式双模式,强化操作沉浸感。

3.系统可实现虚拟场景与实时交互技术深度结合,提升操作真实性与响应效率,在保证安全的情况下,提升节能减排效果。

参考文献

[1].柳长峰,王睿,李琦.基于文献计量的虚拟仿真教学研究现状和趋势分析[J].实验室研究与探索,2024,43(3):99-104.

[2].刘亚丰,余龙江,卢群伟,等.教育信息化背景下虚拟仿真教学资源建设[J].实验科学与技术,2018,16(2):195-198.

[3].薛宇彤,贺泽星,郭永刚,等.基于Unity3D和3ds Max的水库虚拟仿真系统设计[J].云南水力发电,2024,40(2):107-111.

[4].吴琪,王志刚,杨宇,等.机械臂结构的发展与应用综述[J].航空科学技术,2024,35(5):60-73.

[5].张杰,刘志钢,魏丽丽.基于Unity3D的轨旁信号设备虚拟仿真培训平台设计[J].上海工程技术大学学报,2024,38(3):272-277.