Hallo Forum
Ich habe nun einige Stunden gegoogelt und auch hier im Forum gesucht,
vielleicht verwende ich auch einfach die falschen Wörter, aber ich finde
absolut nichts...
Zuerst: Anders als oft hier im Forum, Geld spielt hierbei KEINE Rolle.
Das Teil kann kosten was es will.
Gesucht ist folgendes:
Ein IMU (Accelerometer + Gyro) <- Das wäre soweit ja kein Problem zu
finden...
Nun mein extra Wunsch: Ein uC der die Sensordaten einliesst, den Kalman
FIlter anwendet und die fertigen Daten per SPI/I2C/UART oder wie auch
immer zur Verfügung stellt. Ich selbst traue mir nämlich nicht zu, einen
solchen Filter zu Programmieren, bzw. ich traue mir eher weniger zu den
Mathematischen Teil dahinter richtig zu verstehen.
Ist jemandem von euch ein solches Board bekannt? Das ganze findet
Einsatz in einem selbstentwickelten Spiel.
Vielen dank für eure Hilfe
IMU schrieb:> Zuerst: Anders als oft hier im Forum, Geld spielt hierbei KEINE Rolle.> Das Teil kann kosten was es will.
Hm, wenn du meinst:
ADIS16480, kostet momentan 2241.47€ bei Digikey.
Ich meine aber es gibt auch ein Board mit einfacheren Sensoren, das
ebenfalls die Lage (sprich Eulerwinkel, Quaternion oder Drehmatrix)
rausgibt. Das war im Bereich von 100-200€, wenn ich mich richtig
erinnere. Ev. fällt's mir noch wieder ein wie es hieß.
Was für Informationen willst du eigentlich überhaupt haben? Hoffentlich
nur die Lage. Mangels passender Messungen wird's mit einer IMU alleine
nämlich nix mit Geschwindigkeiten und/oder Position, dafür bräuchte es
dann z.B. GPS.
Ein ganz einfaches Lagefilter ist übrigens wirklich nicht schwierig, im
Endeffekt nur eine Kombination aus Hoch- und Tiefpass. Für viele
Anwendungen reicht das schon aus, da muss man kein EKF auspacken.
Michael Frangenberg schrieb:> Hm, wenn du meinst:> ADIS16480, kostet momentan 2241.47€ bei Digikey.
Okay, das wäre die absolute Notlösung. Ein paar 100 Euro hätte ich dafür
locker bezahlt, aber über 2k ist schon ne grosse Menge. :P
Michael Frangenberg schrieb:> Was für Informationen willst du eigentlich überhaupt haben? Hoffentlich> nur die Lage.
Korrekt, es soll lediglich die Lage bestimmt werden. Kannst dir das
vorstellen wie ein Smartphone, lediglich die Neigung soll erkannt
werden. Sinn dahinter ist es später einmal die Neigung der Steuerung zu
erkennen und dementsprechende Aktionen auszuführen.
Michael Frangenberg schrieb:> Ein ganz einfaches Lagefilter ist übrigens wirklich nicht schwierig, im> Endeffekt nur eine Kombination aus Hoch- und Tiefpass. Für viele> Anwendungen reicht das schon aus, da muss man kein EKF auspacken.
Hmm... In Mathe war ich leider noch nie ein Genie, Kalman kommt mir
daher auf den ersten Blick doch recht kompliziert vor. Vielleicht mache
ich mir das Leben aber auch selbst schwer. Oft sieht man ja eine ganz
Simple Formel, dann sieht man wieder Dutzende Berechnungen, weiss nicht
genau was ich nun brauche. Bin da ein wenig überfordert mit
Informationen.
Vielleicht kennt jemand einen Link für eine Kalman Beschreibung,
lediglich für die Fusion von Gyro + Accelerometer?
IMU schrieb:> Hmm... In Mathe war ich leider noch nie ein Genie, Kalman kommt mir> daher auf den ersten Blick doch recht kompliziert vor. Vielleicht mache> ich mir das Leben aber auch selbst schwer.
Das glaube ich allerdings auch.
> Oft sieht man ja eine ganz> Simple Formel, dann sieht man wieder Dutzende Berechnungen, weiss nicht> genau was ich nun brauche. Bin da ein wenig überfordert mit> Informationen.
Wie gesagt: wenn dir Kalman zu hoch ist, vergiss ihn. Das ist eine
gängige Lösung, aber bei Weitem nicht die einzige.
Jeder Segway, balancierende Roboter und viele Quadrocopter (sofern sie
mehr als nur Drehratenregelung haben) müssen dieses Problem übrigens
auch lösen. D.h. dazu gibt's genügend Anleitungen und Code im Netz. Such
z.B. mal nach den genannten Projekten oder nach "Komplementärfilter".
Ein einfacher Ansatz wäre folgender:
- Drehraten aufintegrieren -> ergibt prädizierte Lage
- Aus dem Beschleunigungsvektor die "gemessene" Lage errechnen (das gilt
zwar streng genommen nur wenn dein Körper sich nicht beschleunigt
bewegt, aber in der Praxis geht's meist). Die Berechnung ist reine
Trigonometrie, also am besten mal ganz altmodisch mit Stift und Papier
hinmalen.
- Prädiktion hochpassfiltern und die Messung tiefpassfiltern, zusammen
ist das dann ein Komplementärfilter. Über den Filterparameter stellst du
die relative Gewichtung ein, den Wert muss man einfach mal ausprobieren.
Für ein fertiges Board scheint AHRS (attitude and heading reference
system) ein guter Suchbegriff zu sein, da solltest du eigentlich etwas
bezahlbares finden können.
> Vielleicht kennt jemand einen Link für eine Kalman Beschreibung,> lediglich für die Fusion von Gyro + Accelerometer?
Hier ist eine ganz gute Zusammenfassung der veschiedenen Möglichkeiten,
allerdings schon recht mathematisch:
http://www.olliw.eu/2013/imu-data-fusing/
Teensy 3.1 + ein IMU breakout, befestigt auf ein Stück
Lochrasterplatine.
Falls Du nur ein Stück brauchst schick mir bitte PN, ich habe einen
abzugeben. Kode ist fertig, gibt die Daten über UART, funktioniert
wunderbar.
Hallo,
so etwas gibt es von
Invensense->MPU6050 mit propritärer CPU, die leider nicht dokumentiert
ist.
ST->Mit Cortex M0 von ST
Habe die Typen gerade nicht parat. Auf den Websites gibt es mehr infos.
St. D. schrieb:> Teensy 3.1 + ein IMU breakout, befestigt auf ein Stück> Lochrasterplatine.> Falls Du nur ein Stück brauchst schick mir bitte PN, ich habe einen> abzugeben. Kode ist fertig, gibt die Daten über UART, funktioniert> wunderbar.
Das hört sich sehr interessant an. Daten in Welchem Format? Bereits
sauber gefiltert?
Tim schrieb:> Invensense->MPU6050 mit propritärer CPU, die leider nicht dokumentiert> ist.
Den MPU6050 habe ich auch schon gesehen, wenn ich alles richtig
verstanden habe liefert aber lediglich die Werte der Sensoren per SPI
oder? Die Fusion von Acc und Gyro ist eigentlich der Teil, den ich
Suche.
Tim schrieb:> Bosch->Mit Atmel CM0> ST->Mit Cortex M0 von ST
Schaue ich mir gleich mal an
IMU schrieb:> Den MPU6050 habe ich auch schon gesehen, wenn ich alles richtig> verstanden habe liefert aber lediglich die Werte der Sensoren per SPI> oder? Die Fusion von Acc und Gyro ist eigentlich der Teil, den ich> Suche.
Nein, man kann Nutzerprogramme hochloaden, die diverse Berechnungen
ausführen. Datenfusion zu Quaternionen gibt es als Binary von Invensense
für registrierte Entwickler und auf diversen unauthorisierten Websites.
Leider alles undokumentiert.
IMU schrieb:> Nun mein extra Wunsch: Ein uC der die Sensordaten einliesst, den Kalman> FIlter anwendet und die fertigen Daten per SPI/I2C/UART oder wie auch> immer zur Verfügung stellt. Ich selbst traue mir nämlich nicht zu, einen> solchen Filter zu Programmieren, bzw. ich traue mir eher weniger zu den> Mathematischen Teil dahinter richtig zu verstehen.>> Ist jemandem von euch ein solches Board bekannt?
Wenn ich mich nicht täusche, gibt es für die Arduino-Plattform weltweit
ganze Heerscharen an Bastlern, die an RC-Modellflugzeugen,
RC-Helikoptern, Trikoptern, Quadkoptern, Hexkoptern oder Oktokoptern
herumbasteln und von diesen Bastler-Heerscharen programmieren ungefähr
1% der Leute ihre IMUs für die Basteleien selbst, und die übrigen 99%
kopieren nur die fertigen Libraries, die ihnen andere zur Verfügung
stellen.
Du bist die 99%!
Beispielhardware: https://www.sparkfun.com/products/11055
Beispiellibrary: https://code.google.com/p/ardu-imu/downloads/list
Jürgen S. schrieb:> Wenn ich mich nicht täusche, gibt es für die Arduino-Plattform weltweit> ganze Heerscharen an Bastlern, die an RC-Modellflugzeugen,> RC-Helikoptern, Trikoptern, Quadkoptern, Hexkoptern oder Oktokoptern> herumbasteln und von diesen Bastler-Heerscharen programmieren ungefähr> 1% der Leute ihre IMUs für die Basteleien selbst, und die übrigen 99%> kopieren nur die fertigen Libraries, die ihnen andere zur Verfügung> stellen.
Ja, die gibt es. Kann dir aber sagen, ich bastle selbst mehr als so
manch einer hier im Forum. Das Projekt an welchem ich gerade sitze waren
schon ein paar Stunden aufwand (Um genau zu sein über 400 Stunden), viel
fehlen tut nicht.
Es ist nicht so, dass ich zu Faul wäre irgendwas zu machen. Es ist nur
so, dass das Gebiet IMU für mich schwer verständlich ist, vor allem
wegen den ganzen Mathematischen Aspekten, denn Mathe ist irgendwie nicht
ganz so meins. Kann dir aber trotzdem sagen, habe mich bestimmt 10
Stunden in das Gebiet eingelesen, es ist nicht so, dass ich es nicht
probiert hätte. Jetzt suche ich halt mal was fertiges, vielleicht
schaffe ich es ja irgendwann doch noch selbst. Aber ist es so tragisch
etwas zu verwenden was schon existiert? Du erfindest ja auch nicht jeden
Tag das Rad neu.
Trotzdem vielen dank für deine Links, bzw für eure Links!!!
Eine Menge lesestoff, da mache ich mich gleich mal dran.
IMU schrieb:> Aber ist es so tragisch etwas zu verwenden was schon existiert?> Du erfindest ja auch nicht jeden Tag das Rad neu.
Das brauchst Du mir nicht zu erzählen, denn ich bin Arduino-Bastler und
verwende recht oft fremde Libraries.
Allerdings sehe ich gerade beim von mir geposteten Hardware-Link:
US-Ausfuhrbeschränkungen für das kleine kompakte Teil aus µC und IMU auf
einem Mini-Board.
Wenn es etwas größer sein darf, mußt Du Dir eben ein handelsübliches
Arduino Mini-Board besorgen und die beiden SPI-Sensoren extern
anschließen.
Oder wenn Geld keine Rolle spielt: Die Eagle-Files herunterladen, die
Platine ätzen und von jemandem bestücken lassen, der sich mit
SMD-Bestückung auskennt, falls Du innerhalb Europas keinen Lieferanten
findest.
Es gibt für Arduino + Gyrosensor + Beschleunigungssensor + ggf. weitere
Sensoren aber auch noch diverse andere IMU-Projekte, dieses ArduIMU ist
bei weitem nicht das einzige. Zum Beispiel das Projekt MultiWii:
http://www.multiwii.com/
Jürgen S. schrieb:> Das brauchst Du mir nicht zu erzählen, denn ich bin Arduino-Bastler und> verwende recht oft fremde Libraries.
Dann gehörst du wohl auch zu den 99 % :P
Jürgen S. schrieb:> Allerdings sehe ich gerade beim von mir geposteten Hardware-Link:> US-Ausfuhrbeschränkungen für das kleine kompakte Teil aus µC und IMU auf> einem Mini-Board.
Da steht lediglich das ein Export ausserhalb der USA sich verzögern
kann. Weiterhin ein interessantes Teil :)
Jürgen S. schrieb:> Wenn es etwas größer sein darf, mußt Du Dir eben ein handelsübliches> Arduino Mini-Board besorgen und die beiden SPI-Sensoren extern> anschließen.
Wäre natürlich auch eine Option. Die Hardware ist weniger das Problem,
an der Software happerts ;P
Jürgen S. schrieb:> Oder wenn Geld keine Rolle spielt: Die Eagle-Files herunterladen, die> Platine ätzen und von jemandem bestücken lassen, der sich mit> SMD-Bestückung auskennt, falls Du innerhalb Europas keinen Lieferanten> findest.
Wäre für mich die mit abstand billigste Variante. Habe Zugriff auf ein
Ätzbad und eine Fräsmaschine für Leiterplatten. SMD Bestückung habe ich
mit den richtigen Files in ein paar Minuten erledigt,
Bestückungsmaschinen sind schon was tolles, vor allem wenn man sie
Firmenintern benutzen darf. :P
IMU schrieb:> Wäre für mich die mit abstand billigste Variante. Habe Zugriff auf ein> Ätzbad und eine Fräsmaschine für Leiterplatten. SMD Bestückung habe ich> mit den richtigen Files in ein paar Minuten erledigt,> Bestückungsmaschinen sind schon was tolles, vor allem wenn man sie> Firmenintern benutzen darf. :P
Dann bist Du natürlich deutlich besser ausgestattet als der
durchschnittliche Arduino-Bastler. Die Eagle-Files für die ArduIMU V3
kannst Du hier downloaden:
http://stuff.storediydrones.com/ArduIMU328_V3_Eagles.zip