-         

Ergebnis 1 bis 7 von 7

Thema: 9DOF-Sensor - Datenauswertung?

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    18.10.2011
    Beiträge
    68

    Frage 9DOF-Sensor - Datenauswertung?

    Anzeige

    Hallo,

    ich habe diesen 9DOF-Sensor und habe Probleme die Daten richtig zu interpretieren.

    Zunächst der Gyrosensor:
    Im Datenblatt steht "full-scale range of +/- 2000 °/s" mit einer Empfindlichkeit von 14.375 LSB/(°/s). Hier wirkt schon die Einheit ein wenig merkwürdig, da der Sensor mir ja eigentlich einen Winkel zurückgeben sollte aber die Einheit eigentlich für Winkelgeschwindigkeit zählt?
    Wenn ich das mal außer acht lasse hätte ich gemeint, dass die +/- 2000 °/s = +/- 360° sind. Daher wäre der Umrechenfaktor von Bits auf Grad: (360/2000)*14,375 ?

    Beim Beschleunigungssensor weiß ich nicht ob der Sensor so ungenau ist oder ob ich ebenfalls die Daten falsch interpretiere.
    Der Sensor hat einen Wertebereich von +/- 16 G mit einer Auflösung von 4 mG/LSB. Bei einer Messung im Ruhestand des Sensor komme ich auf dieses Ergebnis:
    ~225 Bits =>
    225 Bits * 4 mG/LSB = 900 mG = 0,9 G
    10% Ungenauigkeit scheint mir doch etwas viel zu sein?

    Hat jemand Ideen, Anmerkungen oder ähnliches?
    Danke fürs lesen!

    LG

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    24
    Beiträge
    1.544
    Hi,

    ein Gyrosensor gibt eine Winkelgeschwindigkeit aus, keinen Winkel! Umrechnen kann man das nicht einfach so, dafür musst du integrieren (aber das birgt Fehler, deswegen auch der ACC).
    Ist den sichergestellt, dass der Sensor genau waagrecht ist? Einen best. Drift / Offset musst du dabei auch in Kauf nehmen. Die Temperatur spielt dabei auch eine gewisse Rolle.

    Gruß
    Chris

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    18.10.2011
    Beiträge
    68
    Zitat Zitat von Che Guevara Beitrag anzeigen
    Hi,

    ein Gyrosensor gibt eine Winkelgeschwindigkeit aus, keinen Winkel! Umrechnen kann man das nicht einfach so, dafür musst du integrieren (aber das birgt Fehler, deswegen auch der ACC).
    Ist den sichergestellt, dass der Sensor genau waagrecht ist? Einen best. Drift / Offset musst du dabei auch in Kauf nehmen. Die Temperatur spielt dabei auch eine gewisse Rolle.

    Gruß
    Chris
    Danke für deine Antwort!

    Bin leider mit der Differential-/Integralrechnung nicht sehr fit. Könntest du mir ein Beispiel geben wie ich von der Winkelgeschwindigkeit auf den (veränderten) Winkel komme?
    Meine Überlegung wäre: Wenn ich z.B.: jede Millisekunde einen Sensorwert mit der Winkelgeschwindigkeit bekomme, kann ich auf den Winkel zurückrechnen, da mir Zeit und Winkelgeschwindigkeit bekannt sind.
    Das wäre dann:
    (veränderter) Winkel = Winkelgeschwindigkeit/Zeit
    z.B.: Winkel = (60°/s)*0,001s = 0,06°
    Oder ist das zu einfach?

    Und was meinst du mit "ACC"?

    Danke und LG
    Virtuelx
    Geändert von Virtuelx (30.05.2013 um 18:33 Uhr)

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    24
    Beiträge
    1.544
    Hi,

    also den Winkel kannst du durch Integration ermitteln. Etwa so:
    Code:
    Winkel = Winkel + Gyro
    Je nachdem, wie oft du pro Sekunde integrierst, ist der Wert kleiner oder größer. Ein Beispiel:
    Der Gyro gibt einen Wert von 32768 bei 2000°/s aus, du integrierst mit 500Hz (2ms)
    1°/2000° * 32768 * (1/500) = 8192
    D.h. ein Wert von 8192 entspricht einem Winkel von 1°. Wenn du ohne dt (also die Zeitdifferenz zwischen zwei Messungen) rechnest, erhältst du zwar den Winkel nicht im Klartext (sondern ein vielfaches davon), dafür kommst du aber ohne Gleitkommaarithmetik aus und sparst so Rechenzeit.
    Dieser Winkel wird allerdings sehr schnell wegdriften (innerhalb 1-2s). Deswegen braucht man einen ACC (Accelerometer / Beschleunigungssensor), mit dem man den richtigen Winkel bestimmen kann. Allerdings misst dieser alle Art von Beschleunigung und ist deshalb stark verrauscht.
    Um nun einen korrekten Winkel zu bekommen, bedient man sich der Vorteile beider Sensoren.

    Gyro:
    + schnell
    + kaum Rauschen
    + keine Auswirkungen von Vibrationen
    - ständiger Drift
    - Quantisierungsfehler

    ACC:
    + misst absoluten Winkel
    + kein Drift
    - starkes Rauschen
    - misst alle Beschleunigungen

    Man braucht einen Algo, um die beiden Sensorwerte zu fusionieren, da gibts u.a. den Komplementärfilter, Kalmanfilter, usw...
    Der Komplementärfilter arbeitet einfach aber sehr gut (wenn er richtig eingestellt ist), ist einfach zu implementieren und braucht kaum Rechenzeit. Der Kalmanfilter dagegen soll besser Ergebnisse liefern, ist aber auch deutlich schwieriger zu verstehen / implementieren und braucht auch mehr Rechenzeit.
    Der Filter ist dazu da, den Drift des Gyro und das Rauschen des ACCs zu eliminieren und daraus den richtigen Winkel zu berechnen.
    Ein Ansatz eines Komplementärfilters wäre:
    Code:
    a = 0.98
    Winkel = a * (Winkel + Gyro) + (1-a) * ACC_Winkel
    A ist sozusagen die Zeitkonstante der Filter (Hoch- und Tiefpass), Gyro ist der Gyro-Wert, ACC_Winkel ist der Winkel berechnet vom ACC-Sensor (z.b. per ATN) und Winkel ist der berechnete Winkel aus beiden Sensoren.
    Der Gyro und ACC-Wert muss evtl. noch angepasst werden, sodass die Größenordnung beider Werte gleich ist.

    Gruß
    Chris
    Geändert von Che Guevara (02.06.2013 um 19:55 Uhr)

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    01.04.2007
    Ort
    good old Germany
    Beiträge
    27
    Bei mir sieht das eher so aus!? :

    Code:
    a = 0.98;
    Winkel = a *(Winkel +Gyro *dt) + (1-a) *ACC_Winkel;

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    24
    Beiträge
    1.544
    Hi,

    ja da hab ich wohl nen kleinen Fehler reingeschrieben, wird korrigiert

    Gruß
    Chris

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    18.10.2011
    Beiträge
    68
    Danke euch!
    Habs jetzt raus .

Ähnliche Themen

  1. RS485-Sensor oder doch lieber RS232-Sensor an Laptop andocken?
    Von Cysign im Forum Sensoren / Sensorik
    Antworten: 11
    Letzter Beitrag: 23.03.2013, 12:09
  2. Verkaufe Räumung:US-Sensor, IR-Sensor,Displays,MTreiber,Servorboard, Pan&Tilt Köpfe
    Von kellerkind im Forum Kaufen, Verkaufen, Tauschen, Suchen
    Antworten: 3
    Letzter Beitrag: 18.06.2012, 18:42
  3. sensor
    Von laila im Forum Sensoren / Sensorik
    Antworten: 2
    Letzter Beitrag: 31.12.2007, 13:22
  4. 8 Drehzahlen parallel - Datenauswertung => PC
    Von 3dpro im Forum Controller- und Roboterboards von Conrad.de
    Antworten: 1
    Letzter Beitrag: 08.03.2006, 17:46
  5. Temp-Sensor KT130 (PTC-Sensor) an C-Control
    Von Thomas im Forum Sensoren / Sensorik
    Antworten: 1
    Letzter Beitrag: 02.12.2003, 13:53

Berechtigungen

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