S7300/ET200S中modbus通讯pid控制AO数据传输错误问题

用触摸屏将数据写入MD320,在SIMATIC管理器中用MOVE指令将MD320中的数据传输至DB42.DBW56,在线监视DB42,不管在MD320中输入多少数值,在DB42.DBW56中对应实际值始终为0000。
我怀疑是数据类型不一致的问题,不知道是不是正确?
如果碰到数据类型不一致的情况,系统一般是如何处理的,比如把MD320的数据传输给MW330,MW330接收到的是MB320+MB321呢,还是MW322+MW323呢?
请各位高手指点迷津,谢谢

最佳答案

一个字最大数为65535,双字传送给字,只能将双字的地字传送给需要传送的字,也就是说,MD320其实只能将MW322这个字传送给MW330,MW320这个高字是不能传送的,如果你的双字的值超过65535就会造成高字的数据丢失,MW330只能接受低字的数值,高字的数值是不能接受的,
不管在MD320中输入多少数值,在DB42.DBW56中对应实际值始终为0000,这种现象的不对的,应该数值在65535及以下可以正常传送的,可能原因就是数值类型不一致造成。
MD320的数据传输给MW330,MW330接受的是MB322+MB323即为MW322

提问者对于答案的评价:
问题已经解决了,谢谢大家

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月1日 下午1:15
下一篇 2018年12月1日

相关推荐