Hallo,
ich bin gerade dabei einen Prüfablauf mittels eines Roboters zu realisieren.
Der Roboter soll bei der LIN Bewegung durch einen Interrupt stoppen und durch ein Freigabesignal wieder in seine HOME Position fahren und das Programm von vorne abarbeiten. Leider funktioniert mein Programm nicht so wie ich es mir vorstelle. Nachdem ich hier schon jedes Thema über den Interrupt gelesen und auch die Doku von Kuka gelesen habe was über den Interrupt drinsteht, habe ich mich entschlossen mal direkt hier nachzufragen.
[size=2]DEF check_1 ( )[/size]
[size=2]INTERRUPT DECL 1 WHEN $IN[36] == TRUE DO ERROR( )[/size]
[size=2]inter()[/size]
[size=2]END[/size]
[size=2]________________________________________________________________________[/size]
[size=2]DEF inter()[/size]
[size=2]PTP XHOME[/size]
[size=2]LOOP[/size]
[size=2] WAIT FOR $IN[33] == TRUE[/size]
[size=2] PTP Xvorpos[/size]
[size=2] WAIT FOR $IN[34] == TRUE[/size]
[size=2] PTP XPOS_2[/size]
[size=2] WAIT FOR NOT $IN[36][/size]
[size=2] INTERRUPT ON 1[/size]
[size=2] WAIT FOR $IN[35] == TRUE[/size]
[size=2] LIN XPRUEFEN[/size]
[size=2] WAIT FOR $IN[37] == TRUE[/size]
[size=2] PTP XHOME[/size]
[size=2] INTERRUPT OFF 1[/size]
[size=2]ENDLOOP[/size]
[size=2]END[/size]
[size=2]________________________________________________________________________[/size]
[size=2]DEF ERROR()[/size]
[size=2]INTERRUPT OFF 1[/size]
[size=2]BRAKE[/size]
[size=2]WAIT FOR $IN[37] == TRUE[/size]
[size=2]RESUME[/size]
[size=2]END[/size]
Durch den RESUME Befehl steht nach dem ERROR Programm der Programmzeiger an dem END im check_1 und gibt eine Fehlermeldung aus "Fortsetzstart nicht möglich" (Ist klar, da er die Programme abbricht). Ich brauche aber den RESUME Befehl, sonst fängt er nach dem ERROR Porgramm an, die LIN Bewegung bis zum Ende zu fahren.
Wenn ich anstatt dem RESUME Befehl hier mein inter() eintrage, macht er das was ich will, er springt wieder in das Programm inter oben rein und arbeitet es wieder ab, nur wird beim zweiten Durchlauf, der Interrupt nicht erkannt.
Über Hilfe würde ich mich freuen.
Grüße