如何在WINCC用C动作比较外部变量

WINCC设定内部双整数变量A、B、C,我想用C动作比较,A和B,当A大于B时,C=1.当A小于B时,C=0.当A=B时,C=10、我该如何编程,谢谢。

最佳答案

首先在WINCC中建好A、B、C三个内部变量,然后建立全局动作,另外需设置好全局动作触发器。具体C程序如下:
#include "apdefap.h"

int gscAction( void )
{
#pragma option(mbcs)
// WINCC:TAGNAME_SECTION_START
// syntax: #define TagNameInAction "DMTagName"
// next TagID : 1
// WINCC:TAGNAME_SECTION_END

long X,Y,Z;                      //X、Y、Z为C语言中分别对应A、B、C的变量
X=GetTagSDWord("A");   //Return-Type: long int  //将A的值赋给X
Y=GetTagSDWord("B"); //Return-Type: long int //将B的值赋给Y
if(X>Y) Z=1;
else if(X<Y) Z=0;
else Z=10;
SetTagSDWord("C",Z); //Return-Type: BOOL //将Z的值赋给C

// WINCC:PICNAME_SECTION_START
// syntax: #define PicNameInAction "PictureName"
// next PicID : 1
// WINCC:PICNAME_SECTION_END
 
return 0; 
}

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

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年12月2日 上午11:31
下一篇 2017年12月2日 上午11:31

相关推荐