Forum: Mikrocontroller und Digitale Elektronik IMU + Wheel Odometrie


von Alexander M. (a_lexander)


Lesenswert?

Hallo Zusammen,

Ich bin aktuell dabei mich einzulesen in das Thema "Winkelerkennung" / 
"Lageerkennung", z. B. für einen Roboter / Autos etc.
D. h. Der Winkel / die Lage soll mit Rädern bzw. IMUs ermittelt werden. 
(= Kein GPS)

Meine Frage ist hier eigentlich ganz einfach:
Wenn IMUs verwendet werden, sind dann überhaupt die Sensorwerte von 
Rädern notwendig (also z. B. die Messung von Lage / Winkel über die 
Ticks der Räder).

Meiner Meinung nach sind diese Sensorwerte über die Ticks der Räder doch 
viel zu unzuverlässiger (oder zum Teil gar nicht zu gebrauchen), da hier 
ein unvorhersehbarer Schlupf auftreten kann und dann die Räder dann in 
der Luft drehen würden...
Hab ich da Recht?

Danke & Grüße

von Thomas (Gast)


Lesenswert?

Guten Tag Alexander,

ich beschäftige mich auch grade mit einem vergleichbaren Thema (IMU ohne 
GPS und mit Odometer(n) zur Wegstreckenmessung).

Ich frage mich gerade was genau du mit Lageerkennung meinst. Geht es dir 
um die Lage des Fahrzeuges im Raum (steht es geade oder hat es sich 
links oder rechts gedreht) oder wo es sich  von einer definierten 
Startposition heraus hinbewegt hat (Position in der Welt; relativ zu 
einem Startpunkt)

Gruß Thomas

von Andreas (Gast)


Lesenswert?

Du könntest auch einen optischen Sensor verwenden wie er in einer 
Computermaus sitzt.

von Stefan F. (Gast)


Lesenswert?

Die IMU Sensoren sind auch nur bedingt genau.

von Alexander M. (a_lexander)


Lesenswert?

Andreas schrieb:
> Du könntest auch einen optischen Sensor verwenden wie er in einer
> Computermaus sitzt.

Auch eine gute Idee! Danke.

Mir geht's hier aber erstmal um die Vereinigung dieser beiden Sensoren 
(IMU + Ticks von Rädern).
Und ich sehe da keinen "Sinn" diese Ticks mit in meine Berechnung mit 
ein zu bringen, weil hier einfach zu viel schief gehen kann. Trotzdem 
"muss" es doch dafür irgend einen Zweck geben, einfach diese Werter 
wegschmeißen will ich eigentlich auch nicht :D

Grüße

von Jim M. (turboj)


Lesenswert?

IMU reicht nicht.

Der Beschleunigungssensor kann ein stehendes Fahrzeug auf einer 
geneigten Fläche nicht von einem beschleunigten Fahzeug auf ebener 
Fläche unterscheiden.

Der Gyro für den Drehwinkel driftet signifikant über die Zeit.

Daher braucht man die Daten von den Rädern, wenn man eine einigermaßen 
genaue Vorstellung von der Fahrzeugposition haben will.

von Alexander M. (a_lexander)


Lesenswert?

Stefan ⛄ F. schrieb:
> Die IMU Sensoren sind auch nur bedingt genau.

Stimmt, weil u. A. durch die benötigte Integration nicht alle Werte 
(dazwischen) ermittelt werden können. Trotzdem sind diese doch weniger 
"fehleranfällig" als Räder.

Winkeländerung: durch Gyroskop + Magnetometer = genaue Winkelerkennung
Lageerkennung: durch Beschleunigungssensor = anfangs genaue 
Lageerkennung, mit der Zeit immer ungenauer durch Drift.

--> Wo können mir hier die Ticks der Räder helfen? (Die Räder können 
leer laufen bzw. stecken bleiben)


Grüße

von Stefan F. (Gast)


Lesenswert?

Alexander M. schrieb:
> Trotzdem "muss" es doch dafür irgend einen Zweck geben

