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