微波EDA网,见证研发工程师的成长!
首页 > 射频和无线通信 > 射频无线通信文库 > PLC与RFID控制器的无协议通信

PLC与RFID控制器的无协议通信

时间:03-19 来源:互联网 点击:

RFID控制器及其命令集和数据传输协议

V600系列RFID控制器拥有丰富的指令系统,共23条,可以非常灵活的应用于各种场合,其中包括通信命令、一般的通信子命令、主机命令等[3]。通信命令多用于执行与RFID标签的通信,例如,对静止或者是移动的RFID标签进行读写等。通信子命令一般用于取消某个命令的执行,而主机命令则用于主机设备控制 RFID控制器。在上位机与RFID 控制器通信过程中用到最多的是通信命令,常用通信命令的代码及其功能如表1。

表1 RFID常用通信命令表
Table.1 common commands of RFID

在1:1的通信模式下,通信过程中不计算校验码,因此,只能通过响应代码来判断通信结果的正确性。图4给出了上位机与RFID控制器之间传输数据的格式。从上位机发送到RFID控制器的数据块为命令帧,反过来,从RFID控制器发送到上位机的数据块为响应帧。每个帧以指令代码开始,以结束符结束,响应帧中还包括反应执行结果的响应码。上位机与RFID 控制器之间可以传送十六进制或ASCII形式的数据,每一帧最大允许传送数据为271个字符。

如果传送的数据大于271个字符,可以将数据分成起始帧、若干中间帧、结束帧进行传送。起始帧必须包含命令码,读/写头号,开始地址等,否则通信的过程中将会有错误发生。上位机每发送完一帧时,在收到RFID 控制器返回的分界符(即“L”)后再发送下一帧,只有当结束帧数据发送完毕时才返回响应代码。

图4 RFID控制器1:1数据传输格式
Fig.4 1:1 data transfer format of RFID controller

4. PLC与RFID控制器无协议通信的实现

4.1 CP1H通信端口设置

PLC与RFID控制器之间使用RS-422方式进行通信。根据RFID控制器通信规格要求,使用欧姆龙编程软件CX-Programmer7.1将CP1H串口1模式设置为“RS-232C”,通信波特率设置9600,数据格式为7、2、E,如图5所示

图5 CP1H通信端口设置
Fig.5 the communication port setting of CP1H

  4.2 RFID控制器参数设置

RFID控制器通信参数设置应与PLC通信端口参数一致:波特率9600,偶校验方式,7位数据位,2位停止位。DIP开关SW6为ON,表示使用终端电阻。

4.3 通信举例

通过PLC与RFID控制器之间的通信,编程实现从RFID标签地址0100H开始的通道内读取四个数据,读取的数据存储到PLC的DM区内。根据通信数据传输格式,要发送的数据为RDA1001004*。将要发送的数据转化为16进制数“524441313030313030342A0D” ,存放到DM0开始的6个通道内。这6个通道对应值分别为:DM0:5244;DM1:4131;DM2:3030;DM3:3130;DM4:3034;DM5:2A0D。

PLC与RFID控制器无协议通信程序如图6所示。A392.13为发送允许标志位,当PLC的串口1准备好时,A392.13自动为ON,发送数据指示100.00变亮,则PLC可以通过此端口发送数据。当0.00为ON时,将DM0开始的6个通道的数据发送出去,RFID控制器接收到指令后做出响应。A392.14为接收允许标志位。串口准备好后,A392.14自动为ON,接收数据指示100.07变亮。PLC开始自动接收RFID控制器返回的响应数据,并自动存储到DM100开始的5个通道内。执行程序后查看从DM100开始的5个通道的内容,分别为:DM100:5244;DM101:3030;DM102:3131;DM103:3131;DM104:2A0D。所以接收的数据为:RD001111*,根据数据传输响应帧数据格式,可知从RFID标签读出的四个数为:1111。

图6 PLC与RFID控制器通信程序
Fig.6 the communication program between PLC and RFID

5. 结束语

无协议通信是一种简便易行的通信方式,欧姆龙的CPM2A和CP系列等小型机都可以实现[4]。这种通信方式编程灵活,通信可靠性高,是一种比较理想的低成本通信方式。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top