QQ登录

只需一步,快速开始

通讯故障判断

[ 复制链接 ]
通讯故障判断wincc通讯断线警报如何实现
与现场设备通讯使用的MODBUS TCP/IP驱动程序(详附件照片),如果通讯网络断线,在WINCC显示报警讯息,如何实现?谢谢大家。


---------1、wincc建立变量读取cpu的memory clock字节,然后wincc建立内部变量,在全局脚本中判断这个变量和wincc内部变量保存的值是否一样,如果一样则说明通讯中断了,脚本结束后,把当前值保存到wincc内部变量中。脚本执行周期500ms就行了。
2、wincc脚本判断变量的质量代码,这个比较麻烦,如果是4c就说明通讯中断或者地址错误。

补充:我说的1不能解决你的问题吗?如果你用别的plc,没有这个字节,你可以用一个int变量自加大于1000后归零再从新自加,然后采用和我1一样的方法来判断。


----------那就用后者,wincc定义comm读取这个变量(每秒变化2次以上),一个wincc内部变量comm_sav保存读取到的值.vbs脚本1s执行一次。

dim mytag(2)
mytag(0)=hmiruntime.tags("comm").read
mytag(1)=hmiruntime.tags("comm_sav").read'如果通讯正常这两个数是不一样的。
if mytag(0)=mytag(1) then'如果通讯故障,则读取到的通讯状态变量的值是不变的,所以两个周期后,读取的值和保存的值一样了。
hmiruntime.tags("comm_alarm").write 1'此时输出通讯故障报警
endif
hmiruntime.tags("comm_sav").write mytag(0)'保存通讯状态变量。



回复

使用道具 举报

快速回复 返回列表 客服中心 搜索