Saturday, 8 July 2017

Moving Average Kalman Filter


Im im Prozess der Herstellung eines Quadcopters. An diesem Punkt begegnete ich einem Problem mit der MPU-6050 Winkelberechnung. Wenn quadcopter stationär ist mit Motoren im Off-Zustand und Im Kippen es, Winkel-Lesungen in allen 3-Achsen ist gut, aber wenn Motoren in auf Zustand sind, beginnt die Ablesung über den Platz zu springen und kann sogar von realem Wert um 20 Grad unterscheiden. Ich gehe davon aus, dass dieser Effekt auf mechanische Vibrationen durch Motoren zurückzuführen ist. Ich habe Bilder von MPU-6050 Board Montage und ein Diagramm der Winkelablesungen von MPU-6050 in X-Achse mit Kalman-Filter, Komplementärfilter und MPU-6050 DMP (Kalman und komplementäre Filter-Implementierungen sowie Verarbeitung Code für Graphen ist von Kristian Lauszus GitHub, DMP mit Jeff Rowberg I2Cdev Bibliothek). Ich habe die zweite MPU an einen anderen Mikrocontroller angeschlossen, so dass es nicht elektrisch mit einem Quadcomputer verbunden und MPU an Bord mit zwei Schwämmen von beiden Seiten der MPU montiert wurde. Ergebnisse waren ziemlich gleich. Also jetzt weiß ich wirklich, dass Rauschen (zumindest die Mehrheit der Lärm) nicht mit elektrischen Schaltgeräuschen von Motoren verwandt ist. Vibrationen war der Grund, warum ich mein quadcopter Projekt vor einem Jahr aufgegeben habe. Aber das Problem ist lösbar, nur extrem ärgerlich daran zu arbeiten. Ich vermute, Sie kombinieren Beschleunigungssensor und Gyro Daten (sowohl Kalman und Comp. Filter sind Sensor Fusion Algorithmen). Könnten Sie versuchen, die Werte anzupassen, so dass Gyro hat viel höhere quotcontributionquot auf das Ergebnis und Beschleunigungsmesser nur korrigiert Kreisel Drift. Sie könnten auch versuchen, Tiefpassfilter (in Software) die Winkel. Und mechanische Lösungen (Nylon-Spacer, besserer Rahmen etc.) helfen auch. Ndash Mishony Mai 17 16 at 13:12 Im Falle von MPU DMP Programmierung habe ich Jeff39s Arduino Beispiel Skizze, ich habe gerade geändert FIFO Rate von 100 Hz bis 25 Hz, weil FIFO viel überlaufen, Im Falle von Kristian Filter Umsetzung: Sample Rate ist 1 KHz FSYNC deaktiviert und eingestellt 260 Hz Acc Filterung, 256 Hz Gyro Filterung, 8 KHz Abtast Kreisel Full Scale Range ist 177250degs Beschleunigungssensor Full Scale Range ist 1772g PLL gesetzt mit X-Achsen-Gyroskop-Referenz deaktiviert Schlaf-Modus. Die schwarze gerade Linie repräsentiert 0 Grad. Kalman-Filterlinie ist auch schwarz, es ist schwer zu sehen, da Kalman-Werte nahe an komplementäre Filter sind. Ndash Martynas Janknas Mai 17 16 at 17:07 Vergewissern Sie sich, dass die Hochleistungsschaltung, die Ihre ESCs fährt, eine gemeinsame Masse mit dem niedrigen Leistungssignalkreis vom Mikrocontroller teilt. Ich fand das sehr wichtig beim Aufbau meines Quads, da es auch einige Fehler mit den anderen Systemen wie dem RxTx verursacht hat. Antwortete am 24. Mai 16 um 15:34 Ich habe erfolgreich einen Trikopter-Flugcontroller entwickelt, ich hatte auch Probleme mit Vibrationen, so dass die einzige Möglichkeit, mit ihm zu decken ist, von Anfang zu beginnen und Balance Motoren, Propeller, etc., nur dann sollten Sie sein Fein, um zu gehen. Wenn Sie einen Flugsteuerpult kaufen, sehen Sie, daß es nicht richtig mit Ihrer Hardware arbeitet, es sei denn, Sie balancieren alles. Sie haben auch die Resultate von den Lesungen vom Gyroskop zu filtern. Ich habe einen gleitenden durchschnittlichen Filter mit guten Resultaten benutzt. Hier können Sie die einige Tests und die fliegende Maschine zu sehen. Viel Glück mit Ihrem Projekt. Moving Durchschnitte glätten den Lärm der Preis Datenströme auf Kosten der Verzögerung (Verzögerung) In den alten Tagen konnten Sie Geschwindigkeit haben, auf Kosten der reduzierten Glättung In den alten Tagen konnte man nur Ihre Glättung an Die Kosten von Lag Denken Sie, wie viele Stunden Sie verschwendet versuchen, um Ihre Mittel schnell und glatt Remember, wie ärgerlich ist es zu sehen, zunehmende Geschwindigkeit verursacht erhöhte Lärm Denken Sie daran, wie Sie wünschten niedrige Verzögerung und niedrige Geräusche Müde zu arbeiten, wie Sie Ihren Kuchen haben UND Essen Sie es nicht verzweifeln, jetzt haben sich die Dinge geändert, können Sie Ihren Kuchen haben und Sie können es essen Precision Lagless Durchschnitt im Vergleich zu anderen fortgeschrittenen Filter-Modelle Von den grundlegenden Industriestandard Durchschnitt (Filter) der gewichteten gleitenden Durchschnitt ist schneller als die exponentielle, aber tut Keine gute Glättung, im Gegensatz dazu die exponentielle hat hervorragende Glättung, aber riesige Mengen an Verzögerung (Lag). Moderne quothigh techquot Filter, obwohl die Verbesserung der alten Grundmodelle, haben inhärente Schwächen. Einige davon werden im Jurik-JMA-Filter beobachtet und die schlimmsten dieser Schwächen sind Überschwingen. Jurik Forschung offen zugeben, um mit einem minimalen Überschwingen, die dazu neigt, irgendeine Form von prädiktiven Algorithmus anzugeben, der seinen Code arbeitet. Denken Sie daran, dass Filter beabsichtigt sind zu beobachten, was jetzt und in der Vergangenheit geschieht. Vorhersage, was als nächstes passieren wird, ist eine illegale Funktion im Werkzeugkoffer von Precision Trading Systems, die Daten werden nur geglättet und verzögert. Oder man könnte sagen, Trends werden genau gefolgt, anstatt zu sagen, welcher Weg weiter zu gehen, wie es bei diesen illegalen Filteralgorithmen der Fall ist. Der Präzisions-Lagless-Durchschnitt versucht nicht, den nächsten Preiswert vorherzusagen. Der Hull-Durchschnitt wird von vielen behauptet, so schnell und glatt wie die JMA von Jurik Forschung, es hat eine gute Geschwindigkeit und niedrige Verzögerung. Das Problem mit der Formel, die im Rumpf-Durchschnitt verwendet wird, ist, dass es sehr einfach ist und führt zu Preisverzerrungen, die eine schlechte Genauigkeit haben, die durch Gewichtung zu stark (x 2) auf die aktuellsten Daten (Boden (Länge 2)) und dann Subtraktion der alten verursacht wird Daten, die zu schweren Überschreitungsproblemen führen, die in manchen Fällen viele Standardabweichungen von den tatsächlichen Werten entfernt sind. Der Präzisions-Lagless-Durchschnitt hat ein ZERO-Überschwingen. Das folgende Diagramm zeigt die immense Geschwindigkeitsdifferenz auf einem 30-Perioden-PLA und 30 Perioden-Rumpf-Durchschnitt. Die PLA war vier Takte vor dem Hull-Durchschnitt auf beiden Hauptdrehpunkten, die auf dem 5-Minuten-Chart der FT-SE100 Future (das ist ein 14 Unterschied in Lag). Wenn Sie die Durchschnittswerte an den Wendepunkten gehandelt haben, um in diesem Beispiel den Schlusskurs zu beenden, signalisierte PLA bei 3.977,5 und Hull war eine Kleinigkeit später bei 3.937, knapp 40,5 Punkte oder monetär 405 pro Vertrag. Das lange Signal auf PLA lag bei 3936 im Vergleich zu Hulls 3.956,5, was einer Kostenersparnis von 205 pro Vertrag mit dem PLA-Signal entspricht. Ist es ein Vogel. Ist es ein Flugzeug. Nein, die Präzisions-Lagless-Durchschnittsfilter wie der VIDAYA-Durchschnitt von Tuscar Chande, die die Flüchtigkeit verwenden, um ihre Längen zu verändern, haben eine andere Art von Formel, die ihre Länge ändert, aber dieser Vorgang wird nicht mit irgendeiner Logik ausgeführt. Während sie manchmal sehr gut arbeiten können, kann dies auch zu einem Filter führen, der sowohl Verzögerung als auch Überschwingen erleiden kann. Der Zeitreihen-Durchschnitt, der in der Tat ein sehr schneller Durchschnitt ist, könnte auch umbenannt werden, um die quadratische Überschreitung dieser Ungenauigkeit zu machen, macht es für eine ernsthafte Bewertung von Daten für den Handel nicht nutzbar. Der Kalman-Filter verzögert sich häufig zurück oder überschreitet Preisarrays aufgrund seiner über eifrigen Algorithmen. Andere Filter Faktoren in Preis Impuls zu versuchen, vorherzusagen, was in der nächsten Preisintervall passieren wird, und dies ist auch eine fehlerhafte Strategie, da sie überschwemmen, wenn hohe Impulsablesung umgekehrt, so dass der Filter hoch und trocken und Meilen entfernt von der tatsächlichen Preis Aktivität . Der Präzisions-Lagless-Durchschnitt verwendet eine reine und einfache Logik, um den nächsten Ausgangswert zu bestimmen. Viele ausgezeichnete Mathematiker haben versucht und versäumt, verzögerte Durchschnitte zu schaffen, und im Allgemeinen ist die Vernunft ihre extreme Mathematik Intellekt ist nicht durch ein hohes Maß an commonsense Logik gesichert. Precision Lagless Average (PLA) ist aus rein logischen Grundalgorithmen aufgebaut, die viele verschiedene Werte untersuchen, die in Arrays gespeichert sind und wählt, welchen Wert an die Ausgabe senden soll. PLAs überlegene Geschwindigkeit, Glättung und Genauigkeit machen es zu einem hervorragenden Trading-Tool für Aktien, Futures, Forex, Anleihen etc. Und wie bei allen Produkten von Precision Trading-Systeme entwickelt, ist das zugrunde liegende Thema das gleiche. Geschrieben für Händler, DURCH EINEN TRADER. PLA Länge 14 und 50 auf E-Mini Nasdaq futurePosted am: 22. Januar 2010 von starlino Dieser Artikel stellt eine Implementierung eines vereinfachten Filteralgorithmus vor, der von Kalman-Filter inspiriert wurde. Der Arduino-Code wird mit einem 5DOF IMU-Gerät von GadgetGangster 8211 AccGyro getestet. Die Theorie hinter diesem Algorithmus wurde zuerst in meinem Imu Guide Artikel eingeführt. Der AccGyro wird auf einem regelmäßigen Proto-Schild auf einem Arduino Duemilanove Board montiert. Teile, die benötigt werden, um das Projekt abzuschließen: 8211 Arduino Duemilanove (oder ähnliche Arduino-Plattform) 8211 AccGyro IMU-Platine 8211 Protoshield (optional) 8211 Breadboard 8211 Anschlussdraht 22AWG Das Hook-up-Diagramm ist wie folgt: AccGyro lt8212gt Arduino 5V lt8212gt 5V GND lt8212gt GND AX lt8212gt AN0 AY lt8212gt AN1 AZ lt8212gt AN2 GX4 lt8212gt AN3 GY4 lt8212gt AN4 Sobald Sie den Hardware-Teil abgeschlossen haben, laden Sie die folgende Skizze zu Ihrem Arduino. Führen Sie das Projekt aus und stellen Sie sicher, dass Sie eine Ausgabe auf Ihrem seriellen Terminal empfangen (Sie können das Terminal von Ihrer Arduino IDE starten). Um die Daten zu analysieren, habe ich ein kleines Dienstprogramm namens SerialChart entwickelt. Es ist Open-Source so fühlen sich frei, es für Ihre eigenen Bedürfnisse anzupassen. Hier ist die Ausgabe von SerialChart Software: Der Test wurde wie folgt durchgeführt: 8211 Zuerst habe ich das Brett langsam gekippt (markierte quotsmooth Tiltingquot auf dem Screenshot) 8211 Als nächstes fuhr ich fort, das Board zu kippen, aber ich habe auch angefangen, einige Vibrationen anzubringen 8211 durch Tippen auf die Bord schnell mit dem Finger (markiert mit dem Vibrationsgeräusch). Wie Sie aus dem Diagramm sehen können, ist das gefilterte Signal (rote Linie) in der Tat eher immun gegen Lärm als die Beschleunigungsmesser-Messwerte allein (blaue Linie). Das gefilterte Signal wurde durch Kombinieren der Beschleunigungsmesser - und Gyroskop-Daten erhalten. Gyroskop-Daten sind wichtig, denn wenn man einfach die Accelerometer-Daten durchschnittlich hätte, würde man ein verzögertes Signal bekommen. Angesichts der Einfachheit des Codes und des Algorithmus bin ich mit den Ergebnissen zufrieden. Ein Merkmal, das ich hinzufügen möchte, ist die Kompensation für den Drift-Effekt, den man bei einigen Gyroskopen antreffen könnte. Allerdings erwies sich das AccGyro-Board in dieser Hinsicht als sehr stabil, da es eingebaute Hochpassfilter hat. Wenn Sie selbst gerne experimentieren möchten, empfiehlt es sich, diese Testaufstellung zuerst zu reproduzieren. Dann verschieben Sie langsam auf Ihre Anwendung braucht. Zum Beispiel können Sie den C-Code nehmen und ihn an PIC39s C18C30 oder AVR-GCC anschließen (es sollte nicht zu dificult sein). Im Folgenden finden Sie einige nützliche Ressourcen und deren Beschreibungen. SerialChart-ausführbare Dateien können hier heruntergeladen werden: Sobald Sie die SerialChart-Anwendung starten, müssen Sie die imuarduino. scc-Konfigurationsdatei für dieses Projekt (im imuarduino. zip) Archiv laden. In dieser Konfigurationsdatei müssen Sie die 39port39-Einstellungen auf den Arduino39s-COM-Port aktualisieren. Auf meinem Computer wurde Arduino auf COM3 entdeckt, bei dir könnte es anders sein. Weitere Informationen zur Konfigurationsdatei-Syntax finden Sie unter: Sie können SerialChart auch von Google Code herunterladen und kompilieren: Sie benötigen einen SVN-Client, um den Code auszuprobieren (ich benutze RapidSVN für Windows). SerialChart wurde unter Verwendung von Qt SDK von Nokia entwickelt: qt. nokiadownloads Viele Leute fragen mich was über die andere 2-Achse, hier ist der Code, der 3 Achsen ausgibt, einschließlich des SerialChart-Konfigurationsskripts. Ich habe auch einige Overhead-Code, dass Alex in den Kommentaren darauf hingewiesen, dies reduziert das Intervall zwischen den Samples. Im folgenden Beispiel drehe ich die Tafel um die X-Achse (blau), die parallel zum Boden ist. Ich mache es von Hand, also ist X nicht genau 0, sondern nah. Die Achsen, die sich ändern, sind Y (rot) und Z (grün). Bitte beachten Sie die Beziehung X2Y2Z2 1. Die gestrichenen Cyan-, Magenta - und Kalklinien sind ungefilterte Signale aus dem Beschleunigungsmesser allein (RwAcc). 162 KOMMENTARE Kommentar hinzufügen RSS 63. Emilio 30. Oktober 2011 hola, ante todo gracias por su pagina y dedicacin. Mi consulta es la siguiente En mi proyecto necesito colocar por razones de espacio la placa de un 5DOF IMU en posicin vertikal, keine horizontale es posible cambiar la orientacin de los ejes por Software para situarla en esa posicin. Gebrauchsmuster. Gracias por su atencin, y un sincero y cordial saludo 64. Luca November 18, 2011 Hallo, I8217m arbeiten an 6DOF IMU Sensoren und fand diese Anwendung (SerialChart) sehr nützlich. Dieser Beitrag soll nur ein Thema über SerialChart abgeben. Mit mehreren USB-Transceiver (d. h. FTDI-Chip), die verschiedene Entwicklungsplatinen verbinden, kann die virtuelle COM-Nummernvergabe schnell wachsen. In meinem Fall mit COM5 kann ich den seriellen Port anschließen, aber usign COM19 I can8217t: SerialChart gibt einen Meldungsfeldfehler zurück 8220Der Port COM198221 konnte nicht geöffnet werden. Könnte ein Fehler im COM-Port-Konfigurations-Parser sein, der nur für COM-Portnamen von COM1 bis COM9 sehe. Ich bekomme die gleichen Meldungen mit allen COM-Port mit zwei Ziffern. 8230 Teil 3 meiner IMU Guide und ein praktisches Arduino Experiment mit Code wurde in der Verwendung eines 5DOF IMU Artikel präsentiert und wurde Spitznamen Simplified Kalman Filter, bietet eine einfache Alternative zu den 8230 66. Xris 24. Dezember 2011 Hallo Starlino Ich versuche zu Implementiere dich serielles Diagramm in einer Anwendung, um die Daten eines Beschleunigungsmessers mit einem PIC24FJ64GB002 zu beobachten, aber mein Problem ist, dass ich ANSI C für pic24f verwende, das doesn8217t die Funktion Serial. print () hat. So gibt es irgendeine Bibliothek oder eine Methode, um das zu tun Stattdessen habe ich diesen Code verwendet, aber auf dem seriellen Diagramm bekomme ich zufällige Symbole. Hdlcsendfloat (Intervall) (8280,8221) hdlcsendfloat (Xaxis) uartsendchar (8220,8221) hdlcsendfloat (Yaxis) uartsendchar (8220,8221) 8230. Die Theorie hinter diesem Algorithmus wurde zuerst in meinem Imu Guide Artikel eingeführt. rdquo PyroFactor: Read Permalink Email This 8230 68. gunbrown 15. Januar 2012 Ich versuche zu messen Roll und Tonhöhe des bewegten Objekts (Art eines Zylinders). Ich bin ein bisschen verwirrt, ist, dass dein Algorithmus den Roll-Pitch-Grad des bewegten Objekts messen kann. Barry Beasley 23. Januar 2012 Wäre es möglich, Daten von zwei separaten seriellen Ports zu akzeptieren und die empfangenen Daten auf einem Diagramm zu zeichnen. Auch könnten wir haben Ein Merkmal, um eine Skala (s) für X amp Y Achse 70 hinzuzufügen. Starlino 23. Januar 2012 Barry: Mehrere Datenquellen wäre ein interessantes Feature. Kann die erweiterte Wunschliste hinzufügen. Für Skala können Sie Pitch-Parameter verwenden, siehe: code. googlepserialchartwikiAdvancedFeatures Zunächst einmal vielen Dank für eine wunderbare Einführung auf dem IC. Ich sehne mich nach einem solchen IC. Ich arbeite an einem umgekehrten Pendel. Ich würde gerne wissen, ob ich die Ausgabe aus dem Gyro direkt nutzen könnte, um mein Kippen in umgekehrtem Pendel zu vergleichen. 8230 UDB4 iin MicroChip8217in C30 derleyiciyle hazrlanm ak Kaynak Kodlar da mevcut olmakla birlikte ben yazlm CCS C derleyicisiyle sfrdan yazmaya karar verdim. Sensrlerin analog kl olmas ilerimi epey kolaylatsa da IMU mantn zmek 1-2 gnm ald Starlino8217nun Arduino iin yazd kalman 8211 IMU kodlarn CCS8217e evirdim. Yaznn orjinaline ulamak iin tklayn 8230 73. hacna April 12, 2012 Hi..I8217m ein Student arbeitet an einem Unterwasser Fernbedienung Fahrzeug, wo I8217m mit 5 DOF IMU, um die Position des Fahrzeugs zu bekommen. Um mit IMU Im zu verbinden mit Arduino Uno micro controller. my Problem hier, wie ich die Position des Fahrzeugs von der Beschleunigung bekommen kann, da die Arduino nur gvs Ausgabe der Beschleunigung. Wie können wir uns mit dem Arduino-Ausgang verbinden, um die Beschleunigung zu erhalten. 74. Robert 14. April 2012 Ich kaufte vor kurzem eine IMU (die im Laden mit dem Gier-Gyro-Board aufgelötet), ohne vollständig zu verstehen, wie IMUs funktionieren. Was ich wirklich brauchte, war für das Messen des Gieres für ein autonomes Unterwasserfahrzeug I8217m zu arbeiten. Ich weiß jetzt, dass, um eine genaue Lesung zu erhalten, die Sie auch ein Magnetometer benötigen und das zusammen mit einem Kalman-Filter verwenden, um die Drift loszuwerden. Allerdings denke ich nicht, dass ich eine genaue Lesung für mehr als 5-10 Sekunden (es wäre nur für die relative Positionierung beim Drehen verwendet werden). Ich habe versucht, nur auf den Gier-Gyro zuzugreifen und das nur zu benutzen, aber ich bekomme sehr schlechte Ergebnisse. Ich verstehe, dass Gyros arent die genaueste Sensor, aber meine scheint nur gut für die Erkennung der Bewegung und gibt nicht eine genaue Darstellung auf Größe oder Richtung der Winkelgeschwindigkeit. Zum Beispiel könnte ich mein Programm starten, drehe das Brett um 90 Grad und drehe es dann zurück und habe den Winkelabfall bei beiden Rotationen. Außerdem scheint sich mein Gyro niemals auf die ursprüngliche Null zurückzusetzen. Nach dem Drehen und Stoppen scheint es, dass die Nullspannung sich verändert hat und damit der Gyro anfängt, wirklich schlecht zu treiben. I8217ve versucht, die Nullspannung so genau wie möglich zu stimmen, aber das ist nicht wirklich wichtig, wenn es sich immer verändert. I8217ve spielte auch mit den Parametern für die if-Anweisung, aber das hilft nur geringfügig .. Also meine Frage ist, sind Gyros wirklich so ungenau Oder sollte ich etwas zumindest etwas nutzbar sein Bitte schau mal meinen Code an und sehe, ob du irgendwelche sehen kannst Probleme. Vielen Dank schweben yawRate Lesung aus dem Gyro Float yawZero 1.255 Null Rate Spannung Schwimmer currentAngle 0 void Setup () Serial. begin (9600) void Schleife () Holen Sie sich die Lesung aus dem Gier Gyroskop yawRate analogRead (A3) konvertieren in degreessecond yawRate 1023 yawRate 5 YawRate - yawZero Serial. println (yawRate) yawRate .002 if-Anweisung zur Minimierung der Drift, wenn (yawRategt5yawRatelt-5) mit 100 Hz yawRate 100 fügt die Winkel currentAngle yawRate stellen sicher, dass der Winkel zwischen 0-360 Grad bleibt, wenn (currentAngle 359 ) CurrentAngle - 360 Serial. println (currentAngle) Verzögerung (10) 75. starlino April 14, 2012 Ok. Paar Zeiger: 8211 Sie müssen yawZero experimentell bestimmen, don8217t nur verwenden Sie den Datenblatt Wert, können Sie schreiben einige Code, um es beim Start zu messen (dies ist, wenn das Gerät nicht bewegt), oder Hardcode es aber stellen Sie sicher, dass es regelmäßig zu aktualisieren. 8211 Ich glaube, deine Loops laufen bei 100Hz, weil println einige Zeit in Anspruch nehmen, um zu verzögern (10) verwenden millis () arduiono Funktion, um Zeit für jede Schleife zu messen 76. Robert 14. April 2012 Vielen Dank für die Antwort. Ich fand die Nullspannung experimentell (mit einem Voltmeter und mit println). Ich habe meinen Code um mit Millis geschaltet, aber I8217m immer noch das gleiche Problem wie zuvor. Der Gyro scheint nicht genau auf die gleiche Nullspannung zurückzukehren, nachdem er sich bewegt hat. Ich denke nicht, dass dies etwas ist, das man dynamisch anpassen kann, also könnte es ein Hardware-Problem sein und nicht Software 77. starlino 15. April 2012 Robert: Kannst du bitte deinen Code nochmals posten. Wenn Sie sagen, 8220gyro doesn8217t wieder genau auf die gleiche Nullspannung8221 bedeuten Sie das direkte Lesen von GZ4-Port oder die kumulative Summe der Winkel. Den Sensor neu positionieren und einen anderen Kanal wie GX4 oder GY4 ausprobieren. Du hast auch die nicht verstärkten. Nicht gefilterte Kanäle GX, GY, die du ausprobieren kannst. Kein Gyro ist perfekt. Dass sie oft mit Beschleunigungssensoren (für Neigungs-Pitch-Messung) und mit Magnetometern für (Gier-Gier-Berechnungen) verwendet werden. Wenn sie perfekt wäre. Leute würden es nicht stören, sie zu kombinieren. In jedem Fall, wenn Sie feststellen, dass dieser Sensor nicht für Sie arbeitet. Fühlen Sie sich frei, mit mir über eMail in Verbindung zu treten, um eine Rückkehr zu ordnen. 78. zam 10. Juni 2012 kann ich serialchart mit motionnode verwenden Zu Pedro: Nur GPS kann dir die Position deines Geräts zur Verfügung stellen. Du kannst es nicht gut genug mit nur Beschleunigungsmesser und Kreisel rechnen. 89. Max 3. September 2012 Hallo Starlino, ich mag deine Software 8220serial chart8221 sehr viel. Ich habe es benutzt, um serielle Daten von einem Arduino zu analysieren. Es funktionierte sehr gut mit allen arduinos vor uno r3. Aber in dieser Woche habe ich ein Arduino uno r3 gekauft. Jetzt kann ich die Daten analysieren. Es funktioniert nicht mit dem uno r3. Vielleicht wegen der neuen 8220ATmega16U28221 und dem neuen Fahrer. Es gibt immer die Nachricht 8220Could Port COM11 öffnen. 8216Machen Sie sicher, dass der Port availalbe82308221 ist, gibt es eine Lösung, die ich habe einen PC und Windows 7. Vielen Dank. Max aus Deutschland Wissenschaftslehrer 90. starlino 3. September 2012 max: war der vorherige arduino auf einem unteren Port wie (COM3, COM5), versuche, zum Geräte-Manager zu gehen und den zugewiesenen COM-Port von COM11 zu etwas niedriger wie COM3 COM4 zu ändern. Einige Leute berichteten über Probleme mit den Häfen höher als 10. 91. Max 10. September 2012 Hallo Starlino, danke für den Tipp. Jetzt funktioniert es wieder sehr gut. Es ist ein sehr nützliches Werkzeug. Und sehr schnell Danke vielmals. Max aus Deutschland. 92. Juan David 29. Oktober 2012 Hallo ich mag das Programm, aber ich möchte wissen, wie kann ich es implementieren, wenn das imu gibt Ausgabedaten in i2c, der 3 Achse des Kreisels und der Accel, ich habe die Daten in anderen Algorithmus von arduino Was muss ich in deinem Code ändern 8230 baarl ilk uu testini gerekletirdim. Projenin bu kadar gecikmesinin en byk nedeni Starlinonun IMU algoritmas zerinde srar etmem oldu. Yer testlerinde uak iyi tepki vermesine 8230 94. WhiteBard Dezember 21, 2012 Hallo. Sry für mein schlechtes Englisch. I8217m ein Postgrdauat der Abteilung Informationstechnologie der Sachalin State University. Können Sie mir bei meinem Problem helfen, ich habe bereits Daten von verschiedenen Sensoren: Beschleunigungsmesser, Gyroskope, etc. Daten gespeichert im folgenden Format: Zeit, Gyro X, Gyro Y, Gyro Z, Beschleunigungsmesser X, Beschleunigungsmesser Y, Beschleunigungsmesser Z, Kompass X , Kompass Y, Kompass Z. Die Daten sind laut. Ich muss auf Lärm reduzieren und Handlung, um die Ergebnisse mit einem Kalman-Filter zu bewerten. Helfen Sie mir bitte ändern Sie Ihr Programm, um die Daten zu verarbeiten ist nicht in Echtzeit, um mein Problem zu lösen. Vielen Dank. 95. Iwan 22. Januar 2013 Ich möchte Daten von der Serienkarte zum Arduino-Modul senden. Kannst du mir den Quellcode der Serienkarte geben Wenn möglich möchte ich ihn ändern, um Daten zu senden 8230 Arduino Code für IMU Guide Algorithmus. Mit einem 5DOF IMU Beschleunigungsmesser und Gyroskop Combo Starlino8230. 8230 97. Benhur 23. Februar 2013 Starlino, creio que todos os leitores deste site tem uma dvida contigo Obrigado por divir seus conhecimentos conosco Foi conectar ein fiao e rodar o programma que saiu funcionando 98. Tim 29. April 2013 Hallo Starlino, sehr cool Projekte I039m etwas ganz Ähnliches zu tun, aber ich habe eine Frage über die SerialChart Anwendung. I039m versucht, meine 3 Gyro-Achsen zu visualisieren, aber ich kann nur sehen, 2 von ihnen in serialchart8230 Dies ist der Code I039m für den Druck: Serial. print (a) Serial. print (quot, quot) Serial. print (b) Serial. (C) Ich habe auch mit anderen Daten versucht, aber die gleichen Ergebnisse8230 Bin ich etwas falsch gemacht Danke im Voraus 99. starlino 29. April 2013 Tim, was ist die serielle Diagramm-Konfigurationsdatei, und können Sie Sende Probe Ausgabe von Ihrem Gerät 100. Tim 30. April 2013 Dies ist, was I039m immer im Moment, 4 Zahlen in der Ausgabe, aber nur 3 Zeilen sichtbar8230 timdemeyer. befilesserialchartoutput. png 101. starlino 30. April 2013 Tim Ihr erstes Feld ist Genannt Intervall und it8217s Farbe ist transparent, sollten Sie entfernen, dass Abschnitt 102. Tim 30. April 2013 Oh ja Nachlass Alle Zeilen sind jetzt auftauchen. Vielen Dank 103. Ben-Hur 5. Mai 2013 Herzlichen Glückwunsch-Guide auf IMU und Anwendung SerialChart, seine Erklärungen sind einfach und wirklich arbeiten I039m den gleichen Job zu tun, aber mit anderen Modellen von Sensoren und meine Frage ist in Bezug auf die komplementäre Filter: 1) In dem komplementären Filter (im Arduino-Code) wird ein gewichteter RWAcc w config. wGyro RwGyro w) (1 config. wGyro) durchgeführt, der perfekt funktioniert, aber ich habe andere Artikel gesehen, von denen ich über komplementäre Filter recherche und sah Es gibt eine andere Gleichung des Typs: quadrat (0,98) (Winkel Rwgyro dt) (0,02) (Rwacc) oder quadrat a (Winkel Rwgyro dt) (1-a) RwAccquot wo ein tau (t tau) Sie sehen können, dass die beiden Formen wird einen Wert größer als ein Sensor zu einem anderen gegeben. Nur konnte ich nicht sehen, wo die Variable quotaquot in Ihrer Lösung, und verwies auf diese Zeit konstant als die anderen Artikel sprechen. Vielen Dank für Ihre Zeit 104. clark 12. Mai 2013 Serial Chart funktioniert nicht mein PC, ist das kompatibel mit Windows Starter Ich habe versucht, die ZIPPED-Version zu verwenden, aber wenn ich auf die Run-Taste gedrückt, gibt es mir eine Fehlermeldung quotCould nicht öffnen Port COM26quot aber ich bin mir sicher, dass mein Arduino bei com26 angeschlossen ist und ich schon das serielle Diagramm konfiguriere. Ich habe auch versucht, alle Anwendungen auf meinem PC zu schließen, außer Serial Chart. Aber immer noch den gleichen Fehler. Kann mir jemand helfen. 105. starlino 13. Mai 2013 Clark: Die QT-Serienbibliothek hat manchmal Probleme mit Ports höher als 10 (nur auf einigen Computern), Sie können es auf COM4 oder etwas ähnliches ändern. Lösung ist hier beschrieben: 106. Pablopaolus 22. Mai 2013 Vielen Dank für Ihre Arbeit und Entschuldigung, um Sie zu stören. I039m verrückt zu versuchen, einen orientierten Würfel in Labview ab RwEst Werte zu zeichnen. I039ve las alle Kommentare hier auf der Suche nach einer Antwort ohne Erfolg. I039ve versuchte, die Rollwinkeln mit diesen Ausdrücken zu berechnen: pitch atan2 (RwEst1, RwEst2) roll atan2 (RwEst0, sqrt (RwEst1RwEst1RwEst2RwEst2)) Aber es funktioniert nicht. Könnten Sie mir bitte eine Möglichkeit geben, diese Aufgabe zu erfüllen, ich werde Ihnen dankbar sein, wenn Sie Hilfe finden können. 107. starlino 22. Mai 2013 Pablopaolus: Bitte schauen Sie sich das DCM Tutorial auf dieser Seite an. Wenn Sie die DCM-Matrix anstelle der Tonhöhe berechnen, können Sie die Position eines beliebigen gedrehten Vektors als r8217 DCM r finden. 108. Pablopaolus 22. Mai 2013 Starlino: Vielen Dank für deine schnelle Antwort. Ich hatte bereits dein DCM Tutorial gelesen. Allerdings, da ich fand es schwieriger zu verstehen, habe ich implementiert Ihre vereinfachte Kalman Filter Algorithmus8230 aber es scheint, I039ll müssen für DCM gehen. Übrigens habe ich einen Zweifel an Ihrer DCM-Implementierung. Ist der Code in code. googleppicquadcontrollersourcebrowsetrunkimu. hr7 genug für die Berechnung der DCM-Matrix Ich meine: Bei der imuupdate () - Funktion kann ich sehen, dass Sie die dcmGyro-Matrix aktualisieren, aber ich kann irgendwo die dcmEst-Berechnung sehen, die als die geschätzte dcm-Matrix durch Fusion definiert ist Von Beschleunigungsmesser und Gyroskop. Mit anderen Worten: ist dcmGyro die Matrix, die ich verwenden kann, um zu finden r039dcmGyror Vielen Dank für die Prüfung meiner Anfrage. 109. starlino 28. Mai 2013 111. Fatima 10. Juli 2013 Ich arbeite zurzeit an einem Self-Balance-Roboter und ich möchte einen kalman-Filter für meine IMU-Sensor-Fixing und Filterung verwenden und ich möchte die Ausgabe als Neigungswinkel in die PID-Regler, und ich möchte den PID-Ausgangswinkel in die Geschwindigkeit für meinen MD49-Motortreiber umwandeln. Ich weiß, was ich machen will, aber ich weiß nicht genau, wie es geht. Also habe ich gehofft, wenn du eine Idee hast, wo ich anfangen soll und wie ich die notwendige Umwandlung machen könnte. Vielen Dank für Ihre Betrachtung Ursache Ich klinge wie ein Anfänger, was ich bin. 112. johnnymucker 8. August 2013 serial chart funktioniert nur mit com prots 1 lt 9. manuell ändern Sie Ihre com-Port-Nummer in Windows 7 (you039ll müssen google das) Ich musste es in winXP tun, um es zu arbeiten. 113. Jan Bambey 12. August 2013 Gibt es eine Lizenz für die imu arduino Ich arbeitete an MPU6050. Es ist ein 3-achsiger ACC. und 3- Achsen GYRO und Temp Sensor. Als ich versuchte, nur die Tilt-Informationen von diesem Sensor zu bekommen. Ich fand es in der gleichen Zeit die Beschleunigung, die ich nicht brauche. Eigentlich muss ich nur die Neigung in x und y Richtung lesen. Meine Frage ist. Wie kann ich die Beschleunigungserfassung abbrechen. 136. john oakley 29. April 2015 Ich versuche, eine Spur von mpu6050 zu generieren. Mein Gyro x, y Daten schnell zieht die 2 Spuren vertikal, aber sie sind sehr langsam von links nach rechts über das Diagramm zu bewegen, daher sind alle zerquetscht und unleserlich im Vergleich zu anderen Charts ive gesehen Menschen generieren. Seine wie ein oscillocope auf einer langsamen zeitbasis von ungefähr 1 seconddiv und alle daten sind in dieser zeitskala vollgestopft. Ive versucht als eine vorherige Post sagte über das Hinzufügen einer Verzögerung nach jeder Zeile. Ich nehme dies zum Beispiel an: xdata, ydata (verzögerung) und nicht xdata, (verzögerung) ydata (verzögerung) und so weiter. Ist dies der einzige Weg, um die Sweep-Geschwindigkeit zu erhöhen 137. Sarra Chebbah Mai 18, 2015 Code Matlab filtre kalman et animation 3d MPU6050

No comments:

Post a Comment