Hallo,
kann ich eigentlich statt einem BRAKE, dass ja bei einem nicht durch einen Interrupt
aufgerufen Programm verboten ist, ein CWRITE($CMD,STAT,MODE,"STOP 1") verwenden??
Rainer
Hallo,
kann ich eigentlich statt einem BRAKE, dass ja bei einem nicht durch einen Interrupt
aufgerufen Programm verboten ist, ein CWRITE($CMD,STAT,MODE,"STOP 1") verwenden??
Rainer
Nachtrag: ich will die gleiche Funktion wie das "BRAKE" es macht!
Hallo,
kannst du so machen STOP 1 ist identisch mit BRAKE F (Bahntreu), KUKA macht es auch,
DECL STATE_T STAT
DECL MODUS_T MODE
MODE=#SYNC
IF $FLAG[1]==TRUE THEN
CWRITE($CMD,STAT,MODE,"RUN/R1/A6()")
$FLAG[1]=FALSE
ENDIF
IF $FLAG[2]==TRUE THEN
CWRITE($CMD,STAT,MODE,"STOP 1")
$FLAG[2]=FALSE
ENDIF
IF $FLAG[3]==TRUE THEN
CWRITE($CMD,STAT,MODE,"CANCEL 1")
$FLAG[3]=FALSE
ENDIF
Hallo,
Vielen Dank! hab viele Programm die ich "doppelt" gemacht habe!
eines mit Brake das andere ohne --> was nicht sehr clever war
Rainer
Hi,
das ist der Schreibmodus des Kommandokanals, in dem Fall syncron, kannst du noch die diese verschiedenen Arten initialisieren,
SYNC
ASYNC
ABS
COND
SEQ
der Modus muss unbedingt initialisiert werden und ist ein ENUM vom Typ MODUS_T (Aufzählungstyp), bis dann Christian ... .
Hallo,
kann ich auch ein Brake "ohne F" mit dieser Methode realisieren?
Rainer
Hallo Rainer,
yes, ist dann STOP 2, bis dann ... .
Danke Christian,
schaut jetzt so aus:
in meinen Programmen:
STOP_ROBOT (#FAST)
und das Globale Unterprogramm:
GLOBAL DEF STOP_ROBOT (STOP_TYP: IN)
;Beginning-Variables
DECL STATE_T STAT
DECL MODUS_T MODE
DECL ST_TYP STOP_TYP
MODE=#SYNC
;End
REPEAT
IF (STOP_TYP == #FAST) THEN
CWRITE($CMD,STAT,MODE,"STOP 1") ;Brake F
ELSE
CWRITE($CMD,STAT,MODE,"STOP 2") ;Brake
ENDIF
UNTIL $ROB_STOPPED
END
;ENDFOLD ;***********************************
Gruss Rainer
Hallo,
kann ich auf diese Weise einen Stop 0 auslösen?
Rainer
Hallo,
STOP 0 hält den Sumbitinterpreter an.
mfg
notime
Hallo,
wie schon gesagt, Stop 0 halte den Submit Interpreter an, Stop 1 und 2 den Roboter Interpreter.
Da gibt es schone einen kleinen Unterschied zu einem Brake oder Brake F.
Hier wird nur die aktuelle Bewegung angehalten - das Progarmm laeuft weiter.
Gruss Stefan
Hallo
ein Brake stopt die Bewegung net das Programm
mit dem Cwrite Stop 1 hälst du das ganze Programm an und brauchst dementsprechen auch wieder die
Anstartgeschichte in A-Extern (Drive Off, Drive On, Confmess, Ext_Start usw.)
Gruß Loipe
Oh Oh!
Rainer
also wenn die Motoren anbleiben dann nur noch ein weiteres mal $Ext_Start kommt drauf an wie die SPS programmiert ist wenn unsere Roboter das programm anhalten sieht das die SPS erstmal als Fehler und du fängst vom neuen an.
aber auch ein weiteres mal $ext_start ist nicht unbedingt schön wenn der Roboter z.B. bei ner suchfahrt geziehlt anhalten soll.
das Brake hat schon seine daseins berechtigung
wo willst du denn kein Brake mehr haben und wieso?
Gruß Loipe
Hallo Rainer,
eigentlich habe ich es grad andersrum gemeint.
CWRITE - cWrite ist wie betaetigen der Stopptaste am KCP.
Bei Brake ohne weitere Bedingung wuerde die Bewegung anhalten aber sofort fortgesetzt, oder mit der naechsten weitergemacht werden.
Ich wollte damit eigentlich nur sagen, das es einen Unterschied gibt.
Gruss stefan
Hallo noch mal,
kommt natürlich auf die Betriebsart an, wenn Automatik stand alone reicht dir ein,
CWRITE($CMD,STAT,MODE,"RUN/R1/ANWENDERPROGRAMM()")
wenn extern Betrieb, vor allem einer mit übergeordneter Steuerung oder ein auf der KRC gefaketer extern Betieb, ist aber alles in allem kein besonderes Problem die ganze Sache wieder anzustarten!
Hallo noch mal,
kommt natürlich auf die Betriebsart an, wenn Automatik stand alone reicht dir ein,
CWRITE($CMD,STAT,MODE,"RUN/R1/ANWENDERPROGRAMM()")
wenn extern Betrieb, vor allem einer mit übergeordneter Steuerung oder ein auf der KRC gefaketer extern Betieb, ist aber alles in allem kein besonderes Problem die ganze Sache wieder anzustarten!
... wo ist der post geblieben, was geht hier heute ... ??? !!! !
Du musst ein Benutzerkonto haben um einen Kommentar hinterlassen zu können