喻伟闯,罗晓曙,杨春慧
(广西师范大学 电子工程学院,广西 桂林 541004)
PLC具有功能强、可靠性高、操作方便、编程简单等优点,在工业控制中应用广泛,常见的有开关量控制和模拟量控制。虽然PLC具有串口,但通常仅用来与上位机通信[1]。在PLC通信扩展口插入通信功能扩展板后,可以方便地实现PLC与其他智能设备间的数据传输,从而使其应用范围进一步扩大。
ED系列伺服放大器属于Kinco伺服中的智能型全数字伺服驱动系统,提供速度、位置和力矩的全数字化控制。 ED 系列伺服具有 RS232C、RS485、CANopen、Profibus DP等多种通信方式,利用其开放的协议,PLC、PC、单片机或其他控制器可以自由地完成ED伺服放大器内部参数设置和运动曲线的控制[2]。
触摸屏是一种智能化操作部件,是目前最简单、方便、自然的一种人机交互方式。它可以显示设备运行状况和运行参数,还可以随时修改设备运行模式、设定运行参数[3]。
本设计基于光纤连接器研磨机控制系统设计中根据工业现场要求实时修改伺服放大器中目标位置参数的需要,将PLC、伺服放大器和触摸屏三者功能集于一体,既简化了系统结构,又便于工人操作。
PLC与外部设备间的串行通信广泛使用RS-232C、RS-422A、RS485等接口。RS-232C的电气接口采用单端驱动、单端接收的电路,抗干扰能力差、传输速率低、传输距离短。RS-422/RS-485采用平衡驱动、差分接收电路,抗干扰能力强、传输速率高、传输距离长[4]。本设计选用RS-485通信方式。
在PLC的通信扩展口上插入通信功能扩展板FX2N-485-BD,能够使其与 ED200的 RS-485总线口进行RS-485通信,实现PLC对伺服放大器的通信控制。PLC最多可以与15个ED200进行通信,每一个ED200都有一个唯一的地址号(ID号),ID号通过伺服放大器上的 DIP开关 S0、S1、S2、S3的组合来设定。
ED200支持两线(半双工)和四线(全双工)的 RS-485通信。ED200的RS-485通信遵循严格的主从站协议。上位机能将数据传送给总线上的每个ED200,设定ID号的放大器在计算这些数据后,返回一个应答。网络上同一时刻只能有一个设备(上位机和从站)发送数据[2]。传输协议采用固定的10字节格式,其定义如下:
ID为伺服放大器的地址号,中间8 B为传输的数据(data),校验码 CHKS取 0-(byte0+…+byte8)计算结果的后两位。PLC向伺服放大器传送数据时,传输协议的10个字节两两整合成一个字存放在PLC的5个数据寄存器中,然后通过串行通信指令进行数据传输。
数据协议不同于传输协议,其内容是传输协议10个字节的中间8个字节数据的内容,数据协议定义如下:
CMD指定数据传输的方向和数据大小。INDEX和SUBINDEX分别为发送对象的索引地址和子地址。DATA为4个字节的发送数据,发送时低位在前高位在后。
PLC与伺服放大器的串行通信系统由触摸屏、PLC和ED200伺服放大器三部分组成。
本设计选用三菱FX2N系列PLC、FX2N-485-BD通信扩展模块、步科公司ED200伺服放大器以及GOT1000系列触摸屏。研磨机伺服控制部分有三个轴的伺服放大器,分别控 制 A-axis、X-axis 和 Y-axis伺服电机的转动。3个轴的通信方式类似,PLC与3个轴伺服放大器间RS-485通信的硬件接线图如图1所示。
FX2N系列PLC与伺服放大器间的RS-485通信格式由特殊寄存器D8120的内容决定,通信格式的位及其意义如表 1所示[5-6]。
本设计采用PLC梯形图顺序编程的方法。PLC与Y-axis伺服放大器间RS-485通信的部分梯形图如图2所示。寄存器D8120设置为 H0C81(二进制数 0000110010000001), 其通信格式为:16位数据模式、无协议通信、无起始字符、无结束字符、传输速率为9 600 b/s、无停止位、无奇偶校验、数据长度为8位。M8161为8/16位转换标志,程序运行时M8161一直处于OFF状态。
图1 PLC与伺服放大器间RS-485通信的硬件接线图
根据ED200伺服放大器RS-485通信传输协议要求,必须将传输协议的10个字节两两整合成一个字存放在PLC的5个数据寄存器中,然后才能通过串行通信指令进行数据传输。数据整合阶段将寄存器D200中的数值高、低字节分别与 D10、D11组合,以及 D14中的CHKS值与D214中的初始值的整合,数据整合用到SMOV移位传送指令,该指令在M8168为ON时不需要将源数据的BIN码进行BCD转换,而是照原样以4位为单位进行位移动。
表1 D8120通信格式的位及其意义
传输数据的地址及字节数用RS串行通信指令设定。RS指令的驱动输入开关X1为ON时,激发RS指令。在X2的上升沿,将要发送的5个数据传送到RS指定的发送缓冲区D210~D214。校验码指令CCD对数据区D210~D213中的8 B数据做求和运算,运算结果送至寄存器D12,根据协议规定,取其补码存入D14作为CHKS值。SET指令将发送请求标志M8122置位,并开始发送数据,当数据发送完毕M8122自动复位。
图2 PLC与Y-axis伺服放大器串行通信的部分梯形图
要修改的目标位置值从触摸屏的数据输入窗口输入,首先存入PLC的数据寄存器D200。PLC再与伺服放大器进行通信,将D200中的数据传递给伺服放大器,这样便可以通过触摸屏对伺服放大器中相应对象的目标位置值间接进行修改。图3为将Y-axis目标位置值修改为8009 inc时的人机界面及ED200相应程序段目标位置值自动修改的界面。
图3 人机界面及ED200目标位置修改值界面
本文对三菱FX2N系列PLC与伺服放大器ED200之间的RS-485通信技术进行了研究,通过PLC可以实现对多个伺服放大器的通信控制。通信程序采用梯形图编写,灵活方便。该设计方案在研磨机伺服控制系统中得到了应用,利用触摸屏可以方便地对研磨机3个轴的目标位置进行实时修改。测试结果表明,PLC与伺服放大器间的RS-485通信技术可以实现工业设备参数的现场修改,系统运行稳定、操作方便、抗干扰能力强,具有一定的推广和应用价值。
[1]孟祥霓,白霄丽.PLC与变频器的串行通讯设计[J].信息技 术 ,2005(9):99-100.
[2]上海步科电气有限公司.Kinco伺服驱动器使用手册[M].2008.
[3]岳庆来.变频器、可编程控制器及触摸屏综合应用技术[M].北京:机械工业出版社,2006.
[4]李建兴.可编程控制器应用技术[M].北京:机械工业出版社,2004.
[5]廖常初.FX系列PLC编程及应用[M].北京:机械工业出版社,2005.
[6]刘守操,刘彦鹏,张雷刚.可编程控制器技术与应用[M].北京:机械工业出版社,2006.
[7]王阿根.电气可编程控制原理与应用[M].北京:清华大学出版社,2007.