Contents — find the section you need

ArduPilot ist keine reine Drohnen-Autopilot-App. Von Starrflüglern (Plane) und Multikoptern (Copter) über Bodenfahrzeuge (Rover) bis hin zu Unterwasserfahrzeugen/Booten (Hybridkonfigurationen) – es handelt sich um eine eingebettete Plattform, die Sensoren ausliest, den Zustand ermittelt, Aktorbefehle ausgibt und im Fehlerfall in einen sicheren Zustand wechselt. Vor dem Flug eines Fahrzeugs ist es unerlässlich, die Zusammenhänge zwischen Schätzung, Steuerung, Kommunikation, Energieversorgung und Bodenstation als einheitliches Sicherheitskonzept zu verstehen.

ArduPilot ist eine eingebettete Plattform, die von Starrflüglern (Plane), Multikoptern (Copter), Bodenfahrzeugen (Rover) und sogar Unterwasserfahrzeugen/Booten (Hybridkonfigurationen) genutzt werden kann.

Skydio X2D-Drohne zur FlugzeuginspektionBeispiel für ein autonomes Flugzeug

Bild: Skydio X2D inspiziert ein Flugzeug (Mauricio Campino, gemeinfrei), Wikimedia Commons. Kein ArduPilot-Fahrzeug; es veranschaulicht den Kontext der Onboard-Rechner und des autonomen Fluges.

Zusammenfassung in 30 Sekunden

  • ArduPilot fusioniert IMU-, GNSS-, Magnetometer-, Barometer- und Entfernungsmesserdaten mittels eines EKF, um Lage, Geschwindigkeit, Position und Bias zu schätzen.

Der Fokus des Copters liegt auf Schubverteilung und Lageregelung, der des Flugzeugs auf Aerodynamik und Energiemanagement und der des Rovers auf Rädern/Lenkung und Pfadverfolgung – sie verwenden unterschiedliche Parameter.

Ein innerer Winkelgeschwindigkeits-/Lageregelkreis läuft mit hoher Frequenz, während ein äußerer Positions-/Geschwindigkeits-/Missionsregelkreis die Zielvorgaben generiert. Überprüfen Sie die Vorzeichen und Einheiten der PID-Regler am realen Fahrzeug.

MAVLink ist das Nachrichtenprotokoll, das das Fahrzeug mit der Bodenstation, den Begleitrechnern und Peripheriegeräten verbindet. Kommunikationsverlust, Unterspannung, GNSS-Verlust und Geofence-Verletzungen werden durch Sicherheitsmechanismen abgefangen.

Die Tests erfolgen in Phasen: SITL (Simulation in Time Load), Log-Wiedergabe, Prüfstandtests ohne Propeller, Tests im Fesselbetrieb und Tiefflugtests. Selbst bei erfolgreicher Simulation stellen Vibrationen des realen Fahrzeugs, elektromagnetische Störungen und Spannungseinbrüche separate Probleme dar.

1. Architektur

Diagram 1 · Use the button to switch views
SensorsIMU / GNSSMag / BaroRange / Voltage EKF3Attitude/position est.Bias / qualityInnovation check Attitude/rate control Mixer / output MotorsServosVehicle motion MAVLink / GCS100–1000 Hz estimation and control

Abbildung 1 – Die Sensordaten werden mittels EKF fusioniert; der innere Lage-/Geschwindigkeitsregelkreis steuert einen Mischer, der die Motoren und Servos ansteuert. MAVLink bildet die Schnittstelle zur Bodenstation und zu externen Rechnern.

Der Hauptregelkreis des Fahrzeugs verarbeitet Sensordatenerfassung, Schätzung, Regelung, Ausgabe, Kommunikation und Protokollierung in einem festen Zyklus. Hochfrequente IMU-Daten dienen der Lagebestimmung, während GNSS, Magnetometer, Barometer und externe Sichtsysteme Korrekturen mit niedrigerer Frequenz liefern. Verschlechtert sich die Schätzqualität, verfolgt der Regler das Ziel nicht weiter, sondern leitet eine sichere Aktion ein – Halten, Rückkehr oder Landung.

2. Zustandschätzung mittels EKF

Ein Beispiel für einen Zustandsvektor ist die Position p, die Geschwindigkeit v, die Lage R und die Gyro-/Beschleunigungsmesserabweichung b_g,b_a. Die Vorhersage stammt von der IMU, die Aktualisierungen von externen Beobachtungen.

