ParamManagerScripts/backend/script_groups/TwinCat/.example/DENSIMETER_CALIBRATION.EXP

1240 lines
12 KiB
Plaintext

(* @PATH := '\/TASK2_ControlMain\/Blender_Procedure' *)
(* @SYMFILEFLAGS := '59392' *)
PROGRAM Densimeter_Calibration
VAR
mDensONS : R_TRIG ;
mSyrupStarted : BOOL ;
mStepNum : INT ;
mTimeStep : INT ;
mDensStepMove : _StepMove ;
mAuxStep : INT ;
mSyrupGainOk : BOOL ;
mCommandExecuted : BOOL ;
mSyrGain : REAL ;
mSyrBx : REAL ;
mCalDlyOff : TOF ;
mSyrGainFlt : LowPassFilter ;
mSyrGainFltd : REAL ;
mDummy : BOOL ;
END_VAR
VAR_OUTPUT
EN_Out : BOOL ;
END_VAR
(* @END_DECLARATION := '0' *)
_LD_BODY
_NETWORKS : 16
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_AND
_LD_OPERATOR : 9
_LD_CONTACT
gAlwaysOff
_EXPRESSION
_POSITIV
_LD_CONTACT
gBlenderProdMode
_EXPRESSION
_POSITIV
_LD_CONTACT
gSugarBeverage
_EXPRESSION
_POSITIV
_LD_CONTACT
gSyrLineMFMPrep_Done
_EXPRESSION
_POSITIV
_LD_CONTACT
gFirstProd_Done
_EXPRESSION
_POSITIV
_LD_CONTACT
gBlenderSuppliesOk
_EXPRESSION
_POSITIV
_LD_CONTACT
mSyrupStarted
_EXPRESSION
_POSITIV
_LD_CONTACT
gBlenderRun_Latch
_EXPRESSION
_NEGATIV
_LD_CONTACT
gSyrRunOut_Done
_EXPRESSION
_NEGATIV
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gDensimeterCal_Qualifier
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_OR
_LD_OPERATOR : 2
_LD_CONTACT
gBlenderCIPMode
_EXPRESSION
_POSITIV
_LD_AND
_LD_OPERATOR : 2
_LD_CONTACT
gDensimeterCal_Latch
_EXPRESSION
_POSITIV
_LD_CONTACT
gEmergencyPressed
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gDensimeterCal_Reset
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_OR
_LD_OPERATOR : 2
_LD_CONTACT
gDensimeterCal_Reset
_EXPRESSION
_POSITIV
_LD_CONTACT
gDensimeterCal_Request
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_FUNCTIONBLOCK
???
_BOX_EXPR : 0
_ENABLED
_EXPRESSION
_POSITIV
Densimeter_Calibration._DensimeterCal_Reset
_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 : 3
_LD_CONTACT
gH_CMD_SyrDensimeterCal
_EXPRESSION
_POSITIV
_FUNCTIONBLOCK
mDensONS
_BOX_EXPR : 1
_EMPTY
_EXPRESSION
_POSITIV
R_TRIG
_OUTPUTS : 0
_LD_CONTACT
gDensimeterCal_Qualifier
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gDensimeterCal_Request
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_CONTACT
gAlwaysOff
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gDensimeterCal_Wait
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_AND
_LD_OPERATOR : 3
_LD_OR
_LD_OPERATOR : 2
_LD_CONTACT
gDensimeterCal_Request
_EXPRESSION
_POSITIV
_LD_CONTACT
gDensimeterCal_Latch
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
_LD_CONTACT
gDensimeterCal_Reset
_EXPRESSION
_NEGATIV
_LD_CONTACT
gDensimeterCal_Done
_EXPRESSION
_NEGATIV
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gDensimeterCal_Latch
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_CONTACT
gDensimeterCal_Done
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 2
_OUTPUT
_NEGATIV
_SET
gDensimeterCal_Done
_OUTPUT
_NEGATIV
_SET
gmPDS1000SetCommand
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_AND
_LD_OPERATOR : 2
_LD_CONTACT
gDensimeterCal_Latch
_EXPRESSION
_POSITIV
_FUNCTIONBLOCK
mCalDlyOff
_BOX_EXPR : 2
_EMPTY
_OPERAND
_EXPRESSION
_POSITIV
t#6s
_EXPRESSION
_POSITIV
TOF
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
_EMPTY
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gDisableAlarmDuringCalibration
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_CONTACT
gDensimeterCal_Latch
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_FUNCTIONBLOCK
???
_BOX_EXPR : 0
_ENABLED
_EXPRESSION
_POSITIV
Densimeter_Calibration._DensimeterCal_Sequencer
_OUTPUTS : 0
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mDummy
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_CONTACT
gDensimeterCal_Latch
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gH_SyrDensimeterCalRun
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_AND
_LD_OPERATOR : 2
_LD_CONTACT
gDensimeterCal_Latch
_EXPRESSION
_POSITIV
_LD_CONTACT
gDensimeterCal_Wait
_EXPRESSION
_NEGATIV
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gDensimeterCal_Running
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_OPERATOR
_BOX_EXPR : 1
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
'GAIN-BRIX'
_EXPRESSION
_POSITIV
MOVE
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gmPDS1000Command
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
gActualRecipe_Syrup_Brix
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 2
_ASSIGN
_OPERATOR
_BOX_EXPR : 3
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
gDensimeterCal_Latch
_OPERAND
_EXPRESSION
_POSITIV
gActualRecipe_Syrup_Brix
_OPERAND
_EXPRESSION
_POSITIV
gmPDS1000SyrBrix
_EXPRESSION
_POSITIV
SEL
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mSyrBx
_ASSIGN
_OPERATOR
_BOX_EXPR : 3
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
0.5
_OPERAND
_EXPRESSION
_POSITIV
mSyrBx
_OPERAND
_EXPRESSION
_POSITIV
100
_EXPRESSION
_POSITIV
LIMIT
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mSyrBx
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_AND
_LD_OPERATOR : 2
_LD_CONTACT
gSyrLineMFMPrep_Done
_EXPRESSION
_POSITIV
_LD_CONTACT
gSugarBeverage
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 3
_ASSIGN
_OPERATOR
_BOX_EXPR : 2
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
gActualRecipe_Syrup_Brix
_OPERAND
_EXPRESSION
_POSITIV
mSyrBx
_EXPRESSION
_POSITIV
DIV
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mSyrGain
_ASSIGN
_FUNCTIONBLOCK
mSyrGainFlt
_BOX_EXPR : 3
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
mSyrGain
_OPERAND
_EXPRESSION
_POSITIV
30
_OPERAND
_EXPRESSION
_POSITIV
gDensimeterCal_Latch
_EXPRESSION
_POSITIV
LowPassFilter
_OUTPUTS : 0
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mSyrGainFltd
_ASSIGN
_OPERATOR
_BOX_EXPR : 1
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
mSyrGainFltd
_EXPRESSION
_POSITIV
MOVE
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gmPDS1000CommandVal
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_OPERATOR
_BOX_EXPR : 2
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
gH_SyrupTotalizerLt
_OPERATOR
_BOX_EXPR : 2
_OPERAND
_EXPRESSION
_POSITIV
gH_ProcessSetup_SyrupRunOutLiters
_OPERAND
_EXPRESSION
_POSITIV
1.8
_EXPRESSION
_POSITIV
MUL
_EXPRESSION
_POSITIV
GT
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mSyrupStarted
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_CONTACT
gDensimeterCal_Qualifier
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gH_SyrDensimeterCalShow
END_PROGRAM
ACTION _DensimeterCal_Reset:
_LD_BODY
_NETWORKS : 3
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_OPERATOR
_BOX_EXPR : 1
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
0
_EXPRESSION
_POSITIV
MOVE
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mStepNum
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_OPERATOR
_BOX_EXPR : 1
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
0
_EXPRESSION
_POSITIV
MOVE
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mTimeStep
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_NEGATIV
_SET
gDensimeterCal_Done
END_ACTION
ACTION _DensimeterCal_Sequencer:
CASE mStepNum OF
0: DensCal_Step_0 ;
1: DensCal_Step_1 ;
2: DensCal_Step_2 ;
3: DensCal_Step_3 ;
4: DensCal_Step_4 ;
5: DensCal_Step_5 ;
6: ;
7: ;
8: ;
ELSE
;
END_CASE
END_ACTION
ACTION DensCal_Step_0:
_LD_BODY
_NETWORKS : 2
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 2
_OUTPUT
_POSITIV
_SET
gSp_SyrRoomPump
_OUTPUT
_POSITIV
_SET
gSp_EV03
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_OPERATOR
_BOX_EXPR : 3
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
gSyrupTankMinLvlAux
_OPERAND
_EXPRESSION
_POSITIV
mStepNum
_OPERAND
_EXPRESSION
_POSITIV
1
_EXPRESSION
_POSITIV
SEL
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mStepNum
ENABLELIST_END
_OUTPUTS : 0
END_ACTION
ACTION DensCal_Step_1:
_LD_BODY
_NETWORKS : 1
_NETWORK
_COMMENT
Step 1: Ceck IF Syrup Tank minimum level
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_FUNCTIONBLOCK
mDensStepMove
_BOX_EXPR : 6
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
mStepNum
_OPERAND
_EXPRESSION
_POSITIV
2
_OPERAND
_EXPRESSION
_POSITIV
t#6s
_OPERAND
_EXPRESSION
_POSITIV
gSyrupTankMinLvlAux
_OPERAND
_EXPRESSION
_POSITIV
TRUE
_OPERAND
_EXPRESSION
_POSITIV
gDensimeterCal_Wait
_EXPRESSION
_POSITIV
_StepMove
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
_EMPTY
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mStepNum
ENABLELIST_END
_OUTPUTS : 0
END_ACTION
ACTION DensCal_Step_2:
_LD_BODY
_NETWORKS : 2
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 2
_OUTPUT
_POSITIV
_SET
gSp_P2
_OUTPUT
_POSITIV
_SET
gSp_EV24
_NETWORK
_COMMENT
Step 2: Syrup Recirculation
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_FUNCTIONBLOCK
mDensStepMove
_BOX_EXPR : 6
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
mStepNum
_OPERAND
_EXPRESSION
_POSITIV
3
_OPERAND
_EXPRESSION
_POSITIV
t#30s
_OPERAND
_EXPRESSION
_POSITIV
gSyrupTankMinLvlAux
_OPERAND
_EXPRESSION
_POSITIV
TRUE
_OPERAND
_EXPRESSION
_POSITIV
gDensimeterCal_Wait
_EXPRESSION
_POSITIV
_StepMove
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
_EMPTY
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mStepNum
ENABLELIST_END
_OUTPUTS : 0
END_ACTION
ACTION DensCal_Step_3:
_LD_BODY
_NETWORKS : 3
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_OPERATOR
_BOX_EXPR : 1
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
gH_mPDS1000_SyrupFactor
_EXPRESSION
_POSITIV
MOVE
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gmPDS1000CommandVal
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gmPDS1000SetCommand
_NETWORK
_COMMENT
Step 3: Send Command GAIN_BRIX TO Densimeter
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_FUNCTIONBLOCK
mDensStepMove
_BOX_EXPR : 6
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
mStepNum
_OPERAND
_EXPRESSION
_POSITIV
4
_OPERAND
_EXPRESSION
_POSITIV
t#0s
_OPERAND
_EXPRESSION
_POSITIV
TRUE
_OPERAND
_EXPRESSION
_POSITIV
TRUE
_OPERAND
_EXPRESSION
_POSITIV
gDensimeterCal_Wait
_EXPRESSION
_POSITIV
_StepMove
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
_EMPTY
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mStepNum
ENABLELIST_END
_OUTPUTS : 0
END_ACTION
ACTION DensCal_Step_4:
_LD_BODY
_NETWORKS : 2
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_OPERATOR
_BOX_EXPR : 2
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
gmPDS1000String
_OPERAND
_EXPRESSION
_POSITIV
'Locked'
_EXPRESSION
_POSITIV
EQ
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mCommandExecuted
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
Step 3: Wait Response From Densimeter
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_FUNCTIONBLOCK
mDensStepMove
_BOX_EXPR : 6
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
mStepNum
_OPERAND
_EXPRESSION
_POSITIV
5
_OPERAND
_EXPRESSION
_POSITIV
t#10s
_OPERAND
_EXPRESSION
_POSITIV
TRUE
_OPERAND
_EXPRESSION
_POSITIV
TRUE
_OPERAND
_EXPRESSION
_POSITIV
gDensimeterCal_Wait
_EXPRESSION
_POSITIV
_StepMove
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
_EMPTY
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mStepNum
ENABLELIST_END
_OUTPUTS : 0
END_ACTION
ACTION DensCal_Step_5:
_LD_BODY
_NETWORKS : 1
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gDensimeterCal_Done
END_ACTION