FB39 OUT P01 : Pre-Assembly press machine

[hit  <- on your browser to return]

 

 

 

Netzwerk 1: Pre-Setting

 

 

 

 

Netzwerk 2: Call manual operation

#MANUAL(ST_MANU := "M00 ManuCmpltMa run",

        MODULE_HP := "HMI KEY".P01.GLB.F20_HomPos,

        SUPPORT_SEQ := "M01 RunHomPos");

 

 

 

Netzwerk 3: Grease Counter CH0

 

#HighSpeedCouter(SwGate:= TRUE,

                 ErrorAck:= "M00 ACK Imp",

                 SetCountValue:= #"HSC IO".InOut.SetCountValue,

                 StatusHW => #"HSC IO".OUT.StatusHW,

                 StatusGate => #"HSC IO".OUT.StatusGate,

                 Error => #"HSC IO".OUT.Error,

                 CountValue => #"HSC IO".OUT.CountValue);

//Recalculation last grease volume

#MaPa.Last_GreasVolume := #MaPa.Gap_GreaseVolume / #MaPa.Interpolation / 4.0 * DINT_TO_REAL(IN := #"HSC IO".OUT.CountValue) * #MaPa.GreasDensity;

 

 

 

Netzwerk 4: 30T1_Z DSM Multi Pro Start up control

 

#"DSM IO".IN.Brake_Mounted := #"DSM IO".IN.NormalSpeed := TRUE;

#"DSM IO".IN.Brake_feedback_Closed := "E01 1YB1 TOX break act";

#"DSM IO".IN.BrakeTimer := #"DSM IO".IN.StepsequenceTimer := #"DSM IO".IN.WatchDogTimer := t#2000ms;

#"DSM IO".IN.Automatic := "M01 RunHomPos" OR "M00 AutoCmpltMa run" OR "M00 ManuCmpltMa run";

#"DSM IO".IN.StartProcess := "M01 30T1_Z GoToPosAbso" AND "M00 AutoCmpltMa run" OR #MANUAL.Support."30T1_Z".CmdExe_slow_fast_WP;

#"DSM IO".IN.ManualHomePos_Pr2 := #MANUAL."DSM Buttons"."Move to HP" AND "HMI KEY".P01."30T1_Z".F11_Enable_HP;

#"DSM IO".OUT.Automatic := "M01 RunHomPos" OR "M00 AutoCmpltMa run";

#"DSM IO".OUT.ProcessNumber:= #"DSM IO".IN.ProcessNumber;

#"DSM IO".OUT.UserValuesRead := "HMI KEY".P01.GLB.F21_LoadData;

#"DSM IO".OUT.PLCValuesWritten :=

#MANUAL."DSM DATA SET_P1".RadioButtons.STAT3

AND #MANUAL."DSM DATA SET_P2".RadioButtons.STAT3

AND #MANUAL."DSM DATA SET_P3".RadioButtons.STAT3

AND #MANUAL."DSM DATA SET_P4".RadioButtons.STAT3

AND #MANUAL."DSM DATA SET_P5".RadioButtons.STAT3

AND #MANUAL."DSM DATA SET_P6".RadioButtons.STAT3;

 

 

 

Netzwerk 5: 30T1_Z  DSM axis

// Halt axis

#tmp_enable_axis := "HMI KEY".P01."30T1_Z".F11_Enable_HP AND "HMI KEY".P01."30T1_Z".F12_Enable_WP;

#Support.30T1_Z_FEg_halt_Imp := #Support.30T1_Z_FEg_Halt AND NOT #tmp_enable_axis;

#Support.30T1_Z_FEg_Halt := #tmp_enable_axis;

// Execute output stage

#"30T1_Z".DRV.MC_Home.Execute := #MANUAL."DSM Buttons".Referencing AND "M00 ManuCmpltMa run";

#"30T1_Z".DRV.MC_Power.StartMode := #"30T1_Z".DRV.MC_MoveAbsolute.Direction := 1;

#"30T1_Z".DRV.MC_MoveJog.PosCntrl := TRUE;

 

#"30T1_Z"(ENABLE := "E01 TOX ES/SD",

          HALT := "HMI KEY".P01."30T1_Z".F21_HALT_GoToPos OR "DI MAIN GLB".Halt_TOF_Pulse.Q OR #MANUAL.GLB.N_Trig1_Imp OR #Support.30T1_Z_FEg_halt_Imp,

          MCB := "E00 1F1 DSM MCB",

          START_ABSO := #tmp_axis_enable AND ("M01 30T1_Z GoToPosAbso" AND ("M00 AutoCmpltMa run" OR "M01 RunHomPos" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR "HMI Y".P01."30T1_Z".F17_GoToAbsoPos),

          START_RELA := #tmp_axis_enable AND "M01 30T1_Z GoToPosRela" OR "HMI KEY".P01."30T1_Z".F18_GoToRelaPos,

          JOG_WP := #MANUAL.Support."30T1_Z".CmdExe_slow_fast_WP OR "M01 30T1_Z JogToPosWP",

          JOG_HP := #MANUAL.Support."30T1_Z".CmdExe_slow_fast_HP OR "M01 30T1_Z JogToPosHP",

          ACK_FLT := "M00 ACK FP",

          HOM_MODE := 0,

          AXIS := "30T1_Z");

 

 

 

