上期我们介绍了HMI开发过程,这期将介绍PLC运动逻辑开发。致远电子的ZMC600E和AWStudio提供了ST语言和AWBlock 积木式中文编程环境,可快速开发插针机或其他设备的PLC逻辑。
AWStudio介绍
AWStudio是工业自动化All In One可视化集成开发环境,可以用于开发HMI和PLC程序。针对PLC开发目前提供了多种解决方案:一种是符合IEC61131-3标准的ST开发环境,另一种是AWBlock积木式中文编程环境,未来还将提供梯形图和功能块图编程。用AWBlock写PLC逻辑像搭积木一样直观容易上手,不需要敲代码也避免了出错,AWBlock提供了运动控制块,特别适合做机器人和运动控制等应用,所以本次PLC使用AWBlock编程方案。
插针机系统介绍
本次使用 ZMC600E 作为插针机的PLC设备,中间使用Modbus协议与HMI通信,使用EtherCAT协议与电机伺服器通信。ZMC600E中内置的AWPLC(含AWBlock)运行时引擎,可以运行用户编写的运动逻辑,实现插针机的多轴协同运动控制。
图1 插针机系统介绍
插针机PLC开发流程
只需要四步:一、配置EtherCAT总线;二、配置Modbus从机;三、编写AWBlock控制电机运动逻辑;四、最后把工程下载到ZMC600E运行。
1. 创建AWBlock解决方案
在AWStudio创建一个新AWBlock编程解决方案工程,如下图:
图2 创建解决方案
2. EtherCAT总线配置
插针机系统中,PLC作为EtherCAT主站,电机伺服器作为EtherCAT从站,所以要在PLC总线协议中添加EtherCAT主站功能。在总线协议节点上面添加总线,选择EtherCAT主站,如下图:
图3 添加EtherCAT主站协议
在EtherCAT主站节点上添加所有轴的电机伺服器,分别是托盘X轴、托盘Y轴、主轴Z轴。再配置EtherCAT的分布时钟,如下图:
图4 配置参考时钟
配置参考时钟有利于运动控制的时候所有电机的同步移动,AWStudio也提供了完整的EtherCAT的配置参数,用户可以根据实际情况来配置自己的EtherCAT通信。
3. Modbus从机配置
插针机系统中,PLC作为Modbus从站,HMI作为Modbus主站,所以要在PLC总线协议中添加Modbus从站功能。然后根据主从机约定好的Modbus寄存器点表来配置寄存器地址和个数,PLC运行过程中实时更新这些寄存器供HMI访问,如下图:
图5 配置Modbus从机寄存器
4. AWBlock运动逻辑开发
插针机最基础的功能是控制托盘和主轴(Z轴)移动,所以要创建move_plane和move_main_axis两个函数。编辑move_main_axis函数文件,分别拖入MC_Power和MC_MoveAbsolute功能块来控制电机运动,如下图:
图6 拖入运动控制块
上面已经在EtherCAT主站下添加了电机了,这里会自动识别出电机并且会自动给每一个电机生成一个轴对象,因此轴参数便可以选择需要控制的电机,如下图:
图7 选择控制轴
图8 设置参数
接着基于上面写好的基础运动功能块,编写控制托盘和主轴运动顺序和逻辑(主轴归0--移动托盘--主轴插针--主轴归0),比如控制自动插针的auto_move函数,如下图:
图9 用AWBlock写运动逻辑
最后把PLC的运行参数和状态对接到Modbus从站寄存器,例如:MainAxisSpeed是主轴速度变量,对应到PLC的地址是%IW52,%IW52映射到Modbus从站地址为40005,如下图。这样,就可以让HMI通过Modbus控制和获取PLC运行状态。
图10 关系映射表
图11 变量绑定地址
5. AWBlock工程下载运行
上面的工程开发完成后,在设备列表中选择目标设备ZMC600E,点击启动(调试)按钮,就会进入调试模式,可以进行单步调试程序;点击下载即可发布固件,ZMC600E重启后就会自动运行该工程。如下图:
图12 设备选择界面
ZMC600E产品介绍
图13 ZMC600E EtherCAT主站控制器
ZMC600E 是ZLG致远电子开发的最新一代智能总线型运动控制器,是面向工厂智能化时代的机器控制器。其采用工业领域内先进的嵌入式 ARM 方案,集实时操作系统、智能算法于一身,配套工业图形化编程软件开发环境。
ZMC600E采用TI的双核64位Arm-Corte-A53,四核Cortex-R5F的AM6442应用处理器为核心,主频1GHz,内置1GB DDR4、4GB eMMC以及32KB FRAM,预留有多路以太网、CAN、IO、USB等硬件接口。同时ZMC600E支持点位运动、连续轨迹、直线圆弧插补、连续插补、螺旋线等运动功能,可以自由设定运行速度、停止速度、加、减速时间可以独立设置,S型曲线平滑等参数,支持在线改变速度和在线改变位置,用户可以轻松构智能化控制系统,快速实现和部署现场各种工艺的应用。