Hi, gibt es eine Möglichkeit die Erdbeschleunigung von einem 3-Achsen Acc ohne Gyroskop rauszurechnen? Sascha
Da sie sich nur sehr langsam ändern kann ist dies sicher einfach möglich.
Sorry^^ ich mein natürlich bei Änderung des Winkels des Sensors. Anwendung: Beschleunigungssensor kommt in ein Modellauto -> auf einer Ebene kein Problem, aber bei einer Steigung/Gefälle hat der Winkel einen extrem grossen Einfluss auf die Messung.
hatte ich anfangs auch gedacht, aber bin auf keine "kombination" gekommen wo ich nicht auch wieder die eigentliche Beschleunigung rausrechnen würde...
>aber bin auf keine "kombination" >gekommen wo ich nicht auch wieder die eigentliche Beschleunigung >rausrechnen würde... Dann am besten am Montag nochmal den Mathelehrer fragen.
das pratisch auftrettende hauptproblem wird wohl der völlig uneinheitliche reibungskoeffizient zwischen rad und strassse sein... (naja ansonsten wärs ja mathematisch banal...) die lösung dazu würd mich übrigens sehr interessieren, werd mal wieder vorbeischauen und freu mich zu erfahren wi man da löst...
für geradeausfahrt geht es mathematisch... a_fzg = a_mess_x + a_mess_y + a_mess_z - 9,81 m/s² a -> vektor wenn du weitere unterstützung brauchst, melde dich...
Das Problem kann ich mir schon recht gut vorstellen. Der Sensor hat ja folgenden Vektor
Davon die Erdbeschleunigung abzuziehen ist ja recht leicht, die schaut ja wie folgt aus
Das Problem ist nun nur, dass bei einer Steigung oder einem Gefälle sich die Einheitsvektoren des Sensors ändern und man nun nicht so ohne weiteres die Erdbeschleunigung vom Messwert abziehen kann. Vielleicht baust du dir noch einen Neigungssensor in das Auto mit ein und bestimmst daraus die Neigung. Dann kannst du es wieder umrechnen und die Erdbeschleunigung raus rechnen.
Bitte nochmal nachdenken > ... die Erdbeschleunigung von einem 3-Achsen Acc > ... Vielleicht baust du dir noch einen Neigungssensor in das Auto mit > ein und bestimmst daraus die Neigung. Der OP will vermutlich eine relative Beschleunig in Fahrtrichtung daraus ableiten und dies geht wegen der Drehbewegung ohne Gyro AFAIK nicht. (OK der Gyro könnte als "Neigungssensor" aufgefasst werden) Gruß Roland
Sascha, überleg dir vielleicht nochmal, ob du den Längsanteil der Erdbeschleunigung unbedingt kompensieren musst. So ganz einfach ist das nämlich nicht.
Es könnte außerdem vielleicht einfacher sein, die Geschwindigkeit an den Rädern zu messen, und daraus die Beschleunigung zu errechnen.
Nur mit einem dreiachsigen Beschleunigungssensor kann die Beschleunigung des Fahrzeugs im Allgemeinen nicht bestimmt werden. Das liegt daran, dass der Sensor drei Messwerte liefert, das System aber fünf Unbekannte hat, die die Messung beeinflussen: Der Fahrzeugbeschleunigungsvektor (drei Unbekannte) und die Richtung des Erdbeschleunigungsvektors (zwei Unbekannte). Auch im zweidimensionalen Fall (seitliche Beschleunigungen werden nicht beachtet) tritt das Problem auf: Hier hat man zwei Sensormesswerte, aber drei Unbekannte. Um besser zu sehen, woran es im Detail hakt, habe ich das Ganze für den zweidimensionalen Fall einmal durchgerechnet: Alle folgenden Überlegungen beziehen sich auf das Fahrzeugkoordinaten- system, dessen x-Achse x-Achse in Fahrtrichtung und dessen y-Achse senkrecht dazu nach oben zeigt. Die Vektoren a = (ax,ay), g = (gx,gy) und m = (mx,my) sind die Fahrzeugbeschleunigung, die Erdbeschleunigung und der Sensormesswert. Dabei wird der Betrag der Erdbeschleunigung | g | = g = 9,81m/s² als bekannt vorausgesetzt. Der Sensor misst die Summe aus Fahrzeug- und Erdbeschleunigung, also
Auflösen nach (gx,gy) und Quadrieren ergibt
Anwenden von gx² + gy² = g² und Auflösen nach ax ergibt
Um das gesuchte ax bestimmen zu können, muss also ay bekannt sein. ay ist positiv, wenn das Fahrzeug durch eine Mulde und negativ, wenn es über eine Kuppe fährt. Auf einer schiefen Ebene ist ay = 0 und damit
Wegen des '±' ist das Ergebnis aber immer noch nicht eindeutig. Bei einer Steigung ist das '-', bei einem Gefälle das '+' anzuwenden. Wenn man also weiß, dass die Steigung bzw. das Gefälle konstant ist, und ob es gerade bergauf oder bergab geht, kann die Beschleunigung auf diese Weise gemessen werden. Wenn nicht, braucht man zusätzliche Sensoren, die direkt oder indirekt die fehlenden Informationen liefern.
Die Beschleunigungssensoren LIS302DL oder LIS3LV02DL haben genau dafür einen internen Hochpass-Filter mit einstellbarer Grenzfrequenz den man zuschalten kann. Dieser hat den Effekt, daß sämtliche statischen Beschleunigungen aus dem Ausgabewert rausgerechnet werden. Dazu zählt natürlich auch die unveränderliche Erdbeschleunigung. Das Problem bei der Sache ist aber, daß du mit aktiviertem HP-Filter nur dynamische Veränderungen gemeldet bekommst. Würdest du z.B. mit 0,5G konstant beschleunigen, würde das ebenfalls nach kurzer Zeit als statische Größe betrachtet und rausgefiltert werden. Aber mit Hilfe der Grenzfrequenz kannst du die Grenze, nach welcher statische Größen rausgefiltert werden, festlegen. Die Ausgabewerte des Sensors sind natürlich dementsprechend etwas träger als in Echtzeit. Ich habe mit dem LIS3LV02DL schon etwas herumexperimentiert und das Filtern funktioniert recht gut. Ciao, Rainer
Vielen Dank für die Antworten. @yalu: Um auf diese Art die Erdbeschleunigung zu kompensieren ergibt ich folgendes Problem: Die Empfindlichkeit ist in Messrichtung (für die jeweilige Achse) größer. http://www.analog.com/Analog_Root/static/library/techArticles/mems/sensor971/sld28_1.gif Als kleines Beispiel hierzu: (X: Fahrtrichtung Y: Senkrecht zur Fahrtrichtung) Steigung von 10° -> X-Wert verändert sich um 150mg -> der Y-Wert maximal um 1mg Tippe ich den Sensor in Y-Achse minimal an (Fahrzeug fährt über eine 1-2mm erhebung) dann ergibt sich dadurch schon eine Änderung des Y-Wertes von mehr als 20mg Eigentlich ganz logisch, aber dadurch kann der Y-Wert nicht einfach zur kompensation rangenommen werden. Trotzdem Danke :) @Rainer Benutze auch den LIS3LV02DL. Werde nun auch mal mir dem HP-Filter rumspielen. Edit: gleich ausprobiert -> HP-Filter für mein Zweck vollkommend aussreichend. Sollte ich aber denoch mal bissle zu viel Geld übrig haben, werde ich mal mit nem Gyroskop rumspielen :) Sascha
Das geht leider nicht: Wenn das Fahrzeug auf eine Neigung quer zur Fahrtrichtung steht (Steilwandkurve), kann man nicht unterscheiden, ob es sich um eine Kurvenfahrt oder eben eine Neigung handelt. Selbiges gilt für Bremsen und Beschleunigen bei Neigungen längs der Fahrrichtung.
@mr.chip auf was beziehst du dich? Gyroskop?
> @mr.chip > auf was beziehst du dich? Gyroskop? Beschleunigungssensor. Mit einem Gyroskop geht es natürlich :-)
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.