222 lines
2.8 KiB
Plaintext
222 lines
2.8 KiB
Plaintext
|
|
(* @PATH := '\/TASK1_PID\/PID_Controllers' *)
|
|
(* @SYMFILEFLAGS := '59392' *)
|
|
PROGRAM TestFlowmeters
|
|
VAR
|
|
mAcqStop : BOOL ;
|
|
mSyrAcqEn : BOOL ;
|
|
mWaterAcqEn : BOOL ;
|
|
mWaterFlowValveRatio : REAL ;
|
|
mSyrupFlowValveRatio : REAL ;
|
|
mWaterFlowValveRatioFltd : LowPassFilter ;
|
|
mSyrupFlowValveRatioFltd : LowPassFilter ;
|
|
mWaterRatioOut : REAL ;
|
|
mSyrupRatioOut : REAL ;
|
|
mONSAux : R_TRIG ;
|
|
mClkOns : BOOL ;
|
|
mPVRatio : REAL ;
|
|
|
|
mDummy : BOOL ;
|
|
te: BOOL;
|
|
END_VAR
|
|
VAR_OUTPUT
|
|
EN_Out : BOOL ;
|
|
END_VAR
|
|
|
|
(* @END_DECLARATION := '0' *)
|
|
_LD_BODY
|
|
_NETWORKS : 4
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_EMPTY
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 1
|
|
_ASSIGN
|
|
_FUNCTIONBLOCK
|
|
???
|
|
_BOX_EXPR : 0
|
|
_ENABLED
|
|
_EXPRESSION
|
|
_POSITIV
|
|
TestFlowmeters.DataAcquisition
|
|
_OUTPUTS : 0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
mDummy
|
|
ENABLELIST_END
|
|
_OUTPUTS : 0
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
gClock_10s
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
gClock_1s
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_FUNCTIONBLOCK
|
|
mONSAux
|
|
_BOX_EXPR : 1
|
|
_EMPTY
|
|
_EXPRESSION
|
|
_POSITIV
|
|
R_TRIG
|
|
_OUTPUTS : 0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 0
|
|
ENABLELIST_END
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
mClkOns
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
mWaterAcqEn
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
mAcqStop
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 1
|
|
_ASSIGN
|
|
_FUNCTIONBLOCK
|
|
mWaterFlowValveRatioFltd
|
|
_BOX_EXPR : 3
|
|
_ENABLED
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
mWaterFlowValveRatio
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
30
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
TRUE
|
|
_EXPRESSION
|
|
_POSITIV
|
|
LowPassFilter
|
|
_OUTPUTS : 0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
mWaterRatioOut
|
|
ENABLELIST_END
|
|
_OUTPUTS : 0
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
mSyrAcqEn
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
mAcqStop
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 1
|
|
_ASSIGN
|
|
_FUNCTIONBLOCK
|
|
mSyrupFlowValveRatioFltd
|
|
_BOX_EXPR : 3
|
|
_ENABLED
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
mSyrupFlowValveRatio
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
30
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
TRUE
|
|
_EXPRESSION
|
|
_POSITIV
|
|
LowPassFilter
|
|
_OUTPUTS : 0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
mSyrupRatioOut
|
|
ENABLELIST_END
|
|
_OUTPUTS : 0
|
|
|
|
END_PROGRAM
|
|
ACTION DataAcquisition:
|
|
IF mClkOns AND gBlenderEnToRamp THEN
|
|
IF gR_Out_H2O_PID>1 THEN
|
|
mWaterAcqEn := TRUE ;
|
|
mWaterFlowValveRatio := gH2O_Flow_PV / gR_Out_H2O_PID ;
|
|
END_IF
|
|
IF gR_Out_SYR_PID>1 THEN
|
|
mSyrAcqEn := TRUE ;
|
|
mSyrupFlowValveRatio := gSYR_Flow_PV / gR_Out_SYR_PID ;
|
|
END_IF
|
|
ELSE
|
|
mWaterAcqEn := FALSE ;
|
|
mSyrAcqEn := FALSE ;
|
|
END_IF
|
|
|
|
IF gBlenderStableFlow THEN
|
|
IF gMFM_Syrup1Totalizer>1 AND gActualSyrupDens>0.5 THEN
|
|
mPVRatio := gMFM_WaterTotalizer / (gMFM_Syrup1Totalizer / gActualSyrupDens) ;
|
|
END_IF
|
|
END_IF
|
|
END_ACTION
|
|
|