Forum: Mikrocontroller und Digitale Elektronik Bewegungserfassung nur mit Beschleunigungssensor und Gyrosensor


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von O. P. (pmikro)


Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

ich muss im Laufe eines Studienprojektes einen Sensor entwickeln, der 
mittels Beschleunigungssensor und Gyrosensor die Bewegung im Raum 
erkennt. Dazu benötige ich eine Sensorfusion dieser beiden Sensoren. Ich 
bin schon seit ca. 2 Wochen am recherchieren, welchen Filter ich dazu 
nehmen sollte.
Im Internet habe ich bisher nur Sensor-Implementationen zu Quadrocoptern 
gefunden. Das Problem hierbei ist aber das ein Quadrocopter nur die 
Winkeln braucht. Ich brauche aber die Bewegung in X,Y und Z.

Nun zu meinen Fragen:
-Kann ich mit nur diesen beiden Sensoren mein Ziel überhaupt erreichen?
-Welchen Filter würdet ihr mir empfehlen?


Ich wäre sehr dankbar für konstruktive Lösungen und Vorschläge. :)

von Thorsten Legat (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Onur P. schrieb:
> Das Problem hierbei ist aber das ein Quadrocopter nur die
> Winkeln braucht. Ich brauche aber die Bewegung in X,Y und Z.

Dann musst du eben nicht nur die Drehraten messen, sondern auch die 
Beschleunigung. Die Sensoren gibt es alle einzeln oder auch als Paar 
zusammen für <1€ bis >>100k€

Guck dir mal das UM7-LT an, da ist alles schon fertig drauf, mit Filtern 
und Verrechnung.

https://nodna.de/UM7-LT-Orientation-Sensor_3

von O. P. (pmikro)


Bewertung
0 lesenswert
nicht lesenswert
Thorsten Legat schrieb:
> Guck dir mal das UM7-LT an, da ist alles schon fertig drauf, mit Filtern
> und Verrechnung.
>
> https://nodna.de/UM7-LT-Orientation-Sensor_3

vielen dank für deine Antwort aber ich kann nicht so ein modul für 167€ 
kaufen, wir möchten das Projekt später dann in Menge verkaufen. Deshalb 
muss ich diesen Kalman-Filter wohl oder übel selbst implementieren.

außerdem ist die frage ob ich einen Magnetometer verwenden kann weil die 
Umgebung wo das teil verwendet wird voll mit eisen ist. :(

: Bearbeitet durch User
Beitrag #4945672 wurde von einem Moderator gelöscht.
von Flo (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Wenn du wirklich die Raumposition erfassen möchtest, brauchst du mehr 
als Gyro und Beschleunigungssensor.

Das Gyro hilft dir für lineare Bewegung gar nichts.
Den Beschleunigungssensor musst du zweimal integrieren um den Ort zu 
ermitteln.
Sobald du Offset/ Messungenauigkeit bei der Beschleunigung hast, driftet 
dein berechneter Ort weit weg.

von O. P. (pmikro)


Bewertung
0 lesenswert
nicht lesenswert
So nicht schrieb im Beitrag #4945672:
> Onur P. schrieb:
>> wir möchten das Projekt später dann in Menge verkaufen.
>
> Ach so, du willst damit Geld verdienen, aber das Forum soll es dir
> entwickeln?

ähm wie gesagt es ist ein Studien-projekt und ich wollte mehr Ideen von 
euch. Ich selbst studiere Hardware/Software- Design und ich will nicht 
das irgendwer mir das im Forum entwickelt. Ließ dir Bitte oben die 
beiden fragen durch. Ich glaub nicht das ich da nach Sourcecode oder 
sonst derartiges frage ;(

und bitte lass solche Anschuldigungen. Wir wollen das nur in Menge 
produzieren weil es mehrere Interessenten gibt die auch was haben 
möchten.

Beitrag #4945684 wurde vom Autor gelöscht.
von O. P. (pmikro)


Bewertung
0 lesenswert
nicht lesenswert
Flo schrieb:
> Wenn du wirklich die Raumposition erfassen möchtest, brauchst du mehr
> als Gyro und Beschleunigungssensor.
>
> Das Gyro hilft dir für lineare Bewegung gar nichts.
> Den Beschleunigungssensor musst du zweimal integrieren um den Ort zu
> ermitteln.
> Sobald du Offset/ Messungenauigkeit bei der Beschleunigung hast, driftet
> dein berechneter Ort weit weg.

hmm... das Problem ist ich kann keinen Magnetometer verwenden weil zu 
viel eisen in der Umgebung ist. und auch kein GPS-Sensor da die 
Bewegungen nicht zu groß sind.
Was für Sensoren könnte ich dann noch Verwenden

von Thorsten Legat (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
O. P. schrieb:
> vielen dank für deine Antwort aber ich kann nicht so ein modul für 167€
> kaufen, wir möchten das Projekt später dann in Menge verkaufen. Deshalb
> muss ich diesen Kalman-Filter wohl oder übel selbst implementieren.

Völlig egal was das was-auch-immer-ihr-da-in-"Menge"-produzieren-wollt 
später mal kosten soll:

Billiger als in diesem Modul kommst du niemals an eine anständige 
Implementierung der nötigen Filter und noch viel viel mehr, gar nicht zu 
reden von Entwicklung und Layout der nötigen Elektronik.

Bevor du das ALLES selbst machst, musst du noch sehr lange studieren und 
LERNEN  oder eben Know-How einkaufen, was auch nicht billiger ist.

So viel zu den Grundlagen ökonomischen Handelns...

von Narfie (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Wären denn (sofern möglich) der Einsatz von fest installieren Beacons 
möglich, um z.B. mittels Bluetooth eine Lokalisation durchzuführen - 
Suchbegriff z.B. Bluetooth Indoor localization. Evtl. wäre ja auch eine 
Kopplung mit den anderen Sensoren möglich, um die Genauigkeit zu 
verbessern.

Kannst du hierzu noch etwas sagen, wie genau eine Erfassung für dein 
Szenario sein muss?

von O. P. (pmikro)


Bewertung
0 lesenswert
nicht lesenswert
Thorsten Legat schrieb:
> Völlig egal was das was-auch-immer-ihr-da-in-"Menge"-produzieren-wollt
> später mal kosten soll:
>
> Billiger als in diesem Modul kommst du niemals an eine anständige
> Implementierung der nötigen Filter und noch viel viel mehr, gar nicht zu
> reden von Entwicklung und Layout der nötigen Elektronik.
>
> Bevor du das ALLES selbst machst, musst du noch sehr lange studieren und
> LERNEN  oder eben Know-How einkaufen, was auch nicht billiger ist.
>
> So viel zu den Grundlagen ökonomischen Handelns...

Nja es ist ja nicht umsonst ein Studienprojekt :) wir müssen eben etwas 
forschen und entwickeln. Sonst wär das ja langweilig.


Narfie schrieb:
> Wären denn (sofern möglich) der Einsatz von fest installieren Beacons
> möglich, um z.B. mittels Bluetooth eine Lokalisation durchzuführen -
> Suchbegriff z.B. Bluetooth Indoor localization. Evtl. wäre ja auch eine
> Kopplung mit den anderen Sensoren möglich, um die Genauigkeit zu
> verbessern.
>
> Kannst du hierzu noch etwas sagen, wie genau eine Erfassung für dein
> Szenario sein muss?

Bluetooth hört sich interessant an vielen dank :)
ja es "sollte" genau sein...

wieso braucht man eigentlich noch ein modul würden die Beiden Sensoren 
nicht ausreichen.

Ich könnte von Punkt A anfangen und könnte bis Punkt B messen. Dies 
müsste doch möglich sein mit solchen Sensoren

von Stm M. (stmfresser)


Bewertung
1 lesenswert
nicht lesenswert
was du brauchst, ist ein EKF, Die Lage sollst man am Besten in 
Quaternionen beschreiben.

: Bearbeitet durch User
von Flupsi (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Wird per Kamera gemacht.

von Norbert (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Moin,

O. P. schrieb:
> ja es "sollte" genau sein...
>
> wieso braucht man eigentlich noch ein modul würden die Beiden Sensoren
> nicht ausreichen.
>
> Ich könnte von Punkt A anfangen und könnte bis Punkt B messen. Dies
> müsste doch möglich sein mit solchen Sensoren

Genau, aha. Für GPS ist 1m horizontal und 3m vertikal schon sehr genau. 
Reicht das?
Viel besser wird mit BT auch nicht gehen, weil nur die Signalstärke 
gemessen werden kann.
Mit Beschleunigung (Gyro bringt erst was wenn sich die Bewegungsrichtung 
ändert) kriegt man es vielleicht hin, einen Gang eines Menschen von 8m 
auf Länge von 1-2m zu bestimmen. Geht man nicht gerade, kommt sicher 
noch was durch die Gyros hinzu. Beim nächsten Gang addieren sich die 
Fehler und nach dem 4. Gang ist nicht mehr sicher ob Du an A oder B 
bist.
Vielleicht geht es etwas besser als ich jetzt geschätzt habe aber mir 
fällt nichts ein, bei dem man damit leben könnte.

Das gäbe es noch: Ultraschall. Damit bekommt man die Entfernung zu 
Hindernissen auf 1-2cm genau. Bis 6m sehr billig und einfach, leicht 
teurer müsste das bis 12m oder mehr gehen.
Natürlich nur ohne Hindernisse in 3 Richtungen um 120° versetzt.
Eisen spricht nicht gegen einen Kompass. Wenn das Erdmagnetfeld nicht 
komplett abgeschirmt oder total in die Vertikale verbogen ist, ist nur 
Norden nicht da wo es sein soll aber es gibt ein "Norden". Muss man eben 
kalibrieren/einmessen.

Es gibt noch sowas wie GPS das auf Ukw basiert (oder so). Funktioniert 
im Raum aber auch nicht weil es die Satelliten braucht und wenn 160€ 
schon zu teuer ist, mit mindestens einer Null hintendran wird das auch 
nicht besser.

Keine der Lösungen ist übrigens banal.

Und wie immer die Frage: Was soll das werden, was ist die Anwendung?
Dann kann man vielleicht abschätzen, was man brauchen würde, was reichen 
würde (und was sicher nicht geht).

Gruß,
Norbert

von Wolfgang (Gast)


Bewertung
1 lesenswert
nicht lesenswert
O. P. schrieb:
> -Welchen Filter würdet ihr mir empfehlen?

Ein Kalman-Filter

von Dieter F. (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
O. P. schrieb:
> Ich wäre sehr dankbar für konstruktive Lösungen und Vorschläge. :)

Also mal ehrlich: Das ist DEIN STUDIENPROJKET und Du führst es aus. 
Warum misst Du nicht mal selbst und gibst DEINE Meinung dazu ab.

Sollen das Andere für Dich erledigen?

von nicht“Gast“ (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Hiho

Nur mit relativen Sensoren wirst du eh nicht weit kommen. Den Drift 
wirst du mit absoluten Sensoren kompensieren müssen.

von Harald W. (wilhelms)


Bewertung
1 lesenswert
nicht lesenswert
O. P. schrieb:

> ich muss im Laufe eines Studienprojektes einen Sensor entwickeln, der
> mittels Beschleunigungssensor und Gyrosensor die Bewegung im Raum
> erkennt.

Im Prinzip geht das schon, ist aber nicht ganz trivial:
https://de.wikipedia.org/wiki/Tr%C3%A4gheitsnavigationssystem

von Michael O. (michael_o)


Bewertung
1 lesenswert
nicht lesenswert
Mit reiner Trägheitsnavigation ohne mindestens einen referenzpunkt wird 
es extrem schwierig. Triangularpeilung mit drei festen Funkfeuern wie 
vor GPS mit Loran C gemacht wurde könnte ein Lösung sein.

mfg
Michael

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Bewertung
-1 lesenswert
nicht lesenswert
Dieter F. schrieb:
> Sollen das Andere für Dich erledigen?

Ja, sonst macht Mutti doch auch immer alles für ihn.

von Juli (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Oh wieder gute Stimmung hier. Scheinen wieder welche ihre schlechte 
Laune aus Job und sonst wo hier kompensieren müssen. Einfach ignorieren.
Dennoch kommen ab und zu gute Beiträge. Mit deinen zwei Sensoren wirst 
du nicht weit kommen, da sich die Fehler vom Beschleunigungssensor auch 
schön aufintegrieren.
Wenn es eine Consumer-Lösung sein soll und somit günstig und 
massentauglich, wird es gar unmöglich. Gewünschte Zielgenauigkeiten hast 
du uns aber bisher verschwiegen.
Ich habe mal für die Hannover Messe ein Indoor Tracking auf Basis von 
RFID mitentwickelt. Aber sind halt andere Kosten, als du sie dir 
wünschst.
Für dein Vorhaben wär es das einfachste eine IMU zu nehmen (bspw. 
BMX055) und an bekannten Referenzpunkten zu kalibrieren. Setzt einmal 
natürlich eine bekannte Geometrie des Raumes voraus und dann ein zweites 
Sensorkonzept, das den Referenzpunkt erfassen kann.

von O. P. (pmikro)


Bewertung
0 lesenswert
nicht lesenswert
Juli schrieb:
> Oh wieder gute Stimmung hier. Scheinen wieder welche ihre schlechte
> Laune aus Job und sonst wo hier kompensieren müssen.

haha habs gemerkt. :) Ich bleib eh ruhig.

Zu unserem Projekt: es wird ein Modul, womit Studenten verschiedene 
Bewegungen messen können wie zum beispiel die Bewegungsart sowie 
Bewegunsanzahl usw. Es sollte später dann eine Schnittstelle zu 
Verfügung gestellt werden für anderen Projekte.

Zu meiner Lösung: hab gestern eine 9-Dimensionale Kalman-Filter erstellt 
und werde heute mal versuchen es mit matlab zu skripten.

Generell denke ich bei Projekten ökonomisch, weil dies für mich in der 
Hardwareentwicklung sehr viel aus macht, was bringt es mir wenn ich Gott 
und die Welt zu Verfügung habe und nur weil ich es hinter mich bringen 
will nimm ich dass teuerste, das hat für mich keinen Sinn.
Man muss nicht immer das ganze Budget aufbrauchen ;)

Ich bedanke mich für die ganzen Infos und Erklärungen. Gott sei dank 
sind es mehr nützliche Beiträge als wie unnötige.

von Jan K. (jan_k)


Bewertung
0 lesenswert
nicht lesenswert
Sind die zu trackenden Bewegungen zufällig oder periodisch? Falls erstes 
vergiss es. Mit consumer grade und vermutlich auch industrial IMUs wirst 
du das wenn überhaupt sehr wenige Sekunden schaffen. Mit besseren etwas 
länger. Zumindest ohne externe Referenz die du fusionieren kannst um den 
Drift zu eliminieren.
Du hast 2 Wochen recherchiert und bist da noch nicht drauf gekommen? Was 
passiert wohl wenn man verrauschte Beschleunigen 2 mal integriert?

Für periodische Vorgänge (laufen, Treppen steigen)  geht es evtl besser 
(Stichwort zero velocity update, suche nach mahony oder madgwick, weiß 
nicht mehr wer es gemacht hat).

Auf was für Algorithmen bist du bisher gekommen? Letztendlich läuft doch 
das meiste auf das Kalman Filter bzw seinen Derivaten oder auf wie auch 
immer geartete Komplementärfilter (Google die beiden Namen oben, kenne 
ich aber nur für die Bestimmung der Orientierung).

Wird schwierig.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.