概述
02
硬件架构介绍
RFID架构系统主要组成如下:

01
✦组态网关设备
✦
02
✦ 网关设备的组态
✦
03
✦ 功能块的介绍及使用
✦
打开“TwinCAT3”编程软件,打开例程程序。
3.1网关RFID通道的变量映射
★ 打开“POUs”下的“MAIN”主函数,RFID通道的输入输出地址映射关系如下图所示:
RF1~RF4通道输入输出地址分别对应inputaddr0~inputaddr3以及outputaddr0~outputaddr3。

3.2 RFID读写程序介绍
★ 提供的程序:
调用程序:“POUs”——MAIN主函数任务下下调用 RFID功能块程序;
功能块:“HF_ECTGateWayDemo”—— RFID读写功能处理;
全局变量:“Global_Variables”——RFID IO映射;
备注:用户在使用的过程中可将此部分内容赋值至新建程序中。
3.3 RFID读写功能块引脚说明
★ 一个“HF_ECTGateWayDemo”功能块实例调用对应一个端口通道的读写器,功能块如下:

★ 功能块引脚说明
每个功能块实例对应一个读写器,功能块引脚定义及功能如下:

备注:xRead,xWrite两个信号互斥,同一时间只能有一个信号为高电平,功能块只会执行第一个检测到的有效信号。
★ 命令执行时序
1、使能RFID
使能是使RFID工作的必要条件,在整个工作期间是默认保持RFID使能的。具体的时序如下所示。默认的RFID使能置位后,Ready未置位,则表示总线模块与RFID通讯异常。

2、命令执行
命令的执行以Trigger(xRead或xWrite)上升沿信号开始,在给Trigger信号置位之前,先将命令/参数/数据填充好。在命令执行期间保持Trigger信号置位,若取消当面命令的执行,将Trigger复位即可,Trigger后输入数据取的状态信息将复位。命令执行完后可从Read datas/Errcode取命令执行的结果。

3、长数据分包传输
在实际应用的过程中,可能存在一次无法传输完数据的情况,此时需要分包进行传输。以PLC启动长数据传输为例,时序图如下:

★ 从标签读取数据
当标签在读取范围时,通过读取功能可从标签指定起始地址读取特定长度的数据。命令的执行以”xRead”引脚上升沿触发,在进行读取时,需要先填充部分引脚参数,涉及到的参数如下:

★ 写入数据至标签
当标签静止在读取范围时,通过写入功能可以向一个标签指定的地址写入特定长度的数据。命令的执行以”xWrite”引脚上升沿触发,在命令触发前,需要填写以下参数:

3.4 读写器读/写功能示例
本例程使用RFID1第一个接口进行测试。
当读写器成功连接上后,可对读写器进行读/写操作,如下图所示:
“xReady”信号置1,表明读写器连接成功,即可进行下一步的读写操作:
3.4.1读UID数据区
a) 标签靠近读写器,读写器自动感应标签,标签到位信号“xTP”变为“TRUE”;
自动获取所靠近标签的UID数据,固定长度8个字节,可在arrUIDData查看;

备注:UID数据出厂时设定,可读不可写,数据序列是唯一的;
3.4.2写USER数据区
a) 标签靠近到位,标签到位信号xTP信号的值为“1”;
b) 在arrwriteData数组中填充数据要写入的数据;
c) 标签到位,标签到位信号xTP信号的值为“TRUE”;
d) 修改数据长度iWriteLength的值8,单位为字节;
e) 修改起始地址wWriteAddress的值为16#0000;
备注:在“xWrite”信号命令触发前,务必先填充好“a~e”项参数。
f) 修改写入命令xWrite 为 “1”;
g) 查看功能块反馈回来的完成信号xWriteDone和错误信号xWriteError。
如果xWriteDone值为“1”且xWriteError值为“0”,则说明数据已写入完成;
如果xWriteError为“1”,则说明数据写入失败;
如下图所示:从起始地址0开始,写入8个字节数据进入标签的用户区成功。

3.4.3读USER区
a) 标签到位,标签到位信号xTP信号的值为“TRUE”;
b) 修改数据长度iReadLength的值为8,单位为字节;
c) 修改起始地址wReadAddress的值为16#0000;
备注:在“xRead”信号命令触发前,务必先填充好“a~c”项参数。
d) 修改写入命令xRead 为 “1”(必须先复位xWrite信号);
e) 查看功能块反馈回来的完成信号xDone和错误信号xError。
如果xReadDone值为“1” 且xReadError值为“0”,则说明数据已读取完成;
如果xReadError为“1”,则说明数据读取失败;
如下图所示:从起始地址0开始,读取8个字节标签的用户区数据成功。

对比3.4.2的写入User区的数据,可验证写入和读取数据无误。
04
✦ 错误代码
✦
读写头自定义错误码(命令执行错误时):

功能块自定义错误码:

© 2023 苏培(武汉)智能科技有限公司 版权所有鄂ICP备2022019679号-1