FB37 FLT P01 P01 faults

 

 

 

Network 1: Extern acknowledgeable faults

IF #FLT_MODULE AND "M00 FLT CmpltMaACK Imp" THEN

    "DI MAIN P01".SEQ1.SSM.S."1_FAULT_00_15" := 0;

END_IF;

 

 

 

Network 2: 1_FLT_P01_X0_X11 V90_X Gripper linear Xaxis

#"1_FAULT_00_15".%X0 := "DI OUT P01".V90_X.DRV.MC_Power.Error;

#"1_FAULT_00_15".%X1 := "DI OUT P01".V90_X.DRV.MC_Reset.Error;

#"1_FAULT_00_15".%X2 := "DI OUT P01".V90_X.DRV.MC_Home.Error;

#"1_FAULT_00_15".%X3 := "DI OUT P01".V90_X.DRV.MC_Halt.Error;

#"1_FAULT_00_15".%X4 := "DI OUT P01".V90_X.DRV.MC_MoveAbsolute.Error;

#"1_FAULT_00_15".%X5 := "DI OUT P01".V90_X.DRV.MC_MoveRelative.Error;

#"1_FAULT_00_15".%X6 := "DI OUT P01".V90_X.DRV.MC_MoveJog.Error;

#"1_FAULT_00_15".%X7 := "DI OUT P01".V90_X.TO_FAULT_00_07.%X0; // #AXIS.StatusDrive.Error;

#"1_FAULT_00_15".%X8 := "DI OUT P01".V90_X.TO_FAULT_00_07.%X1; // #AXIS.StatusWord.%X1;

#"1_FAULT_00_15".%X9 := "DI OUT P01".V90_X.TO_FAULT_00_07.%X2; // NOT #AXIS.StatusDrive.CommunicationOK;

#"1_FAULT_00_15".%X10 := "DI OUT P01".V90_X.TO_FAULT_00_07.%X3; //  #Acce_Dece_TON.Q

#"1_FAULT_00_15".%X11 := "DI OUT P01".V90_X.Com_FLT;

#"1_FAULT_00_15".%X12 := "DI OUT P01".V90_X.TO_FAULT_00_07.%X4; // SetVelo = 0.0 (still stand)

 

 

 

Network 3: 2_FLT_P01_X0_X11 V90_Y Gripper linear Yaxis

#"2_FAULT_00_15".%X0 := "DI OUT P01".V90_Y.DRV.MC_Power.Error;

#"2_FAULT_00_15".%X1 := "DI OUT P01".V90_Y.DRV.MC_Reset.Error;

#"2_FAULT_00_15".%X2 := "DI OUT P01".V90_Y.DRV.MC_Home.Error;

#"2_FAULT_00_15".%X3 := "DI OUT P01".V90_Y.DRV.MC_Halt.Error;

#"2_FAULT_00_15".%X4 := "DI OUT P01".V90_Y.DRV.MC_MoveAbsolute.Error;

#"2_FAULT_00_15".%X5 := "DI OUT P01".V90_Y.DRV.MC_MoveRelative.Error;

#"2_FAULT_00_15".%X6 := "DI OUT P01".V90_Y.DRV.MC_MoveJog.Error;

#"2_FAULT_00_15".%X7 := "DI OUT P01".V90_Y.TO_FAULT_00_07.%X0; // #AXIS.StatusDrive.Error;

#"2_FAULT_00_15".%X8 := "DI OUT P01".V90_Y.TO_FAULT_00_07.%X1; // #AXIS.StatusWord.%X1;

#"2_FAULT_00_15".%X9 := "DI OUT P01".V90_Y.TO_FAULT_00_07.%X2; // NOT #AXIS.StatusDrive.CommunicationOK;

#"2_FAULT_00_15".%X10 := "DI OUT P01".V90_Y.TO_FAULT_00_07.%X3; // #Acce_Dece_TON.Q

#"2_FAULT_00_15".%X11 := "DI OUT P01".V90_Y.Com_FLT;

#"1_FAULT_00_15".%X12 := "DI OUT P01".V90_Y.TO_FAULT_00_07.%X4; // SetVelo = 0.0 (still stand)

 

 

 

Network 4: 3_FLT_P01_X0_X11 V90_Z Gripper linear Zaxis

#"3_FAULT_00_15".%X0 := "DI OUT P01".V90_Z.DRV.MC_Power.Error;

#"3_FAULT_00_15".%X1 := "DI OUT P01".V90_Z.DRV.MC_Reset.Error;

#"3_FAULT_00_15".%X2 := "DI OUT P01".V90_Z.DRV.MC_Home.Error;

