Archiv verlassen und diese Seite im Standarddesign anzeigen : Geschwindigkeitsmessung via Beschleunigungssensor
Moin,
ich habe hier einen 3-Axen Beschleunigungssensor rumliegen und möchte hier mit nun die Geschwindigkeit messen. Das Problem ist nun eben nur, wie.
Wenn ich die x-Achse messen möchte, und den Sensor nach vorne schiebe, bekomme ich ja die Beschleunigung. Stelle ich ihn aber noch etwas schräg, dann hat er ja auch noch eine Beschleunigung nach unten...
Könnt Ihr mir sagen, wo ich etwas zu dem Thema finde, um dann letzendlich die Werte zu bekommen, die ich gerne hätte?
MfG, und vielen Dank schon einmal, Ozzy
Das is eine Sinus-Cosinus-Orgie. Du hast (Beschleunigungs-)Vektoren, die ergeben eine Resultierende in irgendeine Richtung, das ist dann das, was du in Geschwindigeit umrechnen mußt.
Was dir aber noch fehlt, ist es, die Verdrehung selbst mitzukriegen. Das ist der nächste Sensor, der da mitspielt.
Und die Erdkugel dreht sich aber auch noch, d.h. das alles ändert sich dauernd.
Läuft auf eine Trägheits-Navigation hinaus, leider mit Aufsummierung der Fehler. uiuiui
Genau das meine ich; nur eben etwas exakter... Für die Verdrehung habe ich noch Gyros, soweit kein Problem.
Ich bräuchte nur eben mal etwas, wie ich die ganzen Werte zusammenrechne und integriere...
MfG, Ozzy
ich habe hier einen 3-Axen Beschleunigungssensor rumliegen und möchte hier mit nun die Geschwindigkeit messen.
Das unschöne daran ist, dass die Beschleuningung bei konstanter Geschwindigkeit gleich Null ist.
D.h. mit deinem Beschleunigungssensor kannst du die aktuelle Geschwindigkeit gar nicht messen, sondern nur Berechenen indem du in Zeitintervallen die Beschleunigung/Zeit misst und das Ergebnis ständig aufaddierst.
Da die Beschleunigungen während der Zeitintervalle in denen du sie misst höchstwahrscheinlich nicht konstant sein wird, enthält jede einzelne Messung einen Fehler und zur Berechnung deiner Geschwindigkeit addierst du zwangsläufig auch alle diese Fehler.
D.h. je länger du die Geschwindigkeit errechnest, desto falscher wird das Ergebnis.
je länger ..... desto falscher ....
Ich glaub', das weiss er schon. Ihm geht's um die theoretische Formel, die ja theoretisch auch ein präzises Ergebniss liefern würde.
Ich glaub', das weiss er schon. Ihm geht's um die theoretische Formel, die ja theoretisch auch ein präzises Ergebniss liefern würde.
OK, wie könnte die lauten?
Bei einer der 3 Achsen könnte er je nach Anwendung Glück haben, dass sie rausfällt, weil man die Geschwindigkeit ja eigentölich nur in Bewegungsrichtung angibt.
Die Messwerte der beiden verbleibenden Achsen setzen sich aus der Beschleunigung in Bewegungsrichtung und der Erdbeschleunigung zusammen.
Da er davon ausgeht, dass er den Winkel mit einem Gyro messen kann, können wir den Winkel zur Erdbeschleunigung als bekannt voraussetzen.
Wenn man die Beschleunigung in Fahrtrichtung messen will, bietet es sich an auch den Messwert der Achse in Fahrtrichtung zu verwenden.
Auf gerader Strecke sollte die Beschleunigung in Fahrtrichtung dann "Messwert mal Cos(Kippwinkel)" sein. Da dann noch den Schnörkel für ein Integral davor und ein "dt" dahinter und dann könnte das der Sache doch schon recht nahe kommen.
(klingt irgendwie zu einfach, da ist sicher irgendein peinlicher Fehler drin)
Wenns bergauf oder bergab geht passt das leider nicht mehr, es sei denn der Fehler durch das rausrechnen der Erdbeschleunigung hebt sich zufällig mit dem Fehler durch den dann ebenfalls falschen Kippwinkel auf ;-)
Aber das schöne an theoretischen Formeln ist ja, dass man die einfach auf die Bewegung in horizentaler Richtung einschränken kann.
In der Praxis gehört es sich eh nicht mit der Geschwindigkeit anzugeben die man bergab erreichen kann ;-)
Blöde ist nur, dass sich ein Gyro zum Messen eines Winkels genauso gut oder schlecht eignet, wie ein Beschleunigungssensor zum messen der Geschwindigkeit.
Der Gyro misst die Winkelgeschwindigkeit, d.h. u,m an den Winkel zu kommen muss man fast nochmal dasselbe Spiel durchziehen.
In der Praxis hat man dann noch einen Fehler den mal erst mal mit dem fehlerbehafteten Messwert multipliziert bevor man das Ergebnis aufaddiert.
Jo, eine Achse fällt wohl raus, aber mein Problem ist eben die Erdbeschleunigung, wenn die Achse gekippt ist... Also wer hier eine Formel für mich hätte...
Den Kippwinkel habe ich, das ist kein Problem. Aber eben der Rest...
MfG, Ozzy
Hallo Ozzy,
dein Beschleunigungssensor gibt Dir die Gesamtbeschleunigung an (ein 3D-Vektor im Raum). Wenn du den Kippwinkel hast, kannst du die Gravitationsbeschleunigung berechnen (auch in 3D-Vektor im Raum). Eine Vektor-Subtraktion ergibt den tatsächlichen Beschleunigungsvektor. Um die Geschwindigkeit zu erhalten, musst du diesen Vektor über die Zeit integrieren und die Ausgangsgeschwindigkeit dazuaddieren. (Du könntest die Integration nochmal machen und würdest die Position des Sensors erhalten.)
mfg beppo
mare_crisium
22.09.2007, 05:06
Ozzy,
wie fit bist Du denn in Vektor- und Differentialrechnung? Die Theorie, die Du suchst, besonders die in drei Dimensionen, ist nur damit zu verstehen.
mare_crisium
Naja,
schon ziemlich fit... Was mir nur eben fehlt, sind die Formeln...
Hier gibt es eine Beschreibung.
http://www-sst.theoinf.tu-ilmenau.de/studentsWorks/works/documents/1996/Diplom1996_ToralfSchumann.pdf
Du kannst aber auch hier noch einmal nachsehen; es waren auf den ersten zwei Seiten noch zwei andere recht ausführliche Darstellungen dabei.
http://www.google.de/search?hl=de&q=tr%C3%A4gheitsnavigation+pdf&meta=
Manfred
Danke, dann werde ich da mal nachsehen, und melde mich ggf. noch mal. Falls jemand Code dazu hätte, egal in welcher Sprache, wäre ich auch dankbar dafür!!!
MfG, Ozzy
mare_crisium
22.09.2007, 16:49
Ozzy,
hilft Dir das hier vielleicht (siehe Attachment)? Das ist eine Erweitung der Diskussion aus dem Thread
Software, Algorithmen und KI » Algorithmn zur Bahnplanung
Ansatzweise wurde da auch über Code gesprochen.
Ciao,
mare_crisium
oberallgeier
22.09.2007, 23:22
Hei Ozzy,
wie wärs, wenn Du die effektive Beschleunigung im Raum, also die Summe über alle drei Achsen, ausrechnest? Dann wird der Winkelfehler von geringerer Bedeutung.
Unabhängig werden Fehler beim Messen des Sensors und Auswerten (Rechen) der Sensordaten auftreten. Klar.
Übrigens muss diese dreichachsige Rechnerei keine Sinus- Cosinus- Orgie werden. Das kann man recht leicht mit dem Pythagoras hinkriegen - und dann braucht man diese aufregend langwierigen Winkelfunktionen nicht.
Wär das eine Hilfe für Dich?
Ciao sagt der Joe
DerAltevomBerg
Hi,
ja, das wäre eine Hilfe für mich; und wie funktioniert das jetzt richtig?
MfG, Ozzy
Hier gibt es ein paar anschauliche praktische Werte für Messergebnisse bei der Auswertung einer Richtung.
http://www.studienseminare-ge-gym.nrw.de/K/fachseminar-mathematik/projekte/radeln/mnu-traegheitsnavigation/traegheitsnavigation.pdf
Bei den klassischen kardanisch aufgehängten Systemen, die durch Kreisel stabilisiert wurden konnte man die translatorischen Bewegungen in x, y und z Richtung getrennt auswerten.
Neuere Systeme (ca.> 1970) sind mechanisch einfacher aufgebaut und man rechnet die erfassten Drehbewegungen ein.
Manfred
Hi,
also so richtig habe ich jetzt noch nichts gefunden, was mir bei meinem Problem weiterhilft... Was ich suche, ist eine kleine Anleitung, Formeln, so etwas in der Art...
MfG, Ozzy
oberallgeier
24.09.2007, 09:43
Hallo Ozzy,
... Was ich suche, ist eine kleine Anleitung, Formeln, so etwas in der Art...
Eine kleine Anleitung hast Du sicher in der Schule bekommen. Und die Formeln dazu.
v = b * t
...
Geschwindigkeit v
= Beschleunigung b
* Zeit t
Das gilt natürlich auch für die entsprechenden Anteile in jeder Koordinatenrichtung >>> ausgenommen rotatorische Koordinaten (weil die andere Formeln brauchen) <<<. UND es gilt auch für Differenzen.
Die entsprechenden Anteile in den verschiedenen Koordinatenrichtungen können superponiert (überlagert, vektoriell addiert) werden.
Ich sehe Dein Problem, dass Du die dahinterliegende Physik nicht (nicht mehr??) kennst. Aber um Dein Problem lösen zu können müsstest Du:
a) die Physik bzw. die Mechanik der Bewegung kennen
b) die entsprechenden Begriffe kennen
c) mit den wirklich einfachen Rechenverfahren umgehen können.
Oder lass Dir einfach von einem Gymnasiasten ein paar Nachhilfestunden geben. Das meine ich jetzt nicht überheblich. KEIN Mensch muss diese Dinge kennen, aber sie sind einfach. Blos würde es dieses Forum (meiner Meinung nach) sprengen hier einen Grundkurs in Bewegungslehre zu bringen. Aber das war ja auch garnicht Dein ursprünglicher Wunsch. Du wolltest Hinweise. Die stehen alle da.
... ich habe hier einen 3-Axen Beschleunigungssensor rumliegen und möchte hier mit nun die Geschwindigkeit messen. ... ... Könnt Ihr mir sagen, wo ich etwas zu dem Thema finde, um dann letzendlich die Werte zu bekommen, die ich gerne hätte?
Du musst Dich in die entsprechende Theorie einarbeiten. Oder Dir das alles von jemand anderem ausarbeiten lassen.
Viel Glück
Klar, Geschwindigkeit rausrechnen ist ja kein Problem; mir machen nur die Einwirkungen der anderen Achsen Gedanken.
Die Winkelberechnungen mittels des Beschleunigungssensors habe ich ja schon fertig (ein bischen sinus hier, ein bischen cosinus da...), doch da habe ich ja nichts mit beschleunigung zu tun.
Wie gesagt, was ich suche, sind richtige Formeln, wie ich welche Werte unter berücksichtigung der Lage und der Erdbeschleunigung berechne. Und ich hatte soetwas nicht auf dem Gymnasium...
MfG, Ozzy
Dann schau mal hier:
http://home.arcor.de/uffmann/ARTIST3.htm
"Calculating Tilt Angle from 2-Axis Accelerometer Data
http://home.arcor.de/uffmann/ARTIST-Dateien/fig5.gif
Then the forward (or backward) acceleration a of the robot can be calculated to:
a= +- SquareRoot( Square(x) + Square(y) - 1)
+ for the case a>0
- for the case a<0
and
tilt=arcsin((x-y*a)/(Square(x)+Square(y)))
# for the case a>0
tilt=arcsin((x+y*a)/(Square(x)+Square(y)))
# for the case a<0
tilt=arcsin(x)
# for the case a=0
All values are normalized to the earth's acceleration g (g=1).
The remaining unknown figure is the sign or direction of the acceleration a to get the correct result for the tilt. This could be derived from the motor control comparing the motor power during the last two control steps before this measurement.
When adapting these formulas for the tilt angle from accelerometer data, please care for the fact, that the accelerometers have different sign for dynamic and static acceleration. This fact is not yet considered in the above mentioned formulas. So the sign of the acceleration "a" must be inverted for the real measurements. "
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.