Eine Bewegungsanweisung leitet den Roboter an, sich auf eine bestimmte Art und mit einer bestimmten Geschwindigkeit zu einer bestimmten Position in der Arbeitszelle zu bewegen. Eine Bewegungsanweisung beinhaltet:
Bewegungsart - Wie bewegt sich der Roboter zu der Position
Positionsanzeige-Symbol - Zeigt an, dass sich der Roboter an der geteachten Position befindet
Positionsdaten - Wohin bewegt sich der Roboter
Bewegungsabschlussart - Wie beendet der Roboter seine Bewegung an der Position
Geschwindigkeit - Wie schnell bewegt sich der Roboter zu einer Position
Bewegungsoptionen - Zusätzliche Befehle, die bestimmte Aufgaben während der Roboterbewegung ausführen
Ein typisches Beispiel für eine Bewegungsanweisung ist in Abbildung 2, "Typische Bewegungsanweisung", dargestellt.
Bei der Wrist-Joint-Bewegung (WJNT) kann der Roboter nur lineare oder Kreis-Bewegungen ausführen.
Bewegungsart definiert, wie der Roboter sich zu der Zielposition bewegt. Es gibt drei Bewegungsarten:
Joint
Linear
Kreisförmig
J P[2] 50% FINE
Joint-Beweg.
Bei der Joint-Bewegung (Achsinterpolation) bewegen sich alle beteiligten Achsen gleichzeitig zu der Zielposition. Die Bewegungen der einzelnen Achsen beginnen zur gleichen Zeit und enden auch zur gleichen Zeit.
Sie wird an der Zielposition programmiert.
Die Geschwindigkeit wird entweder als prozentualer Anteil der Gesamt-Standard-Geschwindigkeit oder in Sekunden angegeben. Die tatsächliche Geschwindigkeit der Bewegung hängt von der Geschwindigkeit der langsamsten Achse ab. Siehe Abschnitt 5.7, "Geschwindigkeit" .
Abbildung 3, "Joint-Bewegungsart" zeigt ein Beispiel für eine Joint-Bewegung.
L P[2] 100mm/sec FINE
Lineare Bewegung
Bei der linearen Bewegung bewegt sich der Werkzeugmittelpunkt in einer geraden Linie von der Start- zur Zielposition.
Sie wird an der Zielposition programmiert.
Die Geschwindigkeit wird in Millimeter pro Sekunde, Zentimeter pro Sekunde, Zoll pro Minute, Grad pro Sekunde oder Sekunden angegeben. Siehe Abschnitt 5.7, "Geschwindigkeit" .
Während einer linearen Bewegung ändert sich die Ausrichtung des Werkzeugs allmählich, während der Roboter sich von der Startposition zur Zielposition bewegt, abhängig davon, wie die Zielposition programmiert ist.
Abbildung 4, "Lineare Bewegungsart" zeigt ein Beispiel für eine lineare Bewegung.
Die Lineare Bewegungsart kann auch für eine Rotationsbewegung um den Werkzeugmittelpunkt herum genutzt werden, während die Position beibehalten wird. Die Geschwindigkeit für diese Art der Bewegung wird in Grad pro Sekunde angegeben. Abbildung 5, "Lineare Bewegungsart genutzt für Rotation um den Werkzeugmittelpunkt" zeigt ein Beispiel für eine lineare Bewegung, die für eine Rotation um den Werkzeugmittelpunkt genutzt wird.
C P[2] P[3] 100mm/sec FINE
Kreisförmige Bewegung
Bei der Kreisförmigen Bewegung bewegt sich der Werkzeugmittelpunkt in einem Bogen von der Start- zur Zielposition.
Sie wird an der Zwischenposition programmiert.
Die Geschwindigkeit wird in Zoll pro Minute, Millimeter pro Sekunde und Zentimeter pro Minute angegeben. Siehe Abschnitt 5.7, "Geschwindigkeit" .
Wenn Sie eine Bewegungsanweisung hinzufügen, die eine Kreisförmige Bewegungsart hat, erscheint am Bildschirm folgendes:
C P[2] P[3] 100 mm/sec FINE
Die erste Position, im Beispiel P[2], ist die Zwischenposition. Die Zwischenposition wird automatisch als die aktuelle Roboterposition gespeichert, wenn Sie eine Bewegungsanweisung hinzufügen. Die zweite Position, im Beispiel P[3], ist die Zielposition. Nachdem Sie die Anweisung für die Kreisförmige Bewegung hinzugefügt haben, müssen Sie die Zielposition mit Hilfe der TOUCHUP-Funktionstaste, F5, speichern.
Wenn Sie einen bestehenden Punkt in "C" ändern, wird diese Position die Zwischenposition, oder Via-Position.
Um eine komplette Umdrehung zu programmieren, müssen Sie zwei Kreisförmige Bewegungsanweisungen hinzufügen. Es entstehen dann zwei Zwischenpositionen und zwei Zielpositionen. Kreisförmige Bewegungsanweisungen können hinzugefügt werden durch:
Einfügen einer Zeile.
Zurückkehren zu DEFAULT (Standard).
Wählen von [INST].
Bearbeiten einer Standardanweisung, um eine Kreisförmige Bewegungsanweisung hinzuzufügen.
Teachen eines Punkts mit dem aktuellen Standard und anschließendes Modifizieren der Zeile, so dass ein Befehl für eine Kreisförmige Bewegung entsteht.
Die Steuerung der Ausrichtung an der Zwischenposition (Via) gewährleistet, dass der Roboter den Via-Punkt am geteachten Ausrichtungspunkt durchläuft. Die Ausrichtung oder Orientierung wird zwischen Start-, Via- und Endpunkt gleichmäßig verändert.
Abbildung 6, "Kreisförmige Bewegungsart" zeigt ein Beispiel für eine kreisförmige Bewegung.
In Abbildung 7, "Neustart einer Kreisförmigen Bewegungsanweisung" wird an der Zielposition der kreisförmigen Bewegung ein Einzelschritt-Stopp durchgeführt. Sie können den Roboter dann im Tippbetrieb verfahren.
Wenn in Abbildung 8, "Neustart einer Kreisförmigen Bewegungsanweisung", die Programmausführung nach einem Einzelschritt-Stopp und anschließendem Tippbetrieb neu gestartet wird, bewegt sich der Roboter mit einer linearen Bewegung zum Endpunkt der vorherigen kreisförmigen Bewegung.
In den Positionsdaten sind Position, Ausrichtung und Konfiguration des Werkzeugmittelpunkts enthalten, wenn eine Bewegungsanweisung zu einen Programm hinzugefügt wird. Die Positionsdaten werden gespeichert, wenn die Bewegungsanweisung dem Programm hinzugefügt wird. Näheres zum Hinzufügen von Bewegungsanweisungen finden Sie im Kapitel "Entwerfen und Erstellen eines Programms" im Installations- und Bedienhandbuch.
Die Positionsinformationen bestehen aus sieben Komponenten, wie in Abbildung 9, "Positionsdaten" gezeigt. Diese Komponenten werden von dem Positionsbefehl, P[n], dargestellt.
Die Lage-Komponenten, (x,y,z), bestimmen die dreidimensionale Lage der Position.
Die Ausrichtungskomponenten (w,p,r) bestimmen die Rotation um die x-, die y- und die z-Achse.
Die Konfigurationskomponente bestimmt den Zustand der Achsen, wenn der Roboter die Zielposition erreicht. Die Ausrichtung der Handgelenksachsen an der Zielposition bleibt gleich, aber die Ausrichtung der anderen Achsen kann sich ändern.
In einer Bewegungsanweisung werden die Positionsdaten als Positionsbefehl, P[n], oder Positionsregister, PR[x], dargestellt. Wobei n die Positionsnummer darstellt. Wobei x die Positionsregisternummer darstellt. Ein Positionsbefehl speichert die Positionsdaten mit der Bewegungsanweisung in dem Programm. Ein Positionsregister speichert die Positionsdaten an einem Speicherplatz getrennt von der Bewegungsanweisung. Siehe Abschnitt 19, "POSITIONSREGISTERANWEISUNGEN".
Die Positionsnummer kennzeichnet die Position. Positionsnummern werden automatisch zugewiesen, wenn eine Bewegungsanweisung einem Programm hinzugefügt wird. Als erstes wird die [1], dann die [2] usw. zugewiesen.
Wenn Sie eine Position vor einer bereits bestehenden Position hinzufügen, erhält diese automatisch die letzte Positionsnummer, unabhängig von ihrer Stelle im Programm. Sie können die Positionen umnummerieren lassen, so dass die Positionsnummern in Ihrem Programm wieder in der richtigen Reihenfolge erscheinen.
Wenn Sie Positionen löschen, behalten alle geteachten Positionen ihre derzeitigen Nummern, sofern Sie sie nicht umnummerieren lassen.
Positionen können auch Kommentare mit 1 bis 16 Zeichen haben. Sie können diese angeben, wenn Sie Positionsdaten hinzufügen oder modifizieren.
Näheres zum Modifizieren von Positionen in einem Programm finden Sie im Kapitel "Entwerfen und Erstellen eines Programms" im Installations- und Bedienhandbuch.
Die Positionsbestätigung bietet eine visuelle Anzeige (ein @-Symbol) in einer Bewegungszeile, wenn sich der Roboter in der Nähe der Position befindet. Um die Funktion "Positionsbestätigung" zu konfigurieren, legen Sie die Systemvariable $MNDSP_POSCF mit einer Einstellung in Tabelle 3, "$MNDSP_POSCF-Konfigurationseinstellungen" fest.
Tabelle 3. $MNDSP_POSCF-Konfigurationseinstellungen
$MNDSP_POSCF | Beschreibung | Programmbeispiel |
---|---|---|
0 (deaktiviert) | Das Symbol "@" wird im Editor nicht angezeigt. | 1:J P[1] 100% FINE 2:J P[2] 40% FINE : Arc Start E1[1] 3:L P[3] WELD_SPEED FINE : Arc End E1[3] 4:J P[1] 100% FINE |
1 (Mehrere @) | Das Symbol "@" wird neben allen Positionen angezeigt, wenn sich der Roboter aktuell in der Nähe dieser Positionen befindet. | 1:J @P[1] 100% FINE 2:J P[2] 40% FINE : Arc Start E1[1] 3:L P[3] WELD_SPEED FINE : Arc End E1[3] :J @P[1] 100% FINE |
2 (Einzelnes @) | Das Symbol "@" wird neben der Position der aktuellen Zeile angezeigt, wenn sich der Roboter in der Nähe dieser Position befindet. | 1:J @P[1] 100% FINE 2:J P[2] 40% FINE Arc Start E1[1] 3: P[3] WELD_SPEED FINE : Arc End E1[3] 4:J P[1] 100% FINE |
Der Teach Pendant-Editor kann in jeder Bewegungszeile Informationen zum Bewegungsstatus anzeigen. Das in Abb. 10, "Ein Beispielprogramm im Anzeigemodus 1 " gezeigte Beispielprogramm zeigt die Distanzen von allen Positionen im Programm zum aktuellen Werkzeugmittelpunkt (TCP) in Millimetern an.
Die Distanzen werden kontinuierlich aktualisiert, während der Roboter sich bewegt. Diese Funktion kann beim Teachen oder Testen von Programmen hilfreich sein. Dies ist der Anzeigemodus 1. In diesem Modus wird die Distanz von der Position zum TCP in mehreren Zeilen angezeigt. Es sind weitere Anzeigemodi verfügbar. Diese zeigen die Daten nur auf der aktuellen Bewegungszeile an.
Diese Funktion wird durch Festlegen der Systemvariablen $MNDSP_MST aktiviert und konfiguriert. Wenn die Funktion aktiviert und konfiguriert ist, kann sie durch Auswahl des Eintrags "Beweg.-Info" in der Liste der EDCMD-Befehle problemlos ein- und ausgeschaltet werden. Siehe Abb. 11, "Beweg.-Info mit EDCMD ein- und ausschalten" .
Abb. 11. "Beweg.-Info mit EDCMD ein- und ausschalten"
TEST JOINT 10 %
1/5
1:J @P[1] 100% FINE__________________
2:J P[2] 40% FINE | 1 Insert |
: Arc Start[1] | 2 Delete |
3:L P[3] WELD_SPEE| 3 Copy |
: Arc End[1] | 4 Find |
4:J @P[1] 100% FINE| 5 Replace |
[End] | 6 Renumber |
| 7 Comment |
| 8 Undo |
| 9 Motion info |
----------+ +-
Das Verhalten der Funktion der Bewegungsstatusanzeige kann mit den folgenden Feldern in der Systemvariablen $MNDSP_MST angepasst werden. Weitere Informationen zu $MNDSP_MST finden Sie im Software-Referenzhandbuch.
$disp_enable schaltet die Bewegungsstatusanzeige im Editor ein oder aus. Sie wird mit "Bewegungstatus" im EDCMD-Menü umgeschaltet.
$disp_edcmd aktiviert die Anzeige der Auswahl des Bewegungsstatus-Menüs im EDCMD-Pullup-Menü.
$disp_inauto aktiviert die Bewegungsstatusanzeige im AUTO-Modus. $disp_enable muss zudem TRUE sein.
$disp_is_on zeigt an, dass der Bewegungsstatus im Editor angezeigt wird.
$disp_rsmdis aktiviert die Anzeige der Wiederaufnahmedistanz im Editor.
$mode_grp[1..7] ist der Anzeigemodus für die einzelnen Gruppen. Gültige Modi sind in Tabelle 4, "Anzeigemodi" aufgelistet. Siehe Tabelle 5, "Beispiele für Anzeigemodi" für ein Beispiel für eine Programmanzeige für die einzelnen Modi.
Tabelle 4. Anzeigemodi
Modus | Beschreibung | Kopf |
---|---|---|
1 | Distanz in EINER Zeile | P[mm zu TCP G1] |
2 | Distanz in mehreren Zeilen | P[mm zu TCP G1] |
3 | BEFEHL PROZENT | P[Bfhl % G1] |
4 | BEFEHL ZEIT | P[Bfhl Zeit G1] |
5 | BEFEHL DISTANZ | P[Bfhl Dist G1] |
6 | BEFEHL DISTANZ AUF | P[Bfhl D UP G1] |
7 | BEFEHL DISTANZ AB | P[Bfhl D DN G1] |
8 | BEFEHL FORTSCHRITT | P[Bfhl PBar G1] |
9 | BEFEHL PROZENT UND DISTANZ AUF | P[Bfhl % UP G1] |
10 | BEFEHL PROZENT UND DISTANZ AB | P[Bfhl % DN G1] |
11 | BEFEHL PROZENT UND ZEIT | P[Bfhl % T G1] |
19 | Hubwinkel in Grad | P[Beweg Grd G1] |
20 | Arbeitswinkel in Grad | P[WkstXZ Gr G1] |
21 | Aktuelle X-Position im Weltkoordinatensystem | P[X (1) mm G1] |
22 | Aktuelle Y-Position im Weltkoordinatensystem | P[Y (2) mm G1] |
23 | Aktuelle Z-Position im Weltkoordinatensystem | P[Z (3) mm G1] |
24 | Aktuelle W-Ausrichtung im Weltkoordinatensystem | P[W (4) Grd G1] |
25 | Aktuelle P-Ausrichtung im Weltkoordinatensystem | P[P (5) Grd G1] |
26 | Aktuelle R-Ausrichtung im Weltkoordinatensystem | P[R (6) Grd G1] |
Positionen können Kommentare mit bis zu 16 Zeichen haben. Wenn der Bewegungsstatus angezeigt wird, sind nur die ersten 10 Zeichen der Befehle sichtbar.
Wenn ein System mehrere Gruppen hat, kann die Bewegungsstatusanzeige Informationen für alle der Gruppen anzeigen. Die Gruppennummer wird im Kopf mit einer kurzen Beschreibung des Anzeigemodus angezeigt. Um die ausgewählte Gruppennummer zu ändern, verwenden Sie den FKTN-Menü-Eintrag WAEHLE GRUPPE. Jede Gruppe kann Daten in einem unterschiedlichen Modus anzeigen. Sie können den Modus für die einzelnen Gruppen mit dem Array $mndsp_mst.$mode_grp[1..6] festlegen.
Wenn ein laufendes Programm angehalten wird, wird der Roboter gestoppt, und die Position des Roboters wird aufgezeichnet. Wenn der Roboter von der aufgezeichneten Stopp-Position bewegt wird, kann er, abhängig von den installierten Optionen, an diese Position zurückkehren, wenn das Programm fortgesetzt wird. Die Distanz, um die der Roboter von der Stopp-Position bewegt wurde, kann in der oberen linken Ecke des Editors angezeigt werden, wenn die Variable $mndsp_mst.$disp_rsmdis = TRUE ist.
Die Modi 1 und 2 zeigen die Distanz zwischen den Programmpositionen und dem Werkzeugmittelpunkt des Roboters an. Die Distanz ist entlang einer geraden Linie, nicht entlang der programmierten Bahn. Die vom Roboter tatsächlich verfahrene Distanz könnte größer sein, wenn sie eine Joint- oder kreisförmige Bewegung umfasst.
Die Verfahrbefehlsmodi 3-11 zeigen die Ausgabe des Bewegungssystems an, während die aktuelle Zeile angezeigt wird. Das Timing dieser Daten geht der tatsächlichen Roboterposition etwas voraus. Die angezeigten Zeiten und Distanzen reflektieren den Verfahrbefehl, nicht die realen Feedback-Daten vom Motor-Encoder. Wenn eine Bewegung angehalten wird, werden die Daten weiterhin angezeigt. Wenn eine Bewegung fortgesetzt wird, reflektieren die angezeigten Daten die Bewegung von der Stopp-Position an die Zielposition.
Die Modi 3-11 zeigen nur Informationen für die Bewegungsarten L, C und A an. In Modi 3-11 zeigen Joint-Bewegungen einen erhöhten Prozentsatz und eine Gesamtzeit wie in Modus 11 an.
Tabelle 5. Beispiele für den Anzeigemodus
Modus | Beispiel | Beschreibung |
---|---|---|
0 | P[Inv. Modus G1] \\\1:J @P[1: ] 100% FINE 2: P[2: ] 40% FINE : Arc Start[1] 3:L P[3: ] WELD_SPEED FINE : Arc End[1] 4:J @P[1: ] 100% FINE |
Es wird kein Bewegungsstatus angezeigt. Dies ist ein ungültiger Modus für diese Gruppe. In diesem Beispiel ist Gruppe 1 für die Anzeige ausgewählt. Der Anzeigemodus für Gruppe 1 ist in $MNDSP_MST.$MODE_GRP[1] angegeben. Wenn der Modus 0 ist oder einige andere Modi in dieser Tabelle nicht aufgelistet sind, wird im Header "Ungültiger Modus" angezeigt, und die Daten werden in den Bewegungszeilen nicht angezeigt. |
1 | P[mm zu TCP G1] \\\1:J @P[1: .000] 100% FINE 2:J P[2: ] 40% FINE : Arc Start[1] 3:L P[3: ] WELD_SPEED FINE : Arc End[1] 4:J @P[1: ] 100% FINE |
Die Distanz dieser Position vom TCP wird nur für diese Zeile angezeigt. In diesem Beispiel ist $MNDSP_MST.$MODE_GRP[1] = 1. Der Cursor ist auf Zeile 1, und der Roboter ist an P[1]. Die Distanz von P[1] zum Werkzeugmittelpunkt (TCP) des Roboters in Millimetern wird als 0.000 angezeigt. Wenn Sie den Roboter von P[1] weg verfahren, wird die Distanz zum Werkzeug dynamisch angezeigt. |
2 | P[mm zu TCP G1] \\\1:J @P[1: .000] 100% FINE 2:J P[2: 26.795] 40% FINE : Arc Start[1] 3:L P[3: 11.520] WELD_SPEED FINE : Arc End[1] 4:J @P[1: .000] 100% FINE |
Distanz in MEHREREN Zeilen. Modus 2 ist ähnlich zu Modus 1. In Modus 2 wird eine Distanz in allen Bewegungszeilen, nicht nur in der Cursorzeile angezeigt. Die Distanz ist von der erfassten Position zum aktuellen Werkzeugmittelpunkt. |
3 | P[Bfhl % G1] \\\3:L P[3: 28% ] WELD_SPEED FINE : Arc End[1] |
BEFEHL PROZENT In Modus 3 wird der Prozentsatz der abgeschlossenen Bewegung angezeigt, während die Bewegung fortschreitet. Sie wird dynamisch aktualisiert. Wenn Sie die Ausführung anhalten, bevor die Position erreicht ist, und dann fortfahren, wird der Prozentsatz auf 0 zurückgesetzt und dann erhöht, um die verbleibende Bewegung zu reflektieren. |
4 | P[Bfhl Zeit G1] \\\3:L P[3: 2.9s] WELD_SPEED FINE : Arc End[1] |
BEFEHL ZEIT In Modus 4 wird die Gesamtzeit angezeigt, die erforderlich ist, um die Bewegung abzuschließen. Sie wird nicht dynamisch geändert, es sei denn, das Geschwindigkeits-Override wird geändert. Wenn der Geschwindigkeits-Override geändert wird, wird die Zeit aktualisiert, um die Gesamtzeit für die gesamte Bewegung im neuen Override zu reflektieren, nicht die verbleibende Zeit. |
5 | P[Bfhl Dist G1] \\\3:L P[3: 24.19] WELD_SPEED FINE : Arc End[1] |
BEFEHL DISTANZ In Modus 5 wird die gesamte Bewegungsdistanz angezeigt. Sie wird während der Bewegung nicht geändert. Wenn Sie die Ausführung anhalten und dann fortsetzen, wird die Distanz zu P[3] von der Anhalteposition aus angezeigt. |
6 | P[Bfhl D UP G1] \\\3:L P[3: 6.758] WELD_SPEED FINE : Arc End[1] |
BEFEHL DISTANZ AUF Modus 6 ist ähnlich zu Modus 3. Er ist dynamisch. Er zeigt die zunehmende Distanz (UP) während der Bewegung zu P[3]. Wenn Sie anhalten und fortfahren, wird die Distanz auf Null zurückgesetzt. Wenn der Einzelschritt aktiv ist, führt der Schrittbetrieb durch die gesamte Bewegung in Zeile 3 zu P[3] ohne anzuhalten zur angezeigten gesamten Bewegungsdistanz, wenn der Roboter P[3] erreicht. |
7 | P[Bfhl D DN G1] \\\3:L P[3: 17.43] WELD_SPEED FINE : Arc End[1] |
BEFEHL DISTANZ AB Mode 7 ist mit Modus 6 vergleichbar, außer dass die Distanz abnehmend (AB - abwärts) gegen Null angezeigt wird. |
8 | P[Bfhl PBar G1] \\\3:L P[3:-- ] WELD_SPEED FINE : Arc End[1] |
BEFEHL FORTSCHRITT In Modus 8 wird eine Fortschrittsleiste angezeigt. Sie verhält sich genauso wie der Prozentsatz in Modus 3, nur grafisch. |
9 | P[Bfhl % UP G1] \\\3:L P[3: 28% 6.758] WELD_SPEED FINE : Arc End[1] |
BEFEHL PROZENT UND DISTANZ AUF In Modus 9 werden sowohl der zunehmende Prozentsatz von Modus 3 als auch die zunehmende Distanz von Modus 6 angezeigt. |
10 | P[Bfhl % DN G1] \\\3:L P[3: 28% 17.43] WELD_SPEED FINE : Arc End[1] |
BEFEHL PROZENT UND DISTANZ AB In Modus 10 werden sowohl der zunehmende Prozentsatz von Modus 3 als auch die abnehmende Distanz von Modus 7 angezeigt. |
11 | P[Bfhl % T G1] \\\3:L P[3: 28% 2.9s] WELD_SPEED FINE : Arc End[1] |
BEFEHL PROZENT UND ZEIT In Modus 11 werden sowohl der zunehmende Prozentsatz von Modus 3 als auch die Gesamtzeit von Modus 4 angezeigt. |
19 | P[Beweg Grd G1] \\\1:J @P[1: —10.277] 100% FINE |
Hubwinkel in Grad Eine negative Zahl zeigt einen Stoßwinkel an. Eine positive Zahl zeigt einen Ziehwinkel an. |
20 | P[WkstXZ Gr G1] \\\1:J @P[1: 36.832 R] 100% FINE |
Arbeitswinkel in Grad Der Header WorkXZ zeigt an, dass der Arbeitswinkel relativ zur XZ-Ebene ist. WorkXY bedeutet relativ zur XY-Ebene. Der Buchstabe L oder R hinter dem Winkel weist darauf hin, dass sich der Brenner links oder rechts neben der Vertikalen befindet. |
21 | P[X (1) mm G1] \\\1:J @P[1: 2070.261] 100% FINE |
Aktuelle X-Position im Weltkoordinatensystem |
22 | P[Y (2) mm G1] \\\1:J @P[1: 25.242] 100% FINE |
Aktuelle Y-Position im Weltkoordinatensystem |
23 | P[Z (3) mm G1] \\\1:J @P[1: 1226.707] 100% FINE |
Aktuelle Z-Position im Weltkoordinatensystem |
24 | P[W (4) Grd G1] \\\1:J @P[1: -2.027] 100% FINE |
Aktuelle W-Ausrichtung im Weltkoordinatensystem |
25 | P[P (5) Grd G1] \\\1:J @P[1: 19.972] 100% FINE |
Aktuelle P-Ausrichtung im Weltkoordinatensystem |
26 | P[R (6) Grd G1] \\\1:J @P[1: 2.375] 100% FINE |
Aktuelle R-Ausrichtung im Weltkoordinatensystem |
Joint-Bewegungen zeigen für die Modi Befehl Distanz keine Distanzen an. Stattdessen werden Prozentsatz und Zeit angezeigt.
Befehlszeiten und Distanzen sind ungefähre Angaben.
Inkrementelle Bewegungen zeigen die Distanz für Modus 1 und 2 nicht ordnungsgemäß an.
Es werden nicht alle Bewegungsoptionen und Formate unterstützt.
Die Einheiten für die Distanz sind immer mm und können nicht geändert werden.
Erweiterte Achsen werden nicht unterstützt.
Die Benutzerkoordinatensystem- (UF, user frame) und die Benutzer-Werkzeug-Koordinatensystem- (UT, user tool frame) Nummer werden am oberen Bildschirmrand des Position Detail-Bildschirms angezeigt. Der folgende Bildschirm zeigt ein Beispiel.
P[1] UF:0 UT:1 CONF: N 00 X 100.000 mm W 12.555 deg Y 100.000 mm P 3.123 deg Z 100.000 mm R .014 deg
Diese Felder zeigen die aktuelle Koordinatensystem-Nummer an.
UF: Benutzerkoordinatensystem-Nummer
0 = Weltkoordinate
1-10 = normale UFRAME-Nummer
F = aktuelle $MNUFRAMENUM
UT: Benutzer-Werkzeug-Koordinatensystem-Nummer
0 = nicht gültig
1-10 = normale UTOOL-Nummer
F = aktuelle $MNUTOOLNUM
Diese Werte können nicht direkt vom Programmiergerät aus modifiziert werden.
Der Positionsregister-Bildschirm zeigt UF und UT im gleichen Feld an und der Wert ist für beide immer "F".
Geschwindigkeit definiert, wie schnell sich der Roboter zu einer Position bewegt.
Die Einheit der Geschwindigkeit hängt von der verwendeten Bewegungsart ab. Abhängig von der Bewegungsart, können Sie die Geschwindigkeit in Millimeter pro Sekunde, Zentimeter pro Minute, Zoll pro Minute, Rotationsgrad pro Sekunde oder in Sekunden angeben.
Während ein Programm läuft, können Sie den Geschwindigkeits-Override mit den Override-Tasten (+% und -%) am Programmiergerät verändern. Der Override-Wert reicht von .01% (sehr präzise) bis 100 % der programmierten Geschwindigkeit. Die programmierte Geschwindigkeit ist die im Programm spezifizierte Geschwindigkeit.
Die programmierte Geschwindigkeit kann das Leistungsvermögen des Roboters nicht überschreiten. Wenn die programmierte Geschwindigkeit nicht erreicht werden kann, tritt ein Fehler auf.
Joint-Bewegung verwendet
Einen prozentualen Anteil (%) der Gesamt-Standard-Geschwindigkeit. Die Geschwindigkeit der Joint-Bewegung kann einen Wert von 1% bis 100% der maximalen Joint-Geschwindigkeit annehmen.
J P[1] 50% FINE
Sekunden (sec), die Zeitdauer der Bewegung. Sekunden kann einen Wert von .1 bis 3200 haben. Diese Angabe wird benutzt für Bewegungen, für die eine genaue Zeitangabe erforderlich ist. Wenn ein Programm während der Ausführung einer Bewegung, die eine Zeitangabe in Sekunden verwendet, angehalten wird und dann wieder aufgenommen wird, bleibt die Steuerung solange im Belegt- und Betriebs-Zustand, bis die Zeit, die bereits abgelaufen war, nochmal abgelaufen ist. Dann beendet der Roboter die Bewegung in der verbleibenden Zeit. Siehe Abb. 13, "Beispiel der Funktion Geschwindigkeit in Sec".
J P[1] 2 sec FINE
L P[2] 2 sec FINE
Lineare und Kreisförmige Bewegungen verwenden
Millimeter pro Sekunde (mm/sec). Dabei reichen die Werte von 1 bis 2000 Millimeter pro Sekunde.
Zentimeter pro Minute (cm/min). Dabei reichen die Werte von 1 bis 12000 Zentimeter pro Minute.
Zoll pro Minute (inch/min). Dabei reichen die Werte von 0,1 bis 4724,41 Zoll pro Minute.
Sekunden (sec), die Zeitdauer der Bewegung. Diese Angabe wird benutzt für Bewegungen, für die eine genaue Zeitangabe erforderlich ist. Wenn ein Programm während der Ausführung einer Bewegung, die eine Zeitangabe in Sekunden verwendet, angehalten wird und dann wieder aufgenommen wird, bleibt die Steuerung solange im Belegt- und Betriebs-Zustand (busy, running), bis die Zeit, die bereits abgelaufen war, nochmal abgelaufen ist. Der Roboter beendet dann die Bewegung in der verbleibenden Zeit. Siehe Abb. 13, "Beispiel der Funktion Geschwindigkeit in Sec".
L P[1] 100mm/sec FINE
o.
C P[1] 100mm/sec FINE
Wenn Sie die Bewegungsart einer Positionsanweisung von Linear zu Joint ändern, kann dadurch eine Änderung des Geschwindigkeitswerts von mm/sec zu einem Standardwert von bis zu 100% hervorgerufen werden. Überprüfen Sie also immer den Geschwindigkeitswert, bevor Sie die Anweisung ausführen. Andernfalls können Personen verletzt oder Ausrüstung beschädigt werden.
Wenn die Geschwindigkeit in mm/sec, cm/min oder inch/min angegeben wird, dann repräsentiert der eingegebene Wert die Geschwindigkeit am Werkzeugmittelpunkt.
Rotationssteuerung der Achsen um den Werkzeugmittelpunkt benutzt Rotationsgrade pro Sekunde (deg/sec). Dabei reichen die Werte standardmäßig von 1 bis 500 Grad pro Sekunde.
L P[1] 90 deg/sec FINE
Sie können die Bewegungsgeschwindigkeit spezifizieren, indem Sie ein Register in einer Bewegungsanweisung verwenden. Der Wert des spezifizierten Registers definiert die Bewegungsgeschwindigkeit. Das wird Variable Bewegungsgeschwindigkeit genannt.
Bevor Sie ein Programm starten, überprüfen Sie alle Registerwerte, die zum Einstellen der Geschwindigkeit in einer Bewegungsanweisung benutzt werden. Andernfalls können unvorhergesehene Bewegungen auftreten, durch die Personen verletzt oder Sachen beschädigt werden könnten.
Ein Programm hält die Vor-Ausführung von nachfolgenden Anweisungen an, wenn es zu einer Bewegungsanweisung mit Register-Geschwindigkeit kommt. Dadurch wird sichergestellt, dass die Bewegungsanweisung den Register-Geschwindigkeitswert verwendet. Siehe Abb. 14, "Beispiel für die Ausführung eines Programms bei variabler Bewegungsgeschwindigkeit".
Diese Funktion wird dann aktiviert, wenn die Systemvariable $RGSPD_PREXE = FALSE. Sie können diese Funktion deaktivieren, indem Sie $RGSPD_PREXE = TRUE setzen. Der Roboter ist allerdings nicht in der Lage sich mit der im Registerwert spezifizierten Geschwindigkeit zu bewegen.
Die folgenden Beispiele zeigen verschiedene Bewegungsarten-Anweisungen, die ihren Geschwindigkeitswert von einem Register (R[ ]) beziehen.
Joint-Bewegungsart
J P[2] R[1]% CNT100
Lineare Bewegungsart
L P[1] R[2]mm/sec FINE
Kreisförmige Bewegungsart
C P[2] P[3] R[3]cm/min FINE
Palettieren
PALLETIZING-B_1 L PAL_1[A_1] R[4]mm/sec CNT100 L PAL_1[BTM] R[4]mm/sec FINE L PAL_1[R_1] R[4]mm/sec CNT100
Die folgenden Merkmale werden verändert, um die variable Bewegungsgeschwindigkeit anzupassen:
Standard-Bewegungsanweisungen enthalten eine Anweisung, die variable Bewegungsgeschwindigkeit benutzt.
Der Bew. Änderung-Bildschirm, der angzeigt wird, wenn Sie REPLACE für eine Bewegungsanweisung im [EDCMD]-Menü wählen, beinhaltet die Menüpunkte zum Spezifizieren der variablen Bewegungsgeschwindigkeit.
Bestimmte Bewegungsgeschwindigkeitswerte sind für variable Bewegungsgeschwindigkeit gültig. Die Werte für die variable Bewegungsgschwindigkeit finden Sie in Tabelle 6, Registerwert-Bereich zum Spezifizieren der variablen Bewegungsgeschwindigkeit. Wenn der spezifizierte Registerwert keinen gültigen Geschwindigkeitswert darstellt (Geschwindigkeitslimit- oder Bereichsüberschreitung), tritt ein Fehler während der Ausführung der Bewegungsanweisung auf.
Tabelle 6. Registerwert-Bereich zum Spezifizieren der variablen Bewegungsgeschwindigkeit
Einheit |
Bereich der Registerwerte |
||
---|---|---|---|
% |
1 bis 100 |
Ganzzahltyp |
|
s |
0.1 bis 3200.0 |
Typ Float (*1) |
|
mm/s |
1 bis 2000 |
Integer type (*2) |
|
cm/min |
1 bis 12000 |
Integer type (*2) |
|
inch/min |
0.1 bis 4724.41 |
Typ Float (*3) |
|
Grad/s |
1 bis 500 |
Ganzzahltyp |
*1 : Eine Stelle hinter dem Komma.
*2 : Das Geschwindigkeitslimit entspricht dem Wert von $MRR_GRP.$SPEEDLIM.
*3 : Eine Stelle hinter dem Komma. Das Limit entspricht dem Wert von $MRR_GRP.$SPEEDLIM/25.4 * 60.
*4 : Das Limit entspricht dem Wert von $MRR_GRP.$ROTSPEEDLIM * 180/3.141.
Wenn Sie die Bewegungsgeschwindigkeit von einem festgelegten Geschwindigkeitswert ändern wollen in einen variablen (Register) Geschwindigkeitswert oder umgekehrt, dann schauen Sie sich die Syntax in Abbildung 15, Syntax zum Ändern der Bewegungsgeschwindigkeit, an.
Um Geschwindigkeitswerte am Bew. Änderung-Bildschirm im Menü [EDCMD] ERSETZ zu ersetzen, befolgen Sie Prozedur 16.1, Geschwindigkeitswerte ersetzen (am Bew. Änderung-Bildschirm im Menü [EDCMD] ERSETZ).
Verfahren 1. Geschwindigkeitswerte ersetzen (mit Bew. Änderung in [EDCMD] ERSETZ)
Sie bearbeiten gerade ein Teach-Pendant-Programm, das Bewegungsanweisungen enthält.
Cursor auf die Zeilennummer der Anweisung, in der Geschwindigkeitswerte ersetzt werden sollen, setzen und F5, [EDCMD], drücken.
Wählen Sie "Ersetz.".
Wählen Sie "Ersetz" in Menü 1 Register 5 Bew. Änderung 2 Aufr 6 3 E/A 7 4 JMP/LBL 8
Wählen Sie "Bew. Änderung". Der folgende Bildschirm zeigt ein Beispiel.
Beweg. Änderung 1 Ersetze Gschw 5 2 Ers. Abschl 6 3 Einfüge Optn 7 4 Lösche Option 8
Wählen Sie "Ersetze Gschw". Der folgende Bildschirm zeigt ein Beispiel.
Wählen Sie "Interpolation". 1 Nicht spezifiz 5 2 J 6 3 L 7 4 C 8 RSR0001 10% 1: L P[1] 20.0sec FINE 2: L P[2] 500mm sec FINE 3: L P[3] R[1]mm sec FINE Wählen Sie "Quelle".
Geben Sie Interpolationstyp (Bewegungsart) der Bewegungsanweisung, nach der gesucht werden soll.
Nicht spezifiz. - sucht nach Joint-, Linearen und Kreisförmigen Bewegungsanweisungen
Joint - sucht nur nach Joint-Bewegungsanweisungen
Linear - sucht nur nach Linearen Bewegungsanweisungen
Kreisförmig - sucht nur nach Kreisförmigen Bewegungsanweisungen
Geben Sie den Geschwindigkeitstyp der gesuchten Bewegungsanweisung an:
Alle Typ - sucht nach Bewegungsanweisungen mit einem Geschwindigkeitswert, einem variablen (Register-) Wert oder einem indirekten variablen (Register-) Wert.
Speed value - sucht nach Bewegungsanweisungen mit einem Geschwindigkeitswert.
R[ ] - sucht nach Bewegungsanweisungen mit einem variablen (Register-) Geschwindigkeitswert.
R[R[ ]] - sucht nach Bewegungsanweisungen mit einem indirekten variablen (Register-) Geschwindigkeitswert.
Der folgende Bildschirm zeigt ein Beispiel.
Geschwindigkeit 1 All Typ 5 2 Geschw.wert 6 3 R[ ] 7 4 R[R[ ]] 8
Geben Sie die Einheiten der Ersatz-Bewegungsanweisung an.
Der folgende Bildschirm zeigt ein Beispiel.
Wählen Sie "Bewegung". 1 % 5 deg/sec 2 mm/sec 6 sec 3 cm/min 7 4 inch/min 8
Wählen Sie den Geschwindigkeitswert der Ersatz-Bewegungsanweisung:
Geschw.wert - ändert die Geschwindigkeit der gefundenen (gesuchten) Bewegungsanweisung in einen Geschwindigkeitswert.
R[ ] - ändert die Geschwindigkeit der gefundenen (gesuchten) Bewegungsanweisung in einen variablen (Register-) Geschwindigkeitswert.
R[R[ ]] - ändert die Geschwindigkeit der gefundenen (gesuchten) Bewegungsanweisung in einen indirekten variablen (Register-) Geschwindigkeitswert.
Der folgende Bildschirm zeigt ein Beispiel.
Wähle Bewegung 1 Geschw.wert 5 2 R[ ] 6 3 R[R[ ]] 7 4 8
Bei der Wahl von R[ ] oder R[R[ ]] muss eine Registernummer eingegeben werden.
Wählen Sie, wie die gefundene Anweisung ersetzt werden soll:
F2, ALLE - ändert alle gefundenen Bewegungsanweisungen unterhalb der aktuellen Zeile in den spezifizierten Geschwindigkeitstyp und Wert.
F3, JA - ändert nur die in der aktuellen Zeile gefundenen Bewegungsanweisungen in den spezifizierten Geschwindigkeitstyp und Wert.
F4, NÄCH - übergeht die gefundene Bewegungsanweisung in der aktuellen Zeile und sucht die nächste Bewegungsanweisung.
F5, ENDE - beendet die Bewegungsmodifizierung.
Der folgende Bildschirm zeigt ein Beispiel.
RSR0001 Ändern OK ?
Die Funktion Suchen und Ersetzen kann beliebig fortgesetzt werden.
Wenn das Suchen und Ersetzen abgeschlossen ist, F5, ENDE, drücken.
Bewegungsanweisungen, die beim Schweißen verwendet werden, verwenden den WELD_SPEED-Parameter. WELD_SPEED wird im Schweißablaufplan, spezifiziert von einer ArcStart-Anweisung, definiert.
Sie können WELD_SPEED nur bei Linearen oder Kreisförmigen Bewegungen verwenden. Wenn Sie die Bewegungsart einer Anweisung, die WELD_SPEED verwendet, von Kreisförmig oder Linear zu Joint ändern, wechselt der Geschwindigkeitswert auf 100%.
Wenn eine Bewegungsanweisung mit WELD_SPEED ausgeführt wird, hängt die verwendete Geschwindigkeit von bestimmten Bedingungen ab.
Wenn die Arc-START-Anweisung vor der WELD_SPEED-Bewegungsanweisung ausgeführt wird, wird die Schweißgeschwindigkeit, die im entsprechenden Schweißablaufplan definiert ist, verwendet.
Wenn die Arc-Start-Anweisung nicht vor der WELD_SPEED-Anweisung ausgeführt wird, wird die Standard-Schweißgeschwindigkeit als Wert für WELD_SPEED benutzt. Die Standard-Schweißgeschwindigkeit wird am SETUP-Weld-System-Bildschirm definiert.
Wenn das Programm ab einer WELD_SPEED-Bewegungsanweisung fortgesetzt wird, wird die Schweißgeschwindigkeit verwendet, die bei Unterbrechung des Programms gültig war.
Wenn die folgende Sequenz ausgeführt wird, während das Programm unterbrochen ist, und das Programm wird dann neu gestartet, wird die Standard-Schweißgeschwindigkeit verwendet:
Im Programm einige Anweisungen zurückgehen.
Cursor auf eine andere Zeile im Programm setzen.
Programm abbrechen.
Die Bewegungsabschlussart definiert, wie der Roboter eine Bewegung in der Bewegungsanweisung beendet. Folgende Bewegungsabschlussarten sind möglich:
Fein
Kontinuierlich
Eckbereich - nur verfügbar, wenn die Bewegungsoption "Konstante Bahn" und die Option "Eckbereich" vorhanden ist
Eckenentfernung - nur verfügbar, wenn die Bewegungsoption "Konstante Bahn" und die Option "Steuerung der Eckenentfernung" vorhanden ist
Die Bewegungsabschlussarten Fein und Kontinuierlich werden in diesem Abschnitt beschrieben. Weitere Informationen zur Abschlussart Eckbereich finden Sie in Abschnitt 6.2 "Erweiterung der Funktion "Konstante Bahn"". Näheres zur Bewegungsabschlussart Eckenentfernung finden Sie in Abschnitt 6.6.
J P[1] 50%
FINE
Die Bewegungsabschlussart Fine macht, dass der Roboter präzise an der Zielposition stoppt, bevor er zur nächsten Position verfährt (Präziser Abschluss der Bewegung).
In Abbildung 16, Roboter-Bewegung mit der Fine-Bewegungsabschlussart, stellt dar, wie der Roboter sich bewegt, wenn die Bewegungsabschlussart Fine spezifiziert ist.
J P[1] 50%
CNT50
Die Bewegungsabschlussart Continuous macht, dass der Roboter langsamer wird, wenn er sich der Zielposition nähert, aber nicht stoppt, bevor er wieder schneller wird und zur nächsten Position verfährt (durchgehende, kontinuierliche Bewegung). Ein Wert von 0 bis 100 definiert, wie nah der Roboter der Zielposition kommt. Bei CNT0 kommt der Roboter der Position am nächsten, bei maximaler Verlangsamung. Bei CNT100 ist der Roboter am weitesten von der Position entfernt, bei minimaler Verlangsamung.
Bestimmte Anweisung, wie z.B. WAIT, machen, dass der Roboter an der Zielposition stoppt und die Anweisung ausführt, bevor er die nächste Anweisung ausführt.
Abbildung 17, Roboter-Bewegung mit der Continuous-Bewegungsabschlussart, stellt dar, wie sich der Roboter bei bestimmten Werten für die Bewegungsabschlussart Continuous bewegt.