- Labornetzteil AliExpress         
Ergebnis 1 bis 10 von 29

Thema: für Arduino / Due: Empfehlung für IMU / I2C Gyro Sensor

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    32
    Beiträge
    1.578
    Hi,

    also der MPUxxxx scheidet eigentlich nicht aus (also nicht wegen dem o.g. Argument). Den gibts in der 6xxx Version mit Gyro + Acc und in der 9xxx Version mit Gyro + Acc + Compass.
    Er lässt sich einfach konfigurieren (DLPF, Scaling, etc) und beinhaltet einen DMP, der dir Quaterionen ausgibt.
    Musst mal danach googln, einige Projekte verwenden die DMP Daten.

    Gruß
    Chris

  2. #2
    HaWe
    Gast
    hallo,
    das wäre schön, wenn du Recht hast!
    Was jetzt Quaternionen sind, weiß ich nicht, bei allem was ich aber gefunden habe, muss man aber selber Kalman-Filter programmieren und Timer-Interrupts für I2C verwenden:
    http://playground.arduino.cc/Main/MPU-6050#sketch
    https://github.com/jrowberg/i2cdevli...rduino/MPU6050
    https://github.com/TKJElectronics/Ka...amples/MPU6050

    Ich Suche etwas, wo die Winkelgeschwindigkeit oder sogar der Winkel bereits intern durch Kalman berichtigt sind und man nur noch die gefilterten Werte auslesen muss (z.B. als 16- oder 24-bit Werte)

    Der Cruizcore-IMU legt sie z.B. als (edit: KALMAN-) gefilterte 16-bit-Werte in insg. 2 Bytes ab und man muss die 2 Bytes nur noch zu ints zusammensetzen (LoByte + 8x HiByte): die muss man dann noch über die Zeit integrieren um den Drehwinkel zu erhalten, das ist ntl. ok.

    Ich kenne diesen IMU im Prinzip sogar schon von Lego (als XG1300L): mehr als 2 Register-Bytes auslesen braucht man da also prinzipiell wirklich nicht zu machen, anschließend nur noch eben integrieren. Genau so soll es sein, also keine Riesen-libs etc., wozu auch, wenn die gefilterten Werte schon fertig in den Registern abgelegt sind?
    Geändert von HaWe (06.03.2015 um 16:53 Uhr)

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    32
    Beiträge
    1.578
    Der MPUxxxx gibt dir Winkelgeschwindigkeit, Beschleunigung und Temperatur aus (alles mit max. 8kHz), der DMP gibt Quaternionen mit 200Hz aus.
    Quaternionen findet man mit Google beim ersten Treffer, das ist eine andere Art der Darstellung der Orientierung im Raum, weil Euler zb das Problem mit dem Gimbal Lock hat, sie lassen sich aber relativ einfach in Euler-Winkel überführen.
    Winkelgeschwindigkeit, Temperatur und Beschleunigung liegen jeweils als 16Bit vor, ist also auch kein Aufwand das auszulesen! Mit dem DMP kenn ich mich nicht so aus.

  4. #4
    HaWe
    Gast
    für den MPU werden aber irgendwelche seltsamen AVR-I2C-libs mit AVR-IRQs verwendet, die für den Due nicht funktionieren, und ein Kalman ist eben nicht eingebaut, daher sind die abgelegten Werte für Winkelgeschwindigkeit, Temperatur und Beschleunigung höchstens ungefilterte raw-Werte.
    Damit ist es aber keine IMU, die selber bereits intern die Werte Kalman-bereinigt anbietet: darum geht es aber.
    Aus der bereinigten 3D-Winkelgeschwindigkeiten dann in einen 3D-Vektor zu berechnen, ist dann aber doch absolut kein Problem mehr, wozu brauche ich da Quaternionen?
    Andererseits, wenn der Kalman integriert wäre, warum würde sich dann jemand die Mühe machen, ein externes Kalman Programm dafür zu schreiben? ich glaube also kaum, dass der MPUxxxx das bereits integriert hat - darum geht es aber.

    (Der XG1300L bzw. R1350 hat den Kalman aber bereits integriert und legt die gefilterten 1D-Werte dann in 2 Registern ab, fertig, und so etwas Suche ich - nur eben 3D und per I2C.)

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    32
    Beiträge
    1.578
    Hm, ich habs mir schonmal gedacht, entweder du liest nicht richtig oder bist beratungsresistent!
    Man braucht für den MPU WEDER eine spezielle Library NOCH muss man die Werte (Winkel als Quat.) selbst errechnen, den die WERDEN ausgegeben!!!!!!!

    EDIT:
    Achja, ob da drinnen ein Kalman am Werkeln ist oder nicht, weiß ich nicht, aber es gibt auch noch andere Filter, die sehr gut arbeiten. Außerdem warum sollte man, nur weil man die Daten schon fusioniert bekommt, nicht mal selbst einen Kalman schreiben? So schwierig ist das nicht und stell dir vor: man lernt dabei sogar noch was

Ähnliche Themen

  1. RN-Vorschlag: 3D-Gyro + G-Sensoren (IMU)
    Von Reinald im Forum Bauanleitungen, Schaltungen & Software nach RoboterNetz-Standard
    Antworten: 30
    Letzter Beitrag: 17.10.2014, 14:15
  2. Suche i2c Gyro-Sensor
    Von Blimpiander im Forum Sensoren / Sensorik
    Antworten: 26
    Letzter Beitrag: 13.10.2010, 20:23
  3. suche software für IMU-5 Sensor
    Von avoid im Forum Software, Algorithmen und KI
    Antworten: 4
    Letzter Beitrag: 28.09.2009, 00:39
  4. Empfehlung für einen Sensor
    Von Sergius im Forum Sensoren / Sensorik
    Antworten: 4
    Letzter Beitrag: 27.04.2008, 01:28
  5. Antworten: 0
    Letzter Beitrag: 21.11.2005, 14:11

Berechtigungen

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

Solar Speicher und Akkus Tests