智能制造工业产线虚拟仿真实验室建设方案


一、实验室初步建设方案
(一)实验室建设清单
序号 | 建设内容(产品名称) | 数量 | 单位 | 单价(万元) | 总价(万元) |
1 | 智能制造产线设计与规划软件 | 41 | 点 | 2 | 82 |
2 | 电脑键鼠套装 | 41 | 套 | 0.5 | 20.5 |
3 | 桌椅套装 | 41 | 套 | 0.5 | 20.5 |
5 | 等等 | ... | ... | ... | ... |
合计 | 123 |
智能制造工业产线虚拟仿真实验室是集合了机器人模型与生产线规划软件的纯软件一体化教学。采用模块化设计研发理念,结合虚拟仿真和物理引擎的尖端技术,专为高等教育学习实践而特别研发设计,可以满足多元化的教学理论内容和实践工程培训。以各个智能制造行业的实际工程案例为原型,还原各种实际工艺模块,强化了学生在理论和实践的综合性能力,同时丰富项目案例经验,成为学生在未来就业的核心竞争优势。

图1 智能产线系统建模与仿真实验室示意图
(三)实训室建设内容简介
1.智能制造产线设计与规划软件
1.1超大模型库
1.1.1模型的组成
针对自动化方案设计需求,软件将模型库横向分为了8大类,纵向分成了四大行业,基本上涵盖了智能产线日常教学所需要的模型,库内目前模型资产总数超过28000个,其中包含四六轴机器人1000+ ;模组类机器人2000+ ;加工中心设备1500+ ;标准加工件2000+ ;传感器800+ ;气动元件1600+ ;末端执行器1000+ 等。

图1 超大工业模型库
其他模件类模型涵盖了众多在自动化产线中常使用的各种功能装置、结构件或执行元件。其中供料装置由供料仓、tray盘上料、振动盘、供料转台、弹夹供料机构、供料专机组成;移料装置由输送线、过渡机构、提升机、RGV、移载机构组成;工艺装置由机床类、注塑机、冲床、变位机、激光切割机、折弯机、热焊机、充磁机、非标工艺组件组成;辅助装置由辅助工具、框架、控制交互、安全围栏、存料容器组成;标准件由气动类、液压类、电动类、传动类、传感器、视觉相机、专用仪器、机械标准件组成;基础几何体由块、钣金、型材组成,物料由光伏产品原料、泵与电机产品原料、锂电产品原料、汽车产品原料、3C产品原料、其他产品原料组成;外部件由一些非标类的组件组成。
1.1.2模型的使用
(1)模型搜索:可在搜索输入框输入相应的关键字,芯工厂软件模型库中的每一个模型都添加了相关标签,在用户在搜索框中输入关键字后,点击“搜索”便能够检索出相关模型。

图2 模型搜索
(2)模型筛选:除了模型的搜索外,可通过分类标签的形式来筛选想要的模型。可点选机器人、供料装置、移料装置等分类,同时可在属性中利用规格参数进一步筛选,如下图是对机器人的负载、轴行程、轴转角、重复定位精度参数等进行筛选。

图3 模型筛选
(3)模型标签:库中每一个模型的显示图片上有收藏、详情及参数化等关键信息的图标。用户可以对某一模型进行收藏、或查看模型的详细信息。
模型收藏,用户点击收藏图标,颜色保持蓝绿色后,即可在已收藏中找到该模型;再次点击取消收藏。

图4 模型收藏按钮
模型详情,鼠标移动至模型的详情按钮上,可显示模型的详细信息。模型详情包含模型名称,型号,标签,分类组成,收藏状态,询价接口,规格参数,详情介绍;便于用户了解模型的具体信息。

图5 模型详情界面
1.1.3模型的参数化
模型参数化是软件的一大特色,该类模型可依据学生的需求,进行外观,尺寸,型号等多方面的改变,且变化基于实际工艺场景,与市场物料对应;参数化模型可大大减少用户选型,替换,格式转化等繁琐的步骤,节约用户时间成本。在模型库的各个分类中,都可找到参数化模型。用户点击参数化,弹出参数化交互界面,进行设置,场景内模型变为用户所设置参数对应的模型。

