Zurück aus der Vergangenheit und mit Schub in die Zukunft!

April 26, 2013 in Allgemein

Die Copter stehen stets bereit

Die Copter stehen stets bereit

Seit den letzten zwei Monaten ist es etwas ruhig um projectDemon geworden. Der Grund dafür ist, dass wir alle voll und ganz mit dem Abitur beschäftigt waren und unsere Zeit vollkommen darauf konzentrieren mussten. Doch nun sind die schriftlichen Arbeiten geschrieben und wir können uns wieder unserem Projekt widmen, welches wir auch nach dem Abitur mit wöchentlichen Treffen am Freitag fortsetzen. Doch auch wenn es in den letzten zwei Monaten nicht viele Meldungen gab, so gibt es doch riesige Fortschritte, welche noch vor der Abiturphase geschafft wurden.

Unser typischer Arbeitsbereich!

Unser typischer Arbeitsbereich!

Die größten Fortschritte betreffen ein Teilprojekt von projectDemon über das wir eigentlich erst wieder berichten wollten, wenn es komplett funktionsfähig ist: ProCopterX, unsere eigene Flugsoftware. Hier gibt es seit dem Release sehr viele Neuerungen, doch die wichtigsten sind, dass nun der PID-Regler und ein einfacher Komplementär-Filter implementiert wurden, was das Herzstück der Regelung ist, damit der Copter sich gerade in der Luft halten kann und nicht wegkippt oder sich im die eigene Achse dreht. Bis zum Beginn der Abiturphase sind die Regler insofern bereits fertig, als das nach mehreren Testflügen der Copter bereits in der Luft fliegen und schweben konnte, wenn auch noch sehr wackelig und auch nur für circa einer Minute, bevor die Regelung dann doch versagt. Wichtig hierfür ist, dass man bei ProCopterX nun auch mit der Fernbedienung den Copter komplett steuern kann.

Die Funkverbindung funkt bereits!

Die Funkverbindung funkt bereits!

In jedem Fall wird die Entwicklung bei ProCopterX nun wieder aufgenommen und nachdem der Testcopter seine Ersatzteile erhalten hat, wird auch wieder getestet werden, besonders um die richtigen PID-Werte zu finden. Doch neben der eigentlichen Copter-Software von ProCopterX hat auch die Computeroberfläche, also ProCopterX_Control viele Neuerungen erfahren, sodass dieses nun weit aus stabiler läuft, Debug-Werte ausgeben kann und die PID-Werte direkt über die Oberfläche verändert werden können, ohne dass der Copter neu programmiert werden muss! Die gesamten Fortschritte haben sehr viele Tage harter Arbeit erfordert und wir hoffen, dass wir bald komplett auf unsere eigens programmierten Flugsteuerung umsteigen können, nicht zuletzt um unser eigentliches Hauptziel leichter erreichen zu können.

Unsere Planung zum autonomen Flug

Unsere Planung zum autonomen Flug

Denn dieses Hauptziel besteht noch immer darin, den Copter fast autonom fliegen zu lassen. Auch an dieser Stelle wird seit einiger Zeit gearbeitet, doch leider hat uns bisher kaputte Hardware einen Strich durch die Rechnung gemacht, zuletzt hatten die Funksender leichte Hardwareprobleme, welche wir jedoch beheben konnten und nach bereits funktionierender Funkverbindung auch unsere Daten sauber übertragen können. Dafür wurde innerhalb von mehreren Stunden an Arbeit eine Code zur Ansteuerung der NRF24L01-Sender/Empfänger geschrieben. Hier könnte der Fortschritt bei ProCopterX entscheidend sein, sodass die Funkverbindung über unsere Empfänger und Sender direkt über ProCopterX laufen kann.

So werden Abstände gemessen!

So werden Abstände gemessen!

