Autor |
Lagesensor , Werte schwanken |
|
|
|
|
BID = 1034990
Kleinspannung Urgestein
Beiträge: 13359 Wohnort: Tal der Ahnungslosen
|
|
Bin grad dabei mit einem MPU 6050 rumzuspielen.
(ein Krückengänger muß ja auch mal was sinnvolles machen )
Werte auslesen und seriell anzeigen klappt ganz prima.
(Programm ist natürlich nicht von mir )
Aber selbst wenn der Sensor flach auf dem Tisch liegt und ich mich mucksmäuschenstill verhalte,schwanken die Werte aller drei Achsen ständig um ca. +/- 30 .
(Tabelle ist alle 1 sec.)
Hab schon mit verschiedenen Clock/Abtastraten experimentiert,aber da ändert sich wenig bis gar nichts.
Natürlich könnte ich jetzt viele Messungen hintereinander machen und dann den Mittelwert bilden.
Nur würde mich trotzdem mal interessieren,was das Teil da grad immer so mißt.
Oder hat der einfach nur nen Hau wech?
_________________
Manche Männer bemühen sich lebenslang, das Wesen einer Frau zu verstehen. Andere befassen sich mit weniger schwierigen Dingen z.B. der Relativitätstheorie.
(Albert Einstein)
[ Diese Nachricht wurde geändert von: Kleinspannung am 26 Feb 2018 0:10 ] |
|
BID = 1034995
perl Ehrenmitglied
Beiträge: 11110,1 Wohnort: Rheinbach
|
|
Zitat :
| selbst wenn der Sensor flach auf dem Tisch liegt und ich mich mucksmäuschenstill verhalte,schwanken die Werte aller drei Achsen ständig um ca. +/- 30 . | Evtl. hast du Störspannungen auf der Versorgung.
Andererseits ist +/-30 bei einem Meßbereich vom +/-32000 ja gerade mal 0,1%. |
|
BID = 1034998
Kleinspannung Urgestein
Beiträge: 13359 Wohnort: Tal der Ahnungslosen
|
Zitat :
perl hat am 26 Feb 2018 00:26 geschrieben :
|
Evtl. hast du Störspannungen auf der Versorgung.
|
Dachte ich zuerst auch.
Aber zumindest ein 100nF Kerko und ein 10µF Elko direkt an den Versorgungspins brachten keine Änderung.
(was anderes hab ich grad nicht hier)
Außerdem hat die Platine einen eigenen 3,3V Regler drauf
Zitat :
|
Andererseits ist +/-30 bei einem Meßbereich vom +/-32000 ja gerade mal 0,1%.
|
So hab ich das noch gar nicht betrachtet.
Kann das einfach nur das "rauschen" des internen ADC sein?
Eigentlich wollte ich grad aus Spaß damit so ne Art "elektronische Wasserwaage" programmieren.
Mit LED Zeile.
Aber dazu muß ich die Werte irgendwie "beruhigen".
Also wohl doch "Mittelwert"
_________________
Manche Männer bemühen sich lebenslang, das Wesen einer Frau zu verstehen. Andere befassen sich mit weniger schwierigen Dingen z.B. der Relativitätstheorie.
(Albert Einstein)
|
BID = 1035001
perl Ehrenmitglied
Beiträge: 11110,1 Wohnort: Rheinbach
|
Zitat :
| Hab schon mit verschiedenen Clock/Abtastraten experimentiert,aber da ändert sich wenig bis gar nichts. |
Das ist verständlich, denn auch dann passiert die eigentliche Messung ja sehr schnell. Die Pausen dazwischen verbessern das Rauschen nicht.
Zitat :
| Natürlich könnte ich jetzt viele Messungen hintereinander machen und dann den Mittelwert bilden. |
Aber das brauchst nicht du zu tun, sondern der Chip hat schon ein solches Mittelwertfilter eingebaut. Du must es nur noch einschalten. Dann kannst du Messungen mit voller Geschwindigkeit machen und die gemittelten und im Rauschen reduzierten Werte gemütlich abholen.
|
BID = 1035006
unlock Schriftsteller
Beiträge: 901 Wohnort: Mosbach
|
Zitat :
Kleinspannung hat am 26 Feb 2018 00:01 geschrieben :
|
Aber selbst wenn der Sensor flach auf dem Tisch liegt und ich mich mucksmäuschenstill verhalte,schwanken die Werte aller drei Achsen ständig um ca. +/- 30 .
|
Das muss aber nicht unbedingt Rauschen sein,möglicherweise hat der Nachbar über oder nebendarn die Waschmaschine im Schleudergang,oder es ist gar eine Baustelle in der Nähe,wovon dann eben Schwinnungen kommen die man selst nicht spürt.
Wenn dann noch zufällig dein Tisch in Resonanz mit den Seismischen Wellen steht,e voila!
Edith:
Lass dir die Werte mal grapisch darstellen,nimm dazu aber die Differenzwerte,und dann kann man schon sehen ob es Periodische Schwingungen sind oder nicht!
_________________
One Flash and you're Ash !
[ Diese Nachricht wurde geändert von: unlock am 26 Feb 2018 11:25 ]
|
BID = 1035048
Kleinspannung Urgestein
Beiträge: 13359 Wohnort: Tal der Ahnungslosen
|
Zitat :
perl hat am 26 Feb 2018 03:42 geschrieben :
|
der Chip hat schon ein solches Mittelwertfilter eingebaut. Du must es nur noch einschalten.
|
Das hatte ich dann wohl (unbewußt) schon getan.
Falls wir von dem selben Register reden.
Nämlich den ersten drei Bits im 0x1A
(bei meinem Halbwissen bin ich mir da nicht so sicher )
Bei niedrigster Stufe waren dann die +/- 30.
Bei default sinds locker +/- 300.
Hab dann noch das "digital high pass Filter" auf höchste Stufe gesetzt.
Was quasi die Auflösung reduziert.
Also laut Datenblatt Messbereich statt +/- 2g jetzt +/- 16g.
Dann schwankten die Werte nur noch so bei +/- 3.
Hab dann noch ne Schleife gebastelt die 32x die werte holt,aufaddiert und durch 32 teilt.
Jetzt hab ich fast akurat stehende Messwerte.
Und da ich ja keinen Quadcopter damit steuern will,reicht mir die Aktualisierungsrate völlig aus.
_________________
Manche Männer bemühen sich lebenslang, das Wesen einer Frau zu verstehen. Andere befassen sich mit weniger schwierigen Dingen z.B. der Relativitätstheorie.
(Albert Einstein)
|
BID = 1035059
Brizz Stammposter
Beiträge: 386 Wohnort: Rheine
|
Für verrauschte Signale nimmt man statt eines Mittelwertes auch gerne den Median von mehreren Messwerten.
Das funktioniert so:
Man speichert immer die letzten Messwerte, z.B. die letzten elf Messwerte auf ein Datenfeld. Mit jedem neuen Messwert, verwirft man den ältesten Messwert und speichert an seine Stelle den neuesten Messwert. Danach speichert man die elf Messwerte auf ein zweites Datenfeld, sortiert sie der Größe nach und greift sich den mittleren Wert (Median) heraus. Den Median stellt man dann dem nachgeordneten Prozess als aktuellen Messwert zur Verfügung.
Statt elf Messwerten kann man natürlich auch mehr oder weniger Messwerte speichern, immer eine ungerade Anzahl.
Um den Messwert weiter zu beruhigen, kann man noch ein PT1-Glied programmieren, das entspricht in der analogen Welt einem Tiefpass aus einem Widerstand und einem Kondensator.
Nennt man den Ausgang des Tiefpasses x, dann kann man Folgendes berechnen:
x = (k * x + Median) / (k + 1)
k ist dabei die Dämpfungskonstante.
k und x sollten Fließzahlen sein.
|