图6 参数化修改按钮
模型库中的机器人可以进行参数化选型,用来适配多变的工业应用场景,节省用户选型时间;完成选型后,搭建仿真得到满意结果可以直接放入产线进行仿真。下图为模组机器人的参数化过程。点击参数化按钮后,可对模组机器人的各个轴行程,方向,模块规格做参数化设计;用户可以通过拖拉调整模组机器人的各轴行程(步进值为50mm),四方向可选,模组机器人的核心规格与底座规格可选,不同负载对应不同规格,最终根据不同参数搭配完成选型。

图7 参数化修改界面
模型库中除机器人可参数化以外,模件也是可参数化的,通过不同型材的选择,不同结构形式的变化,来完成模件的选型,以双列皮带线为例,介绍模件参数化的过程。双列皮带线运用连续或间歇运动来输送各种轻重不同的物品,在工业自动化场景中应用广泛,我们依据皮带线制作工艺设计了双列皮带线参数化功能。双列皮带线参数化功能有电机位置,皮带节距,带轮中心距,支架类型,支架数量,支架长度组成;每个参数变化与皮带线生产组装工艺一一对应。


图8 双列皮带模型参数化
1.1.4模型的上传
支持学生将自主创建的模型导入进FSM软件中进行仿真使用,模型经过配置后可实现芯工厂系统库内模型的全部功能。软件支持solidworks;max;skp;catia;prt;dwg;3dm;blender;iges;jt;stl;obj;fbx;glb;ply;dae等20余种格式的模型导入。芯工厂FSM软件同时也支持学生对平移轴、旋转轴(如轴组、变位机);标准工业机器人(如六轴机器人、Scara机器人);IO类模型(如夹爪、气缸)等类型模型进行导入a和配置。

图9 上传自建模型
1.1.5模型的二次编辑
模型上传后,后台将自动对模型进行处理,处理内容包括格式转化和轻量化,模型将统一被转化成GLB模型格式,并自动进行轻度轻量化处理。除此之外,仍需要对模型做以下二次处理:
(1)运动关节点位配置:模型需要经过关节点位的配置后才可以真正具备运动相关属性,如:旋转,平移,方向,限位,速度,加速度等。

图10 运动关节点位配置页面
(2)IO控制器配置:IO类型模型在伺服类型的基础上,再额外增加IO驱动器的配置。

图11 IO控制器配置页面
(3)机器人运动学配置:机器人模型的配置支持根据机器人的官方说明进行运动学参数配置,以下列举ABB机器人的配置。
导入ABB官网下载的IRB1100机器人模型,点击“建立机构或机器人”,选择对应机器人构型。(模型已事先在个人中心-模型管理处上传)

图12 ABB机器人导入页面
点击“建立机构或机器人”,选择对应机器人构型。根据官网机器人规格图进行具体参数的填写。


图13 机器人构建页面
系统将自动生成并配置完成全部组件和链接节点,此时需要将模型和链接节点进行绑定。


图14 机器人构建页面
(4)模型渲染配置:软件还支持对模型进行材质,颜色,粗糙度,金属度,贴图,法线贴图等进行渲染配置,让学生可以创造出属于自己的工业模型。

图15 模型渲染界面

图16 模型色彩渲染
1.2工业产线搭建
1.2.1模型布局基础功能
依托丰富的模型库,在进行方案搭建时能够迅速在库内快速搜索到相对应的模型,并且能够通过参数化功能快速调整模型尺寸以配备产线,结合阵列、面对齐等智能布局,能够快速完成方案的搭建。针对传统方案设计中搭建速度慢的问题,芯工厂集成多种智能搭建功能,包括阵列、面对齐、面贴合.(末端)快速装配等。
(1)位姿功能:该功能主要用于模型在场景中的移动旋转,是搭建过程中最基本的操作。

(2)阵列功能:该功能主要实现模型按照一定方式均匀复制分布,目前支持线性阵列和环形阵列。

(3)测量功能:该功能主要用于几个模型组装配合前进行提前的测量,是我们搭建过程中的辅助操作。

面对齐功能:该功能主要用于几个模型间的配合,是我们搭建过程中最主要的操作。

(5)隐藏/显示功能:这两个功能主要用于隐藏显示坐标系、背景线,是我们搭建过程的辅助操作。

