读取线圈
以下面这样一个指令读取线圈为例,我们要从 0000 起始的线圈开始连续读取 8位开关量。由于1条指令读取8位。
但卓岚配置的时候配置1条指令,就会在起始地址之上加1个数量;以此例,由于一次要读取8个,所以必须要配置以 0开始的地址,连续配置8条读取指令,就能得到下面这条等价的指令。不然485模块不响应就无法更新数据。
FF 01 00 00 00 08 28 12
字段 | 含义 | 注释 |
---|---|---|
FF | 设备地址 | 范围 1-255,默认 255 |
01 | 功能码 | 读线圈状态 |
00 00 | 起始地址 | #1 继电器地址 |
00 08 | 继电器数量 | 要读取的继电器总数量为 0x0008 |
28 12 | CRC16 | CRC-16/MODBUS 校验码 |

如下表所示,只要配置够了 8条指令就能正确读取数据了

写入1个继电器
假设云端下发 {"c0":1} 这样一条数据,通过网关解析去打开 1# 继电器,只要按下图中所示的配置即可实现

假设云端下发 {"c0":0} 这样一条数据,通过网关解析去打开 1# 继电器,只要按下图中所示的配置即可实现

网友评论