发布于 2009-04-13 01:39:43
0楼
我理解楼主的意思了,可是楼主有可能把问题想的反而复杂了。楼主在WinCC里面想做一个生命信号,那么我们在WinCC激活状态,做个0.5HZ脉冲心跳的信号写到PLC就好了哦!然后在PLC里面判断这个脉冲信号是否正常。嘿嘿!!我的思路如下:(仅供参考)
1.在WinCC里面建一个Bool类型的外部变量:"WinCC_Heart"对应PLC绝对地址为M66.6
2.在全局动作中编写C脚本,触发器选择周期触发器为1秒,脚本功能就是将"WinCC_Heart"变量状态反转。全局动作C脚本代码如下:
#include "apdefap.h"
int gscAction( void )
{
SetTagBit("WinCC_Heart",! GetTagBit("WinCC_Heart"));
return 0;
}
3.最后在PLC程序中判断M66.6脉冲信号是否正常。如果你的WinCC或者PC死机,PLC里面M66.6状态有可能一直为“1”或者也有可能一直为“0”;你可以通过PLC里面的Timer来判断。如果M66.6状态“1”大于2s或者M66.6状态“0”大于2s那么就让你的设备停下来。PLC程序你自己应该能搞定了,我就不罗嗦了。
佛对我说:“你的痛苦来自于你的欲望,没有欲望也就没有痛苦!”