Grundstellungsfahrt über Taster / Homing

Ich arbeite an einer programmsequenz für unseren ur5e.
Bei programm unterbrechung und programmstop oder nach aktivieren von digitalen eingang 1(Button für Programmstop), soll bei aktivieren von digitalen eingang 2 (Button für Homefahrt) in die sichere home position gefahren werden.

Ich habe es bereits mit urscript und folgenden code versucht:

URScript Programm zur Fahrt in sichere Home-Position nach Programmstop oder digitaler Eingangsunterbrechung

Definiere die sichere Home-Position

home_pose = p[0.1, -0.5, 0.3, -1.57, 0, 0]

Warte auf Programmstop oder Aktivierung von digitalem Eingang 1

while True:
if not is_program_running() or get_digital_in(1):
break
sleep(0.1)

Warte auf Aktivierung von digitalem Eingang 2

while True:
if get_digital_in(2):
break
sleep(0.1)

Fahre in die sichere Home-Position

movej(home_pose, a=1.2, v=0.25)

Es kommt aber immer ein Syntaxfehler…

Hat jemand eine Idee oder gibt es andere Möglichkeiten?

Vielen dank!

Hi @sascha.benthien

ich bin mir nicht genau sicher, wie das in den in dem Script aussehen muss,
aber ich würde da 2 Schleifen für nehmen,.
Die eine ist aktiv, wenn NICHT der Eingang 2 kommt (hier würde ich dann den “normalen” Prozess/ Ablauf drin programmieren),
die 2te Schleife schaut drauf, DASS Eingang 2 aktiv ist (Hier dann die routine fürs Homing programmieren).

Ich weiß nicht, ob es bei dir auch zutrifft, aber ich musste schauen, WO mein UR steht, wenn ich das Programm gestoppt habe oder die Safety ausgelöst wurde.
Denn je nachdem wie der UR steht, kann es sein, dass du eine andere Route fahren musst, um den Robi wieder in Home zu bekommen (also ohne Crash).

Grüße aus Luxembourg!