基于RobotStudio 的多平台虚拟仿真设计*
2023-10-17马俊强郭畅陈敏
马俊强, 郭畅, 陈敏
(1.广西水利电力职业技术学院,广西 南宁 530023;2.广西体育高等专科学校,广西 南宁 530023)
工业领域的技术革新,推动着机械生产制造过程更加注重智能化、网络化、降低人力成本、降低误差率、提高生产效率,因此,工业机器人的应用范围越来越广泛,不仅推动着企业的转型升级,同时也提升了企业在行业中的竞争力[1-2]。
面对市场的变化,为满足工业机器人职业技能人才的需求,各大中专院校纷纷开设了工业机器人专业。但因机器人设备价格昂贵,学校购入设备数量较少,导致学生真正可以熟悉设备的时间比较少,同时因学生处于刚入门阶段,在设备操作过程中,极容易造成设备碰撞损坏,使得维护成本变高[3]。这些均会影响到正常的教学活动,因此虚拟化的教学优势逐步体现。
工业机器人的学习与应用一般都不是独立存在的,需要搭配控制系统,实现有目的有规律的动作。文献[1]中利用SolidWorks 和RobotStudio 联合建立了多机器人柔性制造生产线虚拟仿真系统。文献[4]中提出了一种基于三维仿真平台NX MCD 的机器人自动化生产系统虚拟调试方法,通过磨削系统、机器人控制器和PLC 控制器的信号实时交互,实现机器人和PLC 的联动控制。文献[5]中利用RobotStudio 和SolidWorks 搭建了机器人上下料工作站并进行了仿真测试。文献[6]中通过三维软件完善了仿真软件RobotStudio 建模方面的缺陷,联合建立了分拣工作站的动态仿真模型。文献[7]中在RobotStudio 虚拟平台上搭建了焊接机器人工作站。文献[8]中研究利用SolidWorks 和RobotStudio构建了多个工业机器人虚拟仿真工作站的实训平台。文献[9]中针对实训室建设中实训设备场地和设备不足的情况而提出了工业机器人应用虚拟仿真实验开发平台解决思路。以上研究成果为虚拟仿真的研究提供了很好思路,但对多个工业设备间的数据交互,因其实现较为复杂,故难以在有限的课堂中推广使用。
本文基于S7-1500PLC、昆仑通态MCGS 和RobotStudio 联合建立机器人焊接系统,通过触摸屏的操作,直观地查看机器人的运动数据。一方面解决了多平台之间的数据交互问题,另一方面可使教学活动方便直观,每位同学可实际操作演示,具有普遍实际意义和经济实用性。
1 机器人焊接系统搭建
RobotStudio 软件是机器人离线仿真编程软件,提供了多种CAD 数据类型的导入文件功能。该焊接系统结合RobotStudio 软件的机器人模型库文件以及Solidworks 三维软件创建焊接工件,通过调整机器人在工作站中的位置,组合完成整个焊接系统的布局。同时,该系统结合学校实训设备焊接机器人,选择了IRB1410 型号机器人以及IRC5控制柜,图1 为虚拟焊接机器人工作站的模型及整体布局图。
图1 焊接机器人工作站
2 机器人焊接系统通信控制
2.1 机器人焊接系统组成
机器人焊接虚拟控制系统的通信方案如图2 所示,系统包含了SolidWorks、PLCSIM、RobotStudio、MCGS 四个组成部分。SolidWorks 软件完成焊件模型的绘制,PLCSIM 软件实现S7-1500PLC 虚拟化的运行仿真、监控,RobotStudio 软件实现机器人系统模型的搭建、组装及程序仿真控制,MCGS 实现系统的上位机控制和过程的监控。上述平台主要是通过NetToPLCsim 完成信号的传递及交互,以达到过程通信、调试、监控的效果。
图2 控制系统通信方案
2.2 机器人焊接系统控制流程
机器人焊接控制系统包含了机器人控制器IRC5 和S7-1500PLC 控制器两部分。在机器人焊接系统工作过程中,焊接件到位信号、机器人焊接触发信号、机器人焊接完成信号等与机器人控制器和PLC 控制器实现信号的交互控制。
焊接件经传动带输送至焊接位置,焊接件经过传感器1 时,传感器上升沿触发计数为1,焊件开始进入工作区,传感器2 触发,焊件到达焊接位置,启动焊接机器人进行焊接工作,焊接完成后,机器人完成信号发送给PLC,PLC 启动控制传送带反转,经传感器1 时,传感器上升沿触发计数复位为0,焊件离开工作区,传感器1 和传感器2 需共同判定是否执行机器人程序,以防止误判,如否,则循环执行下一个焊接流程,并通过PLC 计数统计完成数量。焊接系统生产流程图如图3 所示。
图3 焊接系统生产流程图
机器人焊接系统中PLC 主要控制传送带的正反转、传感器1 计数信号和传感器2 到位检测信号的控制程序以及焊接完成的数量统计。PLC 控制的输入信号是传感器2 的触发信号和机器人的焊接完成信号,输出信号是机器人接收到位信号,传感器1 的计数作为输入输出信号,避免多个焊件进入工作区。
2.3 建立通信连接
为实现不同设备之间建立虚拟网络连接,将1500PLC 作为主控单元,机器人以及MCGS 设备作为响应单元,其接收并响应处理不同设备间发送的信号,并通过相应流程实现。
首先在平台上将Industrial Networks-709-1 DeviceNet Master/Slave和Communication-616-1 PC Interface 选项选中,机器人输入输出信号需要基于d652 板卡建立。在RobotApps 中搜索Snap7 库,RSConnectDIOToSnap7 和 RSConnectGIOToSnap7是RobotStudio 与PLCSIM 通讯的插件,它是基于网络通信方式,实现控制点信号和组态信号的接入。
然后以管理员的身份打开NetToPLCsim 软件,确定电脑102 TCP 端口没有被占用,因为电脑102端口是作为消息传输代理机制来使用的,通过该端口可以连接不同的网络IP 段,将不同网络平台中接收和转发的数据包进行交互,实现不同平台下软件的联动控制操作。NetToPLCsim 通信设置图如图4 所示。
图4 NetToPLCsim 通信设置图
最后是建立昆仑通态MCGS 与PLC 之间的连接,选用MCGS 组态软件是支持网络通讯,两者之间的通信均为基于S7 协议通信,因此PLC 属性需选中“允许来自远程对象的PUT/GET 通信访问的功能”,这样就可以建立MCGS 和PLC 之间进行数据通信[10-12]。
值得注意的是,MCGS 和PLCSIM 的本地IP 地址属于同一网络段,MCGS 的远端IP 地址和RSConnectDIOToSnap7 属于同一网络IP,两个网络地址不相同,通过NetToPLCsim 工具实现不同网络之间数据实时交互。各设备网络IP 地址设置如表1 所示。
2.4 设置IO 信号与Smart 动态组件设计
本文通信主要使用点信号RSConnectDIOTo-Sn ap7 插件将机器人信号通过Smart 组件形式与通信插件连接,通信插件再与PLC 通信连接,即将机器人输出信号发送至RSConnectDIOToSnap7,再由RSConnectDIOToSnap7 将信号的状态传给PLC,以此可以实现PLC 和机器人之间的数据通信。通信IO 表如表2 所示。
表2 通信IO 表
为实现通过触摸屏控制机器人的仿真运行,整个工作流程的Smart 组件逻辑关系如图5 所示。图中的HanJie2.0 是焊接机器人的逻辑关系,当焊接件传送到位以后,传感器2 信号由0 变为1,并发送信号给Abb_DI,机器人接收到信号则进行焊接动作。焊接完成后,AbbZunBei 置位为1,发送信号至D0_0,执行下一流程工作,同时为实现信号的实时交互,设置定时器脉冲触发。
图5 焊接系统Smart 组件逻辑关系
3 机器人焊接系统虚拟测试
为测试验证多平台之间的虚拟仿真有效性,根据控制要求,编写PLC 程序和机器人程序,并绘制触摸屏画面,分别如图6、7 所示。触摸屏操作启动/停止按钮,机器人可接收到PLC 发送的信号,并执行焊接程序。触摸屏上根据机器人执行焊接次数还可以统计焊接工件数量,也可显示焊接过程中各个变量的实时状态,如图8 所示,即表示触摸屏MCGS 和机器人之间可以实现正常的数据通信,多平台之间的虚拟仿真系统测试有效。
图7 触摸屏初始画面
图8 触摸屏监控画面
4 结论
随着智能制造的不断提出,虚拟仿真控制系统可以大大减少试错的机会,为快速方案设计和学生线上线下学习提供了大量的机会。本文研究结合了自动化系统方案中常用的PLC 控制器、工业机器人、MCGS 触摸屏设备,通过PLCSIM 工具、NetToPLCsim 软件工具、Snap7 通信插件,实现其通信接口的连接,从而搭建完成了纯虚拟的仿真系统平台。
该虚拟仿真平台的搭建不仅可以为实际的制造生产提供了理论依据和实验平台,还可以大大降低工程师们设计、调试的成本,大大提高生产效率,而且对高校的教育教学,提供了一种新颖且可行的方案,降低了学生的学习成本。该实验平台具有完全的开放性,对于工业自动化方面的学习具有理论指导意义。