SEQ506 : Perform pressure maintenance |
|
|
|
Network 1: Define SSM last step #SSM(LAST_STEP := 5); |
|
|
|
Network 1: Jump distributor corresponds to SEQ506 CASE #SSM.S.stepact OF 0: // waiting for sequencer to start #Done := "DI OUT P03".V308.VLV_O.CmdExe_WP := "DI OUT P03".V303.VLV_O.CmdExe_WP := FALSE; #SSM.S.stepd := #SSM.S.steps AND "DI OUT P03".V308.FB_HP AND "DI OUT P03".V303.FB_HP;
1: // PT302 pressure maintainace control IF NOT "HMI KEY".Execute.Pressure_Maintenance_in_STH_Start THEN #SSM.S.stepd := TRUE; #SSM.S.stepnew := 4; // inevitably pressure release ELSIF "DI MAIN GLB".SEQ200.Support.Pressure_Maintenance_reached THEN RETURN; ELSIF "DI OUT P03".PT302.Support.Out_Scale < "HMI KEY".SetPoint.PT302_PressureMaintainace THEN #SSM.S.stepd := TRUE; #SSM.S.stepnew := 2; // pressure increase ELSIF "DI OUT P03".PT302.Support.Out_Scale > "HMI KEY".SetPoint.PT302_PressureMaintainace THEN #SSM.S.stepd := TRUE; #SSM.S.stepnew := 3; // pressure decrees END_IF;
2: // V303 Gas blocking WP/HP (pressure increase) IF NOT "HMI KEY".Execute.Pressure_Maintenance_in_STH_Start THEN #SSM.S.stepnew := 4; #SSM.S.stepd := TRUE; RETURN; ELSIF #SSM.S.stepfc THEN #SSM.S.c1.set := 20; "DI OUT P03".V303.VLV_O.CmdExe_WP := "HMI KEY".P03.V303.F12_Enable_WP; ELSIF "DI OUT P03".V303.FB_WP THEN #SSM.S.c1.start := TRUE; IF #SSM.S.c1.done THEN #SSM.S.stepnew := 1; "DI OUT P03".V303.VLV_O.CmdExe_WP := FALSE; END_IF; END_IF; #SSM.S.stepd := #SSM.S.c1.done AND "DI OUT P03".V303.FB_HP;
3: // V308 gully ventilation WP/HP (Pressure decrease) IF NOT "HMI KEY".Execute.Pressure_Maintenance_in_STH_Start THEN #SSM.S.stepd := TRUE; RETURN; ELSIF #SSM.S.stepfc THEN #SSM.S.c1.set := 20; "DI OUT P03".V308.VLV_O.CmdExe_WP := "HMI KEY".P03.V308.F12_Enable_WP; ELSIF "DI OUT P03".V308.FB_WP THEN #SSM.S.c1.start := TRUE; IF #SSM.S.c1.done THEN #SSM.S.stepnew := 1; "DI OUT P03".V308.VLV_O.CmdExe_WP := FALSE; END_IF; END_IF; #SSM.S.stepd := #SSM.S.c1.done AND "DI OUT P03".V308.FB_HP;
4: // V308 Ventilation WP, inevitably pressure release "DI OUT P03".V303.VLV_O.CmdExe_WP := FALSE; "DI OUT P03".V308.VLV_O.CmdExe_WP := "HMI KEY".P03.V308.F12_Enable_WP; #SSM.S.stepd := "DI OUT P03".PT302.Support.Out_Scale <= "DI OUT P03".PT302.L_LIM AND "DI OUT P03".V308.FB_WP AND "DI OUT P03".V303.FB_HP;
5: // SBT pressure safeguarding IF #SSM.S.stepfc THEN #SSM.S.c1.set := 20; "DI OUT P03".V308.VLV_O.CmdExe_WP := FALSE; END_IF; #SSM.S.c1.start := "DI OUT P03".V308.FB_HP; #SSM.S.stepd := #Done := #SSM.S.c1.done; END_CASE; |
|