Projektplan/Präsentationen

Projektplan

 

Team Sturzflug

 

Projektpraktikum Informationsverarbeitung

 

Tim Fischer, Andreas Geltinger, Florian Lehle, Quirin Körner, Alfred Deixler, Florian Denk

 

30. April 2013

 

 

 

 

 

__________________________________________________________________________________

 

Motivation

 

Das Projektpraktikum Informationsverarbeitung befasst sich mit der Entwicklung eines autonom fliegenden Zeppelins. Dabei soll im Team, bestehend aus sechs Studierenden der Elektro- und Informationstechnik, und zum Teil in Kooperation mit den anderen Teams, ein Antriebskonzept und eine Steuerung erarbeitet werden.

 

Das Praktikum bietet eine willkommene Abwechslung zu den sehr theoretisch gehaltenen Vorlesungen, wobei wir durch selbständiges Arbeiten unsere Fertigkeiten in der Programmierung, Regelung und dem Bau von elektronischen Systemen verbessern wollen. Auch in der Projektplanung und Teamarbeit erhoffen wir uns wertvolle Erfahrungen.

 

__________________________________________________________________________________

 

1  Beschreibung des Projekts

 

Zielsetzung

 

In dem 3-monatigen Projektpraktikum soll ein Luftschiff entwickelt werden, dass autonom einen vordefinierten Parcours abfliegt und an einer markierten Stelle ein Rettungspaket abwirft. Dabei darf während dem Flug nicht in das System eingegriffen werden. Zudem sind folgende Rahmenbedingungen zu erfüllen:

 

  • Die Gondel des Luftschiffs darf nicht über 100 Gramm wiegen
  • Sowohl die Gondel, als auch der Heliumballon dürfen Hindernisse im Raum nicht berühren
  • Der Zeppelin darf weder den Boden berühren noch eine Flughöhe von 2 Metern überschreiten
  • Es darf eine eigene Heliumhülle gebaut werden, diese darf aber das Volumen des Referenzballons nicht überschreiten.

 

Bei der Entwicklung ist ebenfalls auf Umwelteinflüsse, wie Luftzug, IR-Störung, Helligkeits- und Temperaturänderungen zu achten. Zusätzlich ist eine gewisse Toleranz in der Tragkraft des Zeppelinballons zu berücksichtigen.

 

Ansatz

Das Gesamtkonzept sieht vor, die Wegführung am PC (off-board) zu berechnen. Die theoretischen Beschleunigungsdaten werden per Funk an den Zeppelin übermittelt und dort durch den Arduino in die tatsächliche Motordrehzahl umgewandelt.

 

Daher wird die Entwicklung in zwei Hauptaufgaben unterteilt:

 

  • Entwicklung der Gondel inklusive Hardware, Höhensteuerung, Abwurfmechanismus, Drehzahlberechnung, Funkübertragung vom PC zum Arduino und relativen Lageberechnung (im Diagramm gelb hinterlegt)
  • Entwicklung der Wegsteuerung anhand einer gegebenen Karte, den Zeppelinkoordinaten und der relativen Lage. Hierbei ist auf eine Kursabweichung durch eventuelle Umwelteinflüsse zu achten.

 

Hardware

 

Aufbau der Tragekonstruktion

 

Die Tragekonstruktion dient der exakten Befestigung aller Komponenten, besonders bei den Motoren ist auf eine exakt gleiche Ausrichtung zu achten, die jederzeit, problemlos reproduzierbar sein muss.

 

Nach Möglichkeit werden Leichtbau Materialien wie Karbon und Styropor genutzt, um das Gewicht gering zu halten. Es werden 2 Konzepte zur Anordnung der Motoren entwickelt und getestet:

 

  • Lage der Motoren direkt an der Gondel

 

  • Lage der Motoren auf halber Höhe am Heliumballon. Davon wird sich ein besseres Flugverhalten erhofft (Trägheit des Heliumballons)

 

Die Sensoren und der Arduino Mikrokontroller werden anfangs noch nicht fest fixiert, um leicht Änderung vornehmen zu können. Anfangs werden möglichst alle Kabelverbindungen gesteckt, später können diese zur Gewichtsreduktion angelötet werden.

 

Motoren

 

Auf die Wahl der Motoren wird besonders Wert gelegt. Sie sollen fein steuerbar sein und reproduzierbare Werte liefern können. Um die Ansteuerung zu erleichtern werden alle Motoren gleicher Bauart sein. Der Propeller wird vorerst einen Durchmesser von ca. 80mm haben und für den Langsam-Flug geformt sein.

 

Sensoren

 

Das Indoor-Position-System (IPS) ist bereits entwickelt und liefert brauchbare Werte. Zur Positionsbestimmung muss der Zeppelin zeitgleich ein Infrarot und Ultraschallsignal senden. Dieses Sendemodul muss entwickelt werden (Grundaufbau ist bereits vorhanden), dabei ist ein guter Kompromiss zwischen Gewicht und Senderabdeckung zu ermitteln. Der Signalabstand beträgt 200ms.

 

Zur Lagebestimmung des Zeppelins wird ein Kompass auf dem Zeppelin integriert (IMU vorhanden). Dabei wird der Winkel zwischen der Lage der Zeppelin Längsachse und Norden entwickelt. Hier ist ein entsprechender Filter zur Werteglättung auf dem Arduino zu implementieren.

 

Funkübertragung

 

Um Daten zwischen dem Zeppelin und dem PC auszutauschen, wird eine Funkverbindung entwickelt, die auf dem nRF24 Funkmodul basiert. Die Datenübertragung ist paketbasiert. Folgende Daten müssen sicher (Fehlerkorrektur!) und stabil übermittelt werden.

 

  • Schubdaten vom PC an den Zeppelin

 

  • Höhenkoordinate vom PC an Zeppelin

 

  • Abwurfsignal vom PC an den Zeppelin

 

  • Lagewinkel vom Zeppelin an den PC

 

  • Unbekannter Fehler vom Zeppelin an den PC

 

Abwurfmechanismus

 

Es wird ein Abwurfmechanismus entwickelt, der entweder durch einen servo-gesteuerten Haken oder durch das Verglühen eines Drahtes das Rettungspaket abwirft. Dabei ist zu testen, ob die Gewichtsreduktion sich auf das Flugverhalten (Lage, Trägheit) auswirkt.

 

Bodenstationen

 

Das IPS hat derzeit nur drei funktionierende Bodenstationen. Um ein besseres Signal zu erhalten, wird in Zusammenarbeit mit dem Team „Blowfish“ die Hardware der Bodenstationen optimiert (höhere Signalverstärkung, optimiertes Platinen Layout). Hier wird uns Alex mit seinem Knowhow über analoge Signalverarbeitung unterstützen. Es werden mindestens 3 neue Bodenstation gebaut, sodass sechs Bodenstationen zur Positionsbestimmung zur Verfügung stehen. In ersten Tests hat sich herausgestellt, dass die Bodenstationen eine schräge Ausrichtung haben sollten; daher brauchen diese noch einen Sockel.

 

Softwareansatz

 

Die Software arbeitet auf Basis der IPS-Daten, dem on-board Kompass und einer Karte der Flugstrecke.

 

In der Karte werden Hindernisse und Wegpunkte per Grafikinterface festgelegt. Daraufhin wird die Karte in einem weiteren Programmbaustein aufbereitet und mit entsprechenden Sicherheitszonen definiert.

 

Die eigentliche Wegfindung, basiert auf den Hindernis-, IPS- und Kompass-Daten und wird nach Möglichkeit live während des Fluges ausgeführt, um evtl. Kursabweichungen (durch Fehlsteuerungen oder Umwelteinflüsse) des Zeppelins berücksichtigen zu können. Hierbei entwickeln wir geometrische Algorithmen, die im Idealfall einen abrupten Kurswechsel vermeiden sollen.

 

Ist der Weg berechnet, wird der gewünschte Schub der Motoren rechts und links berechnet und an den Zeppelin weitergegeben. Der Schub wird entsprechend der Kurvenradien berechnet, ist dabei eine rein geometrische Auswertung und basiert nicht auf dem tatsächlichen Motorverhalten des Zeppelins. Erst auf dem Arduino wird der theoretische Schub in Signale für die physikalische Motorsteuerung umgewandelt. Die Umwandlungstabelle wird anhand einiger Testreihen ermittelt.

 

