- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Seite 2 von 6 ErsteErste 1234 ... LetzteLetzte
Ergebnis 11 bis 20 von 59

Thema: Gyro drift beheben/kompensieren

  1. #11
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    31
    Beiträge
    1.578
    Anzeige

    E-Bike
    Hi,

    also nicht umsonst werden Magnetometer relativ häufig verbaut wenn es um die Drehung der Yaw-Achse geht. Dass Motoren und andere eisenhaltige Gegenstände Störungen verursachen, ist auch nichts neues. Trotzdem kann man mit einem Kompass sehr gute Ergebnisse erzielen.
    Wurde er einmalig in einer relativ ungestörten Umgebung kalibriert, kann man später jederzeit die aktuelle Vektorlänge des Magnetfeldes ausrechnen und somit erkennen, ob und wie stark die Daten gerade verfälscht sind. Nun kann man einfach seinen Filter so anpassen, dass er nur bei geringer Störung den Kompass mit einbezieht oder je nach Störung mehr oder weniger stark.
    Wer gut in Sensorfusion ist, der schafft es auch, einen Kalman oder ähnliche Filter so zu programmieren, dass dieser nur einmalig beim Start (also Motoren aus) den Kompass benötigt und später ohne diesen trotzdem korrekte Headingwerte liefert.

  2. #12
    HaWe
    Gast
    Extremfall zur Verdeutlichung:

    kalibriere ihn mal in einer ungestörten Umgebung,

    dann platziere ein paar Dutzend starke Dauermagneten und DC-Elektromagneten zufällig irgendwo im Raum
    und verändere ihre Position während des Tests
    und dann fahre mit deinem Robi an diesen Magneten mit veränderlicher Position vorbei:

    das gibt Murks, das Heading (Yaw) ist nicht zu gebrauchen.

  3. #13
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    21.06.2011
    Ort
    Dresden
    Beiträge
    219
    @Che Guevara:
    also nicht umsonst werden Magnetometer relativ häufig verbaut wenn es um die Drehung der Yaw-Achse geht.
    Das ist wohl richtig, aber wenn Du den zurückgelegten Weg, also quasi Deinen Standort bestimmen willst, summierst
    Du auf und damit summierst Du fortlaufend jeden Fehler, also Driften und absolute Fehler. Kann man sich mit einfachen
    Zahlenbeispielen klarmachen (Geschwindigkeit = 1. Ableitung des Weges nach der Zeit, Beschleunigung: 2. Ableitung,
    Weg aus Beschleunigung bedeutet dann 2x integrieren, also gehen Fehler bei z.B. konstanter Beschleunigung auch
    quadratisch ein.) Um so was befriedigend zu realisieren brauchst du, wie shedepe schon erwähnt hat, high-end-sensoren mit
    minimalen Fehlern.
    mfg
    Achim

  4. #14
    HaWe
    Gast
    wie gesagt,
    selbst nur minimalste Fehler der besten Kompass-IMUs helfen nicht, wenn zufällig wechselne externe oder interne Magnetfelder an verschiedensten Orten zu verschiedensten Zeiten auftreten.

    - - - Aktualisiert - - -

    update, überlesen:
    @shedepe
    ich widerspreche an der Stelle HaWe erneut, dass Motoren unbedingt Probleme machen müssen
    stimmt,
    nicht alle müssen,
    aber viele können...

  5. #15
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    31
    Beiträge
    1.578
    Nun wenn ich Magneten in der Nähe habe (oder andere ferromagnetische Objekte) ändert sich i.d.R. die Länge des Gesamtvektors, sodass ich zu diesem Zeitpunkt meine Messwerte verwerfen / weniger stark berücksichtigen kann. Hab ich natürlich andauernd wechselnde Magnetfelder hilft das auch nichts, das ist schon klar. Normalerweise ist so eine Situation aber eher die Ausnahme als die Regel. Für kurze Unterbrechungen kann man auch nur mit dem Gyro arbeiten (t<xx sec).
    Dass der TE damit seinen Bot lokalisieren möchte, habe ich so nicht verstanden, das wird weder mit Odometrie noch mit AHRS / INS was. Dazu braucht es GPS o.ä. (also Absolutwertgeber der Position) oder evtl. SLAM, da kenn ich mich nicht aus.

  6. #16
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.650
    Dass der TE damit seinen Bot lokalisieren möchte, habe ich so nicht verstanden
    Er möchte zunächst das Gerät in einem bestimmten Winkel drehen und weiterfahren lassen, zu jeder Zeit, ausgehend vom letzten Winkel. Also z.B. erst geradeaus dann, nach 50cm, 20 Grad nach links, dann geradeaus und nach 210cm, 10 Grad nach rechts und für weitere 85cm geradeaus.
    Er bekommt einen starken Drift, wenn er ein Quadrat in einer Richtung abfährt (also immer Links herum z.b.). Wobei es hierbei sicher nicht unwichtig wäre, zu wissen, um wieviel Grad sich das abgefahrene Quadrat in welcher Zeit dreht.

  7. #17
    HaWe
    Gast
    Zitat Zitat von Che Guevara Beitrag anzeigen
    Nun wenn ich Magneten in der Nähe habe (oder andere ferromagnetische Objekte) ändert sich i.d.R. die Länge des Gesamtvektors, sodass ich zu diesem Zeitpunkt meine Messwerte verwerfen / weniger stark berücksichtigen kann. Hab ich natürlich andauernd wechselnde Magnetfelder hilft das auch nichts, das ist schon klar. Normalerweise ist so eine Situation aber eher die Ausnahme als die Regel. Für kurze Unterbrechungen kann man auch nur mit dem Gyro arbeiten (t<xx sec).
    Dass der TE damit seinen Bot lokalisieren möchte, habe ich so nicht verstanden, das wird weder mit Odometrie noch mit AHRS / INS was. Dazu braucht es GPS o.ä. (also Absolutwertgeber der Position) oder evtl. SLAM, da kenn ich mich nicht aus.
    du brauchst nur mal an Lautsprecher-Standboxen vorbeizufahren, die beeinflussen das Magnetfeld bereits unkalkulierbar in Stärke und Richtung in ihrem Umfeld, und wenn der Robot nicht weißt, wie nah er dran ist, lässt sich auch kein verlässliches Kompass-Heading berechnen.
    Das gleiche gilt für Stahlträger in Wänden und Fussböden, Metallöfen, Computern, sowie Stahl/Eisen-Stehlampen, Tisch- und Stuhlbeinen oder -Gitarrenständer (letztere werden ja auch mal herumgerückt). Hinzu kommen elektrom. Störfelder durch Motoren und Gestell oder Dreharm des Robots selber, ebenfalls abhängig von Stellung und Leistung im wechselnden Fahrbetrieb.
    Da es unmöglich ist, jede Fehl- und Missweisung an jedem beliebigen Ort samt aller exakter Korrekturwerte für jede beliebige aktuelle Stellung/Fahrrichtung zu kennen, kannst du auch keine Position bestimmen und keine Drehung exakt berechnen.
    Daher kann man auch nicht vorhersagen, wann man sich auf den Kompass velassen kann und wann man nur mit Gyro allein arbeiten muss.
    Fazit: vergesst einen Kompass für Räume/indoors, wenn es keine standardisierbare Experimentalumgebung ist.
    Wer es tatsächlich geschafft haben sollte, ohne weitere externe Referenzen (Baken, Peilungen, Sensoren), möge das mal hier vorstellen. Und übrigens, auch GPS ist indoors bei seiner ungeheueren Ungenauigkeit nicht hilfreich, eher schon Odometrie (auch nur in gewissen Genauigkeits-Grenzen).

  8. #18
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.650
    Ich habe noch was gefunden:

    Wenn du dein Modul auf den Tisch legst und es fixierst, wirst du immer noch eine Drehrate messen. Verschieden groß auf verschiedenen Achsen, aber diese drift ist immer da.

    Und jetzt nimmst du du einen Fön und bläst dein Modul an. Da wirst du eine deutliche Veränderung bemerken.

    Darum haben die einen Temperatursensor eingebaut, und mit dem kannst du die drift pro Achse und Temperatur bestimmen. Und das liefert dir eine Tabelle, in der du einen Korrekturwert nachschlagen kannst. Und interpolieren zwischen den beiden nächstgelegenen Werten.

    Das musst aber alles DU programmieren. Das kann das Modul nicht. Aber die Temperatur gibt es dir ja.
    Quelle: https://www.python-forum.de/viewtopic.php?t=42462

  9. #19
    HaWe
    Gast
    Falsch:
    Das musst aber alles DU programmieren. Das kann das Modul nicht. Aber die Temperatur gibt es dir ja.
    Richtig:
    der MPU6050 kann das selbstverständlich autonom berechnen, er rechnet das mit seinem onboard-dmp bereits mit ein, samt sensor fusion! (man muss dann ntl die dmp-Libs verwenden, wie bereits verlinkt, keinesfalls die raw-Werte)

    Es geht aber dauerhaft nicht ohne stabile externe Referenzen!

  10. #20
    Benutzer Stammmitglied
    Registriert seit
    28.07.2018
    Beiträge
    30
    Ich danke euch für die vielen Antworten!
    Sry, dass ich so spät antworte, ich habe viel zu tun in letzter Zeit.

    Also ich bin gegen einen Magnetometer auch eher abgeneigt, da der Roboter sich
    ausschließlich drinnen bewegen wird. Außerdem habe ich schonmal versucht
    so ein Teil zu kalibrieren, allerdings war das Ergebnis ziemlich unbefriedigend.
    Den Vorschlag mit dem Mag habe ich nur gemacht, weil ich dachte, dass man aus einer
    Kombi aus Mag Gyro und Acc einen Wert berechnet der sich auch durch externe Störfelder
    nicht verändert, da gyro und acc diese Änderung irgendwie bemerken und ausgleichen würden
    und anders herum würde der mag Drifts kompensieren. Naja aber jetzt wo ich drüber nachdenke
    kann das nicht so einfach sein, wie ich mir das vorgestellt habe.

    Und ja mags sind extrem anfällig gegen externe Magnetfelder. Gyro und Accel scheinen dagegen
    immun zu sein.(Soweit ich es zumindest getestet habe)

    Da ich mit dem Mag nicht so gute Erfahrungen gemacht habe, würde ich wenn möglich
    lieber auf einen mag verzichten und den Drift alleine mit gyro und accel minimieren.

    Der Drift ist zwar nicht stark und vlt erwarte ich etwas zu viel für solch günstige Boards.
    Nach 30 Sekunden verändert sich der Yaw-Wert bei Stillstand um etwa 0.2/0.3.
    Allerdings schwankt diese Veränderung auch.

Seite 2 von 6 ErsteErste 1234 ... LetzteLetzte

Ähnliche Themen

  1. Nur Gierwinkel benötigt; Gyro Drift wegbekommen? (Phidget 1044)
    Von SeveQ im Forum Software, Algorithmen und KI
    Antworten: 1
    Letzter Beitrag: 27.03.2013, 23:11
  2. 3-Achs Compass kompensieren
    Von Che Guevara im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 1
    Letzter Beitrag: 05.02.2013, 23:18
  3. Motor Anlaufstrom Kompensieren
    Von RobbyMartin im Forum Elektronik
    Antworten: 10
    Letzter Beitrag: 13.06.2011, 19:28
  4. Habe Probleme mit Drift bei Gyro ADIS16250
    Von reflection im Forum Sensoren / Sensorik
    Antworten: 65
    Letzter Beitrag: 14.10.2008, 08:45
  5. Ultraschall Transmitter kompensieren
    Von ernesti001 im Forum Sensoren / Sensorik
    Antworten: 15
    Letzter Beitrag: 23.02.2005, 10:55

Berechtigungen

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

Solar Speicher und Akkus Tests