|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
FB37 FLT P01 : DSM Multi Pro Faults |
|
|
|
Netzwerk 1: Faults SEQ acknowledgment
IF ("DI MAIN P01".SEQ1.FLT."3_FAULT_00_15" OR "DI MAIN P01".FLT."1_FAULT_00_15" OR "DI MAIN P01".FLT."2_FAULT_00_15") <> 0 AND "M00 ACK Imp" THEN "DI MAIN P01".SEQ1.FLT."3_FAULT_00_15" := #"1_FAULT_00_15" := #"2_FAULT_00_15" := 0; "DI OUT P01".PLC_to_DSM[1].RadioButtons.Error := "DI OUT P01".PLC_to_DSM[2].RadioButtons.Error := "DI OUT P01".PLC_to_DSM[3].RadioButtons.Error := "DI OUT P01".PLC_to_DSM[4].RadioButtons.Error := "DI OUT P01".PLC_to_DSM[5].RadioButtons.Error := "DI OUT P01".PLC_to_DSM[6].RadioButtons.Error := FALSE; END_IF; |
|
|
|
Netzwerk 2: 1_WRN_X0 SEQ1 Rubber core placed wrongly
#"1_WARN_00_15".%X0 := "DI MAIN P01".SEQ1.FLT."3_FAULT_00_15".%X0; |
|
|
|
Netzwerk 3: 1_WRN_X1 SEQ1 grease volume too low
#"1_WARN_00_15".%X1 := "DI MAIN P01".SEQ1.FLT."3_FAULT_00_15".%X1; |
|
|
|
Netzwerk 4: 1_WRN_X2 SEQ1 final force too high
#"1_WARN_00_15".%X2 := "DI MAIN P01".SEQ1.FLT."3_FAULT_00_15".%X2; |
|
|
|
Netzwerk 5: 1_WRN_X3 SEQ1 final force too low
#"1_WARN_00_15".%X3 := "DI MAIN P01".SEQ1.FLT."3_FAULT_00_15".%X3; |
|
|
|
Netzwerk 6: 1_WRN_X4 SEQ1 Time monitoring elapsed
#"1_WARN_00_15".%X4 := "DI MAIN P01".MaDa.RunTimeCntr_seq1 > "DI MAIN P01".MaDa.RunTimeSetP_seq1; |
|
|
|
Netzwerk 7: 1_WRN_X5 SEQ1 Workpiece 1 done NOK
#"1_WARN_00_15".%X5 := "M01 SEQ1 WP1 DnNOK"; |
|
|
|
Netzwerk 8: 2_WRN_X0 30T1_Z DSN Multi Pro axis not referenced
#"2_WARN_00_15".%X0 := NOT "DI OUT P01"."30T1_Z".DRV.Support.HomDone; |
|
|
|
Netzwerk 9: 2_WRN_X1 DSM Multi Pro demands firest home position
#"2_WARN_00_15".%X1 := NOT "M00 HomPosSR"; |
|
|
|
Netzwerk 10: 1_FLT_X0 30T1_Z DSM Multi Pro axis common fault
#"1_FAULT_00_15".%X0 := "DI OUT P01"."30T1_Z".drv_com_flt; |
|
|
|
Netzwerk 11: 1_FLT_X1 C01-2 Washer above
#"1_FAULT_00_15".%X1 := "DI OUT P01"."C01-2 Washer above".vlv_com_flt; |
|
|
|
Netzwerk 12: 1_FLT_X2 C01-3 Washer below
#"1_FAULT_00_15".%X2 := "DI OUT P01"."C01-3 Washer below".vlv_com_flt; |
|
|
|
Netzwerk 13: 1_FLT_X3 C01-2 Tray above
#"1_FAULT_00_15".%X3 := "DI OUT P01"."C01-2 Tray above".vlv_com_flt; |
|
|
|
Netzwerk 14: 1_FLT_X4 C03-4 Tray below
#"1_FAULT_00_15".%X4 := "DI OUT P01"."C03-4 Tray below".vlv_com_flt; |
|
|
|
Netzwerk 15: 1_FLT_X5 Y30 Grease Nozzle 1
#"1_FAULT_00_15".%X5 := "DI OUT P01"."Y30 GreasNozzel 1".vlv_com_flt; |
|
|
|
Netzwerk 16: 1_FLT_X6 Y31 Grease Nozzle 2
#"1_FAULT_00_15".%X6 := "DI OUT P01"."Y31 GreasNozzel 2".vlv_com_flt; |
|
|
|
Netzwerk 17: 1_FLT_X7 30T1_Z DSN Multi Pro axis not enabled
#"1_FAULT_00_15".%X7 := NOT "DI OUT P01"."30T1_Z".DRV.MC_Power.Status; |
|
|
|
Netzwerk 18: 1_FLT_X8 30T1_Z DSN Multi Pro axis Error ID MC_Power
IF "DI OUT P01"."30T1_Z".DRV.MC_Power.Error THEN #"1_FAULT_00_15".%X8 := TRUE; END_IF; |
|
|
|
Netzwerk 19: 1_FLT_X9 30T1_Z DSN Multi Pro axis Error ID MC_Reset
IF "DI OUT P01"."30T1_Z".DRV.MC_Reset.Error THEN #"1_FAULT_00_15".%X9 := TRUE; END_IF; |
|
|
|
Netzwerk 20: 1_FLT_X10 30T1_Z DSN Multi Pro axis Error ID MC_Home
IF "DI OUT P01"."30T1_Z".DRV.MC_Home.Error THEN #"1_FAULT_00_15".%X10 := TRUE; END_IF; |
|
|
|
Netzwerk 21: 1_FLT_X11 30T1_Z DSN Multi Pro axis Error ID MC_Halt
IF "DI OUT P01"."30T1_Z".DRV.MC_Halt.Error THEN #"3_FAULT_00_15".%X11 := TRUE; END_IF; |
|
|
|
Netzwerk 22: 1_FLT_X12 30T1_Z DSN Multi Pro axis Error ID MC_MoveAbsolute
IF "DI OUT P01"."30T1_Z".DRV.MC_MoveAbsolute.Error THEN #"1_FAULT_00_15".%X12 := TRUE; END_IF; |
|
|
|
Netzwerk 23: 1_FLT_X13 30T1_Z DSN Multi Pro axis Error ID MC_MoveRelative
IF "DI OUT P01"."30T1_Z".DRV.MC_MoveRelative.Error THEN #"1_FAULT_00_15".%X13 := TRUE; END_IF; |
|
|
|
Netzwerk 24: 1_FLT_X14 30T1_Z DSN Multi Pro axis Error ID MC_MoveJog
IF "DI OUT P01"."30T1_Z".DRV.MC_MoveJog.Error THEN #"1_FAULT_00_15".%X14 := TRUE; END_IF; |
|
|
|
Netzwerk 25: 1_FLT_X15 30T1_Z is not referenced
#"1_FAULT_00_15".%X15 := "M01 RunHomPos" AND NOT "DI OUT P01"."30T1_Z".DRV.Support.HomDone; |
|
|
|
Netzwerk 26: 2_FLT_X0-X5 DSM data sets P1-P6
#"2_FAULT_00_15".%X0 := "DI OUT P01".PLC_to_DSM[1].RadioButtons.Error OR NOT "DI OUT P01".MANUAL."DSM DATA SET_P1".RadioButtons.STAT3; #"2_FAULT_00_15".%X1 := "DI OUT P01".PLC_to_DSM[2].RadioButtons.Error OR NOT "DI OUT P01".MANUAL."DSM DATA SET_P2".RadioButtons.STAT3; #"2_FAULT_00_15".%X2 := "DI OUT P01".PLC_to_DSM[3].RadioButtons.Error OR NOT "DI OUT P01".MANUAL."DSM DATA SET_P3".RadioButtons.STAT3; #"2_FAULT_00_15".%X3 := "DI OUT P01".PLC_to_DSM[4].RadioButtons.Error OR NOT "DI OUT P01".MANUAL."DSM DATA SET_P4".RadioButtons.STAT3; #"2_FAULT_00_15".%X4 := "DI OUT P01".PLC_to_DSM[5].RadioButtons.Error OR NOT "DI OUT P01".MANUAL."DSM DATA SET_P5".RadioButtons.STAT3; #"2_FAULT_00_15".%X5 := "DI OUT P01".PLC_to_DSM[6].RadioButtons.Error OR NOT "DI OUT P01".MANUAL."DSM DATA SET_P6".RadioButtons.STAT3; |
|
|
|
Netzwerk 27: Complete module fault message
#tmp_sav_accu1_dword := #"1_FAULT_00_15"; #tmp_sav_accu1_dword := SHL_DWORD(IN := #tmp_sav_accu1_dword, N := 16); "DatOfMod".P01.STS."1_ModuleFlr_00_31" := DW#16#FFFFFFFF AND (#tmp_sav_accu1_dword OR #"2_FAULT_00_15");
#tmp_sav_accu1_dword := #"3_FAULT_00_15"; #tmp_sav_accu1_dword := SHL_DWORD(IN := #tmp_sav_accu1_dword, N := 16); "DatOfMod".P01.STS."2_ModuleFlr_00_31" := DW#16#FFFFFFFF AND (#tmp_sav_accu1_dword OR #"4_FAULT_00_15");
#FLT_MODULE := 0 <> "DatOfMod".P01.STS."1_ModuleFlr_00_31" OR 0 <> "DatOfMod".P01.STS."2_ModuleFlr_00_31"; |
|
To go to next HMI image use the touch buttons; some of them are interactive. |