根据汽车车身涂装生产线上的车型变化大、生产灵活性大的要求,在汽车生产线过程自动控制系统中采用射频识别技术RFID 和车身信息识别系统,可以对生产过程中各类现场数据的统计、状态监控以及质量检测等信息进行实时采集,及时传送至生产控制中心,实现了从生产的原材料供应、过程控制、质量监控到销售服务的全方位跟踪,使汽车生产的自动化程度、准确率和生产效率大大提高。
大部分的RFID控制器多采用串行通信的方式,因此在安装位置距离电控柜较远时,存在着布线不便、抗干扰性差等问题。通过支持CC-Link 的RS232接口模块AJ65BT-R2,可以将串行通信的RFID控制器接入CC-Link现场总线中,实现分散安装、集中控制、节省配线。下面以国内某汽车生产线涂装部分RFID系统为例,来说明CC-Link RS232接口模块的应用。网络配置示意图如下,CC-Link RS232接口模块为AJ65BT-R2,RFID控制器为EMS的Cobalt HF系列。
建立RFID控制器与PLC的通信连接
硬件连接
使用AJ65BT-R2模块与EMS RFID控制器通信时,按照如下方式接线,需要注意的是RS和CS必须短接,否则AJ65BT-R2模块报错,无法正常发送数据。
软件设置
-Link网络参数设置
AJ65BT-R2是CC-Link智能设备站,占用1站。由于智能站需要使用瞬时传送,除了RX、RY等刷新缓冲区外,还需要分配智能缓冲区。每个CC-Link主站模块最大可提供4096(H1000)字的智能缓冲区,出厂默认设置下每个AJ65BT-R2模块需要占用1536(H600)字的智能缓冲区,其中包括512字的接收报文区和512字的发送报文区。因此,当使用多个AJ65BT-R2模块时,需要注意智能缓冲区的总容量不要超过主站模块支持的最大容量(4096字)。通过设定发送/接收报文区的大小和起始地址来,可以调节AJ65BT-R2模块占用的智能缓冲区的大小。以AJ65BT-R2出厂设置为例,网络设定如下图所示。
65BT-R2模块的参数设定
AJ65BT-R2模块的通信参数分为两部分:通信波特率、数据长度、停止位等基本串行通信参数通过模块正面的硬件开关来设置;报文报首、报尾格式、超时时间等报文格式参数通过模块内部的缓存设定。
PLC程序中需要编写用于模块初始化的程序。程序流程如下: 首先使用指令将设定参数写入AJ65BT-R2模块对应的缓冲存储器中,然后置位初始化请求信号(RY04)。以设定接收、发送超时(H112/11A)和接收报尾(H10C/10D)为例,初始化程序如图所示:
3. EMS Cobalt HF系列RFID控制器设定
HF系列控制器可以通过上位软件或配置用Tag设定串口通信参数。使用标准Tag时,将配置用Tag放置在控制器RF场中,然后RFID控制器断电和重新上电。当通电以后,RFID控制器将从配置用Tag读入工厂缺省设置和自动重新配置。
编写程序
AJ65BT-R2模块与外部设备通信时,采用无协议通信方式。既AJ65BT-R2模块侧不指定报文格式,按外部设备规定的报文格式,编写PLC程序,生成报文,通过AJ65BT-R2模块发送给外部设备。对于外部设备的反馈报文,AJ65BT-R2模块也不做任何操作,完整提供给PLC,由PLC程序对报文做出解析,到接受数据或执行结果。整个通信流程如下:
EMS Cobalt HF系列RFID控制器支持Ethernet/IP、MODBUS、Device Net、Abx FAST、CBX等多种通信协议,其中后两种协议物理接口为RS232。本次调试采用的是Abx FAST协议。生成控制报文时,按照Abx FAST协议格式,对数据执行截取、移位、求和校验等操作。将编辑好的报文通过指令写入AJ65BT-R2模块后,置位发送请求标志位(RY0)。 以生成RFID控制器复位指令为例,程序如下:
当AJ65BT-R2模块接收到EMS RFID控制器的反馈报文时,模块的接收读取请求(RX2)将置位。在PLC程序中,使用此信号触发,通过指令将报文读取到PLC内。按照Abx FAST协议格式,对报文进行解析,得到接受数据或执行结果。
FB编程时的注意事项
根据用户的要求,PLC程序需要采用FB(Function Block功能块)编程方式,编程软件使用三菱的全系列PLC编程软件GX-Developer。使用GX-Developer进行编程时,FB块内部可以使用ST和梯形图进行编程。因此在将现有的梯形图改为FB块时,指令及连锁逻辑方便基本无需改动,只需将原程序中的软元件改为标签即可。由于程序主要分为对AJ65BT-R2模块进行初始化和对EMS RFID控制器进行读写两部分,因此在制作FB时将程序分为对应的两个FB块:“INITIAL”(初始化用FB)和“READCONTROL”(RFID控制器读写用FB)。
1.计算CC-Link的刷新数据区
CC-Link的RX、RY由于参数不同,可能会刷新到不同的IO地址中。因此在需要使用变址计算RX、RY,根据CCLink站号计算出某一站的IO相对于整个CC-Link网络IO地址的偏移量,再加上给定的RX、RY刷新首地址,得出实际XY地址。如下图所示,RX0对应为X0Z2、RY2对应为Y2Z2。
2.计算CC-Link主站模块首地址
此外,使用、指令时还会用到主站模块的首地址。该数据也需要使用变址,便于从FB块外部给定。如下图所示,指令中的模块首地址对应为U0Z8。
经测试,使用初始化 FB块可以对AJ65BT-R2模块进行初始化,使用读写控制 FB块可以对EMS的RFID控制器进行读写控制,实现数据的读取、写入、控制器重启等功能。由于可以通过PLC对任意格式的报文进行生成、解析,使用AJ65BT-R2模块,可以方便的实现与各种带有RS232接口的外部设备进行通信。配合CC-Link的扩展性、易用性,可以大大提升设备安装、布置的灵活性,节省配线成本。
(转载)