Nebenbei musste der Greifarm leider aus mechanischen Gründen aufgegeben werden. Als Ersatz arbeiten für dafür derzeit an einem ebenfalls schon vor einiger Zeit erwähnten Ziel, welches für unseren autonomen Flug wichtig ist: Die Erkennung von Hindernissen. Für dieses Problem haben wir unser bisher auf Ultraschall festgelegt, da dieses nicht so leicht falsche Signale aufnehmen wird, wie zum Beispiel bei Licht, wo auch äußeres Licht die Sensoren anregen kann. Eine funktionierende Abstandsmessung haben wir ebenfalls bereits entwickelt und wird nun auf mehrere Ultraschallsensoren erweitert. Hier soll sich ein eigener Controller um die Erkennung von Hindernissen kümmern und dem Flugcontroller über den I2C-Bus mitteilen in welcher Richtung auf dem Copter das Hindernis liegt, damit dieser ausweichen kann. Auch hierfür wird ProCopterX wichtig sein, da diese Verfahren dort direkt implementiert werden können.

Im Anschluss noch ein Video von den ersten Tests mit ProCopterX 0.2 Beta, wo zum ersten mal der PID-Regler und der Komplementärfilter implementiert und getestet wurden (mittlerweile haben wir den Copter mit ProCopterX wesentlich mehr stabilisiert bekommen!):

Soweit,
das Demon-Team!

~ Christian

Alle Kraft den Motoren!

Mai 11, 2012 in Allgemein

Alles bereit zum Test!

Heute ist Freitag. Das ist weithin bekannt und nichts besonders, doch heute ist noch viel mehr! Denn Freitag ist Demon-Tag! Und so gab es auch heute wieder einiges zutun.

Unser traditionelles Mittagessen schnell verputzt, haben wir uns heute vorrangig mit unseren Brushless-Motoren beschäftigt und versucht diese zur Drehung zu bewegen. Brushless-Motoren haben den Vorteil, dass sie bei gleichem Leistungsbedarf mehr Leistung als Bürsten(Brush)-Motoren erreichen. Angetrieben werden sie, indem Magneten in dem Motor mit Drehstrom angetrieben werden. Der Drehstrom wird vom Regler, welcher vor den Motor geschaltet werden muss erzeugt, bei uns sind das die Turnigy Plush 12A (entgegen den zuvor erwähnten Turnigy Plush 10A, da diese nicht verfügbar waren).

Noch schnell alles nachmessen und los!

Nun haben wir heute einige Zeit darauf verwendet uns mit der Ansteuerung und den Eigenheiten der Regler vertraut zu machen und unseren Mikrocontroller so zu programmieren, dass er den Motor korrekt kalibriert, da der Regler das Maximum des PWM Signals und dessen Minimum kennen muss, um die Geschwindigkeit des Drehstroms entsprechend regeln zu können. Als dies geschafft war, war die Freude groß, denn der Testmotor drehte freudig seine Runden, welches wir euch hier im Video gerne zeigen wollen. Im Video wird der Motor immer wieder vom Mikrocontroller beschleunigt und leicht abgebremst, daher kommen die unregelmäßigen Geschwindigkeiten.

Als nächster Schritt ist vorgesehen die Motoren am Gestell anzubringen und ebenfalls die Rotorblätter an die Motoren zu montieren, sodass wir hoffen beim nächsten Treffen unseren Prototyp abheben lassen zu können. Für die Montage der Motoren sehen wir einfache Schraublöcher oberhalb des Gestells vor, welches wir dementsprechend heute auch schon präpariert haben. Ebenfalls ist zu erwähnen, dass wir unser Gestell deutlich leichter machen werden, indem wir von der Höhe aus gesehen die Hälfte des Gestells entfernen werden, sodass wir hoffen auf ein möglichst geringes Gewicht zu kommen.

Gut zu erkennen: Die Schrauben am Motor.

Für die Montage der Rotorblätter haben wir uns einfache Winkel überlegt, welche je bei einer Schraube an der Oberseite der Motoren befestigt werden und an deren ebene Oberfläche dann die Rotorblätter montiert werden.

Wie man bereits merkt, versuchen wir alles so einfach wie nur möglich zu gestalten, sodass alle Leser und Verfolger des Projekts jederzeit unsere Schritte und den gesamten Quadrocopter nachvollziehen können.

Hinweis: Das nächste Demon-Treffen findet erst wieder in zwei Wochen, also am 25. Mai 2012 statt, da wir über das verlängerte Christi Himmelfahrt Wochenende leider nicht alle anwesend sind. Bis dahin werden wir jedoch auch zu Hause fleißig weiter probieren und testen.

Alle Bilder vom Tag findet ihr wie immer in der Galerie: Motoren 1