Natürlich. Und zwar um die Drehzahl der Motoren zu regeln. Beim NiboBee 
Roboter liefern die Odometrie Sensoren eine Flanke pro Zentimeter. Das 
reicht tatsächlich aus, um auf halbe Zentimeter genau ab zu bremsen. 
Wenn man sanft genug bremst, rutschen die Räder dabei auch nicht durch. 
Außerdem ermöglich die Odometrie erst, ordentlich geradeaus zu fahren, 
oder Kurven mit definiertem Radius.

Ich bezweifle, dass man nur mit einer IMU so präzise Strecken abfahren 
kann.

von Alexander M. (a_lexander)


Lesenswert?

Jim M. schrieb:
> IMU reicht nicht.
>
> Der Beschleunigungssensor kann ein stehendes Fahrzeug auf einer
> geneigten Fläche nicht von einem beschleunigten Fahzeug auf ebener
> Fläche unterscheiden.
>
> Der Gyro für den Drehwinkel driftet signifikant über die Zeit.
>
> Daher braucht man die Daten von den Rädern, wenn man eine einigermaßen
> genaue Vorstellung von der Fahrzeugposition haben will.

Vorausgesetzt die Räder haben keinen Schlupf, ansonsten sind diese 
Sensorwerte nicht aussagekräftig? In meinem Fall muss nämlich davon 
ausgegangen werden, das es einen Schlupf geben kann bzw. die Räder sich 
"festfahren".

Grüße

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Stefan ⛄ F. schrieb:
> Beim NiboBee
> Roboter liefern die Odometrie Sensoren eine Flanke pro Zentimeter.

Bei Saugrobotern sogar wesentlich mehr. Um eine vom IMU unabhängige 
Wegstreckenmessung zu bekommen, ist die Infos von den Rädern immer 
nützlich. Bei Saugies ist das so weit entwickelt, das sie ihre äusseren 
Abmessungen so gut kennen, das sie mit den Radsensoren haarscharf an 
Wänden entlangfahren. Dazu reichen simple Abstandssensoren und eben die 
Radticker.
Ausserdem sind sie, wie o.a., dazu da um die Drehzahl der Motoren zu 
regeln. Bei meinem Saugie klappt das so gut, das er trotz eines 
ausgetauschten Motors (Fremdprodukt) exakt geradeaus fährt.

von Alexander M. (a_lexander)


Lesenswert?

Stefan ⛄ F. schrieb:
> Alexander M. schrieb:
>> Trotzdem "muss" es doch dafür irgend einen Zweck geben
>
> Natürlich. Und zwar um die Drehzahl der Motoren zu regeln. Beim NiboBee
> Roboter liefern die Odometrie Sensoren eine Flanke pro Zentimeter. Das
> reicht tatsächlich aus, um auf halbe Zentimeter genau ab zu bremsen.
> Wenn man sanft genug bremst, rutschen die Räder dabei auch nicht durch.
> Außerdem ermöglich die Odometrie erst, ordentlich geradeaus zu fahren,
> oder Kurven mit definiertem Radius.
>
> Ich bezweifle, dass man nur mit einer IMU so präzise Strecken abfahren
> kann.

Stimmt, dafür wird die Odometrie natürlich eingesetzt zur 
Drehzahlregelung.
Zur Lagebestimmung + Winkelbestimmung bin ich da aber (in meinem 
Anwendungsfall) noch ein bisschen skeptisch ;)

von Stefan F. (Gast)


Lesenswert?

Alexander M. schrieb:
> Zur Lagebestimmung + Winkelbestimmung bin ich da aber (in meinem
> Anwendungsfall) noch ein bisschen skeptisch ;)

Das geht nur, wenn man keinen Schlupf hat, was in der Realität aber 
immer passiert. Also nicht so genau wie man es gerne hätte.

von Alexander M. (a_lexander)


Lesenswert?