\dot p=v,\qquad \dot v=R(a_m-b_a-n_a)+g,
\dot R=R[\omega_m-b_g-n_g]_{\times}

Hierbei sind a_m,\omega_m die Messwerte, g die Schwerkraft und [\cdot]_{\times} die Kreuzproduktmatrix. Der EKF propagiert die Kovarianz P und verwirft einen Sensor vorübergehend, sobald dessen Messwertabweichung (Innovation) außerhalb des erwarteten Bereichs liegt – ein Mechanismus, um magnetische Störungen oder Mehrwegeempfang von GNSS nicht unkritisch zu akzeptieren.

Fahrzeugvibrationen fügen dem Beschleunigungsmesser hochfrequente Anteile hinzu und destabilisieren so sowohl die Schätzung als auch die Regelung. Rahmensteifigkeit, Propellerwuchtung, Dämpfer und Filterlatenz müssen sowohl mechanisch als auch softwareseitig optimiert werden. Die Überlagerung des Vibrationsspektrums aus dem Protokoll mit den Daten des erweiterten Kalman-Filters (EKF) zum gleichen Zeitpunkt erleichtert die Ursachenfindung.

3. Regelung in Copter, Flugzeug und Rover

Copter

Ein Multikopter erzeugt das Lageregelungsmoment aus dem Gesamtschub T und der Drehzahl jedes Motors. Ungefähr gilt:

T=k_f\sum_i\omega_i^2,\qquad \tau_z=k_m(\omega_1^2-\omega_2^2+\cdots)

wobei der Mischer die Roll-, Nick-, Gier- und Schubanforderungen auf die einzelnen Motoren verteilt. Außerhalb des Lageregelungs-Regelkreises befindet sich ein Geschwindigkeits-/Positionsregelkreis, der die Schubreserve bei Wind- und Nutzlaständerungen überwacht.

Flugzeug

Ein Starrflügelflugzeug fliegt mithilfe von Auftrieb und Widerstand der Tragflächen, Fluggeschwindigkeit, Anstellwinkel und Energiezustand. Es steuert die Flugrichtung über den Rollwinkel und passt Geschwindigkeit und Flughöhe über den Nickwinkel an, daher können die Multikopter-Gewinne nicht direkt wiederverwendet werden. Die automatische Landung erfordert spezielle Tests, die Wind, Landebahnbeschaffenheit und Sensorlatenz berücksichtigen.

Rover

Der Rover kombiniert Radgeschwindigkeit, Lenkwinkel, GNSS, Kompass, LiDAR und ähnliche Sensoren, um Wegpunkte und Geschwindigkeitsziele abzufliegen. Da Radschlupf und Steigungen die Koppelnavigation beeinträchtigen, sind Kovarianz und Relokalisierung analog zur Odometrie im Artikel robotics-dead-reckoning ausgelegt.

4. Missionen und MAVLink

Eine Mission ist eine Abfolge von Befehlen – Wegpunkte, Geschwindigkeit, Flughöhe, Kameraauslösung, Landung usw. MAVLink ist ein kleines Binärnachrichtenprotokoll, das Heartbeat (HEARTBEAT), Position, Lage, Parameter, Missionsdaten und Befehlsbestätigungen austauscht. SITL und die Bodenstation kommunizieren über UDP. Auf realer Hardware müssen Latenz, Bandbreite, Verschlüsselung und Authentifizierung der Funkverbindung evaluiert werden.

Bei der Automatisierung einer Mission darf der nächste Befehl erst nach Erhalt einer Bestätigung ausgeführt werden. Definieren Sie ACK, Timeout, Wiederholung, Abbruch und die Position nach einem Neustart. Die Kommunikation darf niemals der einzige Fehlerpunkt für die Steuerung sein – die Konstruktion muss so ausgelegt sein, dass das Fluggerät auch bei Ausfall der Bodenstation sicher zurückkehren und landen kann.

5. Ausfallsicherungen und Sicherheitstests

Erkennen Sie Unterspannung, RC-Verbindungsverlust, verminderte GNSS-Qualität, EKF-Fehler, Geofence-Verletzungen und Motorausfälle und wechseln Sie zu einem dem Fluggerättyp entsprechenden Verhalten. Die „Rückkehr zum Startpunkt“-Funktion des Copters ist nicht immer die sicherste Wahl – bei starkem Wind, in der Nähe von Hindernissen oder bei einer unbestätigten Ausgangsposition kann eine Landung oder ein Warteflug sinnvoller sein. Sobald Schwellenwerte festgelegt sind, testen Sie deren Überschreitung in einer risikoarmen Umgebung.

