Hi, irgendwie habe ich im Netz nichts konkretes gefunden, warum das denn der Fall ist. Beispielsweise ein Piezo soll ja mit der Zeit wegdriften und Werte ausspucken, obwohl er nur herumliegt. Warum ist das so? Viele Grüße
Weil ers kann? Daß er genau korrekt arbeitet, ist so wahrscheinlich wie das Handlaufband einer Rolltreppe exakt gleich schnell wie diese ist. (Im Regelfall ist es leicht schneller, im ungeschickten Fall deutlich langsamer und man fälllt rückwärts um, wenn man sich festhält.)
Das Rauschen des Sensors wird doppelt integriert: a -> v -> x Zur Veranschaulichung würde ein konstanter additiver Fehler in der gemessenen Beschleunigung a einen Fehler im Ort x hervorrufen, der mit t^2 wächst.
Der Sensor driftet nicht, aber die Geschwindigkeit oder Position die du daraus ableitest. Von einem Drift der gemessenen Beschleunigung wüsste ich nix.
Nachtrag: Das Rauschen der Beschleunigungsmesswerte an sich ist "nicht so schlimm", auch z.B. wenn die Beschleunigung direkt als Messsignal verwendet würde. Das größere Problem ist neben dem doppelten Integral des Rauschens eher die doppelte Integration eines Nullpunktfehlers des Beschleunigungsmessers. Dieser ist dann nämlich im Vergleich mit dem Rauschen eher zeitlich langsam veränderlich, mittelt sich nicht weg und führt dann zum beschriebenen Fehler bzw. Drift im Ort der mit t^2 sehr schnell wächst. Fehler durch ungenaue Achsenausrichtung des Sensors und damit falscher Kompensation der Gravitation ließen sich durch eine bekannte Messung entfernen, aber da kommt dann die Drift des Nullpunkts des Beschleunigungsmessers ins Spiel. Sensoren sind nun mal temperatur- und ggf. auch druck-, ... abhängig, zumal es sich um ein mikromechanisches System handelt.
Das Rauschen mittelt sich auch nicht weg, das ist eine verbreitete Fehlannahme. Von einer Rauschamplitude X mittelt sich ein sqrt(X) weg, und ein sqrt(X) bleibt als Drift übrig. Siehe Random Walk.
Zyrano D. schrieb: > Hi, > > irgendwie habe ich im Netz nichts konkretes gefunden, warum das denn der > Fall ist. Beispielsweise ein Piezo soll ja mit der Zeit wegdriften und > Werte ausspucken, obwohl er nur herumliegt. Warum ist das so? > Viele Grüße Beitrag "Beschleunigungssensor Drift schätzen"
Sven B. schrieb: > Das Rauschen mittelt sich auch nicht weg ... durch Integration. Das Rauschen an sich kann ja mittelwertfrei sein. Hatte ich oben nicht präzise formuliert.
Da der TE nach nach der Drift der Sensoren fragt, und nicht nach der Drift eines Systems bestehend aus Sensor und integrierender Auswertung, meint er vermutlich die Alterungsdrift der Sensoren. Die Alterungsdrift betrifft vor allem MEMS-Sensoren, wobei sich dort die folgenden physikalischen Größen mit der Zeit ändern: 1. die Federkonstante der schwingenden Teile durch Materialermüdung 2. die Kapazität, über die die Auslenkung der schwingenden Teile gemessen wird, durch Oxidation des Siliziums Im Gegensatz dazu driftet ein Servobeschleunigungssensor prinzipbedingt praktisch überhaupt nicht.
:
Bearbeitet durch Moderator
Sensorrauschen schrieb: > Das Rauschen an sich kann ja mittelwertfrei sein. Aber was heißt das genau? Auf normalverteiltes Rauschen trifft das zu, trotzdem driftet z.B. eine Geschwindigkeit, die du durch Summieren von normalverteiltem Rauschen mit Mittelwert 0 erhältst, systematisch weg.
Wenn es richtiges Rauschen ist, sollte der Mittelwert doch null sein.
Zyrano D. schrieb: > Beispielsweise ein Piezo s Ein piezo ist eine besondere Form von Beschleunigungssensor: wahnsinnig schnell und hohe Werte. Die driften, weil sie Ladungen produzieren und keine statischen Werte. Normale Beschleunigungssensoren driften nicht annähernd so.
Wenn es richtiges Rauschen ist, sollte der Mittelwert doch null sein.
Hans schrieb: > Wenn es richtiges Rauschen ist, sollte der Mittelwert doch null > sein. Ja, hilft dir aber nicht. Es driftet trotzdem, und zwar mit der Wurzel. Siehe Anhang, Summe über richtiges Rauschen mit Mittelwert 0; bei einer Million Werten bist du ungefähr bis 1000 weggedriftet. Kann auch zu -1000 driften oder sonstwohin, aber es driftet. Und es driftet immer weiter, wenn du mehr Werte nimmst. plt.plot(np.cumsum(np.random.normal(0, 1, 1000000))); plt.show()
Mit einem ordentlichen ADXL wäre das nicht passiert!
Hier 10 davon, vielleicht ist das anschaulicher. [plt.plot(np.cumsum(np.random.normal(0, 1, 1000000))) for i in range(10)]; plt.show()
Sven B. schrieb: > Das Rauschen mittelt sich auch nicht weg, Doch. > das ist eine verbreitete Fehlannahme. Eigentlich nicht. Wenn Du beim Berechnen des Mittelwertes korrekt durch die Gesamtzahl der summierten Werte dividierst -- so, wie man das bei jedem arithmetischen Mittelwert macht --, mittelt sich das Rauschen heraus. Genau DESHALB kann man Messwerte, denen ein zufälliger Fehler überlagert ist, durch vielfache Wiederholung und Mittelwertbildung verbessern. ABER: > Von einer Rauschamplitude X mittelt sich ein sqrt(X) > weg, und ein sqrt(X) bleibt als Drift übrig. Siehe > Random Walk. Das passiert bei einfacher Akkumulation (=Integration) der Messwerte -- und genau das ist ja die Operation, die von der Beschleunigung zur Geschwindigkeit führt. Der Einwand, Rauschen mittele sich heraus, führt sehr elegant auf den Holzweg, weil gar keine Mittelung, sondern eine Integration vorliegt :)
Ja, klar, das ist der Unterschied. Ich hätte präziser sagen sollen: das Rauschen mittelt sich in diesem Fall nicht weg.
A. S. schrieb: > Zyrano D. schrieb: >> Beispielsweise ein Piezo s > > Ein piezo ist eine besondere Form von Beschleunigungssensor: wahnsinnig > schnell und hohe Werte. > > Die driften, weil sie Ladungen produzieren und keine statischen Werte. > > Normale Beschleunigungssensoren driften nicht annähernd so. Aber die Ladung eines Piezos ist doch konstant, sobald man sie in Ruhe lässt? Wieso driftet denn dann der Weg und die Geschwindigkeit weg?
Zyrano D. schrieb: > Weg und die Geschwindigkeit jetzt bist Du auch bei Weg und Geschwindigkeit (erstes und zweites Integral). Kannst Du Deine Frage vielleicht ein wenig beschreiben? Um welchen Sensor geht es Dir? Um welche "Verarbeitung" geht es Dir. Bei einem Integral ist z.b. immer auch ein "+C" dabei, dass Dir gehörig in die Suppe spuckt.
Zyrano D. schrieb: > A. S. schrieb: >> Zyrano D. schrieb: >>> Beispielsweise ein Piezo s >> >> Ein piezo ist eine besondere Form von Beschleunigungssensor: >> wahnsinnig schnell und hohe Werte. >> >> Die driften, weil sie Ladungen produzieren und keine >> statischen Werte. >> >> Normale Beschleunigungssensoren driften nicht annähernd >> so. > > Aber die Ladung eines Piezos ist doch konstant, sobald man > sie in Ruhe lässt? Nur theoretisch. Piezos sind i.d.R. kreuzempfindlich auf die Temperatur (Pyroelektrizität). Ungleichmäßige Erwärmung gibt recht heftige elektrische Spannung. > Wieso driftet denn dann der Weg und die Geschwindigkeit > weg? Weil 1. die Geschwindigkeit das INTEGRAL über die Beschleunigung ist, 2. aufintegriertes Rauschen NICHT auf Dauer um Null herum pendelt, sondern (aus rein mathematischen Gründen) die Tendenz hat, nach der einen oder anderen Seite wegzu- driften, 3. ein auch noch so kleiner Offset in der Geschwindigkeit IMMER zu einer merklichen Drift in der Position führt. Ein zweifach integrierendes System KANN in der realen Welt nicht auf Dauer stabil sein. Nicht ohne zusätzliche Maßnahmen.
>> Zyrano D. schrieb: > Aber die Ladung eines Piezos ist doch konstant, sobald man sie in Ruhe > lässt? Wieso driftet denn dann der Weg und die Geschwindigkeit weg? Die Ladung bleibt auch nur dann konstant, wenn sie nicht weg kann. Da dort aber irgendwo ein Verstärker ist, wird dort auch ein deutlich von unendlich verschiedener Widerstand sein, durch denen Ladungen verschwinden.
Sensoren können auch driften ohne dass die Werte integriert werden... Temperatur, Federkonstanten, Kapazitätsänderungen über Laufzeit, Feuchtigkeit, alles fiese Gründe. Auch die Asics können fehlerhaft designt sein.
Zyrano D. schrieb: > Beispielsweise ein Piezo soll ja mit der Zeit wegdriften und > Werte ausspucken, obwohl er nur herumliegt. Warum ist das so? Vielleicht ist der Sensor völlig in Ordnung, aber du wohnst in Bielefeld. https://de.wikipedia.org/wiki/Kontinentaldrift
Sven B. schrieb: > Das Rauschen mittelt sich auch nicht weg, das ist eine verbreitete > Fehlannahme. Von einer Rauschamplitude X mittelt sich ein sqrt(X) weg, > und ein sqrt(X) bleibt als Drift übrig. Siehe Random Walk. plot(cumsum(randn(1,1e7))) Tatsächlich, erstaunlich. Für mich völlig kontraintuitiv, ne Falle, hätte gewettet, dass es nicht driftet. Hast Du nen link, wo das mal durch die Mathematikmühle gedreht wird? Cheers Detlef
Detlef _. schrieb: > Sven B. schrieb: >> Das Rauschen mittelt sich auch nicht weg, das ist eine verbreitete >> Fehlannahme. Von einer Rauschamplitude X mittelt sich ein sqrt(X) weg, >> und ein sqrt(X) bleibt als Drift übrig. Siehe Random Walk. > > plot(cumsum(randn(1,1e7))) > > Tatsächlich, erstaunlich. Für mich völlig kontraintuitiv, ne Falle, > hätte gewettet, dass es nicht driftet. > > Hast Du nen link, wo das mal durch die Mathematikmühle gedreht wird? > > Cheers > Detlef Ich finde die Erklärung vom MIT ganz gut: https://www.mit.edu/~kardar/teaching/projects/chemotaxis(AndreaSchmidt)/random.htm
Das z.B. ist das Problem bei Gyroskopen, durch die Integration von einfachem, weißen Rauschen mit Erwartungswert 0 entsteht über längere Zeiträume ein Random Walk, bei dem der absolute Fehler unbeschränkt wächst. Selbst wenn also der Offset der Rate == 0 ist! Auch der Erwartungswert des Integrals einer Zufallsvariable mit EW = 0 und Varianz = const ist 0, da Integral und Erwartungswert Operatoren linear sind. Vielerorts steht dann (z.B. https://de.wikipedia.org/wiki/Random_Walk#Eindimensionaler_Fall, zwar für diskrete Binomialverteilungen, aber mMn kann man das auf weißes Rauschen auch anwenden): man keine Aussage über das Verhalten über die Zeit machen. Nur über den mittleren quadratischen Abstand, also der Varianz. Die Varianz eines random walks steigt proportional mit der Zeit t. Der Erwartungswert bleibt aber bei 0. Ziemlich paradox, finde ich auch. Aber es sind halt Zufallsvariablen, da tickt die Welt etwas anders. Und du guckst dir bei einem cumsum(randn(1e6,1)) auch nur einen möglichen Pfad an, eine mögliche Realisierung des Zufallsprozesses an. Machst du das zig Mal, siehst du, dass der Prozess symmetrisch um 0 ist und du kannst auch die Standardabweichung (Wurzel der Varianz) mal einzeichnen, die immer größer wird. In dem Link oben steht z.B. "Die relative Abweichung {\displaystyle {\sqrt {n}}/n}{\sqrt {n}}/n geht gegen null, die absolute Abweichung {\displaystyle {\sqrt {n}}}\sqrt{n} wächst hingegen unbeschränkt." Mir fehlt ebenfalls das letzte Klick. Aber vielleicht hilft es schon etwas. Weitere Quellen: https://www.matheplanet.com/default3.html?call=viewtopic.php?topic=136036&ref=https%3A%2F%2Fwww.google.com%2F https://en.wikipedia.org/wiki/Random_walk#Gaussian_random_walk https://www.mit.edu/~kardar/teaching/projects/chemotaxis(AndreaSchmidt)/random.htm
Jan schrieb: > Auch der Erwartungswert des Integrals einer Zufallsvariable mit EW = 0 > und Varianz = const ist 0, da Integral und Erwartungswert Operatoren > linear sind. > Ziemlich paradox, finde ich auch. > Die Varianz eines random walks steigt proportional mit der Zeit t. Der Erwartungswert bleibt aber bei 0. > Aber es sind halt Zufallsvariablen, da tickt die Welt etwas anders. Ja, sehr wahr, bizarre Welt. Letzlich bin ich in dieser Welt schon mal schwer gescheitert: Ich habe mir eine verjitterte clock genommen, deren Jitter gaussverteilt ist. Dann habe ich mit viel Mühe und Nachhilfe die Verteilung des Kehrwerts der Zufallsvariablen 'Jitter' berechnet und dachte dann, dass sei das Spektrum des verjitterten Signals ( Frequenz ist 1/Periodendauer ). Das ist mitnichten der Fall, weil der Jitter 'komisches' Rauschen ist, das die Voraussetzungen der Theorie nicht erfüllt. Aber wenigstens kann ich jetzt die Verteilungsdichten von Funktionen von Zufallsvariablen berechnen. math rulez! Cheers Detlef
mal ne frage. Was kann man eigentlich gegen den Drift tun? Wenn ich die position bestimmen will und 2mal integriere, dann krieg ich mit der Zeit ja einen riesigen Fehler rein...
WolleRoseKaufe schrieb: > mal ne frage. Was kann man eigentlich gegen den Drift tun? Wenn ich die > position bestimmen will und 2mal integriere, dann krieg ich mit der Zeit > ja einen riesigen Fehler rein... Suchstichwort ist 'DC removal' oder 'DC suppression'. Hochpass oder Filter mit einer reellen Null bei zn=1 und einem reellen Pol nahebei, z.B. zp=0.8 . Cheers Detlef
Danke. Ja gut, wenn das signal tatsächlich langsam verändert wird haut der hochpass das raus...
Häufig reicht das aber nicht. Du musst den Sensor Kalibrieren. Über Winkel und Temperatur, damit werden Offset und Skalierung Parameter kalibriert. Im Idealfall bleibt dann fast Nur noch Rauschen übrig. Aber wie oben beschrieben führt auch Rauschen, wenn es integriert wird zum Drift. Da kannst du ohne zusätzliche Informationen rein gar nix machen IMO. Zusätzliche Informationen = gps oder eine andere absolute Positionsinformation, Informationen über die Applikation, es gab mal jmd, der hat mit einer imu und „zero velocity update“ brauchbare Positionen berechnen können. Allgemein - der Beschleunigungssensor misst auch die Schwerkraft, die ist Orientierungsabhängig, die musst du auch erstmal raus rechnen... Es ist schwierig.
Es gibt keine realisierbare Möglichkeit aus einem Beschleunigungssensor driftfrei die Position zu berechnen. Alle Systeme, die so etwas tun, haben zusätzliche Sensorik zur Driftkorrektur, oft Odometer oder GPS.
Sven B. schrieb: > Es gibt keine realisierbare Möglichkeit aus einem Beschleunigungssensor > driftfrei die Position zu berechnen. > > Alle Systeme, die so etwas tun, haben zusätzliche Sensorik zur > Driftkorrektur, oft Odometer oder GPS. Aber die Drift läßt sich sehr stark reduzieren. Trägheitsnavigationssysteme benutzen Beschleunigungssensoren zweimal aufintegriert zur Positionsbestimmung, um London zu treffen reichte das. In Vor-GPS Zeiten lagen die INS nach 6000km über den Atlantik angeblich einen halben daneben. Cheers Detlef
:
Bearbeitet durch User
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.