#"3_FAULT_00_15".%X3 := "DI OUT P01".V90_Z.DRV.MC_Halt.Error;

#"3_FAULT_00_15".%X4 := "DI OUT P01".V90_Z.DRV.MC_MoveAbsolute.Error;

#"3_FAULT_00_15".%X5 := "DI OUT P01".V90_Z.DRV.MC_MoveRelative.Error;

#"3_FAULT_00_15".%X6 := "DI OUT P01".V90_Z.DRV.MC_MoveJog.Error;

#"3_FAULT_00_15".%X7 := "DI OUT P01".V90_Z.TO_FAULT_00_07.%X0; // #AXIS.StatusDrive.Error;

#"3_FAULT_00_15".%X8 := "DI OUT P01".V90_Z.TO_FAULT_00_07.%X1; // #AXIS.StatusWord.%X1;

#"3_FAULT_00_15".%X9 := "DI OUT P01".V90_Z.TO_FAULT_00_07.%X2; // NOT #AXIS.StatusDrive.CommunicationOK;

#"3_FAULT_00_15".%X10 := "DI OUT P01".V90_Z.TO_FAULT_00_07.%X3; // #Acce_Dece_TON.Q;

#"3_FAULT_00_15".%X11 := "DI OUT P01".V90_Z.Com_FLT;

#"1_FAULT_00_15".%X12 := "DI OUT P01".V90_Z.TO_FAULT_00_07.%X4; // SetVelo = 0.0 (still stand)

 

 

 

Network 5: 4_FLT_P01_X0_X11 MD12 Gripper fingers 1+2 axis

#"4_FAULT_00_15".%X0 := "DI OUT P01".MD_12.DRV.MC_Power.Error;

#"4_FAULT_00_15".%X1 := "DI OUT P01".MD_12.DRV.MC_Reset.Error;

#"4_FAULT_00_15".%X2 := "DI OUT P01".MD_12.DRV.MC_Home.Error;

#"4_FAULT_00_15".%X3 := "DI OUT P01".MD_12.DRV.MC_Halt.Error;

#"4_FAULT_00_15".%X4 := "DI OUT P01".MD_12.DRV.MC_MoveAbsolute.Error;

#"4_FAULT_00_15".%X5 := "DI OUT P01".MD_12.DRV.MC_MoveRelative.Error;

#"4_FAULT_00_15".%X6 := "DI OUT P01".MD_12.DRV.MC_MoveJog.Error;

#"4_FAULT_00_15".%X7 := "DI OUT P01".MD_12.TO_FAULT_00_07.%X0; // #AXIS.StatusDrive.Error;

#"4_FAULT_00_15".%X8 := "DI OUT P01".MD_12.TO_FAULT_00_07.%X1; // #AXIS.StatusWord.%X1;

#"4_FAULT_00_15".%X9 := "DI OUT P01".MD_12.TO_FAULT_00_07.%X2; // NOT #AXIS.StatusDrive.CommunicationOK;

#"4_FAULT_00_15".%X10 := "DI OUT P01".MD_12.TO_FAULT_00_07.%X3; // #Acce_Dece_TON.Q

#"4_FAULT_00_15".%X11 := "DI OUT P01".MD_12.Com_FLT;

#"1_FAULT_00_15".%X12 := "DI OUT P01".MD_12.TO_FAULT_00_07.%X4; // SetVelo = 0.0 (still stand)

 

 

 

Network 6: 5_FLT_P01_X0_X11 MD34 Gripper fingers 3+4 axis

#"5_FAULT_00_15".%X0 := "DI OUT P01".MD_34.DRV.MC_Power.Error;

#"5_FAULT_00_15".%X1 := "DI OUT P01".MD_34.DRV.MC_Reset.Error;

#"5_FAULT_00_15".%X2 := "DI OUT P01".MD_34.DRV.MC_Home.Error;

#"5_FAULT_00_15".%X3 := "DI OUT P01".MD_34.DRV.MC_Halt.Error;

#"5_FAULT_00_15".%X4 := "DI OUT P01".MD_34.DRV.MC_MoveAbsolute.Error;

#"5_FAULT_00_15".%X5 := "DI OUT P01".MD_34.DRV.MC_MoveRelative.Error;

#"5_FAULT_00_15".%X6 := "DI OUT P01".MD_34.DRV.MC_MoveJog.Error;

#"5_FAULT_00_15".%X7 := "DI OUT P01".MD_34.TO_FAULT_00_07.%X0; // #AXIS.StatusDrive.Error;

