Forum: Mikrocontroller und Digitale Elektronik Flight Controller Designen & Programmieren


von Marc (Gast)


Lesenswert?

Hallo liebe Community,

ich bin Marc und leidenschaftlicher (Flug-) Modellbauer & Mechatronik 
Student.
Neulich habe ich ein paar Interessante Beiträge darüber gesehen wie 
einige einen Flight Controller designed haben :

1. https://www.youtube.com/watch?v=QsDD2fpwWlo
2. https://www.youtube.com/watch?v=Rv1MVkZuGbg
3. https://www.youtube.com/watch?v=mMRLaRf0kvc

Da ich mich für diese Thematik auch sehr interessiere, habe ich mir 
vorgenommen meinen eigenen Flight Controller zu entwickeln.
Ich dachte mir ich suche mir ein paar Freunde aus der Uni die das 
Projekt gemeinsam mit mir gestalten aber leider haben die meisten 
gesagt, das sei zu ambitioniert und man benötigt jahre lange Erfahrung.
Die habe ich zwar nicht, aber würde dieses Projekt gerne trotzdem 
angehen.

Ich weis das es etliche günstige Flight Controller auf dem Markt gibt, 
aber mir geht es um den Lerneffekt.
Gibt es hier jemanden der vielleicht ähnliches vor hatte, es geschafft 
hat oder berichten kann?
Für jede andere Empfehlung/Tipp bin ich auch sehr dankbar!

Meine Skills : Grundlagenwissen in Regelungstechnik, Kicad/Eagle, 
Schaltungstechnik und Hardwarenaher C Programmierung

Beitrag #7130540 wurde von einem Moderator gelöscht.
von Daniel D. (danielduese)


Lesenswert?

Ambitioniert ja, aber mit guten Sensoren z.B. dem L3G4200D, und den 
entsprechenden Bibliotheken sollte das schon machbar sein.

Das Repo kennst du? https://github.com/betaflight

: Bearbeitet durch User
von Georg (Gast)


Lesenswert?

Skill Schätzer schrieb im Beitrag #7130540:
> Da kannst ja schon mal die Amper hoch skillen.

Warum kann man nicht sachlich antworten? Der junge Mann hat nur um Rat 
gefragt!

@Marc, versuch erst mal einen Aufbau mit einem Entwicklungsboard & einem 
6 Achsgyro. Wenn du damit erfolgreich wirst, dann geh einen Schritt 
weiter und erstelle deine Platine. Für dieses Vorhaben benötigst du viel 
mehr als nur Grundlagenwissen in Regelungstechnik aber mach und du wirst 
sicherlich viel dabei lernen.

von Daniel D. (danielduese)


Lesenswert?

Zum oben genannten Sensor: die gibt's bis 9-Achsen Version. Ist aber 
immernoch der low budget Sektor. Am Sensor würde ich nicht sparen. 
Ansonsten kannst du nachher steuern wie du willst und erhälst nur 
durchschnittliche Ergebnisse. Die schlechten Drohnen sind die mit 
schlechten Sensoren und ohne Masse (gewisse Trägheit tut deinem 
Flugkörper gut).

von Hermann S. (diphtong)


Lesenswert?

Interessant wäre ein Controller, der auch schon einen Kompass (und GPS) 
drin hat, das fehlt den Meisten.

Wie gedenkst Du das Ganze zu Konfigurieren? -Willst Du das kompatibel zu 
Ardupilot  machen?

von qq (Gast)


Lesenswert?

Marc schrieb:
> Die habe ich zwar nicht, aber würde dieses Projekt gerne trotzdem
> angehen.

Machen ist wie wollen - nur viel geiler...

von Der rechte Pepe aus der CH (Gast)


Lesenswert?

Das schwierigste ist die IMU. Verstehen wie aus acc und gyro ein 
stabiles referenzsystem wird. Das ist höhere mathematik. Man kann das 
aber auch von anderen projekten kopieren.

Der rest sind PID und ESC ansteuerung. Eigentlich simpel.

von Der rechte Pepe aus der CH (Gast)


Lesenswert?


von Florian S. (vatterger)


Lesenswert?

Moin,

ich habe während meines Bachelorstudiums einen DIY Flugcontroller plus 
Fernsteuerung für ein FPV-Flugzeug gebaut.

Der Flugcontroller hatte mehrere PWM-Ausgänge für die Servos und ESCs, 
einen U-BLOX NEO-6M GPS Empfänger am UART, MPU6050 IMU und BMP-180 
Drucksensor (für die Höhe) am I2C-Bus und ein HopeRF RFM69 433 MHz 
Transceiver am SPI-Bus. Ein ADC-Eingang diente zum Messen der 
Akkuspannung.