Bis dahin,
Das Demon-Team!

~ Christian

Demon und das kleine italienische Städtchen Ivrea

April 2, 2012 in Allgemein

Bella italia! Nein, wir haben nicht zuviel Pizza gesessen oder italienische Filme geschaut. Stattdessen ist heute unsere Bestellung des Mikrocontrollers Atmega328p samt dem dazugehörigen Entwicklungsboard eingetroffen.

Bei dem Entwicklungsboard handelt sich um das Ardunio Uno (rev2). Das gesamte Arduino-Projekt wurde von Massimo Banzi und David Cuartielles aus Ivrea (benannt nach der früheren Grafen Arduin of Ivrea von Ivrea) auf Basis der Wiring-Projekts entwickelt, um Studenten und Menschen mit wenig Erfahrung im Bereich der Mikrocontroller einen leichteren Einstieg zu geben.

Unsere Entscheidung für das Arduinoboard war jedoch deshalb gefallen, weil man damit leichter einen Einstieg findet (, da bereits einige Mikrocontroller-Projekte realisiert wurden), sondern aufgrund des genialen Formfaktors des Boards. Denn dieser hat sich als eine Art Standard durchgesetzt, sodass einfach Peripherie auf die Pin-Header des Boards aufgesteckt werden kann, ohne den teuren Einzelteilen in der Prototypphase Schande zu bereiten, sodass sie nicht mehr zu gebrauchen sind.

Arduino Uno (rechts) im Vergleich zum Gegenkandidaten dem TI Launchpad (links)

Ebenfalls werden wir nicht die Arduino Softwareumgebung nutzen, welche auf einen C-Dialekt setzt, sondern wollen direkt im guten alten und bewährten Standard-C-GNU den avr-gcc Compiler benutzen, um den Mikrocontroller zu programmieren (welcher übrigens auch hinter dem Arduino-Dialekt arbeitet). Dies mag eine subjektive Entscheidung sein, ist jedoch nach unserer Meinung sehr viel sinnvoller, da so auch Speicherplatz gespart wird.

Das Deamon-Team

~ Christian

Let’s get ready to rumble! MSP430 vs. Atmega!

März 27, 2012 in Allgemein

Nach dem wir uns einige Zeit mit den Motoren und deren Rotorblätter beschäftigt haben, steht noch eine wesentlich wichtigere Diskussion im Raum. Sozusagen eine Diskussion um das Herzstück des Quadrocopters: Der Mikrocontroller.

Für die vielen Steueraufgaben ist es sehr wichtig, dass man einen angemessen schnellen (16 Mhz – 20Mhz) Mikrocontroller findet, welcher ebenfalls fix arbeiten kann. Genügend Speicherplatz und I/O-Pins sollte er ebenfalls besitzen.

In die nähere Auswahl sind dabei der MSP430 von Texas Instruments und der Atmega von Atmel gekommen. Beide Mikrocontroller haben ihre Vorzüge.

Der MSP430 eine Mikrocontrollerserie von Texas Instruments ist speziell für energieschonende Anwendungen entwickelt worden, sodass der Mikrocontroller ohne Probleme mit einer Batterie betrieben werden kann. In sich trägt der MSP430 eine 16-Bit RISC-CPU nach der von-Neumann-Architektur, ein wesentlicher Unterschied zum Atmega. Besonders begeistert kann man beim MSP430 vom klar und einfach aufgebautem Konzept sein. Um bestimmte besondere Peripherie zu aktivieren bedarf es bei einem MSP430 keine tausende von Einstellungen, ganz im Gegensatz zu manchen Kollegen, deren Registerbezeichnungen zusätzlich noch undurchsichtig sind. Leider ist es schwerer auf dem freien Markt an die verschiedensten Modelle des MSP430 zu kommen (besonders da solche mit größerem Speicher benötigt werden), als beim Konkurrent dem Atmega.

Der Atmega aus dem Haus von Atmel dagegen ist ein recht bekannter Mikrocontroller, zählt er sich doch zu den mit am meisten benutzten 8-Bit Mikrocontroller auf dem Hobbymarkt. Er zeichnet sich durch einen 8-Bit RISC-CPU aus und arbeitet nach der Harvard-Architektur. Ein großer Vorteil des Atmega ist, dass er in großen Speichergrößen angeboten wird sehr viel Unterstützung von allen Seiten findet (wie Developerboards, Erläuterungen, Beispiele). Ebenfalls ein großer Vorteil ist, dass der Atmega auch noch in seiten DIP-Ausgabe sehr viele I/O-Pins bietet und so genügend äußere Peripherie angeschlossen werden kann.

