C脚本GetTagDWordState为何没反应

C脚本如下:
#include "apdefap.h"

int gscAction( void )
{

 DWORD dwstate;
 


GetTagDWordState("YCL_BF_A.Status_Int",&dwstate); //Return-Type: DWORD 

if (dwstate==0)
{
SetTagBit("QC",FALSE); //Return-Type: BOOL 
}
else
{

SetTagBit("QC",TRUE); //Return-Type: BOOL 

}

return 0; 
}

主要目的是wincc上用脚本判别与PLC通道通讯是否连接上,QC为一内部变量,通过提取PLC变量状态来判别,可执行时候,STOP PLC也没任何反应,QC一直==0,原因在哪呢。(全局脚本在运行)

钻石用户推荐最佳答案

PLC STOP 状态,WINCC和PLC连接并不会断开,所以变量的状态一直正常
可以把通讯线拔了,或PLC断电,再测试一下
如果是“SIMATIC S7 Protocol Suite”通道,可以把驱动的“CPU停机监控”选上

在 WinCC 中,有两个质量指标用来评估变量质量。这两个指标为变量状态和质量代码。
具体信息可查看:
WinCC 信息系统(帮助)——通讯——通讯 – 诊断——变量质量

图片说明:

C脚本GetTagDWordState为何没反应  

提问者对于答案的评价:

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月1日
下一篇 2020年11月1日

相关推荐