Forum: Mikrocontroller und Digitale Elektronik Roboter Gerade fahren mit Beschleunigungssensor überprüfen


von philipp (Gast)


Lesenswert?

Hallo,

ich würde bei meinem Roboter gerne detektieren, ob dieser geradeaus 
fährt oder nicht, bzw. ob dieser eine saubere Kurve fährt oder nicht.
Ist dazu ein Beschleunigungssensor geeignet, der die Beschleunigung in x 
und y Richtung misst?
Mein Grundgedanke dahinter sagt, wenn der Roboter in x Richtung fährt, 
dann sollte ja die Beschleunigung in y Richtung = 0 sein, wenn diese 
sich ändert, dann fährt er schräg.
Bei einer sauberen Kurve sollte der Beschleunigungswert in y Richtung 
konstant bleiben, und somit der Radius der Kurve gleich. (Natürlich 
alles bei konstanten Geschwindigkeiten)
Ist diese Überlegung soweit richtig oder habe ich vergessen etwas  zu 
beachten?

von Karl H. (kbuchegg)


Lesenswert?

philipp schrieb:

> Ist diese Überlegung soweit richtig oder habe ich vergessen etwas  zu
> beachten?

wechselnde Querneigung des Untergrundes und damit eine Querneigung des 
Roboters, erzeugen dir "falsche vermeintliche Kurvenfahrten"

von B. S. (bestucki)


Lesenswert?

Beschleunigungssensoren haben einen nicht vernachlässigbaren Offset und 
ein eher starkes Eigenrauschen. Beides kann man kompensieren, bzw. 
filtern. Zusätzlich beeinflussen Vibrationen und Schläge die Messwerte 
stark. Kleine Beschleunigungen sind fast nicht zuverlässig zu erkennen, 
weil diese im Grundrauschen untergehen.

Natürlich gibt es auch bessere Bausteine, kosten halt einfach mehr.

von philipp (Gast)


Lesenswert?

Hey Vielen Dank für die Antworten.

Dass der Untergrund uneben ist, daran habe ich echt nicht gedacht. Dies 
lässt sich vermutlich auch kaum irgendwie ohne verhältnismäßigen Aufwand 
kompensieren/detektieren
Dann wird wohl nur eine Lösung mit CNY70 und Encoderscheibe als 
zuverlässige Alternative in Frage kommen.

von Max G. (l0wside) Benutzerseite


Lesenswert?

Wie wäre mit einem Drehratensensor? Beispiel SMI055, da ist 
Beschleunigung auch inklusive. oder BMC050.

Verfügbarkeit und Lötbarkeit ist bei den Consumerteilen allerdings ein 
bisschen schwierig.

Max

von B. S. (bestucki)


Lesenswert?

Drehgeber mit Encoderscheiben ist auch nicht ganz einfach, aber sicher 
zuverlässiger. Wenn du dir daraus die Beschleunigung berechnest, wird 
diese auch verrauscht sein. Am besten ist es wohl, am linken und rechten 
Rad je einen Drehgeber zu montieren und aus der resultierenden 
Geschwindigkeitsdifferenz deine Kurve herzuleiten. Natürlich müssten die 
beiden Räder mechanisch unabhängig sein. Zusätzlich kannst du so auch 
noch durchdrehende oder blockierte Räder erkennen. Den 
Beschleunigungssensor kannst du ja noch zusätzlich verwenden.

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.