Matthias S. schrieb:
> Stefan ⛄ F. schrieb:
>> Beim NiboBee
>> Roboter liefern die Odometrie Sensoren eine Flanke pro Zentimeter.
>
> Bei Saugrobotern sogar wesentlich mehr. Um eine vom IMU unabhängige
> Wegstreckenmessung zu bekommen, ist die Infos von den Rädern immer
> nützlich. Bei Saugies ist das so weit entwickelt, das sie ihre äusseren
> Abmessungen so gut kennen, das sie mit den Radsensoren haarscharf an
> Wänden entlangfahren. Dazu reichen simple Abstandssensoren und eben die
> Radticker.
> Ausserdem sind sie, wie o.a., dazu da um die Drehzahl der Motoren zu
> regeln. Bei meinem Saugie klappt das so gut, das er trotz eines
> ausgetauschten Motors (Fremdprodukt) exakt geradeaus fährt.

Aber warum sollte die Wegstreckenmessung nicht einfach immer über IMUs 
erfolgen? Das wäre doch viel genauer?
Vorausgesetzt IMUs versagen nicht und gehen nicht während der Fahrt 
"kaputt" und es würde dann zu einem gefährlichen Zustand etc. führen.

von Stefan F. (Gast)


Lesenswert?

Alexander M. schrieb:
> Aber warum sollte die Wegstreckenmessung nicht einfach immer über IMUs
> erfolgen? Das wäre doch viel genauer?

Genau das bezweifle ich. Gerade die Messung von Strecken ist eben nicht 
deren Hauptfunktion. Finde doch mal im Datenblatt eine konkrete Angabe, 
auf wie viel Prozent genau du damit Strecken ausmessen kannst. Oder wie 
genau er seitliche Abweichungen von der geplanten Fahrstrecke (von der 
Fahrbahn abkommen) erkennen kann.

So ein NiboBee Bausatz ist toll, um diese Dinge buchstäblich zu 
begreifen. Das IMU Modul kannst du problemlos nachrüsten.

Wenn dein Roboter erkennen soll, wo genau er sich innerhalb eines Raumes 
befindet, dann musst du so etwas ähnliches wie GPS nachbauen. Dazu 
verwendet man oft optische Markierungen im Raum, die der Roboter 
erkennen kann.

von Alexander M. (a_lexander)


Lesenswert?

Stefan ⛄ F. schrieb:
> Alexander M. schrieb:
>> Aber warum sollte die Wegstreckenmessung nicht einfach immer über IMUs
>> erfolgen? Das wäre doch viel genauer?
>
> Genau das bezweifle ich. Gerade die Messung von Strecken ist eben nicht
> deren Hauptfunktion. Finde doch mal im Datenblatt eine konkrete Angabe,
> auf wie viel Prozent genau du damit Strecken ausmessen kannst. Oder wie
> genau er seitliche Abweichungen von der geplanten Fahrstrecke (von der
> Fahrbahn abkommen) erkennen kann.
>
> So ein NiboBee Bausatz ist toll, um diese Dinge buchstäblich zu
> begreifen. Das IMU Modul kannst du problemlos nachrüsten.

Danke für den Tipp, ich habe hier einen "UniRoi", aber hier fehlt ja 
(genau so wie beim NiboBee) glaub das Feedback über die gefahrene 
Strecke über die Ticks der Räder?

Danke für die Hilfe, ich werde das trotzdem mal nur mit IMUs probieren 
und dann werde ich die Abweichungen bestimmt schnell bemerken und 
nächste Verbesserungen angehen :)

von Stefan F. (Gast)


Lesenswert?

Alexander M. schrieb:
> aber hier fehlt ja (genau so wie beim NiboBee)
> glaub das Feedback über die gefahrene
> Strecke über die Ticks der Räder?

Der NiboBee hat Odometrie Sensoren.

> ich werde das trotzdem mal nur mit IMUs probieren

Ja, probiere es aus! Probieren geht über studieren.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Alexander M. schrieb:
> ich werde das trotzdem mal nur mit IMUs probieren
> und dann werde ich die Abweichungen bestimmt schnell bemerken

