Forum: Mikrocontroller und Digitale Elektronik Sensor-Rohdaten-Interpretieren


von Florian K. (f-kae)


Lesenswert?

Hallo zusammen,

vielleicht kann mir jemand kurz erläutern wie ich die Daten eines 
Datenblattes richtig interpretiere bzw. wo mein gedanklicher Fehler 
liegt.

Im Sourcecode eines Kalmanfilters bin ich zu der Berechnung der 
"Degree-Per-Second"(dps) aus den Rohdaten des L3G4200D gekommen:
Dort steht folgendes:
****edit****

Wert in dps = Rohwert    /32767 * Resolution
X           = x          /32767 * 500

=> 0,01526dps/LSB
Aber das Datenblatt sagt 0,0175dps/LSB
Ist es also falsch den "intuitiven" Weg zu wählen?

****edit****

Daher frage ich mich jetzt wie man Rohdaten mithilfe des Datenblatts 
oder allgemein interpretieren kann.

Hier sind ein paar Beispielrechnungen von mir.

Es wäre super wenn mir jemand dieses Mysterium für mich aufklären 
könnte.


LSM303DLH(ACC):(16-Bit-Resolution)-----------------------------
FS = +-2g -> 1mg/LSB
16BitResolution in 2erKomplement -> Max = 32767 LSB

Datenblatt
=> Maximaler Ausgabewert: 32767LSB*0,001g/LSB = 32,767g

Intuitiv
=> Maximaler Ausgabewert: 32767LSB/Max * 2g = 2g



BMA (ACC):(14-Bit-Resolution)----------------------------------
FS = +-2g -> 4096LSB/g = 0,000244g/LSB
14BitResolution in 2erKomplement -> Max = 8191 LSB

Datenblatt
=> Maximaler Ausgabewert: 8191LSB*0,000244g/LSB = 2g

Intuitiv
=> Maximaler Ausgabewert: 8191LSB/Max * 2g = 2g



L3G4200D(Gyro):(16-Bit-Resolution)-----------------------------
FS = +-250dps -> 8,75mdps/LSB
16BitResolution in 2erKomplement -> Max = 32767 LSB

Datenblatt
=> Maximaler Ausgabewert: 32767LSB*0,00875dps/LSB = 286dps

Intuitiv
=> Maximaler Ausgabewert: 32767LSB/Max * 250dps = 250dps

von Florian K. (f-kae)


Lesenswert?

Kann mir keiner weiterhelfen? Ich verstehe leider immernoch nicht 
weshalb der Ausgabewert über den "intuitiven Weg" nicht mit dem Wert 
welcher sich aus den Angaben vom Datenblatt ergibt, entspricht.

von Timmo H. (masterfx)


Lesenswert?

Die Werte aus dem Datenblatt stimmen also 8.75/17.5 mdps/digit, 
zumindest fliegt mein Quadrocopter damit sauber

von Florian K. (f-kae)


Lesenswert?

Hey, ich bin eigentlich auch davon ausgegangen, dass die Berechnung über 
die Angaben des Datenblatts korrekt sind allerdings verstehe ich nicht 
warum die theoretische Berechnung nicht aufgeht.

Hast du zufällig Code zur Filterung und Regelung der Sensor-Daten? :)

Gruß,
Florian

von Timmo H. (masterfx)


Lesenswert?

Der Sensor nutzt halt eine andere Skalierung als man es theoretisch 
erwarten würde. Bin ich auch am Anfang drauf rein gefallen. Die gyro 
Daten filtere ich gar nicht die sind schon sehr sauber, den drift 
gleiche ich über einen komplementärfilter aus.

von Purzel H. (hacky)


Lesenswert?

In denmeisen Faellen macht man eine Regelung und ist nicht an genaueren 
Daten als an einem Prozent, falls ueberhaupt, interesssiert. meist ist 
der Sensor auch nicht genauern als ein Prozent.
mein tipp.. dann mass doch einfach den Multiplikator an. Also,  anstelle 
von *500 eben *550

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.