八号男嘉宾 2022-11-02 19:38 采纳率: 50%
浏览 42
已结题

ModbusRtu寄存器地址傻傻分不清。

img

如图我要读取ABC三相电压。
发送的报文:01 03 00 00 00 06+ CRC
为什么读不到数据。
而要将40001转换为 9C 41。
这样发送 : 01 03 9C 41 00 06 +CRC才能读到数据。
请各位帮忙指点。谢谢
其他的指令也看到需要将4000X进行转换。

img

  • 写回答

1条回答 默认 最新

  • 吕傑森 2022-11-03 21:10
    关注

    你贴的不就是地址 / 功能对应表吗?
    位置 40001 开始, RTU 命令 0x03
    DEC2HEX ( 40001 ) = 0x9C41

    ID  FUNC  ADDRESS  LENGTH  CRC 
    01  03       9C41           0006        CRC
    

    40001 是厂商定义地址, 没规定一定要从 0 开始。
    怎么方便,架构方便,成本低,就怎定义。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月18日
  • 已采纳回答 11月10日
  • 修改了问题 11月3日
  • 修改了问题 11月2日
  • 展开全部