工业自动化高频读写器|读卡器晨控系列高频(RS485、RS232通信接口)MODBUS RTU通讯是以 MODBUS RTU通讯协议为基础的,包括读卡器的站号ID、波特率、读卡模式等的配置,以及对标签的读写操作,都可以通过MODBUS 通讯指令实现。
在没有特殊配置的情况下,读卡器默认为 MODBUS RTU从站。因此只要连接没有问题,通讯设置没有问题,并且知道从站站号(或者使用广播地址 0) ,读卡器总是可以被MUDBUS主机找到。读卡器在配置为其他工作模式时,通讯模式将作为主站,但仍可以以MODBUS从机的模式接收配置信息。
在读卡器配置为非标准MODBUS模式情况下,可用过我司配套的配置软件重新配置,或者自行通过MODBUS发送配置命令更改设置。
本读卡器通信协议说明适用于以下表格中的型号:
表格 1‑1 读卡器通信协议适用型号
| 通信接口 | 型号 |
|---|---|
| RS485 | CK-FR01-A01、CK-FR03-A01、CK-FR08-A01 |
| RS232 | CK-FR03-B01、CK-FR08-B01 |
1、通讯数据帧
在MODBUS RTU 通讯模式下,主站需要通过时间来判断 RTU 帧的开始和结束。主站监视总线上的通讯数据,如果发现总线有超过 4.5 个字符时间(时间绝对值随字符传送波特率的变化而变化)的空闲,则认为一个帧已经结束(如果存在) ,同时认为下一个字符为下一帧的开始。
完整的 RTU 帧应该是下面的格式(不论是主站发起还是从站应答) :
表格 2‑1 通讯数据帧格式
| 空闲 | 地址 | 功能码 | 数据 | CRC 校验 | 空闲 |
|---|---|---|---|---|---|
| -- | 1 字节 | 1 字节 | N 字节 | 2 字节 | -- |
2、地址
MODBUS 协议的站地址由一个字节组成,站地址用来指示哪个从设备来应答主站的通讯报文。在总线上,每个从设备必须指定一个唯一的站地址,只有当通讯报文中地址与该从设备地址相同时, 该从设备才能应答主站的通讯报文。 从设备应答的通讯报文也必须包含该地址,以告知主站,这个通讯报文是哪个从设备应答的。广播报文的地址是零,所有的从站可以根据广播报文进行相应的动作,但是一般不能应答该广播报文。
3、功能码
功能码指示从设备执行相应的操作,从设备回复相应的数据。用户可通过功能码****03 查询地址为0x05 的寄存器状态来获取上一个操作是否正常执行。 做为从站,目前 F系列读卡器只使用了部分常用的 MODBUS 通讯功能码:
1、03 读保持寄存器(Read holding register)
2、06 写单个寄存器(Preset single register)
3、16 写多个寄存器(Preset multiple registers)
4、数据区
数据区是主站需要发送给从站的数据, 或者是从站需要返回给主站的数据。 数据的具体含义由功能码来定义。特别的,有些功能码不包含数据区,数据区大小可以为 0。
5、校验码
校验码让接收数据方来检查通讯的传输过程中是否有错误发生。
在 MODBUS 中,RTU 模式必须采用 CRC16 校验码。在单片机中实现一般有两种方法,查表法或者运算法,实现方法可以查阅相关的资料。
更多关于工学自动化高频读写器|读卡器晨控系列(RS485、RS232通信接口)MODBUSRTU通信协议,华翔天诚科技欢迎您光临本来交流!