关于modbus通讯,从站设备的寄存器地址在00001 至 0xxxx 读操作本来是03变成01如何解决?

调用 Modbus RTU 主站读写子程序MBUS_MSG:
 读写从站的数据地址:  及数据类型
  00001 至 0xxxx - 开关量输出
  10001 至 1xxxx - 开关量输入
        30001 至 3xxxx - 模拟量输入
        40001 至 4xxxx - 保持寄存器
现在有个设备寄存器地址是在00001 至 0xxxx,例如0630这样的地址,本来读寄存器应该发送03指令的,现在因为地址在00001 至 0xxxx区间,默认为读开关量输出了,读指令会发01而不是03,请问可以如何解决?是不是只能使用自由口自己一个个读和写了?

问题补充:
补充第三方设备寄存器手册,说明,地址就是0630或者0400之类的,而不是40630或者是40400,这类定义的寄存器的地址是不是就不能使用modbus官方库通讯了?

图片说明:

关于modbus通讯,从站设备的寄存器地址在00001 至 0xxxx 读操作本来是03变成01如何解决?    关于modbus通讯,从站设备的寄存器地址在00001 至 0xxxx 读操作本来是03变成01如何解决?    关于modbus通讯,从站设备的寄存器地址在00001 至 0xxxx 读操作本来是03变成01如何解决?   

最佳答案

设备寄存器地址是在 00001 至 0xxxx,这部分地址在设备说明书中如果指定的是 03 功能码,则指的是保持寄存器。
MBUS_MSG 指令调用时,可以将你读的地址的最前面加上 4。
例如0630这样的地址,与成 40630。
S7-200 Modbus通信常见问题
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-portal/MicroPower2013/Smart%20SMS/019.html

提问者对于答案的评价:
字节转换成10进制后在最前面加4

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc363177.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 下午12:42
下一篇 2021年7月5日 下午12:42

相关推荐

  • 怎么定义MODBUS的地址

    我想用一个S7-224通过RS485和两个智能仪表作通讯,用S7-200作主站,两个智能仪表做从站,我想一些数传到智能仪表中,又想接收智能仪表的数据,我把S7-200VB100到V…

    SIMATIC S7-200 2020年11月1日
  • s7-224与台达变频器

    s7-224能带10台,台达变频器么 可以的话要怎么做!如果不行的话还有别的办法么?以前没做过通讯求一详细点的的解决方法。 最佳答案 可以,但实时性不要要求过高。参见:1…

    SIMATIC S7-200 2020年10月31日
  • S7-200与人机MT4300C中的数值输入

    在MT4300C中用到数值输入元件,上传到屏中时显示为0,手动输入数值在屏断电后重新开机,手动输入的数值又变为0,请教各位大虾是为何?又如何才能将手动输入的数值自动保存,重新开机后…

    SIMATIC S7-200 2020年11月1日
  • S7-200和变频器USS通讯烧通讯口

    我用CPU226CN采用USS控制3台MM420变频器(5.5KW)和一台MM430(11KW),调试正常都有几天了。昨天傍晚,雷雨天气,客户在控制室里面接外面的照明电路,控制柜的…

    SIMATIC S7-200 2020年11月1日
  • 226cpu本体脉冲输出报错127

    cpu226,Q0.0和Q0.1输出脉冲,报错出现的两种情况:(1)断电重新上电后,(2)下载完程序,切换回run,第一次运行时。当出现故障时,把cpu本体的run、stop、te…

    SIMATIC S7-200 2021年7月5日
  • 为什么西门子S7-200 PLC中L存储区里的数据不能在状态表中显示呢?

    我在用200 PLC的状态表监控的时候发现,L存储区的数值和累加器AC0的数值没法在状态表中显示,问了一下,说因为L是局部变量,所以不能显示,如果就这样说是不是有点勉强呢…

    SIMATIC S7-200 2020年10月31日
  • 如何实现计数器按照预设脉冲值自动计数

    请教各位高手:现在我需要计数器按照预设脉冲值(比如0.1S脉冲信号)自动加减计数,比如计数器从+30以0.2秒的脉冲信号上升一直加到+60,该计数器计数到+60后再以0.3秒的脉冲…

    SIMATIC S7-200 2020年10月31日
  • 地址

    请教高手赐教:S7200的V区对应的标准MODBUS地址是怎样计算的?比如:vw102对应的MODBUS地址,VD204对应的MODBUS地址,是怎样计算的。谢谢! 问题补充:比如…

    SIMATIC S7-200 2021年7月5日
  • MODBUS可否实现多主站通信

    想用工控机和S7-200同时对仪表监控。 200的两个口都用了。 最佳答案 1、modbus可否实现多主站通信?不可以。modbus 是一种单主站的主/从通信模…

    SIMATIC S7-200 2020年10月31日
  • 离散报警问题

    在K-TP178MICRO设备上,设置离散报警,我用MW0作为触发变量,我想当M0.0或M0.4置位时,触发报警。这里有一点不明白,变量位号与地址到底是怎样的对应关系。比如M0.4…

    SIMATIC S7-200 2021年7月5日

发表回复

登录后才能评论