发布于 2012-09-17 16:37:32
2楼
AN #Polar
R #Polar
A #Polar
= L 2.0
BLD 103
CALL "SCALE"
IN :=#Flow_in
HI_LIM :=#Hi_limit
LO_LIM :=#Low_limit
BIPOLAR:=L2.0
RET_VAL:=#Ret_FC105
OUT :=#Flow
NOP 0
L #Flow
T #Flow_rt
NOP 0
L #Division
DTR
T #Divide
NOP 0
L #Flow
L #Divide
/R
T #Flow_Div
NOP 0
L #Flow_Div
L #Flow_T
+R
T #Flow_T
NOP 0
A #Clear
JNB _001
L 0.000000e+000
T #Flow_T
_001: NOP 0
说明:
L #Flow_T
T #Flow_Accu
NOP 0
Flow_in : INT ; // 流量信号的模拟量输入地址
Hi_limit : REAL ; // 流量信号的工程量上限/h
Low_limit : REAL ; // 流量信号的工程量下限
Division : DINT ; // 实时流量时间单位的除数
Flow_rt : REAL ; // 转换为工程单位的实时流量
Flow_Accu : REAL ; //当前累计流量值
这是我在项目中用到的一个简单流量累计,没有滤波和2次累计,如果你要求比较高的话,再请教大家吧,我也学习学习