Platine - Entwurf

Noch in Bearbeitung!

 

Damit man in Deutschland einen Quadrocopter autonom (also durch einen Autopiloten) fliegen lassen darf, muss dessen Steuerung über zwei eigenständige Systeme verfügen, welche im Notfall umgeschaltet werden können.

Auf der Suche nach dem passenden Steuersystem bin ich während meiner Ingenieurpraxis auf drei Ansätze gestoßen, welche im folgenden Dargestellt werden. Im Anschluss daran wird die fertige Eigenbau-Platine, der DaedalusPilot, näher dargestellt und dokumentiert.

 

Lösungsansätze für das Steuersystem

Ansatz 1: Erweiterung des bestehenden Systems

Das bisher verwendete System besteht aus einem dem Ardunio Pro Mini Pinkompatiblen Alternativprodukt, dem Flyduino Pro Mini. Dieser ist über eine Adapterplatine am Quadrocopter befestigt, auf deren anderer Seite die verschiedenen Anschlüsse des RC-Moduls, der Motorentreiber und der IMU angelötet sind.

Da für den Autopiloten ein GPS-Modul erforderlich ist, was aber einen weiteren Seriellen Anschluss voraussetzt, welcher dem Flyduino Pro Mini fehlt, hätte als Zweitsystem ein ebenfalls bereits vorhandener Arduino Mega zum Einsatz kommen sollen. Auf einem Shield für diesen hätte ein Sockel für den Pro Mini Platz gefunden, ebenso wie alle für den Quadrocopter benötigten Anschlüsse und eine Buchse für das GPS-Modul sowie ein Multiplexer um die Signale an die Motoren von den beiden Mikrocontrollern umschalten zu können.

Durch diesen "Sandwichaufbau" wäre das komplette Steuersystem schwer und vor allem sehr groß gewesen. Ausserdem hätte eine große Belastung auf den Sockelleisten geherrscht.

Aus diesen Gründen und auch aus dem Wunsch heraus, von der "Bastellösung" weg und hin zu einer professionelleren Lösung zu kommen, habe ich mich gegen die erste Variante entschieden.

Ansatz 2: Verwendung eines kommerziellen Produkts

Als zweiten Ansatz habe ich ein bereits fertig aufgebautes, kommerzielles Produkt gewählt, den ArduPilotMega in der Version 1.4, welcher über zwei Mikrocontroller verfügt sowie einem Multiplexer.

Der Vorteil dieser Platine besteht darin, dass hinter dem Projekt von ArduPilot eine große Community steht und diese Platine ausgiebig getestet wurde. Sollten dennoch Probleme auftreten, können diese leicht mit Hilfe der Community gelöst werden. Außerdem ist sie bereits fertig aufgebaut, womit die Installierung dieser sehr einfach und schnell erledigt ist. Zu guter letzt ist die für den ArduPilot vorgesehene Software direkt auf die Hardware zugeschnitten, was einen reibungslosen Einsatz garantieren Dürfte.

Der Nachteil an dieser Platine ist zunächst der hohe Preis. Zwar ist sie bei Daedalus bereits vorrätig und somit würde keine Anschaffungskosten für sie entstehen, jedoch wird für einen Einsatz auf einem Quadrocopter ein Shield benötigt, welches durchaus zu Buche schlägt. Auch ist die Software zwar mit vielen Funktionen ausgestattet, jedoch ist sie genauso wie die Hardware vollkommen inkompatibel zu Multiwii, welches bisher bei Daedalus zum Einsatz kam und auch weiterhin zum Einsatz kommen soll. Der größte Nachteil besteht jedoch darin, dass der zweite, kleinere, Mikrocontroller nicht frei programmierbar ist, wodurch dessen Verwendung als Notfallsystem nicht in Frage kommen kann.

Durch all dies ist es sinnlos, diese Platine, trotz ihrer Möglichkeiten, bei Daedalus einzusetzen.

Ansatz 3: Eigenentwicklung einer Steuerplatine

Da der erste Ansatz im Prinzip alles das bot, was sich Daedalus gewünscht hat, habe ich im dritten und letzten Ansatz versucht, eine Platine komplett selbst nach allen Vorgaben zu designen.

Ich habe dabei einen Atmega2560 für das Hauptsystem vorgesehen, da dieser über die nötige Anzahl (mehr als zwei) an Seriellen Schnittstellen verfügt. Als Notfallsystem kommt ein Atmega328 zum Einsatz, da dieser bereits auf dem Arduino Pro Mini (also auf dem bisherigen System) verbaut ist und es somit sichergestellt ist, dass dieser mit Multiwii zusammenarbeiten kann. Ebenfalls verbaut wurde ein Multiplexer zur direkten Umschaltung der beiden eigenständig laufenden Systeme.

Für die Erweiterbarkeit wurden alle Pins, die noch nicht belegt wurden, nach aussen geführt, ebenso wie ein Anschluss für 3.3V und SDA/SCL für 3.3V, damit weitere Sensoren angeschlossen werden können.

Diese Platinen fertigen zu lassen, kostet normalerweise einiges. Durch viel Glück und etwas Handelsgeschick konnte ich jedoch ein Sponsoring erreichen, wodurch wir die Platinen kostenlos zur Verfügung gestellt bekommen können.

Ergebnis

Letztendlich habe ich mich für den dritten Ansatz entschieden, da dieser das beste Ergebnis verspricht und durch das Sponsoring auch ziemlich kostengünstig ist.