09.02.2013 Aufrufe

Thesis - RWTH Aachen University

Thesis - RWTH Aachen University

Thesis - RWTH Aachen University

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

194 C.1 Theoretische Grundlagen der Manipulatorkinematik<br />

Pfadkorrektur<br />

Die Pfadkorrektur bezieht sich auf die Anpassung der Stützstellen des Pfades, so dass die Roboterbewegung<br />

während der Berechnung eines Verhaltens kompensiert wird. Dabei nimmt der neue<br />

Anfangspunkt des Pfades die aktuelle Position des Roboters an und die beiden letzten Stützstellen<br />

bleiben erhalten, um das ursprüngliche Ziel und die Bewegungsrichtung an der Zielposition nicht<br />

zu verfälschen. Alle anderen Stützstellen müssen so geändert werden, dass sich der neue Pfad dem<br />

ursprünglichen Pfad anpasst, je mehr er sich dem Ziel nähert.<br />

Sei Psol = { � P1,sol, . . . , � Pk,sol} der gegebene Pfad, � P1,tat die aktuelle Anfangsposition des Manipulators<br />

und k die Anzahl der Stützstellen des Pfades. Zur Korrektur des Pfades wird der Fehler in der<br />

Anfangsposition mit der Anzahl der noch bevorstehenden Stützstellen k − l − 2 im Verhältnis zu<br />

k − 2, also zu der Anzahl der Stützstellen bis der vorletzten Stützstelle, gewichtet und zur anzupassende<br />

Stützstelle hinzuaddiert. Demnach wird die angepasste Stütztelle � Pl,kor wie folgt bestimmt:<br />

�Pl,kor = � Pl,sol + ( � P1,tat − � k − l − 2<br />

P1,sol)<br />

k − 2<br />

(C.37)<br />

Dadurch wird die Abweichung vom gewünschten Pfad geringer, je mehr Stützstellen der Manipulator<br />

durchläuft. Gleichung C.37 ergibt einen glatten Pfad, der die ursprüngliche Form der Bewegung<br />

erhält.<br />

Trajektorieregler<br />

Aus dem Ausgabepfad eines Verhaltens muss eine entsprechende Trajektorie bestimmt werden, die<br />

mit einem Trajektorieregler abgefahren wird. Da der Manipulator mit Gelenkgeschwindigkeiten angesteuert<br />

wird, müssen zuerst die Stützstellen, falls sie im kartesischen Raum definiert sind, anhand<br />

der inversen Kinematik in Gelenkstellungen umgewandelt werden (siehe Abschnitt C.1.2) 6 . Danach<br />

wird für jedes Gelenk eine kontinuierliche Funktion der Winkelstellung in Abhängigkeit von der<br />

Zeit definiert, die das Gelenk von der aktuellen Stellung in die Winkelstellung der nächsten Stützstelle<br />

überführt. Dabei müssen alle Gelenke die Winkelstellungen der Stützstellen zu derselben Zeit<br />

erreichen, um die angegebene Position im Raum anzunehmen. Der gesamte Programmablauf des<br />

Trajektoriereglers ist in Abbildung C.9 dargestellt.<br />

Als Funktionen für die Winkelstellungen werden in dieser Arbeit kubische Polynome verwendet<br />

(Gleichung C.38), da sie stetig differenzierbar sind und eine kontinuierliche erste und zweite Ableitungen<br />

haben. Dies erzeugt eine glatte Bewegung der Gelenke und hält dadurch die mechanische<br />

Anspannung der Gelenkmotoren gering [Cra89]. Sei θi(t) der Winkelwert von Gelenk i zu Zeitpunkt<br />

t, dann ist die Funktion für die Winkelstellungen:<br />

θi(t) = a0i + a1it + a2it 2 + a3it 3<br />

Aus der Gleichung C.38 ergibt sich ein parabolisches Geschwindigkeitsprofil:<br />

und ein lineare Beschleunigung:<br />

˙θi(t) = a1i + 2a2it + 3a3it 2<br />

(C.38)<br />

(C.39)<br />

¨θi(t) = 2a2i + 6a3it (C.40)<br />

6 Die Ausführung der Trajektorie wird im Gelenkraum geregelt, um somit Singularitäten der Roboter Jacobi Matrix<br />

(Gleichung C.32, die bei einer Regelung im kartesischen Raum vorkommen können, zu umgehen.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!