#"5_FAULT_00_15".%X8 := "DI OUT P01".MD_34.TO_FAULT_00_07.%X1; // #AXIS.StatusWord.%X1;

#"5_FAULT_00_15".%X9 := "DI OUT P01".MD_34.TO_FAULT_00_07.%X2; // NOT #AXIS.StatusDrive.CommunicationOK;

#"5_FAULT_00_15".%X10 := "DI OUT P01".MD_34.TO_FAULT_00_07.%X3; // #Acce_Dece_TON.Q

#"5_FAULT_00_15".%X11 := "DI OUT P01".MD_34.Com_FLT;

#"1_FAULT_00_15".%X12 := "DI OUT P01".MD_34.TO_FAULT_00_07.%X4; // SetVelo = 0.0 (still stand)

 

 

 

Network 7: 6_FLT_P01_X0 C01 Lifting gate

#"6_FAULT_00_15".%X0 := "DI OUT P01".C01.com_flt;

 

 

 

Network 8: 6_FLT_P01_X1 Palette 1+2 plausibility check NOK

"M01 SEQ1 DoWP1" := FALSE;

IF "E00 S11 Blstr1 InPos" AND "E00 S12 Blstr2 InPos" THEN

    IF "E00 Blister1_BinCode" = "ModulDa".P01.WPC1_IDnr AND "E00 Blister2_BinCode" = "ModulDa".P01.WPC2_IDnr THEN

        "M01 SEQ1 DoWP1" := TRUE;

    END_IF;

END_IF;

 

#"6_FAULT_00_15".%X1 := NOT "M01 SEQ1 DoWP1";

 

 

 

Network 9: 1_WRN_P01_X0 SEQ1 set run time exceeded

#"1_WARN_00_15".%X0 := "DI MAIN P01".MoDa.RunTimeCntr_seq1 > "DI MAIN P01".MoDa.RunTimeSetP_seq1;

 

 

 

Network 10: 1_WRN_P01_X1 Xaxis reference Nok

#"1_WARN_00_15".%X1 := NOT "DI OUT P01".V90_X.DRV.Support.HomeDone;

 

 

 

Network 11: 1_WRN_P01_X2 Yaxis reference Nok

#"1_WARN_00_15".%X2 := NOT "DI OUT P01".V90_Y.DRV.Support.HomeDone;

 

 

 

Network 12: 1_WRN_P01_X3 Zaxis reference Nok

#"1_WARN_00_15".%X3 := NOT "DI OUT P01".V90_Z.DRV.Support.HomeDone;

 

 

 

Network 13: 1_WRN_P01_X4 MD12axis reference Nok

#"1_WARN_00_15".%X4 := NOT "DI OUT P01".MD_12.DRV.Support.HomeDone;

 

 

 

Network 14: 1_WRN_P01_X5 MD34axis reference Nok

#"1_WARN_00_15".%X5 := NOT "DI OUT P01".MD_34.DRV.Support.HomeDone;

 

 

 

Network 15: 1_WRN_P01_X6 PILZ Estop triggered

#"1_WARN_00_15".%X6 := NOT ("E00 PILZ Estop" OR "E00 PILZ EstopRset");

 

 

 

Network 16: Complete module fault message

"ModulDa".P01.MaPa."1_ModuleFLT_00_31" := DW#16#FFFFFFFF AND (SHL_DWORD(IN := #"1_FAULT_00_15", N := 16) OR #"2_FAULT_00_15");

"ModulDa".P01.MaPa."2_ModuleFLT_00_31" := DW#16#FFFFFFFF AND (SHL_DWORD(IN := #"3_FAULT_00_15", N := 16) OR #"4_FAULT_00_15");

"ModulDa".P01.MaPa."3_ModuleFLT_00_31" := DW#16#FFFFFFFF AND (SHL_DWORD(IN := #"5_FAULT_00_15", N := 16) OR #"6_FAULT_00_15");

#FLT_MODULE := 0 <> ("ModulDa".P01.MaPa."1_ModuleFLT_00_31" OR "ModulDa".P01.MaPa."2_ModuleFLT_00_31" OR "ModulDa".P01.MaPa."3_ModuleFLT_00_31");

 

 

Home

 

Erfahrung

 

Referenzen

 

Sondermaschinen

 

MSR-Maschinen

 

SPS-Programmierung

 

Visualisierung HMI

 

Elektro CAD

 

Leistungsprofil

 

Personalia

 

SW-Development

 

Dokumentation

 

 

 

Impressum & DSGVO

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

To go to next HMI image use the touch buttons; some of them are interactive.