1.2.2模型搭建基础功能
(1)面贴和功能:该功能主要用于帮助学生快速实现模型之间的贴合,以六轴机器人安装底座作为示范。

(2)添加坐标系功能:该功能主要用于在模型上新建坐标系并辅助用户搭建。可对模型的顶点、边、面、圆心、原点、包围框进行新建坐标。并通过法向对齐和捕捉模式辅助坐标系建立。

(3)复制与删除功能:选中模型并且点击右键的“复制”即可拖出一个相同模型,选中模型并且点击右键的“删除”即可删去选中模型。

(4)锁定功能:选中模型并且点击右键的“锁定”,该模型包围框变成黑色,代表完成锁定。

(5)隐藏功能:选中模型并且点击右键的“隐藏”,即可实现模型的隐藏。

(6)聚焦功能:选中模型并且点击右键的“聚焦”,即可将其聚焦在统一视角下。

(7)绑定与解绑功能:该功能主要用于确定物体的子父级关系。选中模型并且点击右键的“绑定”,立即出现蓝色箭头引导用户选择需要绑定的父级模型。想要取消绑定,再次点击右键的“解绑”即可。

(8)组合功能:该功能主要用于实现多模型的统一操作。学生可以框选需要组合在一起的模型,并且点击右键的“组合”。想要取消组合,再次点击右键的“解除组合”即可。

(9)配置IO功能:该功能主要用于配置模型本身的运动属性。为了实现场景的仿真运动,FSM软件对大量模型设计运动参数的配置,包含移料机构的输送、物料的生成、传感器的触发、顶升机构的顶起等。在模型库中有I0配置的模型都会I0配置标识。选中模型并且点击右键的“配置IO”,配置IO面板主要由动作和参数组成。

(10)坐标系功能:在物体表面或者物体外包围框上建立坐标系后,可对坐标系进行操作。
坐标系功能可分为:删除坐标系、平移坐标系、对齐坐标系、旋转坐标系、解绑坐标系等五个功能。

(11)文字输入功能:软件支持文字面板的模型,右键含有贴字功能。该功能可为产线提供布局、工艺等内容的描述,让学生交作业时有更好的说明。

1.3工业机器人与产线组件的编程
1.3.1示教编程页面介绍
智能示教编程包括示教、智能编程两个部分,并且两个模块相互关联、相互结合。能够实现:(1)对机器人进行关节空间或笛卡尔空间的示教,记录相应点位,生成相关程序,实现仿真;(2)单个机器人快速生成工艺包程序,无需逐个点进行示教、调整位姿,即能实现仿真。
学生可通过示教完成产线的一部分程序编辑,通过智能编程完成工艺程序快速生成,再通过程序添加一系列逻辑(包括循环、多机器人调度等)进行整条产线的运动调度,实现整条产线多机器人模式下的仿真。
示教编程面板主要分为示教面板、程序面板、变量面板、导出程序四个部分。
(1)示教页面:

示教速度:代表示教时机械臂移动的速度,可进行手动调动,默认速度为0.30。
复位:复位按钮,即对机器人执行复位置零操作,恢复至未运行的初始状态。
显示轨迹:勾选,可显示目前程序里机器人的轨迹路径。默认不勾选。
显示点位:勾选,可显示程序里机器人的点位坐标。默认勾选。
XYZ与RX\RY\RZ:在选定的坐标系基准下,机器人的位置与姿态
用户坐标:相对于工件或夹具建立的坐标系。建立用户坐标后,移动或旋转夹具时无需重新编程。默认用户坐标系为机器人本身的基坐标。点击用户坐标系设置按钮则进入用户坐标界面,有选择节点、特征点选择、输入坐标、修改名称等操作。
工具坐标:即安装在机器人末端的工具坐标系。建立工具坐标后,机器人的轨迹需要沿着选定的工具坐标系走。默认工具坐标系为机器人六轴法兰法向点击工具设置按钮则进入工具属性界面,有选择节点、特征点选择、输入坐标、修改名称等操作。
添加笛卡尔路径点:添加直线运动点(MovL),示教得到机器人的姿态后,通过点击添加笛卡尔路径点在U3D场景中记录相应的路径点。
添加关节路径点:添加关节运动点(MovJ),示教得到机器人的姿态后,通过点击添加关节路径点在U3D场景中记录相应的路径点。
关节设置:通过点击加减符号以及输入数值来完成对U3D场景中的机器人示教。关节与实际机器人的轴-一对应。
拖拽示教:通过拖拽的方式实现示教。点击“拖拽示教”按钮后,用户可用鼠标拖拽关节和坐标系,进行关节示教和笛卡尔示教。