Lass den IMU mal über eine Holperstrecke fahren und werte seine Daten 
aus. Du wirst dich wundern, wie sich der Sensor an den kleinen 
Beschleunigungen in alle Richtungen die Zähne ausbeisst. So schnell 
kannst du gar nicht abtasten und aufsummieren.

von Alexander M. (a_lexander)


Lesenswert?

Matthias S. schrieb:
> Alexander M. schrieb:
>> ich werde das trotzdem mal nur mit IMUs probieren
>> und dann werde ich die Abweichungen bestimmt schnell bemerken
>
> Lass den IMU mal über eine Holperstrecke fahren und werte seine Daten
> aus. Du wirst dich wundern, wie sich der Sensor an den kleinen
> Beschleunigungen in alle Richtungen die Zähne ausbeisst. So schnell
> kannst du gar nicht abtasten und aufsummieren.

Ich bin gespannt! :)

Danke für die Tipps!

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Alexander M. schrieb:
> Aber warum sollte die Wegstreckenmessung nicht einfach immer über IMUs
> erfolgen? Das wäre doch viel genauer?
Auf welchen Datenblattwerten begründest du diese Hoffnung?

Allein schon das Rauschen und der Offest zweimal aufintegriert von der 
Beschleunigung zum Weg wird dir da merklich in die Suppe spucken.

Dass man die Information von Rädern sinnvoll mit anderen 
Positionsinformationen koppeln kann (und gegeneinander abgleichen muss), 
das zeigt schon das GPS und Radsensor basierte System in meinem 8 Jahre 
alten Auto: das Ding weiß dank der Radinformation, die es bei der 
letzten 90° Kurve mit den Kartendaten abgeglichen hat, vor welcher 
meiner beiden Doppelgaragen ich 100m weiter stehe, während das Handy-GPS 
noch auf irgendeinen Punkt 20m weit entfernt zeigt.

Alexander M. schrieb:
> Ich bin gespannt! :)
Ja, wäre nett, wenn du das Ergebnis postest.

: Bearbeitet durch Moderator
von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Lothar M. schrieb:
> das Ding weiß dank der Radinformation

Was sich übrigens auch in längeren Tunneln bemerkbar macht. Ohne GPS hat 
der alte Blaupunkt Travelpilot trotzdem weiter geplottet und das auch 
bei Stau korrekt.

von Euro (Gast)


Lesenswert?

Alexander M. schrieb:
> Danke für die Hilfe, ich werde das trotzdem mal nur mit IMUs probieren
> und dann werde ich die Abweichungen bestimmt schnell bemerken und
> nächste Verbesserungen angehen :)
Odometrie hat Fehler, IMU auch.
Kann man beides über Kalman-Filter fusionieren und erhält dadurch einen 
kleineren Fehler.
Heißt aber nicht, dass man gar keinen Fehler mehr hat. Ohne globale 
Positionierungshilfe (Abstände zu Landmarken, GPS oder der Draht im 
Garten) läuft eine langfristig Lokalisierung nicht perfekt.

von Alexander M. (a_lexander)


Lesenswert?

Matthias S. schrieb:
> Lothar M. schrieb:
>> das Ding weiß dank der Radinformation
>
> Was sich übrigens auch in längeren Tunneln bemerkbar macht. Ohne GPS hat
> der alte Blaupunkt Travelpilot trotzdem weiter geplottet und das auch
> bei Stau korrekt.

Stimmt. Aber nicht, wenn das Auto im Tunnel abgeschleppt wird (= was in 
meinem Anwendungsfall das Durchdrehen der Räder etc. bedeuten würde)

: Bearbeitet durch User
von Euro (Gast)


Lesenswert?

Alexander M. schrieb:
> Stimmt. Aber nicht, wenn das Auto im Tunnel abschleppt wird (= was in
> meinem Anwendungsfall das Durchdrehen der Räder etc. bedeuten würde)
Da hilft z.B. auch kein Kalman-Filter (solche Vorkommnisse sind 
statistisch nicht erfassbar). Helfen würde die Trennung von Antrieb und 
Messung (z.B. Vorderräder Antrieb, Hinterräder Odometrie).

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.