Die Tests sollten in folgenden Schritten durchgeführt werden: SITL → Hardware-in-the-Loop → Propeller entfernt → angebunden → niedrige Flughöhe → Betriebshöhe. Führen Sie protokollierte Fehlereinspeisungstests durch – abruptes Abschalten der Stromversorgung, Abschirmen der GNSS-Antenne, Unterbrechung der Kommunikation, Entfernen eines einzelnen Sensors. Fluggenehmigung, lokales Luftfahrtrecht, Datenschutzbestimmungen und Funkvorschriften sind ebenso Bestandteil der technischen Anforderungen wie alle anderen Aspekte.

6. Empfohlene Reihenfolge für die Parameteroptimierung

  1. Sensorausrichtung, Kalibrierung, Timing und Versorgungsspannung überprüfen.

  2. Bei fixiertem Fahrzeug Gyro-/Beschleunigungsmesser-/Kompass-Bias und Vibrationen messen.

  3. Den inneren Lageregelungsregelkreis mit kleinen Verstärkungswerten optimieren und auf Sättigung und Oszillationen achten.

  4. Die Geschwindigkeits-/Positions-/Höhenregelungsregeln hinzufügen und die Nachführung unter verschiedenen Wind- und Nutzlastbedingungen bewerten.

  5. Führen Sie einen vollständigen End-to-End-Test der Missionen, Sicherheitsmechanismen, Neustarts und Protokollierung durch.

Das Kopieren von Verstärkungswerten von einem anderen Fahrzeug führt nicht zu Stabilität, wenn sich die Propeller, das Trägheitsmoment, die Schubreserve oder die Abtastperiode unterscheiden. Überlagern Sie Zielwert, Messwert, Ausgangssättigung und Innovation im Protokoll, um die Schleife zu identifizieren, die die Verzögerung verursacht.

7. Aktuelle Anwendung und Forschung

ArduPilot wird in verschiedenen Bereichen mit vielen Fahrzeugtypen eingesetzt – von der landwirtschaftlichen Spritzung über Vermessung und Katastrophenbewertung bis hin zu Forschungs-VTOLs und autonomen Booten. Einige Konfigurationen senden Zielwerte von einem Begleitrechner über MAVLink und speisen ROS 2- oder Computer-Vision-Schätzungen als zusätzliche Beobachtungen ein. Die Forschung schreitet in den Bereichen visuelle Navigation, Multisensor-Fehlerdiagnose, lernbasierte Windschätzung und Mehrfahrzeugkoordination voran – es ist jedoch weiterhin ratsam, dass die endgültige Ausgabe die bestehenden Grenzwerte und Sicherheitsmechanismen durchläuft.

Zusammenfassung

ArduPilot vereint Sensorfusion, hierarchische Steuerung, Missionsausführung, Kommunikation und Ausfallsicherungen in einem einzigen eingebetteten System. Bevor Sie Code schreiben, der das Fahrzeug steuert, legen Sie den geschätzten Zustand und die Koordinatenrahmen, die Steuerungsperiode, die Ausgabegrenzen und die Übergänge im Fehlerfall fest. Nutzen Sie SITL und Protokolle und führen Sie sorgfältige Sicherheitstests am realen Fahrzeug durch. Mit Open-Source-Software können Sie ein Projekt von der Forschung bis zum realen Betrieb begleiten.

Überprüfen Sie Ihr Verständnis
Reicht die Eingabe einer Route für einen autonomen Flug aus?

Fahrzeugkonfiguration, Schätzung, Steuerung und Ausfallsicherungen müssen reibungslos zusammenarbeiten. Die Routenplanung sollte von den Bedingungen für die Befehlsausführung getrennt werden.

Referenzen

What to read next

Review the backgroundEinführung in hydraulische Systeme – Vom Pascalschen Prinzip zur Kraftregelung in RoboternContinue the seriesEinführung in die Schwarmsteuerung (Mehrere Roboter) – Aufbau von Schwarmverhalten, Formationen und KonsensExplore another aspect of this fieldWarum ICP fehlschlägt: Initialisierung, Ausreißer und symmetrische Geometrie