InterCEpter
Quadrocopter-Plattform "InterCEpter"
Ein Quadrokopter ist ein Flugmodell, welches mit vier Motoren angetrieben wird. Es sind jedoch keine weiteren beweglichen Teile zur Steuerung vorhanden, wie sie beispielsweise von Flugzeugen (Höhenruder,…) bekannt sind. Die gesamte Positionsänderung erfolgt ausschließlich durch dynamische Steuerung der Drehzahlen der einzelnen Motoren.
Um dies zu realisieren ist eine entsprechende Sensorik nötig. Mit mehreren Beschleunigungssensoren und Gyrosensoren werden Dreh- und Kippbewegungen sowie Beschleunigungen erfasst, so dass eine stabile Lage in der Luft realisierbar ist und eine Bewegung durch gezielte Neigung stattfinden kann.
Aufbau
Unser Quadrokoptersystem ist hierbei aus mehreren Modulen aufgebaut, wobei jede Stufe einen abgegrenzten Aufgabenbereich erfüllen soll.
Die unterste Schicht wird von den Motoren und den dafür zuständigen Motorenreglern gebildet. Hier wird für jeder Regler eine Solldrehzahl vorgegeben, die der entsprechende Motor liefern soll. Die Berechnung der benötigen Drehzahlen erfolgt in der Flight-Control, wo auch die gesamte Lagesensorik angeschlossen ist. Durch eine Datenfussion der Sensorwerte wird auf die aktuelle Lage gefolgert und in Verbindung mit der angestrebten Wunschlage durch einem PID-Regler die neue Soll-Lage bestimmt. Hier folgt nun eine einfache Kräfteverteilung auf die einzelnen Motoren.
Für eine Lagebestimmung im 3-dimentionalen Raum ist die Navigation-Control zuständig. Hier sind beispielsweise ein GPS-Empfänger und ein 3D-Kompass integriert. Für eine Abstandsbestimmung zu Wänden und zum Boden stehen Sensoren mit Ultraschall und Infrarotlicht zur Verfügung. Herzstück ist der LM3S2965, ein Mikrocontroller von Texas Instruments, welcher einen ARM Cortex-M3 Kern besitzt und durch die zahlreichen Schnittstellen und die vorhandenen Speicherressourcen viel Spielraum für kreative Ideen bietet.
Komplexe Aufgaben, Vorgänge und Flugmissionen werden durch die Mission-Control verwaltet und gesteuert. Diese ist für einen automatisierten/autonomen Betrieb nötig und wird zur Zeit durch einen externen Rechner realisiert. Hier ist jedoch ein DIMM-PC-Modul vorgesehen, welches später direkt in dem Modell integriert werden soll.
Entwicklung
Je nach Verwendungszweck sind unterschiedliche Möglichkeiten der Entwicklung und Programmierung möglich.
- Programmierung der Flight-Control (in C) mit dem AVRStudio
- Verbesserung der Sensorikauswertung
- Verbesserung des Regelkreises
- Software-/Funktionserweiterung
- Programmierung der Navigation-Control
- Integration neuer Sensorik
- Positionsbestimmung und Mapping
- Erkennung von Hindernissen / Objekten
- Realisierung der kompletten Flight-Control mit FPGA