Technische Universität München Zentrum Mathematik Prof. Dr. J. Hartl SS 2015 Blatt 3 Angewandte Geometrie Geometrische Modellierung eines Roboters mit zwei Drehgelenken Im euklidischen Raum E 3 seien {O; x1 , x2 , x3 } ein kartesisches Koordinatensystem, a die gerichtete Gerade durch den Ursprung O in x3 -Richtung und b die gerichtete Gerade durch P (1, 0, 0) in x2 -Richtung. Die Punkte X ∈ E 3 werden zunächst um die Achse a durch den Winkel α in die jeweilige Lage X ∗ und anschließend um die Achse b durch den Winkel β in die Lage X ∗∗ gedreht. Für die Geraden g ⊂ E 3 werden die entsprechenden Bezeichnungen g ∗ und g ∗∗ verwendet. a) Beispiel für Vorwärtsrechnung: Man bestimme die Koordinatenvektoren ~x∗∗ der Punkte X ∗∗ in Abhängigkeit von α, β und den Koordinatenvektoren ~x der Punkte X. Ebenso gebe man die Richtungsvektoren ~r∗∗ der Geraden g ∗∗ in Abhängigkeit von α, β und den Richtungsvektoren ~r der Geraden g an. Lösung: Soll bei der Drehung, die X in X ∗ überführt, die Gerade b mitgedreht werden? Nach der Aufgabenstellung nicht, da X ∗ um b und nicht um b∗ gedreht werden soll. Wie kann dann die Bewegung X 7→ X ∗ durch einen seriellen Roboter realisiert werden? Skizze für Ausgangsstellung des Roboters! Achse b um a durch den Winkel α zurückdrehen liefert die Ausgangsstellung des Roboters. Dann X und die Ausgangsstellung von b um a durch den Winkel α drehen, anschließend X ∗ um b durch den Winkel β drehen. Aber da nach der Drehung in die Ausgangsstellung nicht gefragt ist, wird diese Drehung hier auch nicht rechnerisch behandelt. Drehung um a durch den Winkel α: 1 cos α − sin α 0 ~x∗ = sin α cos α 0 ~x 0 0 1 Drehung um b durch den Winkel β: cos β 0 sin β 0 1 0 (~x∗ − p~) ~x∗∗ − p~ = − sin β 0 cos β (Schaut man entgegen der y-Achse auf die xz-Ebene, so bilden x- und z-Achse in dieser Reihenfolge ein Linkssystem.) Damit gilt: cos β 0 sin β cos β − 1 = 0 1 0 ~x∗ − 0 ~x∗∗ = − sin β 0 cos β − sin β cos β − 1 cos β 0 sin β cos α − sin α 0 = 0 0 1 0 sin α cos α 0 ~x − − sin β − sin β 0 cos β 0 0 1 cos β cos α − cos β sin α sin β 1 − cos β sin α cos α 0 ~x + 0 − sin β cos α sin β sin α cos β sin β Richtungsvektoren transformieren sich ohne Translationsanteil: ~r∗∗ cos β cos α − cos β sin α sin β sin α cos α 0 ~r = − sin β cos α sin β sin α cos β b) Beispiel für Rückwärtsrechnung: b1) Der Punkt Q(−1, 0, 1) soll in die x1 x2 -Ebene ε überführt werden. Man gebe eine (notwendige und hinreichende) Bedingung für die zugehörigen Winkel α und β an und bestimme den Ort aller möglichen Lagen von Q∗∗ in ε. Lösung: ~q∗∗ cos β cos α − cos β sin α sin β −1 1 − cos β = sin α cos α 0 0 + 0 = − sin β cos α sin β sin α cos β 1 sin β 2 − cos β cos α + sin β + 1 − cos β − sin α sin β cos α + cos β + sin β Q∗∗ ∈ ε ⇔ 0 = sin β cos α + cos β + sin β ⇔ cos β + sin β(1 + cos α) = 0 Damit Q∗∗ ∈ ε, darf sin β nicht verschwinden. Folglich ist cos α = − cos β − 1. sin β Notwendig und hinreichend dafür, dass es zu gegebenem β ein solches α gibt, ist cos β −1 ≤ − − 1 ≤ 1, sin β also 0 ≤ − cot β ≤ 2 oder −2 ≤ cot β ≤ 0. Damit ist s √ cos β sin α = ± 1 − cos2 α = ± 1 − (− − 1)2 = sin β s cos β cos β cos β 2 + 1)2 = ± −( ) −2 1−( sin β sin β sin β s ± Da in q3∗∗ nur cos α vorkommt und nicht sin α, können bei dem ± beide Vorzeichen gewählt werden. Mögliche Bilder Q∗∗ von Q: ~q∗∗ − cos β cos α + sin β + 1 − cos β − sin α = sin β cos α + cos β + sin β mit den folgenden Bedingungen für α und β: −2 ≤ cot β ≤ 0, cos α = − s sin α = ± −( cos β − 1, sin β cos β 2 cos β ) −2 . sin β sin β Kann man über die Menge der Bilder noch etwas aussagen? Es gilt: x = − cos β cos α + sin β + 1 − cos β = 3 − cos β(− cos β − 1) + sin β + 1 − cos β = sin β cos2 β cos2 β + sin2 β + cos β + sin β + 1 − cos β = +1= sin β sin β 1 + 1. sin β Das liefert zusammen mit s y = − sin α = ∓ −( cos β 2 cos β ) −2 sin β sin β und der Nebenbedingung −2 ≤ cot β ≤ 0 eine Parameterdarstellung der Menge aller möglichen Q∗∗ . Alternative Darstellung als Graph zweier Funktionen: Wegen x = 1 sin β + 1 ist s q 1 x(x − 2) , cos β = ± 1 − sin2 β = ± sin β = x−1 (x − 1)2 und p cos β = ± x(x − 2). sin β Dabei ist notwendig x(x − 2) ≥ 0, also x ≥ 2 oder x ≤ 0, und weil −2 ≤ cot β ≤ 0, gilt sogar p cos β = − x(x − 2). sin β p Wegen −2 ≤ cot β ist dabei x(x − 2) ≤ 2, also x2 − 2x − 4 ≤ 0. Da Gleichheit für x1,2 = √ √ 1 · (2 ± 4 + 16) = 1 ± 5 2 gilt, ist also 1− √ 5≤x≤0 oder 2≤x≤1+ 4 √ 5. Also ist s y = − sin α = ∓ cos β 2 cos β −( ) −2 =∓ sin β sin β q p −x(x − 2) + 2 x(x − 2) für die beiden angegebenen x-Intervalle. Andere Darstellung für die Menge der möglichen Bilder Q∗∗ von Q als algebraische Kurve: q p y = ∓ −x(x − 2) + 2 x(x − 2) =⇒ p y 2 = −x(x − 2) + 2 x(x − 2) =⇒ p y 2 + x(x − 2) = 2 x(x − 2) =⇒ y 4 + 2y 2 x(x − 2) + x2 (x − 2)2 = 4x(x − 2) =⇒ y 4 + 2(y 2 − 2)x(x − 2) + x2 (x − 2)2 = 0 Die Menge der möglichen Bilder Q∗∗ von Q ist enthalten in einer algebraischen Kurve vierter Ordnung. b2) Man bestimme alle Winkelpaare (α, β), für welche die Strecke QS (mit S(0, 1, 2)) in die Ebene ε befördert wird und berechne die Endpositionen Q∗∗ S ∗∗ ⊂ ε. (Anwendung: Ablegen eines Stabes auf einer ebenen Unterlage.) Lösung: Berechnung von S ∗∗ : ~s∗∗ cos β cos α − cos β sin α sin β 0 1 − cos β = sin α cos α 0 1 + 0 = − sin β cos α sin β sin α cos β 2 sin β − cos β sin α + 2 sin β + 1 − cos β cos α sin β sin α + 2 cos β + sin β S ∗∗ ∈ ε ⇔ sin β · (1 + sin α) + cos β · 2 = 0. (∗) Zusammen mit der Bedingung für Q∗∗ ∈ ε sin β · (1 + cos α) + cos β · 1 = 0 (∗∗) ist das ein LGS mit der nichttrivialen Lösung (sin β, cos β)T und der folglich verschwindenden Koeffizienten-Determinante 5 0 = 1 + sin α − 2 − 2 cos α = sin α − 2 cos α − 1. 2 cos α = sin α − 1 (∗ ∗ ∗) =⇒ 4 cos2 α = sin2 α − 2 sin α + 1 =⇒ 5 sin2 α − 2 sin α − 3 = 0 =⇒ sin α = sin α1 = 1, √ 2± 4+60 10 sin α2 = − 3 5 Diese Bedingung ist notwendig, aber nicht notwendig hinreichend. 1. Fall: sin α1 = 1: Dann: cos α1 = 0 und α1 = π2 . Mit (*) oder (**) folgt dann: sin β + cos β = 0, also Damit ist β = 3π 4 1 sin β = − cos β = ± √ . 2 7π oder β = 4 . Damit ist cot β = −1, die Nebenbedingung für cot β also erfüllt. Ist das auch hinreichend? Ja. Das erkennt man anhand einer kurzen Kopfrechnung, wenn man die z-Koordinaten von Q∗∗ und von S ∗∗ betrachtet. Ergebnis 1: Für α1 = π2 und β1 = 3π oder β2 = 7π wird die Strecke QS 4 4 in die Ebene ε befördert. 2. Fall: sin α2 = − 35 : Dann folgt aus (*): sin β + 5 cos β = 0. Aus sin2 β = 25 cos2 β und sin2 β + cos2 β = 1 folgt 1 5 cos β = ± √ , sin β = ∓ √ . 26 26 Damit ist cot β = − 15 , die Nebenbedingung für cot β also erfüllt. Ist das auch hinreichend? Da sin α2 = − 53 , ist nach (***) cos α2 = − 45 . Probe: Liegen Q∗∗ und S ∗∗ in ε? x3 -Koordinate von Q∗∗ : 4 5 5 1 sin β cos α + cos β + sin β = ∓ √ · (− ) ± √ ∓ √ 5 26 26 26 Damit gilt: Q∗∗ ∈ ε. 6 Damit x3 -Koordinate von S ∗∗ : 5 1 3 5 sin β sin α + 2 cos β + sin β = ∓ √ (− ) ± 2 √ ∓ √ = 0 26 5 26 26 Ergebnis 2: Für sin α2 = − 53 , cos α2 = − 54 , also 4 α2 = 2π − arccos(− ) 5 und cos β = ± √126 , sin β = ∓ √526 , also 1 1 β = arccos(− √ ) oder β = 2π − arccos( √ ) 26 26 wird die Strecke QS in die Ebene ε befördert. c) Interpretation der Gesamtbewegung X 7→ X ∗∗ als Schraubung: c1) Man ermittle alle Geraden g ⊂ E 3 , die zu ihrer Endlage g ∗∗ parallel sind. Lösung: Die Schraubachse - falls es sie gibt - ist zu ihrer Endlage parallel. Ihr Richtungsvektor ist Eigenvektor der Drehmatrix U zum Eigenwert 1. Da hier jedoch nach allen Geraden gefragt ist, die zu ihrer Endlage parallel sind, müssen wir auch nach Eigenvektoren zum Eigenwert -1 suchen. Notwendig dafür, dass -1 Eigenwert von U ist, ist die Bedingung: cos β cos α + 1 − cos β sin α sin β = (SARRUS) = sin α cos α + 1 0 0 = det − sin β cos α sin β sin α cos β + 1 = (cos β cos α + 1)(cos α + 1)(cos β + 1) + 0 + sin2 β sin2 α −(− sin2 β cos α(cos α + 1) + 0 − sin2 α cos β(cos β + 1)) = cos2 β cos2 α + cos β cos2 α + cos2 β cos α + cos α cos β + cos β cos α + cos α + cos β + 1 + sin2 β sin2 α + sin2 β cos2 α + sin2 β cos α + sin2 α cos2 β + sin2 α cos β = cos2 α + cos β + cos α + cos α cos β + cos β cos α + cos α + cos β + 1 + sin2 α = 2(1 + cos β + cos α + cos α cos β) = 2(1 + cos β)(1 + cos α) 7 Nur für cos β = −1 oder cos α = −1, also für β = π oder für α = π kann -1 Eigenwert von U sein. In diesem Fall ist − cos α sin α 0 U = sin α cos α 0 0 0 −1 oder − cos β 0 sin β 0 −1 0 U = sin β 0 cos β und die Eigenvektoren zum Eigenwert -1 sind im einen Fall Linearkombinationen von (sin α, cos α − 1, 0)T und (0, 0, 1)T , im anderen Fall Linearkombinationen von (sin β, 0, cos β − 1) und (0, 1, 0)T . Jede Gerade g mit einem solchen Eigenvektor ist dann parallel zu ihrer Endlage g ∗∗ . Nun zu den Eigenvektoren zum Eigenwert 1, als Vorbereitung zur Ermittlung der Schraubachse: cos β cos α − 1 − cos β sin α sin β ~x = ~o. sin α cos α − 1 0 − sin β cos α sin β sin α cos β − 1 Aus der zweiten Gleichung erhält man o.E. (x1 , x2 ) = (1 − cos α, sin α). (Der Fall cos α = 1 ist später noch eigens zu betrachten!) Einsetzen in die dritte Gleichung führt auf (cos α − 1) cos α sin β + sin2 α sin β + x3 (cos β − 1) = 0 sin β(1 − cos α) + x3 (cos β − 1) = 0 sin β(1 − cos α) x3 = 1 − cos β (Der Fall cos β = 1 ist später noch eigens zu betrachten!) Eigenvektoren zum Eigenwert 1 sind die Vielfachen der Vektoren ((1 − cos β)(1 − cos α), (1 − cos β) sin α, sin β(1 − cos α))T falls cos α 6= 1 und zugleich cos β 6= 1. Ist cos α = 1 = cos β, so ist die Bewegung x 7→ X ∗∗ die identische Abbildung und für alle Geraden g gilt: g ∗∗ = g. Ist cos α = 1, also sin α = 0, Eigenvektorgleichung: cos β − 1 0 − sin β 8 und cos β 6= 1, so vereinfacht sich die 0 sin β ~x = ~o. 0 0 0 cos β − 1 Alle Geraden g, die parallel sind zur x2 −Achse sind parallel zu ihrer Endlage g ∗∗ . Ist cos β = 1, also sin β = 0, und cos α Eigenvektorgleichung: cos α − 1 − sin α sin α cos α − 1 0 0 6= 1, so vereinfacht sich die 0 0 ~x = ~o. 0 Alle Geraden g, die parallel sind zur x3 −Achse sind parallel zu ihrer Endlage g ∗∗ . c2) Für α = β = 90◦ interpretiere man die Bewegung der Punkte X ∈ E 3 in die Lagen X ∗∗ als Schraubung. Lösung: Für α = β = 90◦ gilt ~x∗∗ 0 0 1 1 1 0 0 ~x + 0 = 0 1 0 1 Die Richtung der Schraubachse ist gegeben durch einen Eigenvektor zum Eigenwert 1, also (wie aus c1) bekannt oder wie man auch leicht errät) etwa durch (1, 1, 1)T . Ermittlung einer Fixgeraden: Gesucht ist ein ~x, so dass gilt: U~x + w ~ = ~x + λ · (1, 1, 1)T −1 0 1 1 1 1 −1 0 ~x = λ · 1 − 0 1 0 1 −1 1 Addition der ersten und der dritten Gleichung liefert −x1 + x2 = 2(λ − 1). Zusammen mit der zweiten Gleichung ergibt sich 2(λ − 1) = −λ, also 2 λ= . 3 Einsetzen in die beiden ersten Gleichungen liefert: −x1 +x3 = − 13 , x1 − x2 = 23 . 9 Verwendet man x1 als Parameter, so erhält man für die Schraubachse die Parameterdarstellung 0 1 1 2 1 ~x = − +λ· 3 1 1 Der Schiebvektor ist - wie vorher berechnet 1 2 1 · 3 1 Der nicht orientierte Drehwinkel ϕ mit 0 ≤ ϕ ≤ π berechnet sich nach einer Formel der Vorlesung mit cos ϕ = spur(U ) − 1 1 =− 2 2 zu 1 2 ϕ = arccos(− ) = 120◦ = π. 2 3 Durch die Orientierung der Schraubachse ist ein Drehsinn festgelegt. Man kann von Rechts- oder Linksdrehung um die orientierte Schraubachse sprechen oder davon, dass der orientierte Drehwinkel δ positiv oder negativ ist. Ermittlung des orientierten Drehwinkels δ: Orthogonal zu ~r = (1, 1, 1)T ist zum Beispiel der Vektor ~v = (1, −1, 0)T mit dem Bild U~v = (0, 1, −1)T . Nicht zu berechnen braucht man eigentlich −1 −1 ~v T U~v =√ √ = = cos ϕ, |~v | · |U~v | 2 2· 2 weil man diesen Wert schon kennt. Interessant ist aber die Frage: Ist {~v , U~v , ~r} ein Rechtssystem, ist also mit M := (~v , U~v , ~r) die Determinante det M positiv? Da 1 0 1 det M = det −1 1 1 = 1 + 0 + 1 − 0 + 1 + 0 = 3 > 0 0 −1 1 handelt es sich um eine Rechtsschraubung mit der angegebenen Schraubachse, die durch ihre Parameterdarstellung gerichtet ist, durch den Winkel = 120◦ . δ = arccos(− 12 ) = 2π 3 10