Die Höhensteuerung ist komplett on-board; das Signal mit der Höhe wird von der Bodenstation an den Zeppelin weitergeleitet. Der Arduino wertet diese Höhendaten aus und steuert selbstständig die Höhenregelung.

 

Eine Simulation des Zeppelins soll helfen, Fehler in der Software zu finden und die Wegfindung zu optimieren. Die Simulation soll den Flug des Zeppelins unter Idealbedingungen nachstellen, aber die Möglichkeit bieten, Kursabweichungen manuell auszulösen.

 

IPS Software:

 

Derzeit gibt das IPS alle errechneten Positionsdaten ungefiltert aus. Um ein stabileres Positions-Ergebnis zu erhalten, werden wir zusammen mit dem Tutor Alex und dem Team „Blowfish“ ein Filter entwickeln. Der Filter soll so konzipiert sein, dass alle Filter-Parameter leicht angepasst werden können und der Programmbaustein auch für andere Projekte bei Daedalus genutzt werden kann.

 

Diese Kooperation soll auch bei der Entwicklung eines Benutzerinterfaces (GUI) für die Kartendaten fortgesetzt werden. In die Kartenapplikation können auf einer grafischen Oberfläche alle Raumparameter (Hindernisse, Wände, Wegpunkte, Abwurfzonen) eingetragen werden. Die aktuelle Position des Zeppelins soll ebenfalls angezeigt werden.

 

Sowohl bei der Karten GUI, wie auch bei der IPS-Filterung wird darauf geachtet, dass die Komponenten später auch für weiter Projekte bei Daedalus angepasst werden können. Auf eine intuitive und anwenderfreundliche Bedienung ist zu achten.

 

 

 

2 Erfolgskriterien

 

Folgende Erfolgskriterien sind wesentlich zur Erfüllung der Zielsetzung:

 

Hardware inkl. Arduino Programmierung

 

-          Aufbau einer funktionsfähigen Gondel unter Einhaltung der Gewichtsbeschränkung

 

-          Stabile und reproduzierbare Sensordaten des IMU

 

-          Koordinaten des IPS im Toleranzbereich von 20 cm

 

-          Stabile Höhenregelung

 

-          Geradeausflug mit Abweichung innerhalb des Toleranzbereichs

 

-          Stabile und fehlerfreie Kommunikation PC-Luftschiff

 

-          Fehlerfrei Umsetzung der Schubdaten inkl. Schub-Motordrehzahl-Umrechnungstabelle

 

-          Erfolgreiches Anfliegen von bestimmten, vorgegeben Koordinaten

 

-          Verlässlicher Abwurfmechanismus

 

Off-board Software:

 

-          Geometrische Theorie zur Wegfindung

 

-          Stabile IPS Daten (Filterung)

 

-          Erfolgreiche Werteübergabe an den Schnittstellen

 

-          Umsetzung der Theorie in C/C++/Matlab

 

-          Fehlerfreie Wegfindung

 

-          Umsetzung des Weges in Schubdaten

 

-          GUI zur Karteneingabe

 

-          Karte mit Hindernissen und Sicherheitszonen

 

-          Simulationsmodell des Zeppelins

 

-          Abwurfsignal an der richtigen Position

 

 

3 Projektstruktur

 

Arbeitspaket Luftschiff

Da wir uns erst mit den Hardwarekomponenten vertraut machen müssen, arbeiten vier Teammitglieder in den ersten Wochen an der Gondel, Sensorik, Antriebskonzept und der on-board Programmierung. Dies soll eine frühe Fertigstellung der on-board Komponenten sicherstellen.

Die Arbeitsschritte definieren sich an dem Hardwareansatz:

 

-          Bau einer funktionstüchtigen Gondel

  • Materialbestellung
  • Optimale Anordnung der Komponenten
  • Exakte Motorausrichtung

 

-          Bodenstationen

  • Materialinventur (25.4)
  • Optimierung der Platinen Layouts
  • Drei weiter Bodenstationen bauen (Fräsen, Löten Testen)

 

-          Sender

  • Einarbeitung in Aufbau
  • Gewichtsoptimiertes Konzept
  • Montieren
  • Testen

 

-          Sensoren

  • Kompass (IMU) Werte auslesen
  • Montieren
  • Wertefilter (inkl. Lageausgleich)
  • Testen auf Umwelteinflüsse

 