Netzwerk 6: C01-2 Washer above

 

#"C01-2 Washer above"(CMD_WP := FALSE,

                      CMD_HP := FALSE,

                      FB_WP := "E01 C01 Washer above WP" AND "E01 C02 Washer above WP",

                      FB_HP := "E01 C01 Washer above HP" AND "E01 C02 Washer above HP",

                      RLS := "E01 2A3 LightCurtain active",

                      ACK_FLT := "M00 ACK Imp",

                      VALV_WP=> "A01 C01-2 Washer above WP",

                      VALV_HP=> "A01 C01-2 Washer above HP");

 

 

 

Netzwerk 7: C01-3 Washer below

 

#"C01-3 Washer below"(CMD_WP := FALSE,

                      CMD_HP := FALSE,

                      FB_WP := "E01 C01 Washer below WP" AND "E01 C02 Washer below WP" AND "E01 C03 Washer below WP",

                      FB_HP := "E01 C01 Washer below HP" AND "E01 C02 Washer below HP" AND "E01 C03 Washer below HP",

                      RLS := "E01 2A3 LightCurtain active",

                      ACK_FLT := "M00 ACK Imp",

                      VALV_WP=> "A01 C01-3 Washer below WP",

                      VALV_HP=> "A01 C01-3 Washer below HP");

 

 

 

Netzwerk 8: C01-2 Tray above

 

#"C01-2 Tray above"(CMD_WP := FALSE,

                    CMD_HP := FALSE,

                    FB_WP := "E01 C01 Tray above WP" AND "E01 C02 Tray above WP",

                    FB_HP := "E01 C01 Tray above HP" AND "E01 C02 Tray above HP",

                    RLS := "E01 2A3 LightCurtain active",

                    ACK_FLT := "M00 ACK Imp",

                    VALV_WP=> "A01 C01-2 Tray above WP",

                    VALV_HP=> "A01 C01-2 Tray above HP");

 

 

 

Netzwerk 9: C03-4 Tray below

 

#"C03-4 Tray below"(CMD_WP := FALSE,

                    CMD_HP := FALSE,

                    FB_WP := "E01 C03 Tray below WP" AND "E01 C04 Tray below WP",

                    FB_HP := "E01 C03 Tray below HP" AND "E01 C04 Tray below HP",

                    RLS := "E01 2A3 LightCurtain active",

                    ACK_FLT := "M00 ACK Imp",

                    VALV_WP=> "A01 C03-4 Tray below WP",

                    VALV_HP=> "A01 C03-4 Tray below HP");

 

 

 

Netzwerk 10: Y30 Grease Nozzle 1

 

#"Y30 GreasNozzel 1"(CMD_WP := FALSE,

                     FB_WP := "A01 Y30 GreasNozzel 1 on",

                     RLS := "E01 2A3 LightCurtain active",

                     ACK_FLT := "M00 ACK Imp",

                     VALV_WP => "A01 Y30 GreasNozzel 1 on");

 

 

 

Netzwerk 11: Y31 Grease Nozzle 2

 

#"Y31 GreasNozzel 2"(CMD_WP := "M01 Y31 GreasNozzel 2 onoff",

                     FB_WP := "A01 Y31 GreasNozzel 2 on",

                     RLS := "E01 2A3 LightCurtain active",

                     ACK_FLT := "M00 ACK Imp",

                     VALV_WP => "A01 Y31 GreasNozzel 2 on");

 

 

 

Netzwerk 12: Y12 Vacuum 1 on (left

 

"A01 Y12 Vaccum 1 on" :=

NOT "E01 2A3 LightCurtain active" AND "E01 S41 Tray left"

OR "DI MAIN P01".SEQ1.STEP_NO <= 5 AND "M00 AutoCmpltMa run" AND "E01 2A3 LightCurtain active"

OR "E01 2A3 LightCurtain active" AND "M00 ManuCmpltMa run" AND "E01 S41 Tray left";

 

 

 

Netzwerk 13: Y13 Vacuum 2 on (right)

 

"A01 Y13 Vaccum 2 on" :=

NOT "E01 2A3 LightCurtain active" AND "E01 S42 Tray right"

OR "DI MAIN P01".SEQ1.STEP_NO <= 5 AND "M00 AutoCmpltMa run" AND "E01 2A3 LightCurtain active"

OR "E01 2A3 LightCurtain active" AND "M00 ManuCmpltMa run" AND "E01 S42 Tray right";