FB32 SEQ1 P01 : Spring block testing (slave 1) |
|
|
|
Netzwerk 1: Pre-Setting
"M01 RdyToStart" := "M01 HomPos" AND "DI MAIN P05".SEQ1.Shift_Register.%X3; |
|
|
|
Netzwerk 2: Execute SEQ1
#SSM1(STEP_PLS := "HMI KEY".P01.GLB.F17_StepPls, STEP_MNS := "HMI KEY".P01.GLB.F18_StepMns, GOTO_STEP := "HMI KEY".P01.GLB.F19_GoToStep, GOTO_STEP_NO := "HMI KEY".P01.GLB.GoToStep, MAX_STEP := 4); |
|
|
|
Netzwerk 3: Step jump distributor
CASE #SSM1.S.stepact OF 0: // Waiting for SEQ1 to start "M01 SEQ1 Active" := FALSE; #Index := 0; IF NOT "DI MAIN P05".SEQ1.Shift_Register.%X3 THEN "M01 Enbl toRTT" := TRUE; RETURN; END_IF; #SSM1.S.stepd := #SSM1.S.steps AND "M01 RdyToStart" AND "M01 Enbl frmRTT";
1: // HSC wait for stabled start value "M01 SEQ1 Active" := TRUE; IF #SSM1.S.stepfc THEN "M01 Enbl frmRTT" := FALSE; #Index := #Index + 1; #SSM1.S.c1.set := 8; RETURN; ELSE "M01 HSC OnOff" := TRUE; #SSM1.S.c1.start := "DI OUT P01".HSC_TRVL_IO.UserStatusFlags.StatusDQ1; IF #SSM1.S.c1.done THEN #SSM1.S.stepd := TRUE; END_IF; END_IF;
2: // Z01 spring-block slide downward WP "DI OUT P01".Z01.VLV.CmdExe_HP := FALSE; "DI OUT P01".Z01.VLV.CmdExe_WP := "HMI KEY".P01.Z01.F12_Enable_WP; #SSM1.S.c1.start := "DI OUT P01".Z01.FB_WP; #SSM1.S.c1.set := 8; #SSM1.S.stepd := #SSM1.S.c1.done;
3: // Spring-block travel measuring #SSM1.S.c1.start := TRUE; #SSM1.S.c1.set := 8; "DI OUT P01".MANUAL.SpringBLK_LS.Measurement[#Index] := "DI OUT P01".HSC_TRVL_IO.OUT.MeasuredValue; IF "DI OUT P01".MANUAL.SpringBLK_LS.Compensation < ABS("DI OUT P01".HSC_TRVL_IO.OUT.MeasuredValue - "DatOfMod".P01.STS.MeanVal_LS_BLK) THEN "DI MAIN P05".SSM1.Shift_Register_BadParts.%X3 := TRUE; END_IF; #SSM1.S.stepd := #SSM1.S.c1.done;
4: // Z01 move spring-block slide upward HP "DI OUT P01".Z01.VLV.CmdExe_WP := FALSE; "DI OUT P01".Z01.VLV.CmdExe_HP := "HMI KEY".P01.Z01.F11_Enable_HP;
IF "DI OUT P01".Z01.FB_HP AND #Index < 4 THEN #SSM1.S.stepnew := 1; #SSM1.S.stepd := TRUE; ELSIF "DI OUT P01".Z01.FB_HP THEN "DatOfMod".P01.STS.MeanVal_LS_BLK := ("DI OUT P01".MANUAL.SpringBLK_LS.Measurement[1] + "DI OUT P01".MANUAL.SpringBLK_LS.Measurement[2] + "DI OUT P01".MANUAL.SpringBLK_LS.Measurement[3] + "DI OUT P01".MANUAL.SpringBLK_LS.Measurement[4]) / 4.0; #FLT."3_FAULT_00_15".%X0 := "DI MAIN P05".SEQ1.Shift_Register_BadParts.%X3; "M01 SSM1 Done" := "M01 Enbl toRTT" := TRUE; END_IF; END_CASE; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|