大家好,我是考100分的小小码 ,祝大家学习进步,加薪顺利呀。今天说一说工业自动化高频读写器|读卡器晨控系列(RS232、RS485通信接口)MODBUS RTU通信操作示例,希望您对编程的造诣更进一步.
工业自动化高频读写器|读卡器晨控系列可采用(RS232、RS485通信接口)MODBUS RTU,本文童通过读卡器的通信操作示例的讲解,可以让电气工程师、硬件工程师,软件工程师快速了解,上手晨控系列(RS232、RS485通信接口)MODBUS RTU通信工业自动化高频读写器|读卡器的操作。 本读卡器通信协议说明适用于以下表格中的型号:
表格 1‑1 读卡器操作示例适用型号
通信接口 | 型号 |
---|---|
RS485 | CK-FR01-A01、CK-FR03-A01、CK-FR08-A01 |
RS232 | CK-FR03-B01、CK-FR08-B01 |
1、 功能码03读取操作
1.1、获取读卡器配置信息
读卡器的配置信息保存在0x0000, 0x0001, 0x0002, 0x0003四个地址中(详细功能说明见开发手册)。
主机发送:02 03 00 00 00 04 44 3A
发送 | |
---|---|
段名 | 例子(HEX格式) |
从机地址 | 02 |
功能码 | 03 |
开始地址(高字节) | 00 |
开始地址(低字节) | 00 |
数量(高字节) | 00 |
数量(低字节) | 04 |
CRC校验(高字节) | 44 |
CRC校验(低字节) | 3A |
读卡器应答:02 03 08 00 02 00 05 00 01 00 01 E5 53
应答 | |
---|---|
段名 | 例子(HEX格式) |
从机地址 | 02 |
功能码 | 03 |
字节数 | 08 |
数据(寄存器0x0000高字节) | 00 |
数据(寄存器0x0000低字节) | 02 |
数据(寄存器0x0001高字节) | 00 |
数据(寄存器0x0001低字节) | 05 |
数据(寄存器0x0002高字节) | 00 |
数据(寄存器0x0002低字节) | 01 |
数据(寄存器0x0003高字节) | 00 |
数据(寄存器0x0003低字节) | 01 |
CRC校验(高字节) | E5 |
CRC校验(低字节) | 53 |
1.2、读取标签UID信息
标签的UID信息保存在0x0006,0x0007,0x0008,0x0009在4个寄存器中。
主机发送:02 03 00 06 00 04 A4 3B
发送 | |
---|---|
段名 | 例子(HEX格式) |
从机地址 | 02 |
功能码 | 03 |
开始地址(高字节) | 00 |
开始地址(低字节) | 06 |
数量(高字节) | 00 |
数量(低字节) | 04 |
CRC校验(高字节) | A4 |
CRC校验(低字节) | 3B |
读卡器应答(读卡成功): 02 03 08 BB 2B A4 5F 50 01 04 E0 85 F7
应答 | |
---|---|
段名 | 例子(HEX格式) |
从机地址 | 02 |
功能码 | 03 |
字节数 | 08 |
数据(寄存器0x0006高字节) | BB |
数据(寄存器0x0006低字节) | 2B |
数据(寄存器0x0007低字节) | A4 |
数据(寄存器0x0007高字节) | 5F |
数据(寄存器0x0008低字节) | 50 |
数据(寄存器0x0008高字节) | 01 |
数据(寄存器0x0009低字节) | 04 |
数据(寄存器0x0009高字节 | E0 |
CRC校验(高字节) | 85 |
CRC校验(低字节) | F7 |
1.3、读写状态查询命令
每次进行读写操作时,读写状态均保存在0x0005寄存器中,可通过查询0x0005寄存器数值获取读写操作状态。
读写状态查询命令为02 03 00 05 00 01 94 38,即只查询0x0005寄存器。
该命令用于查询上一条除读写状态查询命令外的读写命令状态,即该寄存器不记录该读写状态查询命令的状态。
主机发送02 03 00 05 00 01 94 38
发送 | |
---|---|
段名 | 例子(HEX格式) |
从机地址 | 02 |
功能码 | 03 |
开始地址(高字节) | 00 |
开始地址(低字节) | 05 |
数量(高字节) | 00 |
数量(低字节) | 01 |
CRC校验(高字节) | 94 |
CRC校验(低字节) | 38 |
读卡器应答(上一次的操作无误): 02 03 02 00 00 FC 44
读卡器应答(上一次读操作出错): 02 03 02 00 01 3D 84
读卡器应答(上一次写操作出错): 02 03 02 00 02 7D 85
注:当读操作中包含读写状态寄存器时,返回的数值中,读写状态寄存器状态均为上一次读写操作(非读写操作查询命令操作)的状态。
2、功能码06/16写寄存器操作
2.1、 功能码06写单个寄存器
更改读卡器站号ID,读卡器的站号ID保存在0x0000寄存器中。
主机发送02 06 00 00 00 03 C9 F8
发送 | |
---|---|
段名 | 例子(HEX格式) |
从机地址 | 02 |
功能码 | 06 |
写入地址(高字节) | 00 |
写入地址(低字节) | 00 |
写入数据(高字节) | 00 |
写入数据(低字节) | 03 |
CRC校验(高字节) | C9 |
CRC校验(低字节) | F8 |
读卡器应答:02 06 00 00 00 03 C9 F8
应答 | |
---|---|
段名 | 例子(HEX格式) |
从机地址 | 02 |
功能码 | 06 |
写入地址(高字节) | 00 |
写入地址(低字节) | 00 |
写入数据(高字节) | 00 |
写入数据(低字节) | 03 |
CRC校验(高字节) | C9 |
CRC校验(低字节) | F8 |
2.3、功能码16写多个寄存器
将数据写入RFID标签0x000A, 0x000B,0x000C,0x000D四个寄存器中。
主机发送:02 10 00 0A 00 04 08 00 01 00 02 00 03 00 04 75 A0
接收 | |
---|---|
段名 | 例子(HEX格式) |
从机地址 | 02 |
功能码 | 10 |
起始地址(高字节) | 00 |
起始地址(低字节) | 0A |
寄存器数量(高字节) | 00 |
寄存器数量(低地址) | 04 |
字节数 | 08 |
数据(寄存器0x000A高字节) | 00 |
数据(寄存器0x000A低字节) | 01 |
数据(寄存器0x000B高字节) | 00 |
数据(寄存器0x000B低字节) | 02 |
数据(寄存器0x000C高字节) | 00 |
数据(寄存器0x000C低字节) | 03 |
数据(寄存器0x000D高字节) | 00 |
数据(寄存器0x000D低字节) | 04 |
CRC校验(高字节) | 75 |
CRC校验(低字节) | A0 |
读卡器应答:02 10 00 0A 00 04 E1 FB
更多关于工业自动化高频读写器|读卡器晨控系列(RS232、RS485通信接口)MODBUS RTU通信操作示例,华翔天诚科技欢迎您的光临与交流!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/37178.html