Der Sender war eine alte ausgeschlachtete Handfunke mit vier analogen 
Achsen und einem extern dran-gepfuschten Nokia 5110 LCD-Display sowie 
einem Joystick zum schwenken der FPV-Kamera. Die analogen Achsen wurden 
einfach via ADC ausgelesen. Diese Werte werden dann via 433 MHz 
Transceiver zum Flugzeug geschickt. Der Controller im Flugzeug hat dann 
auf jedes reinkommende Datenpaket von der Handfunke eine Antwort mit 
Statusinfos versandt, also: GPS-Position, Geschwindigkeit, Lage, Höhe 
und Akkuspannung. Das wird dann auf dem LCD der Funke grafisch oder als 
Text visualisiert. Die Idee war, dass man beim Ausfall der 
FPV-Verbindung mit dem LCD zurückfliegen kann. Die Reichweite der 
Steuerverbindung war ca ~1km bei NLOS und >3km mit LOS Verbindung. Mit 
einem 433MHz LoRa-Transceiver wäre sogar noch viel mehr möglich gewesen 
als das ;)

Der Pepe hats eigentlich schon gut zusammengefasst, das Schwierigste ist 
die IMU. Alles andere ist Interface-Zusammenstecken. Wenn du viel lernen 
willst, dann schreibe die Peripherie-Treiber für die verschiedenen 
Geräte (IMU, Drucksensor, Radio, GPS etc) selbst.

Ich würde dir die STM32-Blackpill- oder Bluepill-Boards plus günstigem 
ST-Link v2 Klon empfehlen, damit kannst du Debugging mit Breakpoints 
nutzen. Ich habe damals mit Arduino angefangen und da ist das Debugging 
extrem nervtötend gewesen, ein Ratespiel quasi. Überspring den 
Arduino-Kram wenn du dich bereits sicher genug im Embedded-Bereich 
fühlst: Arduino macht nur die Basics, also den Einstieg, einfacher. 
Alles andere wird durch Arduino komplizierter als nötig.

von Gunnar F. (gufi36)


Lesenswert?

ich finde deine Idee ganz toll, nur was willst du fliegen? Ich habe die 
YT Links jedoch nicht angesehen.
Für Flugsimulator hatte ich einen Saitek X52, der ist schon ganz 
ordentlich. Wäre die Frage, was willst du anders und besser machen?

Beitrag #7131046 wurde von einem Moderator gelöscht.
Beitrag #7131078 wurde von einem Moderator gelöscht.
von Heinz (Gast)


Lesenswert?

Marc schrieb:
> leider haben die meisten
> gesagt, das sei zu ambitioniert und man benötigt jahre lange Erfahrung

Ambitioniert ja, aber zu ambitioniert ist das ganz sicher nicht.
Wenn du es in mehrere Schritte zerlegst, sollte das auch alleine machbar 
sein.
Such dir einen Prozessor und die entsprechenden Sensoren, Aktoren und 
baue das ganze erst einmal prototypisch auf.

Das ist ein schönes Projekt, an dem du viel lernen wirst, wenn du dran 
bleibst und es durchziehst.

von Florian S. (vatterger)


Lesenswert?

Antifa Pepe schrieb im Beitrag #7131046:
> Florian S. schrieb:
>> Das wird dann auf dem LCD der Funke grafisch oder als
>> Text visualisiert. Die Idee war, dass man beim Ausfall der
>> FPV-Verbindung mit dem LCD zurückfliegen kann.
>
> Hab ich auch mal versucht. Mit gemodeter Flysky LCD telemetrieanzeige.
>
> Geht nicht. Wenn der easystar 2 km weit weg FPV verloren hat kommt
> leicht panik auf und dann den "heim kurs" im kopf zu berechnen und mit
> der 30 sek verzögerten GPS richtung auch noch zu steuern ist stress pur.
> Glücklicherweise war dank vollgas nach 2 min das FPV wieder da.
>
> Hab dann die erste GPS position als "home" angenommen und mit trigo den
> heimkurs berechnet und steuerung automatisiert. Problemlos. Ausser höhe,
> das hat nie funktioniert.

Jo genau, hatte das auch als Home-Anzeiger (Winkel und Distanz zum 
Startpunkt wird angezeigt) realisiert. Habe es zum Glück nie benutzen 
müssen, im Gegensatz zu deiner Lösung hätte ich das Flugzeug manuell 
gerade halten müssen, anhand eines künstlichen Horizonts.

Das GPS war allerdings sehr zuverlässig und schnell was die 
Richtungsbestimmung via Positions-Delta anging, also mehr als 2 Sekunden 
Verzögerung dürften das nicht gewesen sein.

von Remald (Gast)


Lesenswert?

Wo ist das Problem? Einfach Ardupilot und gut is

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.