Roboterdynamikmodellierung < Künstl. Intelligenz < Praktische Inform. < Hochschule < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 17:29 Do 28.08.2008 | Autor: | iamfgu |
Aufgabe | Es sei ein Roboterarm gegeben:
basis - armelement i - gelenk i - armelement i+1 - gelenk i+1
es sei [mm] \omega_i [/mm] : die Winkelgeschwindigkeit, [mm] \dot\omega_i [/mm] : die Winkelbeschleunigung, [mm] A_{i,i+1} [/mm] die Transformationsmatrix von [mm] Gelenk_i [/mm] in [mm] Gelenk_{i+1}, q_{i}: [/mm] Gelenkwinkelvektor, [mm] \dot q_{i}: [/mm] ein Vektor der Gelenkwinkelgeschw, [mm] \ddot q_{i}: [/mm] ein Vektor der Gelenkwinkelbeschleunigung und z: ein Einheitsvektor (Indizes beziehen sich auf das jeweilige Gelenk)
wobei ich vermute, dass [mm] \omega [/mm] vermutlich absolut und q relativ sein soll.
Die Gleichung [mm] \dot\omega_{i+1} [/mm] = [mm] A_{i,i+1} (\dot\omega_i [/mm] + [mm] z\cdot \ddot q_{i+1} [/mm] + [mm] \omega_i [/mm] x (z [mm] \cdot \dot q_{i+1}))
[/mm]
mit x: Vektorprodukt |
Hallo,
diese Gleichung muss ich bestimmen um über die Newton-Euler Methode ein dynamisches Modell zu erhalten. (... und ein paar andere!)
mir geht es jetzt vorallem um diesen Teil, [mm] \omega_i [/mm] x (z [mm] \cdot \dot q_{i+1})
[/mm]
den ich einfach nicht deuten bzw Interpretieren kann kann.
(also im Prinzip ja das Vektorprodukt aus Winkelgeschw des Gelenks i (absolut) und der relativen Winkelgeschwindigkeit des Gelenks i+1)
Vllt kann mir da ja jemand helfen
Mfg
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 12:30 Fr 29.08.2008 | Autor: | ThomasG |
Hallo iamfgu,
die Aufgabe ist für mich so nicht erkennbar: Du setzt einiges an Kontextwissen bei Deiner Notation voraus.
Wieviele Arm-Segmente hat den Dein Roboter?
Sind die Matrizen "A" ebene oder räumliche Transformationsmatrizen?
Ist A von q abhängig oder beschreibt A eine Transformation für eine "Ruhelage", z.B. q=0
Was ist "z" ?
Was soll bei der Aufgabe herauskommen?
Gruss
Thomas
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 17:20 Fr 29.08.2008 | Autor: | iamfgu |
Hallo Thomas,
also z ist ein Einheitsvektor, und die Matrix A beschreibt räumliche Koordinaten.
..wieviele Segmente der Arm jetzt hat spielt ja eigentlich keine Rolle, es geht ja um die Beziehung zw Gelenk i und dem Gelenk i+1
Mfg und vielen Dank erstmal
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 16:32 Fr 29.08.2008 | Autor: | Rene |
Hallo,
ich muss ja mal fragen, wo die diese Formel her hast, da die meiner Meinung nach nicht richtig sein kann (korrigiert mich wenn ich mich irre). A ist ja deine Rotationsmatrix, die die Lage von i+1 in i beschreibt. Wenn du deine Formel mal genau anschaust, dann ergibt sich meiner meinung nach auf der Rechten seite ne Winkelbeschleunigung und links steht ne Winkelgeschwindigkeit, das kann irgendwie nicht stimmen.
[mm] \omega \neq \dot \omega[/mm]
MFG
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 17:26 Fr 29.08.2008 | Autor: | iamfgu |
Hallo Rene,
die Formel habe ich aus einem Fachbuch, sie ist nur leider nicht weiter erklärt.
Aus diesem Grund meine Verständnisschwiergikeiten.
SORRY ich habe natürlich den Punkt links vergessen. Liegt wohl daran, dass ich langsam den Blick fürs wesentliche verliere.
Vllt kannst du mir ja jetzt weiterhelfen?
Mfg
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 12:27 Sa 30.08.2008 | Autor: | Rene |
Hallo,
mal sehen was wir hinbekommen. Du hast hier ja offenbar nen Drehgelenk, also eine Rotation um z als Freiheitsgrad. Für die Winkelgeschwindigkeit des Folgearms erhält man ja öffensichtlich
[mm] \omega_{i+1}=\omega_{i}+\dot\Theta_{i+1} z_{i}[/mm]
Um jetzt die Winkelbeschleunigung zu erhalten, leiten wir einmal ab und erhalten Formal ertsmal
[mm] \dot\omega_{i+1}=\dot\omega_{i}+\ddot\Theta_{i+1} z_{i}+\dot\Theta_{i+1}\dot z_i[/mm]
Jetz muss man den Term [mm]\dot z_i[/mm] ersetzen. Der Vektor [mm]z_i[/mm] entspricht dem 3.Spalteneintrag der Rotationsmatrix [mm]A_{0,i}[/mm]. Also gilt
[mm]z_i=A_{0,i}\cdot\vektor{0\\ 0\\ 1}=A_{0,i}z_0[/mm]
Das leiten wir jetzt mal ab
[mm]\dot z_i = \frac{dA_{0,i}}{dt}z_0+A_{0,i}\dot z_0[/mm]
[mm]z_0[/mm] ist ja die globale z-Achse, demzufolge ändert sie sich nicht und [mm]\dot z_0 = 0[/mm]. Unser Ausdruck vereinfacht sich zu
[mm] \dot z_i = \frac{dA_{0,i}}{dt}z_0[/mm]
Jetzt wenden wir den Tilde Operator an, d.h.
[mm]\tilde\omega_i = \frac{dA_{0,i}}{dt}\cdot A_{0,i}^T[/mm]
Umstellen und einsetzen liefert
[mm] \dot z_i = \tilde\omega_i A_{0,i}z_0[/mm]
weiter oben haben wir bereits definiert das [mm] A_{0,i}z_0=z_i[/mm]. Man erhält somit
[mm] \dot z_i = \tilde\omega_i z_i[/mm]
Für den Tilde Operator gilt [mm] \tilde [/mm] a [mm] \cdot [/mm] b = [mm] a\times [/mm] b. Demzufolge für dein Problem
[mm] \dot z_i = \omega_i \times z_i[/mm]
Einsetzen in die Ausgangsgleichung liefert für die Winkelbeschleunigung
[mm] \dot\omega_{i+1}=\dot\omega_{i}+\ddot\Theta_{i+1} z_{i}+\dot\Theta_{i+1}\cdot\omega_i \times z_i[/mm]
Es handelt sich hierbei um globale Größen. Um die lokalen größen verwenden zu können nutzen wir die Rotationsmatrizen.
[mm] A_{0,i+1}\dot{\overline\omega}_{i+1}=A_{0,i}\dot{\overline\omega}_{i}+A_{0,i}\ddot\Theta_{i+1} z_{0}+\dot\Theta_{i+1}\cdotA_{0,i}(\overline\omega_i \times z_0)[/mm]
[mm] \dot{\overline\omega}_{i+1}=A_{0,i+1}^TA_{0,i}( \dot{\overline\omega}_{i}+\ddot\Theta_{i+1} z_{0}+\dot\Theta_{i+1}\cdot\overline\omega_i \times z_0)[/mm]
[mm] \dot{\overline\omega}_{i+1}=A_{i,i+1}^TA_{0,i}^TA_{0,i}( \dot{\overline\omega}_{i}+\ddot\Theta_{i+1} z_{0}+\dot\Theta_{i+1}\cdot\overline\omega_i \times z_0)[/mm]
[mm] \dot{\overline\omega}_{i+1}=A_{i,i+1}^T( \dot{\overline\omega}_{i}+\ddot\Theta_{i+1} z_{0}+\dot\Theta_{i+1}\cdot\overline\omega_i \times z_0)[/mm]
Die Interpretation ist ne andere Sache, ich würd mal sagen der Term ist ein Maß dafür wie sich die Rotationsache ändert.
MFG
|
|
|
|