Guten Abend allerseits,
ich hab ein kleines Problem mit einem automatischen Reset den ich an einem Robi durchführen möchte. KRC2 mit V5.5.4
Ich warte im Startprogramm bis sich alle Stationen im Automatikablauf befinden und setzte mir dann einen Merker den ich mittels eines Interrupts überwache.
;*** Ueberwachung der Automation ***;
;***********************************;
INTERRUPT OFF 1
WAIT FOR m_automatikbetrieb
GLOBAL INTERRUPT DECL 1 WHEN NOT m_automatikbetrieb DO up_reset()
INTERRUPT ON 1
Soweit läuft das dann auch. Wenn der Automatikbetrieb weggeht, wird das up_reset auch aufgerufen.
DEF up_reset( )
DECL STATE_T STAT
DECL MODUS_T MODE
BRAKE
;Programm zuruecksetzen
;**********************
CWRITE($CMD,STAT,MODE,"Stop/R1/startprogramm()")
WAIT SEC 0.5
CWRITE($CMD,STAT,MODE,"Cancel/R1/startprogramm()")
WAIT SEC 0.5
CWRITE($CMD,STAT,MODE,"Run/R1/startprogramm()")
END
Alles anzeigen
Und hier kommt das Problem. Durch den Brake-Befehl bleibt der Roboter stehen. Die nächsten Befehle "liest" er, springt in das Startporgramm zurück und fährt weiter.
Das Programm wird nicht gestoppt, nicht gecancelt und nicht neu gestartet.
Stimmt da vielleicht etwas an meiner Denkweise nicht?
Stimmt der Syntax nicht? Wobei ich den immer so verwende!
Für eine kurze Gedankenstütze wäre ich sehr dankbar.