我在输入/输出域->》属性-->输出值-->动态-->C动作中输入以下代码,来实现动态输出值,但输出的数据是累计值,而不是实时计算的值。
#include "apdefap.h"
double _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
static float i=0;
if (i==0)
{
i=GetTagFloat("RA_W01_EZ"); //Return-Type: float
}
else
{
return(i-GetTagFloat("RA_W01_EZ"));
i=GetTagFloat("RA_W01_EZ");
}
}
问题补充:
楼上不行
最佳答案
楼上的试过没
用全局脚本:
#include "apdefap.h"
int gscAction( void )
{
float a=GetTagFloat("RA_W01_EZ");
float b=GetTagFloat("RA_W01_EZ1");
//中间变量,用来存储计算值的
float c;
if (b==0)
{
b=a;
SetTagFloat("RA_W01_EZ1",b);
}
else
SetTagFloat("y1",b-a);
return 0;
}
试过,OK
提问者对于答案的评价:
ok,谢谢!
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc272530.html