-          Softwareimplementierung (Arduino)

  • Kommunikation der Sensoren
  • Aufbereiten der Funkdaten (Pakete)
  • Kommunikation mit dem Funkmodul

 

-          Motorsteuerung 

  • Schub/Motordrehzahl Umrechnungstabelle ermitteln
  • Feine Motorsteuerung anschließen und implementieren
  • Position/Höhe halten
  • Geradeaus Beschleunigen
  • Abbremsen

 

-          Stabile Funkverbindung 

  • 2 Funkmodule testen, einbauen
  • Test der Reichweite und Fehleranfälligkeit
  • Übertragungsprotokoll für relevante Daten

 

-          Abwurfmechanismus

  • Position der Vorrichtung an der Gondel für problemlosen Abwurf
  • Software für den richtigen Abwurfpunkt implementieren
  • Abwurftests mechanisch und mit Software 

 

-          Dokumentation

 

Arbeitspaket Wegfindung

 

An der Software der Wegfindung arbeiten zwei Teammitglieder. Je nach Arbeitsaufwand werden weiter Teammitglieder mit einbezogen. Die Arbeitsschritte orientieren sich an den Softwareansatz:

 

-          Grundfähigkeiten der Programmierung erlernen

  • Validieren, ob Matlab unsere Voraussetzungen erfüllt

 

-          Geometrische Theorie zur Wegfindung

  • Konzeptionelle Überlegungen
  • Umwandlung in Algorithmen
  • Programmierung

 

-          Test des IPS

  • Reichweite
  • Fehler Anfälligkeit

 

-          Filter für IPS-Daten

  • Konzeptabsprache mit Alex/Team“Blowfish“
  • Programmierung

 

-          Schnittstellenprogrammierung

 

-          Abweichungskorrektur

  • Konzeptionelle Überlegung
  • Umwandlung in Algorithmus
  • Definieren der idealen Toleranzwertes

 

-          Umsetzung des Weges in Schubdaten

  • Konzeptionelle Überlegungen
  • Umrechnungsalgorithmus

 

-          GUI zur Karteneingabe und Wegdarstellung

 

-          Programm zum Aufbereiten der Kartendaten

  • Sicherheitszonen
  • Nächste Nachbarn

 

-          Simulation

  • Nachbildung des idealen Zeppelins
  • Implementierung einer manuellen Fehlererzeugung

 

-          Abwurfsignal

  • Koordinatenprüfung und Signalgabe

 

-          Dokumentation

 

4 Resourcenplan

 

Motoren: 

 

Sind zum Teil vorhanden, allerdings wird sich demnächst noch zeigen ob diese stark genug sind.

 

Motortreiber:

 

Sind vorhanden, müssen aber vielleicht mit den anderen Teams geteilt werden.

 

Propeller:

 

Müssen bestellt werden, verursachen aber keine größeren Kosten. (Durchmesser 4inch, Steigung muss getestet werden)

 

Servo:

 

Sind in ausreichender Stückzahl vorhanden.

 

Akku:

 

Muss bestellt werden (LiPo, 7,4V , 360mAh).

 

Elektrischer Kompass:

 

Wird wie das Arduino gestellt.

 

Funkkomponenten:

 

Die Funkkomponenten sind vorhanden und sollen von allen Teams gleichermaßen genutzt werden.

 

Gewicht

 

 

Arduino Pro Mini

2g

Motoren

3 * 3,2g (klein)

3 * 11g (groß)

Motortreiber

2 * 3g

Propeller

3 * 1g

Servo

4,6g

Akku

20g (240mAh)

22g (360mAh)

Elektrischer Kompass

2,3g

XBee / nRF24

10g

Gesamt

61,9g

102,9

 

Für die Gewichtsabschätzung müssen alle weiteren Teile wie Styropor, Carbon, Kabel und auch Lötzinn oder Kleber mitbedacht werden.

 

5 Aktivitäten- / Zeitplan

 

 

 

6 Kostenplanung

 

 

Einzelpreise (worst-case)

Mit verfügbaren Teilen (best-case)

Motoren

3*9,95€

verfügbar

Motortreiber

2*8,95€

verfügbar

Propeller

ca. 10€

ca. 10€