捕捉功能:可在场景中直接以模型特征点为机器人空间点,并根据空间点改变机器人姿态。进入捕捉功能后,用户可选择法向对齐和捕捉类型。法向对齐表示机器人工具坐标系的哪个轴对准特征点Z轴,捕捉类型表示在什么类型上捕捉特征点,包括面,边,圆心,坐标系等。

(2)程序页面:机器人的程序面板包含:子程序列表、机器人的快捷指令,程序编辑面板以及相应的动作属性。子程序为用户提供了一种整理程序的方式,可进行创建、复制和删除的操作,同时“CALL”语句可以实现对子程序的调用。在程序编辑面板中可对指令进行增删改查操作,如下图所示可进行程序的复制、粘贴、删除、剪切操作,可通过按住某一行程序进行上下移的,来完成对程序面板上的程序进行调整顺序的操作。



动作属性:下方的动作属性可对当前轨迹点的各个参数进行修改。
坐标:若此点为关节路径点,则可选择相应的参考坐标系,对各个关节的姿态进行编辑;若此点为笛卡尔路径点,则可选择相应的参考坐标系,对当前点的XYZ与RXRYRZ进行编辑修改。
名称:可对当前轨迹点的名称进行修改或者自定义。
基坐标:默认是父坐标系,即以机器人底座的中点为坐标原点。
工具:即对工具坐标系进行选择以及设置。点击工具设置按钮则进入工具属性界面。对工具坐标系进行选择、选择基准坐标系、修改名称等操作。
速度:即机器人轨迹移动至当前轨迹点的速度。
(3)变量页面:机器人的变量面板,可对程序中的变量进行添加与修改。点击“+”可对变量进行添加,点击“删除”可对选中变量进行删除。变量类型有int(整数类型)、float(浮点数类型)、bool(布尔类型)、string(字符串类型)四种类型。同时可对变量名称进行编辑,对变量类型进行选择,对初始值进行手动输入。

1.3.2编程语句介绍
软件虚拟编程语句大概分为以下几类:(1)运动指令;(2)I0指令;(3)通讯指令;(4)逻辑指令;(5)数学函数库;(6)任务指令,以下为其中常用指令介绍,更多指令说明参考《ROCO编程手册》。目前软件中的低代码基础编程语句一共有9条指令:
PTP:即Mov J,关节插补指令,机器人的末端中心点从一个位置移动到另一个位置,两个位置之间的路径不一定是直线,而是选择最快的轨道。一般情况下最快的轨道并不是最短的轨道,也就是说并非直线,因机器人轴进行回转运动,所以曲线轨道比直线轨道进行更快。
LINE:即Mov L,直线插补指令,机器人末端中心点从起点到终点之间的路径始终保持直线。
MOVC:即Move C,弧线运动指令,机器人未端中心点经过由起始点、中间点和结束点组成的圆弧。
IO:进行工具与相对应动作的绑定。在动作属性中进行工具与相对应动作的选择。
IF:进行if else 判定的语句,if后()的内容为真,执行if语句,否则执行else语句中的内容。点击if语句后的“+”,对else if 语句进行添加。
WAIT:当变量值为true或false的判定语句,满足()后面的语句,则执行下列的语句。需要在变量面板上进行初始布尔类型变量值的确定。
ASSIGN:修改变量的操作指令,根据不同的变量名称,更换值表达式,值表达式的类型需要与初始设置变量的数据类型保持一致。
WHILE:while循环指令,当while后()内的值为真时,循环执行while内部语句。
LOOP:loop循环指令,当loop后()内为循环次数,按次数循环执行所包含的下方程序。
DELAY:延时指令,在延迟特定时长后,再执行delay语句下方的程序。
CALL:调用指令,可在程序中运行子程序内容
1.3.3智能编程功能
传统示教方法是通过人工移动机器人未端到操作对象关键点,通过人工示教的方法记录编程路径点,该操作往往需要多次对齐、重复调试,这大大增加了示教的难度,降低了示教的效率。

