Elektronik – Beschreibung Bauteile

Beschreibung der Bauteile des Quadrocopters:

Die Preise und Artikelbezeichnungen der verwendeten Teile sind hier zu finden.

Den Hauptbestandteil der Verbindung zwischen Hard- und Software stellt die von uns konstruierte Platine mit dem Mikrocontroller ESP8266 (siehe Abbildung weiter unten) dar. Sie hat Ein- und Ausgänge, sowie eine Programmierschnittstelle.

Schaltplan
Aufbau der Schaltkreise

Unsere Leiterplatte haben wir mithilfe der freien Software Fritzing entworfen. Fritzing soll den Nutzern helfen, elektrische Schaltungen und Leiterplatten einfach entwerfen zu können.

Fritzing-screenshotBildquelle Wikipedia

Nachdem wir unsere Leiterplatte erstellt haben ließen wir sie bei Eurocircuits  fertigen.

Auf der Platte befindet sich ein Wifi-Modul und man kann die Schaltkreise in Powermanagement (IC), Motorcontroller und dem Hauptteil logic einteilen. Der Powermanagement IC ist dafür zuständig, die Motorspannung von 5V zur Versorgungsspannung von 3,3V und andersherum zu regeln (Anpassung der Pegel, Levelshifter). Es befinden sich 2 Lagen Leiterbahnen auf der Platine, eine auf der Oberseite und eine auf der Unterseite.

Standardmäßig wurde der grüne Lötstopplack aufgetragen, ein eckiger Pin ist (zur Orientierung) immer der Pin 1.


IMG-20160322-WA0000

WLAN Modul ESP8266 ESP-07

 

Es wurde ein ESP8266 ESP-07 (genauere Informationen) verwendet, da ein Kriterium war, mithilfe eines WLAN Moduls Fernbedienungen zu ersetzen. Somit kann man z.B. eine App verwenden, um die Drohne mit dem Smartphone zu steuern. Ein weiteres Kriterium war, eine eigene Antenne anschließen zu können. Da aber keine anderen speziellen Anforderungen gestellt wurden, wurde eine der billigsten Varianten, die Arduino kompatibel, besorgt. Diese verfügt über eine Keramik-Antenne und über einen „Pigtail“ Anschluss für eine externe Antenne. Mit dem WLAN Modul können Steuersignale an die Drohne gesendet werden, die dann von diesem Mircocontroller an die Motoren weitergegeben werden.

Um den ESP8266 zu programmieren, muss er zunächst resettet und danach in den Flashing Mode gebracht werden. Um zu entscheiden, ob er im Normal oder Flashing Mode gestartet wird, wird getestet, ob am GPIO 0 Pin ein HIGH- oder LOW-Signal (HIGH = Vcc, LOW = GND) anliegt. Liegt ein LOW-Signal an, wird er im Flashing Mode gestartet und kann mit einer neuen Firmware beschrieben werden. Bei einem HIGH-Signal startet er im Normal Mode.

Dieser Microcontroller besitzt eine I²C Schnittstelle (genauere Informationen). Dies hat den Vorteil, dass er zur Steuerung des gesamten Netzwerks nur zwei I/O-Pins benötigt und so ein verhältnismäßig geringer Aufwand bei der Implementierung entsteht. Die Schnittstelle wird dafür verwendet, Daten mit dem MPU-6050 auszutauschen. Diese Daten beinhalten Informationen wie Temperatur, Fluggeschwindigkeit und Lage der Drohne.

Schaltplan2

steckplatte
Zum Test kann man die Schaltung vorab auf einem Steckbrett stecken. Unter der oberen, blauen Linie wird die Versorgungsspannung Ground angebracht, darunter die Versorgungsspannung VCC+. Im mittleren Bereich sind die Steckreihen vertikal vernetzt. Darunter befinden sich noch 2 Reihen für die Versorgungsspannung.

