Arduino-Flugsteuerung
Dieses Arduino-Flugsteuerungsprojekt wurde von Joop Brokkings Auto-Leveling Quadcopter-Build inspiriert. Mein Ziel war es, diese Drohne von Grund auf zu bauen und dann einen Arduino als Controller anstelle eines vorhandenen Flugsteuerungsboards zu verwenden. Der Körper der Drohne wurde von mir entworfen und 3D-gedruckt, ich habe eine Leiterplatte selbst gebaut, um alle Elektronik anzuschließen, und
Iterationen
Das Projekt hat einige Iterationen durchlaufen. Version 1 wurde mit einem Arduino Uno-Board als Kernstück hergestellt. Dies war ein schneller Aufbau, der darauf ausgelegt war, zum ersten Mal etwas in die Luft zu bringen. Der Körper war ein grobes Design und hatte viele Mängel, die die Arbeit damit erschwerten. Diese wurden in der nächsten Iteration der Drohne behoben.
Das Hauptupgrade für Version 2 war ein Redesign des Drohnenkörpers. Mein Freund bekam eine DJI Mini-Drohne mit faltbaren Armen zum Aufbewahren, und ich wollte das Gleiche mit diesem Projekt ausprobieren. Ich ersetzte die festen Arme durch Arme, die alle in den Körper schwenkten. Zweitens schuf ich eine komplette Unterhälfte der Drohne, so dass der Akku nicht mehr sichtbar war. Es gab auch eine Handvoll kleiner
BOM
Teile für dieses Projekt beinhalteten:
- Arduino Nano
- MPU6050 Beschleunigungsmesser/Gyro-Chip
- BMP280 Barometer-Chip
- 4x 2300kV bürstenlose Motoren
- 4x 30A elektronische Geschwindigkeitsregler
- 4x 5045 Propeller
- 4x 699 Lager
- 8x M2.5x8 Metall-Dübelstifte
- 8x ¼" x 1/16" N52-Scheibenmagnete
- Stromverteilungsbrett
- LED-Licht
- Drahte/Widerstände/Kondensator
- LiPo-Batterie, 3 Zellen, 2200 mAh
- Power Slide Switch
- 2 Frühlingsquellen ()
- 2x M3x20 Schrauben
- 2x M3x14 Schrauben
- 3x M3x6 Schrauben
- 7x M3 Muttern
Versammlung
Eine Version jeder Datei muss für die vollständige Montage gedruckt werden.
Magnete:3 Dateien geben an, dass sie Magnete enthalten. Um die Magnete hinzuzufügen, müssen Sie eine Pause bei den korrekten Schicht-Höhen im Slicer hinzufügen. Diese Magnete werden für einen einfachen Zugang unter der Abdeckung der Drohne sein.
Einrichtung
Sobald Sie eine gebaute Drohne haben, müssen Sie mit der Ausführung der Datei Drone_Setup beginnen. Dies führt Sie durch eine Reihe von Eingabeaufforderungen, um sicherzustellen, dass alles korrekt eingerichtet ist und die richtigen Fernbedienungseingaben verwendet werden. Am Ende dieser Eingabeaufforderungen werden alle Daten im EEPROM gespeichert.
Als nächstes führen Sie Drone_ESC_Calibrate aus, um den Beschleunigungssensor und die Motoren zu testen. Dies wird Ihnen ermöglichen, sicherzustellen, dass die Motoren in die richtige Richtung drehen und dass die Drohne die richtige Ausrichtung liest.
Sobald dies erledigt ist, können Sie Drone_Flight_Controller ausführen. Bevor Sie fliegen, sollten Sie zunächst die PID-Werte oben im Programm einstellen; dies wird Ihnen eine optimale Leistung ermöglichen.
PID-Tuning
Dies ist der Prozess, den ich verwendet habe, um den PID-Regler für die automatische Nivellierung der Drohne einzustellen. Es mag bessere Wege geben, aber das hat für mich funktioniert.
Seien Sie vorsichtig, wenn Sie diese Schritte ausführen. Verwenden Sie geeignete Sicherheitsausrüstung.
- Stelle P-Gain auf 1 und I/D auf 0. Überprüfe, ob die Drohne sich in die richtigen Richtungen bewegt, wenn die Sticks bewegt werden.
- D-Verstärkung:
- Erhöhe den D-Gain in Schritten von 1, bis die Drohne in der Luft unruhig wird.
- Senke es, bis die Drohne stabil fliegt.
- Ziehe 25% ab, um den endgültigen Wert zu erhalten.
- P-Gewinn:
- Erhöhen Sie den P-Gain in Schritten von 0,01, bis die Drohne langsam zu schwingen beginnt.
- Reduziere um 50%, um den endgültigen Wert zu erhalten.
- Ich gewinne:
- Erhöhe den I-Gewinn in Schritten von 0,2, bis die Drohne anfängt, überzukompensieren.
- Reduziere um 50%, um den endgültigen Wert zu erhalten.
- P Gain wieder:
- Erhöhe den P-Gewinn, bis er zu schwingen beginnt.
- Ziehe ein paar Punkte ab.
- Optimieren Sie die Werte durch Ausprobieren und Fehlermitigation.
Dies war ein langsamer Prozess, um Werte zu erhalten, die für mich gut funktionierten.
Code
Du kannst den Code des Flugcontrollers ansehen.hierauf GitHub.
Aktualisierungen
10-Okt-23:
Hinzugefügt wurden neue Versionen von STL-Dateien mit einigen Aktualisierungen. Das neue Design des hinteren Arms ist effektiver und verwendet eine Feder anstelle eines Hebels. Außerdem wurde die Stückliste aktualisiert.
Etiketler
Model Kaynağı
