1233 lines
14 KiB
Plaintext
1233 lines
14 KiB
Plaintext
|
|
(* @PATH := '\/TASK2_ControlMain\/Blender_Procedure' *)
|
|
(* @SYMFILEFLAGS := '59392' *)
|
|
PROGRAM SyrBrix_Autocorrection
|
|
VAR
|
|
mSyrBrix_AutoCorrReqTP : TP ;
|
|
mSyrBrix_AutoCorrReqTP1 : TP ;
|
|
mAuxONS : R_TRIG ;
|
|
mAuxONS1 : R_TRIG ;
|
|
mAuxONS2 : R_TRIG ;
|
|
m2sONS : BOOL ;
|
|
mProdSyrFactAcq : BOOL ;
|
|
mLatchONS : BOOL ;
|
|
mSyrupFactFlt : LowPassFilter ;
|
|
mProdSyrFact : REAL ;
|
|
mSyrupMFMFactFlt : LowPassFilter ;
|
|
mSyrMFMFact : REAL ;
|
|
mZeroTest : BOOL ;
|
|
mZeroTest1 : BOOL ;
|
|
mDummy : BOOL ;
|
|
END_VAR
|
|
|
|
VAR_OUTPUT
|
|
EN_Out : BOOL ;
|
|
END_VAR
|
|
|
|
(* @END_DECLARATION := '0' *)
|
|
_LD_BODY
|
|
_NETWORKS : 24
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
Syrup Autocorrection means that the measured syrup brix AND syrup density from meter, are used instead
|
|
OF the one from the recipe, TO calculate the volumetric ratio.
|
|
Activated only IF the beverage is sugar based.
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 6
|
|
_LD_CONTACT
|
|
gBlenderProdMode
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gSugarBeverage
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gFirstProd_Done
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gWaterRecipe
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_LD_CONTACT
|
|
gBlenderRinseMode
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_LD_CONTACT
|
|
gBlenderSuppliesOk
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 0
|
|
ENABLELIST_END
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gSyrAutoCorr_Qualifier
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_OR
|
|
_LD_OPERATOR : 2
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
gSyrRunOut_Latch
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_FUNCTIONBLOCK
|
|
mSyrBrix_AutoCorrReqTP
|
|
_BOX_EXPR : 2
|
|
_EMPTY
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
t#1s
|
|
_EXPRESSION
|
|
_POSITIV
|
|
TP
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
_EMPTY
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_AND
|
|
_LD_OPERATOR : 3
|
|
_LD_CONTACT
|
|
gH_CMD_SyrAutoReq
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gSyrRunOut_Latch
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_FUNCTIONBLOCK
|
|
mAuxONS
|
|
_BOX_EXPR : 1
|
|
_EMPTY
|
|
_EXPRESSION
|
|
_POSITIV
|
|
R_TRIG
|
|
_OUTPUTS : 0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 0
|
|
ENABLELIST_END
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gSyrAutoCorr_Request
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Qualifier
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 0
|
|
ENABLELIST_END
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gSyrAutoCorr_Reset
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_OR
|
|
_LD_OPERATOR : 2
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
gH_Blender_OPT_SyrBrixMeter
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gmPDS1000Error
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
gH_Blender_OPT_SyrBrixMeter
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_LD_CONTACT
|
|
gSyrupMFM_Fault
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 0
|
|
ENABLELIST_END
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gSyrAutoCorr_Wait
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 4
|
|
_LD_OR
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Request
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Latch
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Done
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Reset
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_LD_CONTACT
|
|
gSyrRunOut_Done
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 0
|
|
ENABLELIST_END
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gSyrAutoCorr_Latch
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Latch
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_FUNCTIONBLOCK
|
|
mAuxONS2
|
|
_BOX_EXPR : 1
|
|
_EMPTY
|
|
_EXPRESSION
|
|
_POSITIV
|
|
R_TRIG
|
|
_OUTPUTS : 0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 0
|
|
ENABLELIST_END
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
mLatchONS
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Latch
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Wait
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 0
|
|
ENABLELIST_END
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gSyrAutoCorr_Running
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_EMPTY
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 1
|
|
_ASSIGN
|
|
_FUNCTIONBLOCK
|
|
???
|
|
_BOX_EXPR : 0
|
|
_ENABLED
|
|
_EXPRESSION
|
|
_POSITIV
|
|
SyrBrix_Autocorrection.SyrupCorrPerc
|
|
_OUTPUTS : 0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
mDummy
|
|
ENABLELIST_END
|
|
_OUTPUTS : 0
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
gClock_2s
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_FUNCTIONBLOCK
|
|
mAuxONS1
|
|
_BOX_EXPR : 1
|
|
_EMPTY
|
|
_EXPRESSION
|
|
_POSITIV
|
|
R_TRIG
|
|
_OUTPUTS : 0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 0
|
|
ENABLELIST_END
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
m2sONS
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 5
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Qualifier
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gPV_SyrBrixOk
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gFirstProd_Done
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gBlenderEnToRamp
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
m2sONS
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 0
|
|
ENABLELIST_END
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
mProdSyrFactAcq
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_EMPTY
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 2
|
|
_ASSIGN
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_ENABLED
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
mProdSyrFact
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
EQ
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gProdRunSyrFact
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
EQ
|
|
_EXPRESSION
|
|
_POSITIV
|
|
OR
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
mZeroTest
|
|
_ASSIGN
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_ENABLED
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
mSyrMFMFact
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
EQ
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gProdRunSyrMFMFact
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
EQ
|
|
_EXPRESSION
|
|
_POSITIV
|
|
OR
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
mZeroTest1
|
|
ENABLELIST_END
|
|
_OUTPUTS : 0
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
This segment calculates the Syrup Factor during production, so when the Surup Run Out starts OR the Autocorrection
|
|
is activated, the actual syrup brix doesn't change and so also the actual ratio doesn't.
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 3
|
|
_LD_CONTACT
|
|
mZeroTest
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_LD_CONTACT
|
|
mProdSyrFactAcq
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gH_Blender_OPT_SyrBrixMeter
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 1
|
|
_ASSIGN
|
|
_OPERATOR
|
|
_BOX_EXPR : 3
|
|
_ENABLED
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gSyrAutoCorr_Latch
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gSyrRunOut_Latch
|
|
_EXPRESSION
|
|
_POSITIV
|
|
OR
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gActualRecipe_Syrup_Brix
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_OPERATOR
|
|
_BOX_EXPR : 3
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gMeterSyrBrix
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
EQ
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gMeterSyrBrix
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gActualRecipe_Syrup_Brix
|
|
_EXPRESSION
|
|
_POSITIV
|
|
SEL
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gActualRecipe_Syrup_Brix_Fact
|
|
_EXPRESSION
|
|
_POSITIV
|
|
MUL
|
|
_EXPRESSION
|
|
_POSITIV
|
|
DIV
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
mProdSyrFact
|
|
_EXPRESSION
|
|
_POSITIV
|
|
SEL
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
mProdSyrFact
|
|
ENABLELIST_END
|
|
_OUTPUTS : 0
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
This segment calculates the Syrup Factor during production, so when the Surup Run Out starts OR the Autocorrection
|
|
is activated, the actual syrup brix doesn't change and so also the actual ratio doesn't.
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
mZeroTest1
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_LD_CONTACT
|
|
mProdSyrFactAcq
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 1
|
|
_ASSIGN
|
|
_OPERATOR
|
|
_BOX_EXPR : 3
|
|
_ENABLED
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gSyrAutoCorr_Latch
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gSyrRunOut_Latch
|
|
_EXPRESSION
|
|
_POSITIV
|
|
OR
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gActualRecipe_Syrup_Brix
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_OPERATOR
|
|
_BOX_EXPR : 3
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gMFM_Syrup1Brix
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
EQ
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gMFM_Syrup1Brix
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gActualRecipe_Syrup_Brix
|
|
_EXPRESSION
|
|
_POSITIV
|
|
SEL
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gActualRecipe_Syrup_Brix_Fact
|
|
_EXPRESSION
|
|
_POSITIV
|
|
MUL
|
|
_EXPRESSION
|
|
_POSITIV
|
|
DIV
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
mSyrMFMFact
|
|
_EXPRESSION
|
|
_POSITIV
|
|
SEL
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
mSyrMFMFact
|
|
ENABLELIST_END
|
|
_OUTPUTS : 0
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_OR
|
|
_LD_OPERATOR : 3
|
|
_LD_CONTACT
|
|
mZeroTest
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gFirstProd_Latch
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gSyrBrixOutSpec_Fault
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 1
|
|
_ASSIGN
|
|
_OPERATOR
|
|
_BOX_EXPR : 1
|
|
_ENABLED
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
1
|
|
_EXPRESSION
|
|
_POSITIV
|
|
MOVE
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_OUTPUTS : 2
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gProdRunSyrFact
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
mProdSyrFact
|
|
ENABLELIST_END
|
|
_OUTPUTS : 0
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_OR
|
|
_LD_OPERATOR : 3
|
|
_LD_CONTACT
|
|
mZeroTest1
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gFirstProd_Latch
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gSyrBrixOutSpec_Fault
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 1
|
|
_ASSIGN
|
|
_OPERATOR
|
|
_BOX_EXPR : 1
|
|
_ENABLED
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
1
|
|
_EXPRESSION
|
|
_POSITIV
|
|
MOVE
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_OUTPUTS : 2
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gProdRunSyrMFMFact
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
mSyrMFMFact
|
|
ENABLELIST_END
|
|
_OUTPUTS : 0
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
mProdSyrFactAcq
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Latch
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 1
|
|
_ASSIGN
|
|
_FUNCTIONBLOCK
|
|
mSyrupFactFlt
|
|
_BOX_EXPR : 3
|
|
_ENABLED
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
mProdSyrFact
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
12
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
TRUE
|
|
_EXPRESSION
|
|
_POSITIV
|
|
LowPassFilter
|
|
_OUTPUTS : 0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gProdRunSyrFact
|
|
ENABLELIST_END
|
|
_OUTPUTS : 0
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
mProdSyrFactAcq
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Latch
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 1
|
|
_ASSIGN
|
|
_FUNCTIONBLOCK
|
|
mSyrupMFMFactFlt
|
|
_BOX_EXPR : 3
|
|
_ENABLED
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
mSyrMFMFact
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
12
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
TRUE
|
|
_EXPRESSION
|
|
_POSITIV
|
|
LowPassFilter
|
|
_OUTPUTS : 0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gProdRunSyrMFMFact
|
|
ENABLELIST_END
|
|
_OUTPUTS : 0
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
gAlwaysOff
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Request
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 2
|
|
_ASSIGN
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_ENABLED
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gProdRunSyrFact
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gH_A_Recipe_SyrupFactor
|
|
_EXPRESSION
|
|
_POSITIV
|
|
MUL
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_OUTPUTS : 2
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gH_A_Recipe_SyrupFactor
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gActualRecipe_Syrup_Brix_Fact
|
|
_ASSIGN
|
|
_OPERATOR
|
|
_BOX_EXPR : 1
|
|
_ENABLED
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
TRUE
|
|
_EXPRESSION
|
|
_POSITIV
|
|
MOVE
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gH_SyrFactUpdate
|
|
ENABLELIST_END
|
|
_OUTPUTS : 0
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Latch
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gBlenderBlending
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 1
|
|
_ASSIGN
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_ENABLED
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gR_Out_SYR_PID
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
95.0
|
|
_EXPRESSION
|
|
_POSITIV
|
|
GT
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gMinRatio
|
|
ENABLELIST_END
|
|
_OUTPUTS : 0
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Latch
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gBlenderBlending
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 1
|
|
_ASSIGN
|
|
_OPERATOR
|
|
_BOX_EXPR : 2
|
|
_ENABLED
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
gH_SyrupBrixCorrection
|
|
_OPERAND
|
|
_EXPRESSION
|
|
_POSITIV
|
|
52
|
|
_EXPRESSION
|
|
_POSITIV
|
|
GT
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gMaxSyrAutoCorrDone
|
|
ENABLELIST_END
|
|
_OUTPUTS : 0
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Latch
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 0
|
|
ENABLELIST_END
|
|
_OUTPUTS : 2
|
|
_OUTPUT
|
|
_NEGATIV
|
|
_SET
|
|
gMinRatio
|
|
_OUTPUT
|
|
_NEGATIV
|
|
_SET
|
|
gMaxSyrAutoCorrDone
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Latch
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 0
|
|
ENABLELIST_END
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gH_SyrBrixAutoRun
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
Message Syrup Autocorrection Running TO HMI
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Running
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 0
|
|
ENABLELIST_END
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gH_Status004
|
|
_NETWORK
|
|
|
|
_COMMENT
|
|
|
|
_END_COMMENT
|
|
_LD_ASSIGN
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_OR
|
|
_LD_OPERATOR : 2
|
|
_LD_AND
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
gSyrRunOut_Latch
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_OR
|
|
_LD_OPERATOR : 2
|
|
_LD_CONTACT
|
|
gMaxSyrAutoCorrDone
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gMinRatio
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_AND
|
|
_LD_OPERATOR : 3
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Request
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
mLatchONS
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_LD_CONTACT
|
|
gSyrRunOut_Latch
|
|
_EXPRESSION
|
|
_NEGATIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_LD_CONTACT
|
|
gSyrAutoCorr_Running
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
_EXPRESSION
|
|
_POSITIV
|
|
|
|
|
|
ENABLELIST : 0
|
|
ENABLELIST_END
|
|
_OUTPUTS : 1
|
|
_OUTPUT
|
|
_POSITIV
|
|
_NO_SET
|
|
gSyrAutoCorr_Done
|
|
|
|
END_PROGRAM
|
|
ACTION SyrupCorrPerc:
|
|
IF gSyrAutoCorr_Latch AND gActualRecipe_Syrup_Brix_Fact<>0 AND gActualRecipe_Syrup_Brix<>0 THEN
|
|
gH_SyrupBrixCorrection := 100.0 - (gActualSyrupBrix / (gActualRecipe_Syrup_Brix * gActualRecipe_Syrup_Brix_Fact) * 100.0) ;
|
|
ELSE
|
|
gH_SyrupBrixCorrection := 0.0 ;
|
|
END_IF
|
|
|
|
END_ACTION
|
|
|