Bei unseren bisherigen Planungen ist die vorläufige Wahl auf den Atmega328p gefallen, da er genügend Pins und einen ausreichend großen Speicher bietet. Gegen den MSP430 mussten wir uns leider entscheiden, da es kaum möglich war, einen MSP430Gxxxx mit ausreichend viel Speicher zu finden.

Einen schönen Tag noch,
Das Demon-Team!

~Christian

Bisherige Zusammenfassung

März 26, 2012 in Allgemein

Wir haben uns im Vorfeld lange über verschiedene Faktoren des Prototyps unterhalten und haben auch Entscheidungen getroffen.

Als vorläufiges Gerüst haben wir uns dabei für ein Holzrahmen entschieden, welcher in Kreuzform aus zwei Hölzern mit einer Kerbe in der Mitte geleimt und verschraubt werden soll. Die Länge jedes Holzstücks soll circa 30cm betragen.

Über die vorläufige Wahl der Motoren haben wir uns ebenfalls lange die Köpfe zerbrochen, nun sind aber die Johnson 10750 in der Bestellung. Diese liefern uns im Leerlauf 25.212 U/min und unter Last satte 12.606 U/min. Dies sollte nach unseren Berechnungen (Dank an unseren Physik-Lehrer) für das geschätzte Gewicht und unter Normalbedingungen für den Auftrieb des Quadrocopters ausreichen.

Für die elektronische Steuerung fiel die Wahl der Mikrocontroller ebenfalls vorläufig auf den Atmel ATmega328p, da dieser genügend Platz für das Steuerprogramm bietet, zugleich aber dank der RISC-Architektur und 16Mhz die Berechnungen schnell erledigen kann. Ebenfalls bietet er mit seinen 23 I/O-Pins genügend Anschlüsse für die Motorsteuerung und für die Sensoren.

In Bezug auf die Motorsteuerung war natürlich klar, dass der Mikrocontroller die Motoren nicht direkt ansteuern kann, da dieser weitaus nicht den benötigten Strom und auch nicht die Spannung bietet, damit die Motoren auf volle Drehzahl gebracht werden können (eher würde der Controller sich zum Braten eines Steaks eignen). Daher wird eine klassische Motorsteuerung verwendet, die H-Brücke. Derzeit wird noch diskutiert, ob dafür eine Schaltung aus 16 MOSFET-Tranistoren gebaut werden soll, oder der IC L283D verwendet werden soll, welcher jeweils zwei H-Brücken in sich trägt.

Als Sensoren werden vorläufig zur Messung der Luft ein Temperatursensor und ein Luftdrucksensor verwendet werden, damit der Quadrocopter dem launischen Wetter entgegenwirken kann. Als zusätzlicher Stabilisator soll ein Gyroskop dienen, welcher die aktuelle Lage des Quadrocopter an den Mikrocontroller weiterleitet und dieser die Motoren entsprechend steuern kann.

Um das ganze Gerät auch mit der nötigen Spannung Spannung versorgen zu können, soll entweder ein 9V Akku-Pack eingesetzt werden oder 6x AA-Mignon 1,5V in Reihe. Selbstverständlich muss stetig für eine neue Stromzufuhr gesorgt werden, da alleine die Motoren 4,2A brauchen werden.

Zur Gestaltung ist derzeit geplant, dass das Gerüst eine Kreuzform bekommt. An jedem Ende wird mit Kabelbindern ein Motor befestigt. Die Stromkabel zur Mitte des Gestells, wo sich die elektronische Schaltung befindet, werden direkt am Balken, oberhalb oder unterhalb verlaufen. Die Stromversorgung wird sich ebenfalls in der Mitte der Konstruktion, jedoch auf der unteren Seite befinden. Dadurch können wird wenigstens eine ungefähre Symmetrie bieten.

Das sind bisher die Planungen zum Prototyp, bis dann,

Das Demon-Team!

~ Christian