Der MPU-6050, der rechts oben an einen der I²C-Schnittstellen der Hauptplatine gehängt wird, ist ein Gyrosensor, ein Thermometer und ein Accelerometer. So kann die Neigung der Drohne (verhindert „Umkippen“ beim Fliegen), die Temperatur und die Fluggeschwindigkeit gemessen werden. Geplant ist eine Sicherheitsfunktion, um einer Überhitzung vorzubeugen.

Um den MPU zu testen, muss man sich zunächst das Programm Arduino und Processing herunterladen und installieren.

https://processing.org/download/

https://www.arduino.cc/en/Main/Software

Nach der Installation dieser muss man 3 Libraries downloaden und diese entpacken:

https://github.com/jrowberg/i2cdevlib/archive/master.zip (In diesem sind 2 Libraries)

https://bitbucket.org/postspectacular/toxiclibs/downloads/toxiclibs-complete-0020.zip

Man öffnet nun den Ordner des Github-links und geht in den Ordner Arduino. Dann kopiert man sich die Ordner „MPU6050“ und „I2Cdev“ in seinen Arduino Libraries Ordner. In dem Bitbucket Ordner muss man die Datei „toxiclibscore“ und „toxiclibs_p5“ in den Libraries Ordner von Processing einfügen (Dieser Pfad liegt standardmäßig in C:\Users\%Username%\Documents\Processing\libraries).

Nun schließt man seinen Arduino an den Computer an und die Kabel des MPU6050 wie folgt:

Fritzing MPU

Danach öffnet man sein Arduino Programm und wählt unter Werkzeuge seinen jeweiligen Arduino und den „COM“ Anschluss aus, an welchen dieser angeschlossen ist. Diesen sollte man sich fürs spätere Vorgehen merken. Nun geht man unter „Datei“ in „Beispiele“ dann scrollt man runter bis „MPU6050“ dann in „Examples“ und schließlich klickt man auf „MPU6050_DM6“.

In diesem Code schreibt man in Zeile 100 „//“ davor und dafür entfernt man in Zeile 117 die Kommentarzeichen.MPU Ard Code

Nun kann man das Arduino Programm hochladen und starten. Danach muss man in Processing den Code einfügen. Dazu muss man den Ordner „MPU6050“ öffnen und diesen Pfad öffnen: C:\MPU6050\Examples\MPU6050_DMP6\Processing\MPUTeapot .

MPU Proc

Nun öffnet man die darin enthaltene Processingdatei. Wenn man als Betriebssystem Linux hat ist man hier jetzt fertig. Hat man Windows, muss man in Zeile 71 Kommentarzeichen vor die Zeile schreiben und dafür in Zeile 74 diese entfernen. Zudem muss man in Zeile in 74 den Port angeben, welchen man schon vorher in Arduino benutzte. Danach den Code kompilieren und auf „Starten“ klicken.

MPU Teapot

Informationen zum Akku und zum Ladegerät sind hier zu finden.

Die Funktionsweise des Brushless-Motoren ist auf dieser Seite beschrieben.

Der Hobbywing Skywalker Quattro 25AX4 ist der Motorcontroller der Drohne. Dieser besitzt 12 schwarze Kabel, welche die Motoren ansteuern. Diese sind in 4 Blöcke eingeteilt je 3 Kabel. Weiterhin hat dieser einen Batterieanschluss mit Plus – und Minuspol. Neben dem Batterieansschluss befinden sich Kondensatoren. Zudem hat dieser noch (4x 3 Steckerplätze), welche sich mit der Platine zur Informationsbeschaffung verbinden. Es gibt noch vier verschieden farbige Leitungen, wovon ein Anschluss mehrere Verbindungen hat, die an die Platine angeschlossen werden. Der dreipolige Anschluss versorgt die Platine mit Strom (rote und schwarze Kabel) und das 3. Kabel (weiß) sendet ein Signal an einen der 4 Motoren. Die einzelnen Anschlüsse steuern jeweils einen Motor an.