唐月夏 李光平
(南宁学院机电与质量技术工程学院,广西 南宁 530200)
自动化生产线调试过程中要完成电路设计、程序编写、软硬件调试等工作。目前,调试的方式主要有2种:①直接在实际设备上调试,这种方式耗时长,对于设备及人员安全存在一定的危险性[1-2];②利用虚拟仿真技术,对自动化生产线进行可视化的虚拟仿真,完成结构、功能、行为以及用户的思维过程和行为动态性的模拟[3-4]。通过操作这些虚拟仿真的实验对象,即可进行各种调试。这种模式下,只对程序进行调试,不涉及硬件,调试结果不能直接用于实际设备。
NX-MCD是NX设计软件中一个集机械、电气、自动化设计于一体的全新的机电产品概念设计模块。该模块的仿真平台采用NVIDIA PhysX 物理运算引擎,其特有的动力学仿真设计使仿真效果更加接近物理环境[5-7]。目前已有不少基于MCD模块的设计应用,如赵飞等设计基于数字孪生的刀具前处理机[8],吴雁等研究基于 MCD 平台的数控车床上下料机械手机电一体化概念设计[9]。大部分研究只运用了NX-MCD的运动仿真,仿真与硬件同时进行的较少,而且基本使用西门子系列PLC,没有涉及其他品牌的PLC[10-12]。
针对目前自动化生产线调试中存在的问题,以自动化生产线中最复杂的搬运机械手为例,基于NX-MCD设计了搬运机械手虚实结合的调试平台。该平台利用虚拟仿真模型,观察程序运行结果,解决现场实操中风险等问题。通过IO接口电路板验证电路设计,解决纯虚拟仿真不涉及硬件设计问题。通过开发数据采集插件,实现虚拟仿真模型与IO接口电路板的数据共享,解决更换PLC就要更换OPC服务器的问题,实现了搬运机械手虚拟仿真的工作。在该调试平台上能够完成调试工作的全部内容,同时所设计的硬件电路和控制程序可直接应用于实际生产线设备中,提高调试设备的效率。
如图1所示,搬运机械手虚实结合的调试平台主要由虚拟仿真模型、数据采集插件、IO接口电路板等3个模块组成。
图1 搬运机械手虚实结合的调试平台
虚拟仿真模型由虚拟机械结构、虚拟传感器和执行器组成。在测试时,将PLC控制器引入调试平台。通过PLC与IO接口电路板的接线,实现模型中虚拟传感器和虚拟执行器与PLC的连接,完成硬件电路设计。运行调试过程中,模型中的机械结构触发虚拟传感器,数据采集插件采集虚拟传感信号转换为真实电信号传送至IO接口电路板,驱动IO接口电路板上的线路状态与虚拟传感器同步并发出真实的传感信号至PLC。PLC根据程序运行结果发出真实的执行信号,由IO接口电路板转换为电信号传送至数据采集插件,数据采集插件将其转换为虚拟执行信号驱动机械结构完成各个动作。
搬运机械手的机械结构由滑竿、滑块、升降气缸、旋转气缸、伸缩气缸、夹紧气缸组成。为使模型更逼真、增强现场体验感,需到现场搜集搬运机械手各部位照片、尺寸大小等相关材料作为建模标准。在NX设计软件中利用几何体组件建立搬运机械手各个部位的模型,并依据搬运机械手的布局装配约束各部位的空间位置,实现对搬运机械手机械结构的定义。图2为搬运机械手机械结构。
图2 搬运机械手机械结构
运动副是两构件直接接触并能产生相对运动的活动连接。为使机械结构中各部件能够产生相对运动,需对各部件设置相应的运动副,常用的运动副有:铰链副、滑动副、固定副等[13]。各部件之间的运动副关系如表1所示。
表1 机械结构各部分之间的运动副
以机械机构中的滑块和滑竿为例,滑块带动整个搬运机械手在滑竿上左右移动,因此对于滑块和滑竿之间要设置一个滑动副,设置界面如图3所示。滑块为连接件,滑竿为基本件,滑竿方向为指定矢量方向。
图3 滑动副设置
设置运动副之后,为实现运动仿真,需对各运动副设置执行器,常用的执行器有:位置控制、速度控制等[14]。同时为限制各运动副的运动位置,需对各运动副设置限位传感器。电气信号与控制模型的传感器和执行器设置如图4所示。
图4 传感器和执行器
NX-MCD集成有OPC客户端,可以采用OPC服务器的方式作为NX-MCD与仿真控制软件以及PLC的通信方式,但是各大品牌的PLC厂商都有自己的OPC服务器,更换PLC需要重新安装相同品牌的OPC服务器。为解决PLC不兼容问题,采用C#开发了数据采集插件。数据采集插件读取虚拟仿真模型中的传感器信号,信号通过串行通信的方式发送到IO接口电路板中,或者根据IO接口电路板传入的数据控制虚拟执行器进行相应动作。通过数据采集插件,可以省略OPC服务器的安装,实现各品牌PLC与调试平台的兼容问题。
在NX-MCD软件中,创建运行时行为代码,建立数据采集插件的接口,并将其与虚拟仿真模型中传感器、执行器一一对应,如图5所示。
图5 运行时行为代码与传感器和执行器的映射
为保障数据通信可靠运行,需定制一套符合设计的通信协议,采用ASCII码进行通信,其中数据包格式如表2所示。
根据电路设计的要求,通信过程中要传输的数据有两种类型,一种为开关量,另一种是脉冲数据量,功能码具体说明如表3所示。
表2 通信协议
表3 功能码说明
根据通信协议分析,一个周期内要采集完所有数据,计算所需通信波特率。
开关量数据长度:
式中: L( ) ——某个字段的长度。
脉冲数据量长度:
一个周期总传输数据量:
为保障动画的连续性,NX-MCD软件中STEP函数调用周期T=0.01s。设计中传输一个Byte采用1个开始位、1个结束位、1个校验位的方式,每传输一个字节需要的数据位数为11个位。因此最低通信波特率为:
为保障通信余量,设计选择要求大于68 200Baud的串口通信,设计最终选择国际标准通信速率115 200Baud为本设计的通信波特率。
在通信保障的前提下,利用C#语言开发数据采集插件,通过编写程序,控制运行时行为代码便可控制与之相对应的虚拟传感器和执行器。
数据采集插件读取虚拟仿真模型中的传感器信号,将信号数据打包后发送到IO接口电路板中,电路板根据通信协议进行数据解析。以伸出到位传感器为例,部分程序如下。
图6 搬运机械手工作流程图
将数据采集插件嵌入到NX-MCD软件的STEP函数中,NX-MCD软件定时调用STEP函数。STEP函数执行过程中,数据采集插件不断收集信息,对IO接口电路板进行数据读写操作,实现实时数据交换,不用经过OPC服务器,更换不同品牌的PLC时不受影响。
搬运机械手调试流程为:根据搬运机械手的控制流程,计算所需PLC的输入输出点数,选择合适的PLC,设计PLC硬件接线图,PLC与IO接口电路板连线,编写控制程序,运行调试。下面以三菱PLC为例,介绍搬运机械手调试的实施过程。
搬运机械手的功能为将轨道左侧料盘处的物料搬运到轨道右侧的料盘处,具体工作流程如图6所示。
对于搬运机械手控制对象为各气缸的电磁换向阀,需要检测的参数为各动作的极限位置。根据搬运机械手的控制要求,整个搬运机械手的数字量输入点数为11点,数字量输出点数为6点,I/O地址分配表如表4、表5所示。考虑到10%~15%的I/O点数余量,选取PLC型号为三菱FX1N-32MT,其硬件接线如图7所示。
表4 输入端口分配表
表5 输出端口分配表
图7 硬件接线图
按图7完成PLC与IO接口电路板的接线后,编写控制程序,如图8所示,下载并运行。
图8 搬运机械手虚实结合的调试平台运行
调试结果证明,该虚实结合的调试平台与PLC通信良好。可利用IO接口电路板,设计硬件电路并完成接线测试;设计PLC程序并进行调试,通过观察虚拟仿真模型快速准确地进行验证;虚实结合,满足调试工作要求的软硬件同时设计、调试运行的要求。