Servo

3,98€

verfügbar

Akku

8,01€

8,01€

Elektrischer Kompass

wird gestellt

wird gestellt

Gesamt

69,76€

18,01€

Funkkomponenten

Verfügbar / allgemeines Gut

Styropor / Carbon - Teile

Restliches Budget

 

7 Risikoanalyse

 

Da wir alle sowohl auf dem Gebiet der Programmierung als auch bei elektrischen Bauteilen Anfänger sind, ist es für uns sehr schwierig, den Zeitaufwand einzuschätzen. Daher werden wir wöchentlich eine schriftliche Zeitanalyse unserer Meilensteine anfertigen.

 

Zusätzlich gibt es folgende Risiken:

 

-          Schubdaten lassen sich nicht genau genug auf den realen Zeppelin übertragen

 

-          Unvorhergesehene Reflexionen des Ultraschallsignals

 

-          Komplikationen bei der Programmierung

 

-          Reichweitenlimitierung des IPS

 

-          Schnittstellenprobleme zwischen eigener Software und IPS

 

-          Wegberechnung lässt sich nicht in real time berechnen

 

-          Trägheit des Luftballons stört die Steuerung

 

-          Umwelteinflüssen wie Luftzug und IR-Störungen

 

-          Simulink erzeugt keinen verwertbaren C-Code

 

8 Änderungen des Projektablaufes

 

Wird wöchentlich in Form eines separaten Protokolls angefertigt.

 

 

Zwischenpräsentation

 

In Kürze:


Software: Es muss mehr getestet werden um die Regelung genauer einzustellen und Umwelteinflüssen vorzubeugen.

Hardware: Das Motorkonzept mit 2 am Ballon angebrachten Motoren zur seitlichen Steuerung war erfolgreich. Allerdings gestaltete sich der Gondelaufbau schwieriger als zunächst angenommen, zumal die Gondelkonstruktion mit einer Verdrahtung mit Lackdraht sehr Kurzschluss anfällig war. Das Gewicht wurde zum Problem. Im weiteren Verlauf muss auf die Anzahl freier Pins des Arduino geachtet werden.

Zeitplan: Der Bau einer funktionstüchtigen Gondel verzögerte sich massiv, war aber zum Zeitpunkt der Zwischenpräsentation abgeschlossen. Die Implementierung der kompletten Software auf dem Zeppelin dauerte weniger lange als angenommen. Die Einstellung der Regelung musste noch in den folgenden Wochen erfolgen.

 

Abschlusspräsentation

In Kürze:

Software: Die Fülle an Tests war nicht ausreichend. Softwarefehler wurden erst spät erkannt. Zudem gestaltete sich die Wegfindung in der Realität schwieriger als in einer idealen Simulation. Als Erfolg konnte allerdings die gelungene Programmierung der zentralen Software verbucht werden, welche die Wegfindung im idealen, simulierten Fall eindrucksvoll präsentieren kann.

Hardware: Die Gondel wurde mit einem neuen Design aufgebaut um Kurzschlüssen durch zu enge Kabelführung vorzubeugen. Zur einfacheren Handhabung wurden Steckverbindungen verwendet. Das Problem Gewicht wurde durch einen kleineren Akku behoben, der durch einen DC/DC auch die geforderten Spannungen liefern konnte. 

Zeitplan: Bis zur Abschlusspräsentation konnten alle Punkte der Arbeitspakete Hardware bzw. Software abgearbeitet werden. Nur die Regelung bereitet bis zum Schluss Probleme und müsste noch nachjustiert werden. Außerdem konnte kein Notfallplan mehr implementiert werden.

 

Anhänge:
Diese Datei herunterladen (Abschlusspräsentation.pdf)Abschlusspräsentation[ ]%2013-%07-%15 %1:%Jul%+02:00
Diese Datei herunterladen (Projektplan-Präsentation.pdf)Projektplan-Präsentation[ ]%2013-%07-%16 %1:%Jul%+02:00
Diese Datei herunterladen (Projektplan.pdf)Projektplan[ ]%2013-%07-%16 %1:%Jul%+02:00
Diese Datei herunterladen (Zwischenpräsentation.pdf)Zwischenpräsentation[ ]%2013-%07-%15 %1:%Jul%+02:00