01
概述
EtherCAT(以太网控制自动化技术) 是由德国倍福公司开发的、基于以太网的开放现场总线系统,EtherCAT为系统的实时性能和拓扑的灵活性树立了新的标准,同时,
它还符合甚至降低了现场总线的使用成本。EtherCAT的特点还包括高精度设备同步,可选线缆冗余,和功能性安全协议(SIL3)。
本期我们来注重介绍一下如何使用Superisys RFID EtherCAT总线网关与欧姆龙NXJ系列PLC通讯进行通讯读写。
IACM-P4工业网关


Superisys IACM-P4系列工业网关是一种提供标准工业总线协议的RFID控制器,支持ProfiNet、EtherCAT、Ethernet/IP协议。包含两个M12 T-CODE电源供电接口,两个M12 D-CODE 4-PIN 总线接口,4个M12 A-CODE RFID读写头接口。工业以太网传输速率最高支持100Mbps,可级联多个总线模块到PLC中,提供强大的现场采集数据能力。外壳采用轻便坚固的工程塑料,具有连接范围厂、通信能力强、环境适应好、防护等级高等特点。
可同时连接4个RFID读写头进行独立操作;
支持ProfiNet、EtherCAT、EtherNet/IP协议;
IP67的防护等级,能够适应油污、粉尘、潮湿等恶劣工况;
双网口,集成交换机功能,可组星型网络和树型网络;
电源输入带反接保护和3000W浪涌保护,RFID端口带防反接和过压过流保护。
02
硬件架构介绍

RFID架构系统主要组成如下:
控制器
(PLC)
下发命令控制读写头进行操作;
网关总线
控制器
PLC与网关总线控制器进行通讯,间接控制读写头;
读写头
(超高频
/高频)
获取控制器的命令,执行对载码体的读/写数据操作;
载码体
(超高频
/高频)
存储数据的载体,数据存储区域划分如下:
高频标签有UID区(通常只有8 byte/只读且唯一)、USER区(一次最大2000 byte(实际内存大小因标签类型而异)/可读可写);
01
✦ 组态网关设备
✦
1.1 总线网关xml文件安装
★ 打开欧姆龙Sysmac stduio软件,新建一个项目程序,选择对应的PLC型号及版本号(本例程中使用的是NX1P2-9024DT1 V1.47版本的PLC),选中“配置与设置”栏下的“EtherCAT”选项,右键点击“编辑”选项,进入“EtherCAT”网络设置界面,如下图所示:

★ 选中“主设备”右键选择“显示ESI库”,选择“安装文件”,选择相应文件夹下的xml文件,点击“打开”,完成安装即可,如下图所示:

1.2 总线网关设备组态
★ 在EtherCAT网络设置界面的右上方下找到“工具箱”,选中下方 的“Superisys IACM-P4-ECT”设备,将其拖拽至“主设备”栏(或者右键点击插入),完成EtherCAT从站设备(网关)的硬件组态,如下图所示:

1.3 总线网关IO映射
★ 双击“配置和设置”选项下的“I/O映射”栏,点击“EtherCAT网络配置”栏下的节点1从站设备,可以看到总线网关设备的输入输出映射地址,分别为四个输入及输出地址(对应总线网关的四个RFID读写头I/O映射地址),如下图所示:

双击“编程”选项下的“数据”栏下的“全局变量”,根据“Superisys IACM-P4-ECT”从站设备的I/O地址数据类型,分别新建四个RFID读写头对应的输入输出映射地址,如下图所示:

★ 返回“配置和设置”选项下的“I/O映射”栏,点击“EtherCAT网络配置”栏下的节点1从站设备,将新建的“全局变量”(对应四个RFID读写头的I/O映射地址变量)依次关联至总线网关设备的I/O映射地址上,如下图所示:

点击“文件”选项下的“保存”按钮,保存设置组态参数即可。
1.4 总线网关组态参数下载
★ 返回EtherCAT网络设置界面,配置好PLC的IP地址后,点击“在线”,选择“主设备”,点击右键,选择“写入从设备节点地址”选项,写入从设备的节点地址,如下图所示:


默认的从设备节点地址为0,本例程中已写入为1。点击写入完成地址写入即可。
★成功写入从设备节点地址后,在“在线”模式下,传送下载组态的“EtherCAT网络配置”参数,不要勾选第三个选项即不下载“EtherCAT”网络配置“参数的选项,点击“执行”按钮,下载硬件配置参数,如下图所示:

★成功传送完组态的“EtherCAT网络配置”参数后,点击“在线”,查看“EtherCAT网络”的从设备连接情况,“IACM-P4-ECT”从设备图标显示“箭头”,则表示从设备连接成功,如下图所示(成功连接):

从设备节点地址不正确或从设备未连接上,设备会显示“X”未连接状态

02
✦功能块介绍及使用
✦
打开“Sysmac stduio”编程软件,打开“ECTGatewayDemo”样例程序。
2.1 网关RFID通道I/O的变量地址映射
双击例程程序的“全局变量”,根据3.1.3小节分配的I/O地址映射,对应网关读写器的输入输出地址变量如下图所示:

2.2 RFID读写功能块介绍
提供的程序:
调用程序:“ECTGatewayDemo”—— RFIDDemo功能块程序调用;
功能块:“RFIDDemo”—— RFID读写功能处理;
2.3 RFID读写功能块引脚说明
一个“RFID_RW”功能块实例调用对应一个端口通道的读写器,功能块图形如下:

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

xRead,xWrite两个信号互斥,同一时间只能有一个信号为高电平,功能块只会执行第一个检测到的有效信号。
03
✦读写头读/写功能示例
✦
3.1命令执行时序
★ 使能RFID
使能是使RFID工作的必要条件,调用RFID读写功能块后,默认保持RFID使能。具体的时序如下所示。默认的RFID使能置位后,Ready未置位,则表示总线模块与RFID通讯异常。

★ 命令执行
命令的执行以Trigger上升沿信号开始,在给Trigger信号置位之前,先将命令/参数/数据填充好。在命令执行期间保持Trigger信号置位,若取消当面命令的执行,将Trigger复位即可,Trigger后输入数据取的状态信息将复位。命令执行完后可从、Done/Err以及Errcode等信息获取命令执行的结果。

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

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

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

本例程中一次性读写标签内存操作最大字节数为2000,大于2000字节请联系我司技术人员进行修改。
本例程使用RFID1第一个接口进行测试。
当读写器成功连接上后,可对读写器进行读/写操作。
“xReady”信号置1,表明读写器连接成功,xTP表示感应到芯片。
3.2读UID数据区
当读写器成功连接上后,可对读写器进行读/写操作:
“xReady”信号置1,表明读写器连接成功,“xTP”信号置1,表明读写器感应到标签;
打开“编程”下的“RFIDFunction”调用程序,在“视图”下的“监视窗口”下添加相应的读写操作变量名称,修改对应的变量值可对标签进行读写操作。
a)标签靠近读写器,读写器自动感应标签,标签到位信号“xTP”自动变为“TRUE”;
b)arrUIDData[0] – arrUIDData[7] 自动获取所靠近标签的UID数据,固定长度8个字节;

UID数据出厂时设定,可读不可写,数据序列是唯一的;
3.3 写USER数据区
1) 标签靠近到位,标签到位信号xTP信号的值为“1”;
2) 在arrwriteData数组中填充数据要写入的数据;
3) 修改数据长度iWriteLength的值8,单位为字节;
4) 修改起始地址wWriteAddress的值为16#0000;
5) 修改写入命令xWrite 为 “1”;
6) 查看功能块反馈回来的完成信号xWriteDone和错误信号xWriteError。
如果xWriteDone值为“1”且xWriteError值为“0”,则说明数据已写入完成;
如果xWriteError为“1”,则说明数据写入失败;
如下图所示:从起始地址0开始,写入8个字节数据进入标签的用户区成功。

3.4读USER区
1) 标签到位,标签到位信号xTP信号的值为“TRUE”;
2) 修改数据长度iReadLength的值为8,单位为字节;
3) 修改起始地址wReadAddress的值为16#0000;
4) 修改写入命令xRead 为 “1”(必须先复位xWrite信号);
5) 查看功能块反馈回来的完成信号xReadDone和错误信号xReadError。
如果xReadDone值为“1” 且xReadError值为“0”,则说明数据已读取完成;
如果xReadError为“1”,则说明数据读取失败;
如下图所示:从起始地址0开始,读取8个字节标签的用户区数据成功。

对比3.3.2的写入User区的数据,可验证写入和读取数据无误。
04
✦错误码
✦
4.1 错误码详细定义
功能块输出参数wErrCode包含以下错误信息:

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


