-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: Omnidirektionale Steuerung: Drehung berechnen

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    24.06.2009
    Beiträge
    21

    Omnidirektionale Steuerung: Drehung berechnen

    Anzeige

    hallo

    ich bin gerade dabei mri einen omnidirektionalen roboter zu bauen, also 3 omniwheels, im Kreis angeordnet, mit 120° Winkel jeweils dazwischen.

    http://img696.imageshack.us/f/dsc00062yf.jpg

    ich möchte jetzt die kinematik berechnen, dazu folgende frage:

    kann ich ohne sensoren, also nur durch die Drehung der Räder den Winkel berechnen den sich mein Roboter dreht / gedreht hat?

    Jedes Rad hat einen Motor, jeweils mit Drehgeber, also kann ich für jedes Rad 360 Impulse pro Umdrehung und damit die gefahrene Strecke berechnen.

    wenn ich nur um die Hochachse rotiere habe ich auch schon eine Formel aufgestellt:

    Winkel = (Impulse eines Rades) * (Radius des Rades) / (Abstand der Räder vom Mittelpunkt)

    wenn jetzt allerdings noch eine Translation in eine oder gar zwei Richtungen dazukommen weiß ich nicht mehr weiter, weil ja jedes Rad unterschiedliche Impulse und damit Strecken zurücklegt welche durch das zusammenspiel mit den anderen Rädern wieder unterschiedliche Rotationen des gesamten Roboters hervorruft.

    Ich hoffe mir kann jemand helfen

    Danke

  2. #2
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    54
    Beiträge
    5.781
    Blog-Einträge
    8
    Hallo

    Mehr noch als vermutlich bei allen anderen Radantrieben tritt bei den Omniwheels ein nicht berechenbarer Schlupf zwischen Rad und Untergrund auf. Das ist mehr oder weniger die Grundlage für die Funktion der Omniwheels. Durch die 120°-Stellung zueinander werden aus dem jeweils nur radial wirkenden Schub eine Querkraft erzeugt die letzlich die Teilrollen der Räder antreibt.

    Ich denke, das ist eigentlich der falsche Ansatz. Omnidirektionale Antriebe wie Mecanum oder Omniwheels glänzen durch die Möglichkeit den Kurs jederzeit in alle Richtungen ändern zu können. Mit geeigneten Sensoren und einer entsprechenden Software können sie herrlich elegant um feste oder bewegliche Hindernisse kurven. Wieviele Umdrehungen der Räder dazu nötig sind interessiert dabei niemanden mehr.

    Gruß

    mic

    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    24.06.2009
    Beiträge
    21
    danke für deine schnelle antwort

    über die funktionsweise eines omnibots bin ich mir schon im klaren, ich möchte den roboter mit omniwheels aber nun mit einem joystick steuern und zb eine translation in eine Richtung mit gleichzeitiger drehung um die Hochachse des Roboters erreichen, mein roboter soll also kein "vorne" haben, sondern eben die bewegungen überlagern, bzw die rotation soll die lineare translation in eine vorher bestimmte richtung nicht von der bahn abbringen.
    der schlupf erfolgt hier ja nur in axialer richtung des jeweiligen rades, wobei die umfangsgeschwindigkeit bekannt ist.

    dass ich sowas mit Sensoren wunderbar erreiche ist mir klar, nur ist jetzt eben die frage ob es auch mit formeln über die drehgeberimpulse zu berechnen ist. dazu müsste man die verschiedenen abhängigkeiten der räder bei translation und rotation irgendwie in formeln festhalten. die entscheidende idee habe ich hier noch nicht, und bin mir auch nicht sicher ob es ohne Sensoren geht, deswegen wäre es schön wenn mir jemand einen denkanstoss für die kinematik geben würde, wenn es überhaupt so möglich ist

  4. #4
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    54
    Beiträge
    5.781
    Blog-Einträge
    8
    Hallo

    mein roboter soll also kein "vorne" haben,...
    ... aber dein "Joystick" hat es. Selbst wenn du fehler- und rundungsfrei die Radumdrehungen für "Joy nach vorne" berechnen und ansteuern kannst, der Bot wird sich schlupfbedingt drehen und in die Richtung fahren die er selbst aussucht. Ohne eine externe Lagerückmeldung (z.B. Referenzpunkte, Baken oder gar eine Kamera) macht das Omniwheelfahrwerk, was es will.

    der schlupf erfolgt hier ja nur in axialer richtung des jeweiligen rades, wobei die umfangsgeschwindigkeit bekannt ist.
    Gut zu wissen;)

    Im Ernst, der Schlupf entsteht überall! Bei den Omniwheels zusätzlich auch an den kleinen quergestellten Rollen. Sie werden zum einen von der Reibung am Boden angetrieben, drücken aber gleichzeitig quer zur Drehrichtung des Rads gegen den Boden. Ein einfacher Test könnte zeigen, was wirklich passiert:

    Zwei Räder werden gegenläufig genau (?) gleichschnell angetrieben und ziehen das dritte stehende Rad hinter sich her. Bei günstiger Stellung des dritten Rades (kleine Rolle genau mittig unten) könnte das einigermasen gerade werden, aber sobald das stehende Rad geschoben wird, kann man wohl nicht mehr von "Geradeausfahren" sprechen. Das wird natürlich auch von der Qualität der Räder und des Untergrunds beeinfußt, beseitigen oder gar "rausrechnen" kann man das aber nicht.

    Gruß

    mic

    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.12.2005
    Beiträge
    535
    xxxsnowxxx,

    guck' mal in das .pdf. Gilt natürlich alles nur im Idealfall !

    Ciao,

    mare_crisium

    EDIT: Anhang gelöscht wg. UpLoad-Limit

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    24.06.2009
    Beiträge
    21
    @radbruch: ja dass ich durch irgendwelche kleinen unregelmäßigkeiten des untergrunds oder so etwas abkomme vom theoretischen kurs kann ich mir schon vorstellen, aber ich möchte mal annehmen dass die omniwheels drehen nur an den quergestellten rollen durch und sonst ist auch alles optimal, bodenhaftung 100% und so... =)

    Im Ernst, der Schlupf entsteht überall! Bei den Omniwheels zusätzlich auch an den kleinen quergestellten Rollen
    ja hoffentlich! das ist doch der gewollte schlupf (eben in achsialer richtung), deswegen nimmt man ja omniwheels.


    @mare_crisium: DANKE!!! genau so etwas habe ich gesucht

    bei meinem joystick habe ich 3 achsen: Vx, Vy und Rotation um Z (also in deiner Formel omega). ich nehme an um phi rauszubekommen integriere ich omega über die zeit die ich drehe, richtig? da muss ich mal noch ein bisschen rechnen
    hast du zufällig auch die herleitung für die formeln? würde mir noch mehr weiterhelfen

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    24.06.2009
    Beiträge
    21
    ich habe dank mare_crisiums formeln gerade gemerkt dass ich meine geschwindigkeitsdreiecke bei meinen berechnungen ganz falsch angetragen hab... da war dann wohl alles grübeln wieso das nicht so aufgeht wie ich wollte für die katz

    hab nochmal alles neu durchgerechnet, hab jetzt zwar ganz andere formeln als du aber es kommt das gleiche raus, bis auf einen faktor 0,5 aber das is wohl egal wenn es bei u1, u2 und u3 immer die hälfte von deinen ergebnissen ist. außerdem stimmen die vorzeichen noch nicht immer überein, aber das war schonmal ein schöner schritt weiter in die richtige richtung, thx a lot mare_crisium

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    24.06.2009
    Beiträge
    21
    hier mal zum vergleich, oben deine formeln, unten meine:

    keine ahnung warum da so ein unterschied ist, die werte sind die selben (bis auf die vorzeichen...)

    http://img685.imageshack.us/i/formelnomniwheels.jpg

    wer fehler in meiner version findet darf sie mir gerne mitteilen, ich bin sogar froh darum

  9. #9
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.12.2005
    Beiträge
    535
    xxxsnowxxx

    immer schön, jemanden zu finden, der auch noch selber rechnet !

    Die Herleitung meiner Formeln habe ich diesmal vollständig angehängt. Es soll schon vorgekommen sein, dass ich mich verrechnet habe .

    Ja, den aktuellen Drehwinkel kannst Du aus den Drehgeschwindigkeiten aufintegrieren; das ist dann schon ein Teil eines Koppelnavigations-Algorithmus, mit dem Du, im Prinzip, den Standort Deines Fahrzeugs laufend mitrechnen kannst.

    Ciao,

    mare_crisium

    EDIT: Anhang gelöscht wg. Upload-Limit

  10. #10
    Hallo,

    ich möchte mich an RoboSoccer ranarbeiten und habe deswegen schon die Grundzüge eines omnidirektionalen Roboters mit drei Omniwheels stehen. Ich habe mir die Formeln, die auf dem Bild abgelegt sind angeguckt, konnte aber nicht genau erkennen für was phi und für was omega stehen.
    Leider sind die pdf-Anhänge mittlerweile gelöscht, sonst würde ich auch kein Thema, was schon ein Jahr alt ist aufgreifen, aber ich fand die Formeln "relativ" leicht für eine Steuerung in alle Richtungen mit Drehwinkel etc.
    Es wäre echt cool, wenn einer von euch das liest und mir die ganze Sache mal erläutern könnte, oder die gelöschten pdf's zur Verfügung stellen könnte.

    Danke, Rubaddl

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •