Hmm okay das ist schon klar, dass die AD Wandlung ziemlich flott geht aber dennoch scheint mir das etwas zu einfach. Ist das wirklich die übliche Methode vorzugehen wie sie auch zb eine Wii nutzen?
Hmm okay das ist schon klar, dass die AD Wandlung ziemlich flott geht aber dennoch scheint mir das etwas zu einfach. Ist das wirklich die übliche Methode vorzugehen wie sie auch zb eine Wii nutzen?
„Inmitten der Schwierigkeiten liegt die Möglichkeit.“
Albert Einstein
Du kannst den Tiefpass auch per Hardware realisieren. Indem du einen Widerstand und einen Kondensator anschliesst. Wie genau das geht weiss die Suchmaschine die Chuck Norris nicht findet (jedenfalls die US Version davon).
Gruß Daniel
Unser Sommer ist ein grün angestrichener Winter. Das einzige reife Obst, das wir haben, sind gebratene Äpfel. [Heinrich Heine]
Man darf nicht vergessen das ein "Tieffpass", hard oder software, nicht nur das Rauschen, aber auch die Bandbreite von das Signal verringert. Beim schnelle G-Aenderungen, kommt dan die Messwerte fiel spater dan die G-Aenderung. Beispiel : ein Balance Roboter. Die Messwerte von Winkelposition darf keine Sekunde hinterlaufen von die Ist-Position, dan ist das Ding lange gecrasht.
Ich sollte erst das Datenblatt von den Sensor ansehen, da gibt schon eine Aussage von Bandbreite und rauschen. Danach kan menn entscheiden welche Bandbreite wirklich notwendig ist, und entsprechend Sample Rate / Mittelwerte einstellen, oder eine Teifpass HW machen.
Da git noch eine einfache SW filter, das ohne grosse Daten Arrays functioniert : Neue Sensorwerte = ADC_Messung* 0.1 + Alte Sensorwerte*0.9. Ist nicht exact einen Mittelwerte Bildung, aber das Ergebnis ist recht gut.
Stimmt natürlich, aber Kompromisse wird man eingehen müssen und bei den Trikoptern die auch mit gleitendem Mittelwert arbeiten, klappt das doch schon ganz gut. Es kommt halt auch auf die Abtastrate und den Rest das Programm Ablaufes an ob schnell genug reagiert wird. Dazu wird auch ein PID Regelkreis gehören, da die Sensoren leider alle einen gewissen Drift haben bleibt auch keine andere Wahl als zu "tricksen".
Gruß Richard
Du könntest ein Kalman-Filter verwenden. Hier gibts evtl. sogar Code, den du mal leicht modifiziert testen könntest:
http://forum.mikrokopter.de/topic-5875.html
Im Nao (Aldebaran-Robotics) verwenden wir zur Filterung von verschiedenen Sensordaten auch nen Kalman-Filter. Reagiert immer noch recht schnell auf Änderungen aber eliminiert das Rauschen der Sensorwerte recht gut.
Cheers,
Thomas
Lesezeichen