MODBUS通讯时,多从机模式,出现连续两次主机发送命令的原因是什么呢?(倒数第8行和第7行)过一段时间就会出现一次。连接,配置没有问题
[图片]
MODBUS通讯时,多从机模式,出现连续两次主机发送命令的原因是什么呢?(倒数第8行和第7行)过一段时间就会出现一次。连接,配置没有问题
【相关推荐】
读取从机离散量输入信号(ON/OFF)的状态,不支持广播。
查询:查询信息规定了要读的输入起始地址,以及输入信号的数量。输入的起始地址为0000H,1-16个输入口的地址分别为0-15(DO1=0000H,DO2=0001H,以此类推)。
例子:从地址为17的从机读取D01至D16的状态。
addr | Fun | D0 start reg hi | D0 start reg lo | D0 #of regs hi | D0 #of regs lo | CRC16 hi | CRC16 lo |
地址 | 功能码 | 起始线圈地址高8位 | 起始线圈地址低8位 | 线圈量高8位 | 线圈量低8位 | 校验高8位 | 校验低8位 |
11H | 02H | 00H | 00H | 00H |
10H | XXH | XXH |
响应:响应信息中的各输入口的状态,分别对应于数据区中的每一位值,1=ON,0=OFF,第一个数据字节的LSB为查询中的寻址地址,其他输入口按顺序在该字节中由低位向高位排序,直至8个为止,下一个字节中的8个输入位也是从低位向高位排列。若返回的输入位数不是8的倍数,则在最后的数据字节中的剩余位直至字节的最高位全部填0,字节数区说明了全部数据的字节数。
addr | Fun | Byte count | Data1 | Data2 | CRC16 hi | CRC16 lo |
地址 | 功能码 | 字节数 | 数据位 | 数据位 | 校验高8位 | 校验低8位 |
11H | 02H | 02H |
33H | CCH | XXH | XXH |
数据1:
DI8 | DI7 | DI6 | DI5 | DI4 | DI3 | DI2 | DI1 |
MSB | LSB |
数据2:
DI16 | DI15 | DI14 | DI13 | DI12 | DI11 | DI10 | DI9 |
MSB | LSB |