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

973 lines
10 KiB
Plaintext

(* @PATH := '\/TASK2_ControlMain\/Blender_Logic' *)
(* @SYMFILEFLAGS := '59392' *)
PROGRAM mPDS2000_Control
VAR
mFreezeMeterTmr : TOF ;
mTmrReset : TP ;
mTmrFault : TOF ;
mReset : BOOL ;
mMeterSel : BOOL ;
mCountError : INT ;
m_mPDS2000_RecipeTmr : TP ;
mPDS2000_Block : ADSREAD ;
mPDS2000_Busy : BOOL ;
mPDS2000_Read : BOOL ;
mPDS2000_Error : BOOL ;
mPDS2000_ErrorCode : UDINT ;
mDummy : BOOL ;
mTmrComErr :TON;
END_VAR
VAR_OUTPUT
EN_Out : BOOL ;
END_VAR
(* @END_DECLARATION := '0' *)
_LD_BODY
_NETWORKS : 7
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_AND
_LD_OPERATOR : 2
_LD_OR
_LD_OPERATOR : 2
_LD_CONTACT
gSystem_Task_Info[3].active
_EXPRESSION
_NEGATIV
_LD_AND
_LD_OPERATOR : 2
_LD_CONTACT
mReset
_EXPRESSION
_NEGATIV
_LD_CONTACT
gmPDS2000Error
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
_FUNCTIONBLOCK
mTmrReset
_BOX_EXPR : 2
_EMPTY
_OPERAND
_EXPRESSION
_POSITIV
t#2s
_EXPRESSION
_POSITIV
TP
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
_EMPTY
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mReset
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_OPERATOR
_BOX_EXPR : 2
_ENABLED
_OPERATOR
_BOX_EXPR : 2
_OPERAND
_EXPRESSION
_POSITIV
gH_Blender_OPT_MeterType
_OPERAND
_EXPRESSION
_POSITIV
2
_EXPRESSION
_POSITIV
EQ
_OPERAND
_EXPRESSION
_POSITIV
gH_Blender_OPT_BrixMeter
_EXPRESSION
_POSITIV
AND
_EXPRESSION
_POSITIV
_OUTPUTS : 2
_OUTPUT
_POSITIV
_NO_SET
gmPDS2000Enabled
_OUTPUT
_POSITIV
_NO_SET
mMeterSel
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_CONTACT
mMeterSel
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 2
_ASSIGN
_FUNCTIONBLOCK
???
_BOX_EXPR : 0
_ENABLED
_EXPRESSION
_POSITIV
mPDS2000_Control.Read_mPDS2000
_OUTPUTS : 0
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mDummy
_ASSIGN
_FUNCTIONBLOCK
???
_BOX_EXPR : 0
_ENABLED
_EXPRESSION
_POSITIV
mPDS2000_Control.Write_mPDS2000
_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 : 7
_LD_CONTACT
gBlenderCIPMode
_EXPRESSION
_NEGATIV
_LD_CONTACT
gBlendRecircActive
_EXPRESSION
_NEGATIV
_LD_CONTACT
gFirstProd_Running
_EXPRESSION
_NEGATIV
_LD_CONTACT
gBlenderRinseMode
_EXPRESSION
_NEGATIV
_LD_OR
_LD_OPERATOR : 2
_LD_CONTACT
gFlowToFiller
_EXPRESSION
_NEGATIV
_LD_CONTACT
gBlenderStartPumpsONS
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
_LD_CONTACT
mMeterSel
_EXPRESSION
_POSITIV
_FUNCTIONBLOCK
mFreezeMeterTmr
_BOX_EXPR : 2
_EMPTY
_OPERAND
_EXPRESSION
_POSITIV
t#30s
_EXPRESSION
_POSITIV
TOF
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
_EMPTY
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_SET
gFreezeProductMeter
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_AND
_LD_OPERATOR : 4
_LD_CONTACT
mMeterSel
_EXPRESSION
_POSITIV
_LD_CONTACT
gFreezeProductMeter
_EXPRESSION
_NEGATIV
_LD_CONTACT
gH_ProductMeter_Fault
_EXPRESSION
_NEGATIV
_LD_OR
_LD_OPERATOR : 2
_LD_CONTACT
gmPDS2000ComActive
_EXPRESSION
_POSITIV
_LD_CONTACT
gmPDS2000ReceiveOnly
_EXPRESSION
_NEGATIV
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_SET
gH_ProductMeter_Run
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_AND
_LD_OPERATOR : 3
_LD_CONTACT
mMeterSel
_EXPRESSION
_POSITIV
_LD_CONTACT
gmPDS2000Error
_EXPRESSION
_NEGATIV
_LD_OR
_LD_OPERATOR : 2
_LD_CONTACT
gmPDS2000ComActive
_EXPRESSION
_POSITIV
_LD_CONTACT
gmPDS2000ReceiveOnly
_EXPRESSION
_NEGATIV
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_SET
gProductMeterOk
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_CONTACT
gH_Blender_OPT_MeterReceiveOnly
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gmPDS2000ReceiveOnly
END_PROGRAM
ACTION Read_mPDS2000:
_LD_BODY
_NETWORKS : 14
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_AND
_LD_OPERATOR : 2
_LD_CONTACT
mPDS2000_Read
_EXPRESSION
_NEGATIV
_LD_CONTACT
mPDS2000_Busy
_EXPRESSION
_NEGATIV
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mPDS2000_Read
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_FUNCTIONBLOCK
mPDS2000_Block
_BOX_EXPR : 8
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
gBlenderAMS_NET_ID
_OPERAND
_EXPRESSION
_POSITIV
811
_OPERAND
_EXPRESSION
_POSITIV
16#00004020
_OPERAND
_EXPRESSION
_POSITIV
16#000000C8
_OPERATOR
_BOX_EXPR : 1
_OPERAND
_EXPRESSION
_POSITIV
gmPDS2000_Block
_EXPRESSION
_POSITIV
SIZEOF
_OPERATOR
_BOX_EXPR : 1
_OPERAND
_EXPRESSION
_POSITIV
gmPDS2000_Block
_EXPRESSION
_POSITIV
ADR
_OPERATOR
_BOX_EXPR : 2
_OPERAND
_EXPRESSION
_POSITIV
mPDS2000_Read
_OPERAND
_EXPRESSION
_NEGATIV
mPDS2000_Busy
_EXPRESSION
_POSITIV
AND
_OPERAND
_EXPRESSION
_POSITIV
t#3s
_EXPRESSION
_POSITIV
ADSREAD
_OUTPUTS : 2
_OUTPUT
_POSITIV
_NO_SET
mPDS2000_Error
_OUTPUT
_POSITIV
_NO_SET
mPDS2000_ErrorCode
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mPDS2000_Busy
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_OPERATOR
_BOX_EXPR : 1
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
gmPDS2000_Block.ComActive
_EXPRESSION
_POSITIV
MOVE
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gmPDS2000ComActive
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_OPERATOR
_BOX_EXPR : 1
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
gmPDS2000_Block.ProdBrix
_EXPRESSION
_POSITIV
MOVE
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gProductBrix
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_OPERATOR
_BOX_EXPR : 1
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
gmPDS2000_Block.ProdCO2
_EXPRESSION
_POSITIV
MOVE
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gProductCO2
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_OPERATOR
_BOX_EXPR : 1
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
gmPDS2000_Block.ProdTemp
_EXPRESSION
_POSITIV
MOVE
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gProductTemp
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_OPERATOR
_BOX_EXPR : 1
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
gmPDS2000_Block.ProdDens
_EXPRESSION
_POSITIV
MOVE
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gProductDens
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_OPERATOR
_BOX_EXPR : 1
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
gmPDS2000_Block.ProdRecipeNum
_EXPRESSION
_POSITIV
MOVE
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gProductRecipeNum
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_OPERATOR
_BOX_EXPR : 1
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
gmPDS2000_Block.ErrorCode
_EXPRESSION
_POSITIV
MOVE
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gmPDS2000ErrorCode
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_CONTACT
gmPDS2000_Block.ComError
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 2
_ASSIGN
_OPERATOR
_BOX_EXPR : 2
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
mCountError
_OPERAND
_EXPRESSION
_POSITIV
1
_EXPRESSION
_POSITIV
ADD
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
mCountError
_ASSIGN
_OPERATOR
_BOX_EXPR : 1
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
0
_EXPRESSION
_POSITIV
MOVE
_EXPRESSION
_POSITIV
_OUTPUTS : 5
_OUTPUT
_POSITIV
_NO_SET
gmPDS2000_Block.ProdRecipeNum
_OUTPUT
_POSITIV
_NO_SET
gmPDS2000_Block.ProdCO2
_OUTPUT
_POSITIV
_NO_SET
gmPDS2000_Block.ProdBrix
_OUTPUT
_POSITIV
_NO_SET
gmPDS2000_Block.ProdDens
_OUTPUT
_POSITIV
_NO_SET
gmPDS2000_Block.ProdTemp
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_OR
_LD_OPERATOR : 2
_LD_CONTACT
gmPDS2000_Block.ComError
_EXPRESSION
_NEGATIV
_LD_CONTACT
gBlenderCIPMode
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
_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
mCountError
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_EMPTY
_EXPRESSION
_POSITIV
ENABLELIST : 1
_ASSIGN
_OPERATOR
_BOX_EXPR : 2
_ENABLED
_OPERAND
_EXPRESSION
_POSITIV
mCountError
_OPERAND
_EXPRESSION
_POSITIV
6
_EXPRESSION
_POSITIV
GE
_EXPRESSION
_POSITIV
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gmPDS2000Error
ENABLELIST_END
_OUTPUTS : 0
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_AND
_LD_OPERATOR : 4
_LD_CONTACT
gProdMeterTransferRecipe
_EXPRESSION
_NEGATIV
_FUNCTIONBLOCK
mTmrComErr
_BOX_EXPR : 2
_EMPTY
_OPERAND
_EXPRESSION
_POSITIV
t#25s
_EXPRESSION
_POSITIV
TON
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
_EMPTY
_LD_CONTACT
gmPDS2000Error
_EXPRESSION
_POSITIV
_LD_CONTACT
gProdBrixTrack_Latch
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_SET
gmPDS2000_Error_Fault
_NETWORK
_COMMENT
_END_COMMENT
_LD_ASSIGN
_LD_AND
_LD_OPERATOR : 2
_LD_CONTACT
gmPDS2000Error
_EXPRESSION
_POSITIV
_FUNCTIONBLOCK
mTmrFault
_BOX_EXPR : 2
_EMPTY
_OPERAND
_EXPRESSION
_POSITIV
t#10s
_EXPRESSION
_POSITIV
TOF
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
_EMPTY
_EXPRESSION
_POSITIV
_EXPRESSION
_POSITIV
ENABLELIST : 0
ENABLELIST_END
_OUTPUTS : 1
_OUTPUT
_POSITIV
_NO_SET
gH_ProductMeter_Fault
END_ACTION
ACTION Write_mPDS2000:
gmPDS2000NumRecipe := LIMIT (0,gH_A_Recipe_ProdMeterRecipeNum,100) ;
IF gBlenderCIPMode THEN
gmPDS2000NumRecipe := 0 ;
END_IF
m_mPDS2000_RecipeTmr(IN:=(gProdMeterTransferRecipe OR gBlenderCIPMode),PT:=t#2s) ;
gmPDS2000SetNewRec := m_mPDS2000_RecipeTmr.Q ;
IF gProdMeterTransferRecipe THEN
gProdMeterTransferRecipe := FALSE ;
END_IF
IF mReset THEN
gmPDS2000Reset := TRUE ;
gProdMeterTransferRecipe := FALSE ;
gmPDS2000SetNewRec := FALSE ;
ELSE
gmPDS2000Reset := FALSE ;
END_IF
END_ACTION