求指教224xp与电表MODBUS_RTU通讯问题

各位高手好,现有CPU224XP做主站,目标是通过modbusRTU连接DDSU666电表(正泰单相电子式电能表)。
硬件连接:plc0端(3+8-)用485连接电表通讯端(7+8-)。(连接没有问题)
电表已经设置为modbusRTU通讯协议 参数(9600,N,8,2) 标号53 ,电表读取地址是4000H(16进制) 数据类型:flont
经计算,4000H=16384
本人小白第一次编写mod程序,监测到的数值都是0。。
我的问题是 怎么实现通讯读到4000H的数据 我的程序是不是有点简单了
                     表要读的地址16384和plc保持寄存器地址40001应该怎么关联 
                     数据是不是还要转换 
望路过的高手能够帮助解答 不要说的太复杂 指个方向也可以  不胜感激
图附电表说明书(通讯地址)

问题补充:
非常感谢各位工程师的回答,根据大家的建议,把电表的停止位改成1之后,通讯问题应该是解决了。来回测试几次,用416385读出了数值。现在的问题:电表的数值是0.4左右(会变动但是不明显),监控的数值VB1000和VB1002能够读到数据 如图所示,vb1000始终是62(这个数应该没用),vb1002的数值也不准确(不会随着电表上的数变动,每次上电数值也不一样,相差很多),不知是不是还是地址的问题,感觉很迷茫,再次求解答 ,感谢!

图片说明:

求指教224xp与电表MODBUS_RTU通讯问题    求指教224xp与电表MODBUS_RTU通讯问题    求指教224xp与电表MODBUS_RTU通讯问题    求指教224xp与电表MODBUS_RTU通讯问题    求指教224xp与电表MODBUS_RTU通讯问题   

最佳答案

1、电表不能设置为modbusRTU通讯协议 参数(9600,N,8,2),因为S7-200 CN 的 MODBUS RTU 库指令只支持 1 位停止位;
可改为(9600,N,8,1);
2、要读的地址16384和plc保持寄存器地址4000H应该怎么关联?
4000H是仪表中的保持寄存器地址、十六进制、是一个FLOAT型、占用二个字的存储空间,那么4000H转换成十进制则为 16384,则 MBUS_MSG 的 ADDR 脚写 416384+1=416385,并且 COUNT 管脚写 2。
你的程序在线后,MBUS_MSG 指令的 状态字节 MB3 不为0,说明通讯有问题,查资料,是通讯超时,很大可能是上面两条引起的,与你初始化时 MBUS——CTRL 的TIMEOUT 关系不大。
注意一点有些仪表地址是不是存在正偏移或负偏移的情况。所谓正负偏移是指要读取的地址 416385 加 1 或减 1,你可以在程序中测试。
3、一般在做仪表通讯时,先用 MODSCAN32 软件来做测试,这个软件可以看到地址的正负偏差,以便在程序中使用。
4、仪表通讯说明的附图中最下面那段话是“以下寄存器不支持DDSU666”,你手上的表是DDSU666,那么 什么型号,MBUS_MSG 的 COUNT 管脚只能写 2。
以上都做到了,程序应可以读到数据,先按上面的做。
5、关于MODBUS RTU通讯的资料可以参考
http://www.ad.siemens.com.cn/service/article/S7-200/S7-200modbus/Default.aspx
补充:
在状态表中监视 VD1000,数据格式选择浮点数。如果值不正确,可以考虑高低字交换后,再监视这个浮点数。

提问者对于答案的评价:
与电表通讯上了 数据还读的不对

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

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

相关推荐

  • 关于WinCC flexible SMART V3离散量报警求助

    在S7-200中的程序报警信号是I0.0,在WinCC flexible 软件中离散量报警的触发变量不能用I这个位地址只能用16位的MW,VW这些字地址,这个我…

    2021年7月5日
  • PLC的地址通过程序如何更改

    s 7 200  PLC的地址通过程序如何更改  问题补充:其实,我的意思,大家可能是没清。我是想设置为一个字节,然后直接更改字节…

    SIMATIC S7-200 2021年7月5日
  • S7-200主程序的最后面要不要写END指令

    新手:请问各位大虾,在S7-200的主程序的结尾要不要写END指令?microwin软件能不能自动生成END指令?子程序是自动返回主程序的,但不知道主程序要不要在结尾处写END指令…

    SIMATIC S7-200 2020年11月1日
  • S7一200的成套替换为S7一300

    我现在需要是S7一200的成套替换为S7一300S7一200是40点加一个扩展模块共56点,输入32点,输出24点:模拟量输入是2个4路输入模块:模拟量输出模块是2路输出温度模块是…

    SIMATIC S7-200 2021年7月5日
  • 3台200PLC用以太网连接,怎样进行相互通讯?

    我有3套S7200的PLC通过以太网连成网络,想在PLC之间进行数据的读写,不知道怎样实现?请各位大侠指教,多谢了! 最佳答案 详见《S7-200 以太网解决方案》下载:…

    SIMATIC S7-200 2021年7月4日
  • S7-216与CP243-1问题

    S7-216能不能扩展CP243-1,通过以太网和上位机的组态王通讯。可以的话S7-216需要设置什么? 最佳答案 CPU 216 已经停产 如果是C…

    SIMATIC S7-200 2020年11月1日
  • s7200 用modbus协议与计算机通讯

    7200 用modbus协议与计算机通讯时能否直接把计算机串口与s7200通讯口相连?不能应该怎样实现之间的连接? 问题补充:使用MODBUS协议通讯时,设备之间的通讯连…

    SIMATIC S7-200 2021年7月5日
  • STEP 7-Micro/Win 库存储区灰化

    程序需用脉冲输出MAP库,但库存储区灰色,是何原因,请高手指点。 图片说明:    最佳答案 你先调用这个MAP这个库,然后就会有了。看图片,你还没有调用这个库…

    2021年7月5日
  • 6AV7200-4AA12-0AA0技术手册

    求6AV7200-4AA12-0AA0的防爆PC怎么开孔?求技术手册 最佳答案 6AV7200-4…由于处理器升级是设备内部的,因此所有的尺寸都与之前的型号相同,之前型号的订货…

    SIMATIC S7-200 2021年7月5日
  • PLC 214BD23 OXBB

    PLC的电池怎样更换,更换是成序是否会丢失。 PLC的程序怎样备分到电脑里 谢谢 最佳答案 一般PLC的面板上都有电池的指示灯,当电池电压过低时指示灯会亮,此时…

    SIMATIC S7-200 2021年7月5日

发表回复

登录后才能评论