在应用场景内,用户在进行机器人编程时,需要逐个示教或者逐个选择场景中的路径点,进行程序编辑。对于部分只懂方案搭建,并没有机器人编程基础的学生,或者是想要快速生成基础程序、让机器人运动起来的用户来说,过程较为繁琐。软件通过智能示教技术、人工智能和代码自动生成技术,降低了编程门槛,使没有相关知识的工人或者工艺师,也能直接编程。通过智能示教功能,可通过示教界面控制机器人轴关节运动,并能实时监控当前关节位置和空间位置信息。可尽量缩短可靠的机器人运行程序所需的时间,优化工作流程,提高工作效率。
(1)上料下料:加工工件通常需要经过多道加工工序,将原料从上料/下料机构转移到上料/下料点,保证加工工件在整个系统中的自然有序流转,是生产线中最常见的加工工序。智能编程时需要对上料/下料工件、上料/下料的起始点、上料/下料的终点进行设置;

图1 智能编程-码垛程序自生成
(2)装配:常用装配流程。智能编程时需要对装配参数进行设置;
(3)点胶:点胶工艺。智能编程时需要对点胶目标物、点胶轨迹、轨迹特征等参数进行设置;

图1 智能编程-点胶程序自生成
焊接:机器人在生产中放置和处理一种或多种材料之间的焊缝。按照焊接工艺方法不同,可分为点焊弧焊等。智能编程时学生可对焊接的类型、焊接轨迹、轨迹特征等参数进行设置;

图1 智能编程-双机焊接程序自生成
(5)打磨:借助粗糙物体(含有较高硬度颗粒的砂纸等)来通过摩擦改变材料表面物理性能的一种加工方法,机器人进行打磨工艺对精确度要求较高。智能编程时对打磨轨迹、打磨角度、打磨间距、最小打磨距离、打磨面等基本打磨参数进行设置。
1.3.4程序与变量的导出
示教面板上方“导出点位”、“导出程序”“导出I0”按钮,分别支持对当前点位表、程序、10的导出。


1.4工业产线的验证与优化
1.4.1产线机器人程序验证
学生可以将自己写好的机器人程序复制或者导入到相对应机器人的示教编程页面,进行程序的验证,看机器人是否按照自己设想的轨迹进行运动。

1.4.2产线机器人可达性验证
(1)碰撞检测:避免运动过程中机器人之间以及执行机构与工装之间发生碰撞或干涉。开启碰撞检测,点击开始仿真,程序运行期间,对象发生碰撞时,会出现高亮效果。

(2)奇异点规避:对运动过程中的各机器人轨迹点进行奇异位型检查。
(3)可达性检测:对机器人动作目标任务点进行可达性检查。
1.4.3产线产能设计与优化
(1)多机协同:以不发生干涉为基础,针对多机器人需要协同作业的场景,进行协同作业规划,从而确定多机最优轨迹。
(2)过程模拟:对建立好的模型进行流程仿真验证。逻辑为通过检测方案是否按照预期的流程进行工作,得出效率参考数据。
(3)时序优化:对系统整体进行时序仿真,分析系统设备运行效率、瓶颈工位,缩短系统整体作业时间,提高系统作业节拍及效率。
(4)节拍测算:根据各执行结构时序及逻辑规划,综合计算各工站及生产线体的节拍效率,为方案设计提供理论依据。

2.智能制造工业产线教学案例与实验指导书
2.1智能制造工业产线教学案例

图1 光伏智能制造教学产线

图2 新能源汽车智能制造教学产线

图3 锂电池PACK智能产线

图4 仓储立库智能工厂教学案例

图5 钣金搬运智能产线

图6 车身侧焊智能产线

图7 光伏接线盒智能产线

图8 锂电池组装智能产线

图9 汽车元宝梁焊接智能产线

图10 电机组装智能产线

图11 新能源汽车装配焊接智能产线
2.2实验指导书
2.2.1《智能制造产线设计与规划软件使用说明书》
2.2.2《编程手册》