Die Point-to-Point Bewegung (PTP) ist die einfachste und gleichzeitig schnellste Bewegungsart, um den Tool Center Point (TCP) von der momentanen Position zu einer vorgegebenen Zielposition zu verfahren. Die Gesamtbewegungsdauer wird unter Berücksichtigung der Grenzwerte für Achsbeschleunigung und Achsgeschwindigkeit von der Roboterachse mit der maximalen Achslaufzeit, der sogenannten Leitachse, vorgegeben. Die Geschwindigkeitsprofile der anderen Roboterachsen werden so synchronisiert (PTP-synchron), dass alle Achsen zum selben Zeitpunkt die vorgegebene Zielposition erreichen. D.h. alle Roboterachsen starten und beenden die Bewegung gleichzeitig.
Die PTP-Befehle unterscheiden sich grundsätzlich durch:PTP-Absolutbewegungen beziehen sich auf das Basis-Koordinatensystem und werden in Abhängigkeit vom Koordinatensystem der Zielposition wie folgt verwendet:
- die Wahl des Koordinatensystems (kartesisch, achsspezifisch)
- die Angabe der Zielposition als Absolut- oder Relativposition
kartesische Koordinaten (x,y,z,a,b,c):
ptp(hnd,445,0,615,0,90,0); achsspezifische Koordinaten (a1,a2,a3,a4,a5,a6):
ptpaxis(hnd,10,-90,90,20,5,45);
PTP-Relativbewegungen beziehen sich auf die aktuelle IST-Position des Roboters. In Abhängigkeit vom Koordinatensystem wird eine positive bzw. negative Positionsänderung relativ zur aktuellen Roboterposition angegeben:
kartesische Koordinaten (x,y,z,a,b,c):
ptprel(hnd,+30,+5,-20,0,-15,+5); achsspezifische Koordinaten (a1,a2,a3,a4,a5,a6):
ptprelaxis(hnd,+5,+5,0,-5,-5,-5);
PTP-Befehle mit ÜberschleifenSollen bei einer PTP-Bewegung mehrere Bahnpunkte nacheinander angefahren werden, so kommt der TCP i.d.R. in jedem der Zielpunkte zum Stillstand. Für die Realisierung einer kontinuierlichen Bewegung wird das sogenannte Überschleifen genutzt. Dabei werden, abgesehen von Start- und Zielpunkt, die Bahnzwischenpunkte nicht genau angefahren, sondern überschliffen. Überschleifpunkte können mit den PTP-Befehlen, die im Funktionsnamen das Schlüsselwort:
cptp z.B. ptpcptp(hnd,...), ptpcptpcdis(hnd,...), ptpcptpcori(hnd,...), ptpcptpcvel(hnd,...)
enthalten, hinzugefügt werden. Für das sogenannte Bahnüberschleifen können Überschleifkriterien formuliert werden. Die folgenden Kriterien legen Grenzwerte für den Überschleifvorgang fest:
cptp
cdis
cori
cvel
Die Variable cptp kann mit der m-Funktion setcptp(hnd,value) als Prozentsatz (0...100) definiert werden. Je größer cptp, umso mehr wird die Bahn abgerundet.
Mit der Variablen cdis kann durch die m-Funktion setcdis(hnd,value) eine translatorische Distanz festgelegt werden. Das Überschleifen wird eingeleitet, wenn diese Distanz zum Bahnzwischenpunkt unterschritten wird.
Anhand der Variablen cori wird mittels der m-Funktion setcori(hnd,value) eine Orientierungdistanz festgelegt. Das Überschleifen wird eingeleitet, wenn der dominierende Roboterorientierungswinkel die zugewiesene Winkeldistanz zum Bahnzwischenpunkt unterschreitet.
Mit der m-Funktion setcvel(hnd,value) kann für die Variable cvel ein Geschwindigkeitsgrenzwert in Prozent (0...100) zugewiesen werden. Mit dem Überschleifen wird begonnen, wenn die Robotergeschwindigkeit beim Anfahren des Bahnzwischenpunktes diesen Grenzwert unterschreitet.
Das folgende Beispiel illustriert die Verwendung der PTP-Befehle mit Überschleifen:
ptp(hnd,...);
ptpcptp(hnd,...);
ptp(hnd,...);
ptpcptpcdis(hnd,...);
lin(hnd,...);
Es wird zunächst ein PTP-Überschleifen mit dem cptp-Kriterium ausgeführt. Anschließend wird erneut ein PTP-Überschleifen nach dem cptp-Kriterium eingeleitet, wobei jedoch zusätzlich für den nachfolgendem Bahnbewegungsbefehl lin(hnd,...) explizit das Distanzkriterium cdis gilt.