通过PROFIBUS读取MM440故障信息

目前有一个项目,触摸屏无法通过PROFIBUS读取MM440故障信息,但是程序里面有相关代码,请求数据发至DB14.DBW40,在线读取为13b30000,但是通过在线var,DB14.DBW40为0,不知为何?触摸屏上显示故障代码的赋值为DB13.DBW12,感觉故障时赋值没有进入SFC15,还请各位高手指点一二,谢谢了先。

问题补充:
以前也怀疑程序里边还有别的地方对DB14.DBW40有读写操作,所以把地址赋值为DB13.DBW40,但是结果一样。

图片说明:

通过PROFIBUS读取MM440故障信息   

最佳答案

问题在于代码的第二行:
      L     DW#16#13B30000              //DW是DWORD型,双字
      T     DB14.DBW   40               //DBW是WORD型,单字,这样赋值会丢失高位
改成:
      T     DB14.DBD   40

图片说明:

通过PROFIBUS读取MM440故障信息  

提问者对于答案的评价:
谢谢

专家置评

已阅,最佳答案正确。

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

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

相关推荐