(* @PATH := '\/TASK2_ControlMain\/Blender_Procedure' *) (* @SYMFILEFLAGS := '59392' *) PROGRAM ProdTank_Drain VAR mProdTankDrainTP : TP ; mProdTankDrainTP0 : TP ; mProdTankDrainTP1 : TP ; mAuxONS : R_TRIG ; mAux1ONS : R_TRIG ; mStepNum : INT ; mProdTankMove : _StepMove ; mAuxStep : INT ; mTimer : TIME ; mStepTimer : TIME ; mProdTankMinLevel : BOOL ; mProcSelected : BOOL ; mFlipFlop : BOOL; mFlipFlopTON : TP; mFlipFlopTOF : TP; mDummy : BOOL ; END_VAR VAR_OUTPUT EN_Out : BOOL ; END_VAR (* @END_DECLARATION := '0' *) _LD_BODY _NETWORKS : 11 _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _LD_OR _LD_OPERATOR : 2 _LD_AND _LD_OPERATOR : 5 _LD_CONTACT gH_SystemRunOutEnabled _EXPRESSION _NEGATIV _LD_CONTACT gBlenderProdMode _EXPRESSION _POSITIV _LD_CONTACT gBlenderRun_Running _EXPRESSION _NEGATIV _LD_CONTACT gProdTankRunOut_Latch _EXPRESSION _NEGATIV _LD_CONTACT gBlenderSuppliesOk _EXPRESSION _POSITIV _EXPRESSION _POSITIV _LD_CONTACT gFastChangeOverActivated _EXPRESSION _POSITIV _EXPRESSION _POSITIV _EXPRESSION _POSITIV ENABLELIST : 0 ENABLELIST_END _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET gProdTankDrain_Qualifier _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _LD_AND _LD_OPERATOR : 2 _LD_OR _LD_OPERATOR : 4 _LD_AND _LD_OPERATOR : 5 _LD_CONTACT gFastChangeOverActivated _EXPRESSION _NEGATIV _LD_CONTACT gH_CMD_ProdTankDrainReq _EXPRESSION _POSITIV _LD_CONTACT gProdTankDrain_Done _EXPRESSION _POSITIV _FUNCTIONBLOCK mProdTankDrainTP0 _BOX_EXPR : 2 _EMPTY _OPERAND _EXPRESSION _POSITIV t#1s _EXPRESSION _POSITIV TP _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET _EMPTY _LD_CONTACT gProdTankDrain_Latch _EXPRESSION _NEGATIV _EXPRESSION _POSITIV _LD_AND _LD_OPERATOR : 4 _LD_CONTACT gFastChangeOverActivated _EXPRESSION _NEGATIV _LD_CONTACT gH_CMD_ProdTankDrainReq _EXPRESSION _POSITIV _LD_CONTACT gProdTankDrain_Done _EXPRESSION _NEGATIV _FUNCTIONBLOCK mAuxONS _BOX_EXPR : 1 _EMPTY _EXPRESSION _POSITIV R_TRIG _OUTPUTS : 0 _EXPRESSION _POSITIV _LD_AND _LD_OPERATOR : 4 _LD_CONTACT gFastChangeOverActivated _EXPRESSION _NEGATIV _LD_CONTACT gBlenderRinse_Latch _EXPRESSION _POSITIV _LD_OR _LD_OPERATOR : 2 _LD_CONTACT gFillerRinse_CompletedLatch _EXPRESSION _POSITIV _LD_CONTACT gIn_Flr_FastRinseCompleted _EXPRESSION _POSITIV _EXPRESSION _POSITIV _FUNCTIONBLOCK mProdTankDrainTP1 _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 : 5 _LD_CONTACT gFastChangeOverActivated _EXPRESSION _POSITIV _LD_CONTACT gBlenderAlarm _EXPRESSION _NEGATIV _LD_CONTACT gFastRinse_Done _EXPRESSION _POSITIV _FUNCTIONBLOCK mProdTankDrainTP _BOX_EXPR : 2 _EMPTY _OPERAND _EXPRESSION _POSITIV t#1s _EXPRESSION _POSITIV TP _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET _EMPTY _LD_CONTACT gProdTankDrain_Done _EXPRESSION _NEGATIV _EXPRESSION _POSITIV _EXPRESSION _POSITIV _LD_CONTACT gProdTankDrain_Qualifier _EXPRESSION _POSITIV _EXPRESSION _POSITIV _EXPRESSION _POSITIV ENABLELIST : 0 ENABLELIST_END _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET gProdTankDrain_Request _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _LD_OR _LD_OPERATOR : 4 _LD_AND _LD_OPERATOR : 3 _LD_OR _LD_OPERATOR : 2 _LD_AND _LD_OPERATOR : 2 _LD_CONTACT gFastChangeOverActivated _EXPRESSION _NEGATIV _LD_OR _LD_OPERATOR : 2 _LD_CONTACT gProdTankDrain_Request _EXPRESSION _POSITIV _LD_CONTACT gBlenderRinse_Done _EXPRESSION _POSITIV _EXPRESSION _POSITIV _EXPRESSION _POSITIV _LD_AND _LD_OPERATOR : 2 _LD_CONTACT gFastChangeOverActivated _EXPRESSION _POSITIV _LD_CONTACT gFastRinse_Done _EXPRESSION _POSITIV _EXPRESSION _POSITIV _EXPRESSION _POSITIV _FUNCTIONBLOCK mAux1ONS _BOX_EXPR : 1 _EMPTY _EXPRESSION _POSITIV R_TRIG _OUTPUTS : 0 _LD_OR _LD_OPERATOR : 2 _LD_CONTACT gProdTankDrain_Latch _EXPRESSION _POSITIV _LD_CONTACT gProdTankDrain_Done _EXPRESSION _POSITIV _EXPRESSION _POSITIV _EXPRESSION _POSITIV _LD_AND _LD_OPERATOR : 2 _LD_CONTACT gFastChangeOverActivated _EXPRESSION _NEGATIV _LD_CONTACT gProdTankDrain_Qualifier _EXPRESSION _NEGATIV _EXPRESSION _POSITIV _LD_AND _LD_OPERATOR : 2 _LD_CONTACT gProdTankDrain_Latch _EXPRESSION _POSITIV _LD_CONTACT gEmergencyPressed _EXPRESSION _POSITIV _EXPRESSION _POSITIV _LD_AND _LD_OPERATOR : 2 _LD_CONTACT gH_Blender_OPT_FastChangeOverEnabled _EXPRESSION _POSITIV _LD_OR _LD_OPERATOR : 3 _LD_CONTACT gSystemRunOut_Reset _EXPRESSION _POSITIV _LD_CONTACT gSystemRunOutInit _EXPRESSION _POSITIV _LD_CONTACT gSystemRunOut_Done _EXPRESSION _POSITIV _EXPRESSION _POSITIV _EXPRESSION _POSITIV _EXPRESSION _POSITIV _EXPRESSION _POSITIV ENABLELIST : 0 ENABLELIST_END _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET gProdTankDrain_Reset _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _LD_CONTACT gProdTankDrain_Reset _EXPRESSION _POSITIV _EXPRESSION _POSITIV ENABLELIST : 1 _ASSIGN _FUNCTIONBLOCK ??? _BOX_EXPR : 0 _ENABLED _EXPRESSION _POSITIV ProdTank_Drain._ProdTankDrainReset _OUTPUTS : 0 _EXPRESSION _POSITIV _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET mDummy ENABLELIST_END _OUTPUTS : 0 _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _LD_CONTACT gTankPress_OkToBlend _EXPRESSION _NEGATIV _EXPRESSION _POSITIV ENABLELIST : 0 ENABLELIST_END _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET gProdTankDrain_Wait _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _EMPTY _EXPRESSION _POSITIV ENABLELIST : 1 _ASSIGN _OPERATOR _BOX_EXPR : 2 _ENABLED _OPERATOR _BOX_EXPR : 2 _OPERATOR _BOX_EXPR : 2 _OPERAND _EXPRESSION _POSITIV gH_FastChangeSequenceNum _OPERAND _EXPRESSION _POSITIV 10 _EXPRESSION _POSITIV EQ _OPERATOR _BOX_EXPR : 2 _OPERAND _EXPRESSION _POSITIV gH_FastChangeSequenceNum _OPERAND _EXPRESSION _POSITIV 11 _EXPRESSION _POSITIV EQ _EXPRESSION _POSITIV OR _OPERAND _EXPRESSION _POSITIV gProdTankDrain_Latch _EXPRESSION _POSITIV AND _EXPRESSION _POSITIV _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET mProcSelected ENABLELIST_END _OUTPUTS : 0 _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _EMPTY _EXPRESSION _POSITIV ENABLELIST : 2 _ASSIGN _OPERATOR _BOX_EXPR : 3 _ENABLED _OPERAND _EXPRESSION _POSITIV mProcSelected _OPERAND _EXPRESSION _POSITIV gH_FastChangeProcValue _OPERATOR _BOX_EXPR : 2 _OPERATOR _BOX_EXPR : 1 _OPERATOR _BOX_EXPR : 2 _OPERAND _EXPRESSION _POSITIV gProdTankDrainStep1Time _OPERAND _EXPRESSION _POSITIV mTimer _EXPRESSION _POSITIV SUB _EXPRESSION _POSITIV TIME_TO_REAL _OPERAND _EXPRESSION _POSITIV 1000 _EXPRESSION _POSITIV DIV _EXPRESSION _POSITIV SEL _EXPRESSION _POSITIV _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET gH_FastChangeProcValue _ASSIGN _OPERATOR _BOX_EXPR : 3 _ENABLED _OPERAND _EXPRESSION _POSITIV mProcSelected _OPERAND _EXPRESSION _POSITIV gH_FastChangeWait1 _OPERAND _EXPRESSION _NEGATIV gIn_ProdTankNotEmpty _EXPRESSION _POSITIV SEL _EXPRESSION _POSITIV _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET gH_FastChangeWait1 ENABLELIST_END _OUTPUTS : 0 _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _LD_AND _LD_OPERATOR : 3 _LD_OR _LD_OPERATOR : 2 _LD_CONTACT gProdTankDrain_Request _EXPRESSION _POSITIV _LD_CONTACT gProdTankDrain_Latch _EXPRESSION _POSITIV _EXPRESSION _POSITIV _LD_CONTACT gProdTankDrain_Reset _EXPRESSION _NEGATIV _LD_CONTACT gProdTankDrain_Done _EXPRESSION _NEGATIV _EXPRESSION _POSITIV _EXPRESSION _POSITIV ENABLELIST : 1 _ASSIGN _OPERATOR _BOX_EXPR : 1 _ENABLED _OPERAND _EXPRESSION _POSITIV 10 _EXPRESSION _POSITIV MOVE _EXPRESSION _POSITIV _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET gH_BlenderStateNum ENABLELIST_END _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET gProdTankDrain_Latch _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _LD_AND _LD_OPERATOR : 2 _LD_CONTACT gProdTankDrain_Latch _EXPRESSION _POSITIV _LD_CONTACT gProdTankDrain_Wait _EXPRESSION _NEGATIV _EXPRESSION _POSITIV _EXPRESSION _POSITIV ENABLELIST : 0 ENABLELIST_END _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET gProdTankDrain_Running _NETWORK _COMMENT TO HMI Product Tank Drain Running _END_COMMENT _LD_ASSIGN _LD_CONTACT gProdTankDrain_Latch _EXPRESSION _POSITIV _EXPRESSION _POSITIV ENABLELIST : 0 ENABLELIST_END _OUTPUTS : 2 _OUTPUT _POSITIV _NO_SET gH_Status025 _OUTPUT _POSITIV _NO_SET gH_PrdTankDrainRun _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _LD_CONTACT gProdTankDrain_Running _EXPRESSION _POSITIV _EXPRESSION _POSITIV ENABLELIST : 1 _ASSIGN _FUNCTIONBLOCK ??? _BOX_EXPR : 0 _ENABLED _EXPRESSION _POSITIV ProdTank_Drain._ProdTankDrainSequencer _OUTPUTS : 0 _EXPRESSION _POSITIV _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET mDummy ENABLELIST_END _OUTPUTS : 0 END_PROGRAM ACTION _ProdTankDrainReset: _LD_BODY _NETWORKS : 1 _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 : 2 _OUTPUT _POSITIV _NO_SET mAuxStep _OUTPUT _POSITIV _NO_SET mStepNum ENABLELIST_END _OUTPUTS : 1 _OUTPUT _NEGATIV _SET gProdTankDrain_Done END_ACTION ACTION _ProdTankDrainSequencer: CASE mStepNum OF 0: ProdTankDrain_Step_0 ; 1: ProdTankDrain_Step_1 ; 2: ProdTankDrain_Step_2 ; ELSE ; END_CASE END_ACTION ACTION ProdTankDrain_Step_0: _LD_BODY _NETWORKS : 5 _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _EMPTY _EXPRESSION _POSITIV ENABLELIST : 0 ENABLELIST_END _OUTPUTS : 1 _OUTPUT _POSITIV _SET gSP_EV45 _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _EMPTY _EXPRESSION _POSITIV ENABLELIST : 0 ENABLELIST_END _OUTPUTS : 1 _OUTPUT _POSITIV _SET gSP_EV15 _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _LD_AND _LD_OPERATOR : 2 _LD_CONTACT gFastChangeOverActivated _EXPRESSION _NEGATIV _LD_CONTACT gH_Blender_OPT_BlendFillSystem _EXPRESSION _NEGATIV _EXPRESSION _POSITIV _EXPRESSION _POSITIV ENABLELIST : 0 ENABLELIST_END _OUTPUTS : 2 _OUTPUT _POSITIV _SET gSP_EV62 _OUTPUT _POSITIV _SET gSP_EV69 _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _EMPTY _EXPRESSION _POSITIV ENABLELIST : 1 _ASSIGN _OPERATOR _BOX_EXPR : 2 _ENABLED _OPERATOR _BOX_EXPR : 2 _OPERATOR _BOX_EXPR : 2 _OPERAND _EXPRESSION _POSITIV gProductTankLevel _OPERAND _EXPRESSION _POSITIV 2 _EXPRESSION _POSITIV LT _OPERAND _EXPRESSION _NEGATIV gIn_ProdTankNotEmpty _EXPRESSION _POSITIV AND _OPERAND _EXPRESSION _POSITIV FALSE _EXPRESSION _POSITIV OR _EXPRESSION _POSITIV _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET mProdTankMinLevel ENABLELIST_END _OUTPUTS : 0 _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _EMPTY _EXPRESSION _POSITIV ENABLELIST : 1 _ASSIGN _FUNCTIONBLOCK mProdTankMove _BOX_EXPR : 6 _ENABLED _OPERAND _EXPRESSION _POSITIV mStepNum _OPERAND _EXPRESSION _POSITIV 1 _OPERATOR _BOX_EXPR : 3 _OPERAND _EXPRESSION _POSITIV gH_Blender_OPT_FastChangeOverEnabled _OPERAND _EXPRESSION _POSITIV t#25s _OPERAND _EXPRESSION _POSITIV gProdTankDrainStep0Time _EXPRESSION _POSITIV SEL _OPERAND _EXPRESSION _POSITIV mProdTankMinLevel _OPERAND _EXPRESSION _POSITIV TRUE _OPERAND _EXPRESSION _POSITIV gProdTankDrain_Wait _EXPRESSION _POSITIV _StepMove _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET mTimer _EXPRESSION _POSITIV _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET mStepNum ENABLELIST_END _OUTPUTS : 0 END_ACTION ACTION ProdTankDrain_Step_1: _LD_BODY _NETWORKS : 5 _NETWORK _COMMENT mFlipFlop is OFF FOR 8sec ON FOR 2sec _END_COMMENT _LD_ASSIGN _LD_OR _LD_OPERATOR : 2 _LD_AND _LD_OPERATOR : 2 _LD_CONTACT gClock_20s _EXPRESSION _POSITIV _FUNCTIONBLOCK mFlipFlopTOF _BOX_EXPR : 2 _EMPTY _OPERAND _EXPRESSION _POSITIV t#6s _EXPRESSION _POSITIV Tp _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET _EMPTY _EXPRESSION _POSITIV _LD_AND _LD_OPERATOR : 2 _LD_CONTACT gClock_20s _EXPRESSION _NEGATIV _FUNCTIONBLOCK mFlipFlopTON _BOX_EXPR : 2 _EMPTY _OPERAND _EXPRESSION _POSITIV t#6s _EXPRESSION _POSITIV Tp _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET _EMPTY _EXPRESSION _POSITIV _EXPRESSION _POSITIV _EXPRESSION _POSITIV ENABLELIST : 0 ENABLELIST_END _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET mFlipFlop _NETWORK _COMMENT EV45 e EV69 is Open FOR 7sec Closed FOR 3sec _END_COMMENT _LD_ASSIGN _LD_CONTACT mFlipFlop _EXPRESSION _NEGATIV _EXPRESSION _POSITIV ENABLELIST : 0 ENABLELIST_END _OUTPUTS : 1 _OUTPUT _POSITIV _SET gSP_EV45 _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _LD_AND _LD_OPERATOR : 2 _LD_CONTACT mFlipFlop _EXPRESSION _POSITIV _LD_OR _LD_OPERATOR : 2 _LD_CONTACT gH_Blender_OPT_BlendFillSystem _EXPRESSION _POSITIV _LD_CONTACT gFastChangeOverActivated _EXPRESSION _POSITIV _EXPRESSION _POSITIV _EXPRESSION _POSITIV _EXPRESSION _POSITIV ENABLELIST : 0 ENABLELIST_END _OUTPUTS : 1 _OUTPUT _POSITIV _SET gSP_EV15 _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _LD_AND _LD_OPERATOR : 3 _LD_CONTACT mFlipFlop _EXPRESSION _NEGATIV _LD_CONTACT gFastChangeOverActivated _EXPRESSION _NEGATIV _LD_CONTACT gH_Blender_OPT_BlendFillSystem _EXPRESSION _NEGATIV _EXPRESSION _POSITIV _EXPRESSION _POSITIV ENABLELIST : 0 ENABLELIST_END _OUTPUTS : 2 _OUTPUT _POSITIV _SET gSP_EV62 _OUTPUT _POSITIV _SET gSP_EV69 _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _EMPTY _EXPRESSION _POSITIV ENABLELIST : 1 _ASSIGN _FUNCTIONBLOCK mProdTankMove _BOX_EXPR : 6 _ENABLED _OPERAND _EXPRESSION _POSITIV mStepNum _OPERAND _EXPRESSION _POSITIV 2 _OPERAND _EXPRESSION _POSITIV gProdTankDrainStep1Time _OPERAND _EXPRESSION _POSITIV TRUE _OPERAND _EXPRESSION _POSITIV TRUE _OPERAND _EXPRESSION _POSITIV gProdTankDrain_Wait _EXPRESSION _POSITIV _StepMove _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET mTimer _EXPRESSION _POSITIV _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET mStepNum ENABLELIST_END _OUTPUTS : 0 END_ACTION ACTION ProdTankDrain_Step_2: _LD_BODY _NETWORKS : 1 _NETWORK _COMMENT _END_COMMENT _LD_ASSIGN _EMPTY _EXPRESSION _POSITIV ENABLELIST : 0 ENABLELIST_END _OUTPUTS : 1 _OUTPUT _POSITIV _NO_SET gProdTankDrain_Done END_ACTION