Erfahrungswerte L3G4200D (Offset)

OP #2945421
Lesenswert?
• ▲
▼
Hallo, mal wieder geht es für mich um das Gyroscope L3G4200D!

Hat jemand Erfahrungswerte mit diesem Gyroscope gesammelt?

Ich hänge an der Offset Eliminierung.

Folgendermaßen habe ich versucht den Offset raus zu rechnen:
1
float X_Offset = 0;
2

3
void Clean_Offset(void)
4
{
5
  for(uint8_t i = 0; i<200; i++)
6
  {
7
    uint8_t XH = ReadByteSPI(OUT_X_H);
8
    uint8_t XL = ReadByteSPI(OUT_X_L);
9
    X_Offset += (((XH << 8) | XL));
10
  }
11
  X_Offset /= -200;
12
}
13

14
float Refresh_Gyro_Data_X(void)
15
{
16
  uint8_t XH = ReadByteSPI(OUT_X_H);
17
  uint8_t XL = ReadByteSPI(OUT_X_L);
18
  X = ((((XH << 8) | XL)+X_Offset) * 0.00875);
19
  return X;
20
}
X wird alle 10ms (über Refresh_Gyro_Data_X) neu ausgelesen und soll dann 
der Wert in dps sein!

Dann wird ebenfalls alle 10ms zusätzlich folgende Zeile ausgeführt um 
die ausgeführte Drehung in Grad zu erhalten:
1
float refresh_time = 0.01;
2
float X_add = 0;
3
float X;
...
1
X = Refresh_Gyro_Data_X();
2
X_add += X*refresh_time;     //<-- diese Zeile

Nach dieser Berechnung treten trotzdem immer wieder Offsets bis zu 1Grad 
pro Sekunde auf, was nun doch recht viel ist.

Sieht jemand einen grundlegenden Fehler in der Berechnung, oder ist 
diese in Ordnung so?

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.