Aus Raspberry Pi Geek 02/2016

Mikrocontroller ESP8266 für Automationsaufgaben im IoT (Seite 2)

http://arduino.esp8266.com/stable/package_esp8266com_index.json

Damit veranlassen Sie die Arduino-IDE, die für den ESP8266 nötigen Boardmanager in die entsprechende Liste aufzunehmen. Im nächsten Schritt starten Sie die Installation des Boardmanagers für den ESP8266. Das erledigen Sie unter dem Menüpunkt Werkzeuge | Board | Boardmanager starten. Abbildung 3 zeigt den Dialog zum Einrichten des ESP8266-Community-Boardmanagers. Nach der erfolgreichen Installation können Sie jetzt unter Werkzeuge | Board das Generic ESP Modul auswählen.

Abbildung 2: Zusätzlichen Boardmanager einfügen.

Abbildung 2: Zusätzlichen Boardmanager einfügen.

Abbildung 3: Installation des Boardmanagers.

Abbildung 3: Installation des Boardmanagers.

Damit ist die Arduino-Entwicklungsumgebung jetzt in der Lage, Programme für den ESP8266 zu erstellen. Nun müssen Sie den aktuellen Benutzer noch dazu berechtigen, auf die serielle Schnittstelle zuzugreifen (Listing 2), indem Sie ihn in die Gruppe dialout aufnehmen.

Listing 2

 

$ sudo usermod -a -G dialout $USER
$ sudo reboot

Ein anschließender Neustart des Rechners muss nicht unbedingt sein, wohl aber eine Ab- und erneute Anmeldung des aktuellen Benutzers. Ein Reboot hat aber unbestritten den Vorteil, dass sich das System danach in einem hundertprozentig konsistenten Zustand befindet. Windows-Anwender haben an dieser Stelle keine Probleme, traditionell geht Microsofts Betriebssystem weniger penibel mit Berechtigungen um.

Mit dem Einrichten der IDE sind softwareseitig die letzten Vorbereitungen für den Einsatz des ESP8266 abgeschlossen. Nun geht es an den Aufbau der Hardware.

Testhardware

Für einen ersten Testaufbau benötigen Sie neben einem ESP8266-12 und einer zusätzlichen externen Spannungsquelle noch ein USB-nach-Seriell-Modul [3], zwei Schalter, eine LED sowie einige Widerstände. Der Schaltplan aus Abbildung 4 macht deutlich, wie Sie die Komponenten zusammenbauen müssen; Abbildung 5 zeigt den entsprechenden Versuchsaufbau auf einem Prototyping-Board.

Abbildung 4: Der Schaltplan des Testaufbaus für den ESP8266.

Abbildung 4: Der Schaltplan des Testaufbaus für den ESP8266.

Abbildung 5: Der erste Testaufbau mit dem ESP8266 auf einem Prototyping-Board.

Abbildung 5: Der erste Testaufbau mit dem ESP8266 auf einem Prototyping-Board.

Der ESP8266 hat allerdings einen etwas unüblichen Pin-Abstand von 2 Millimeter statt des üblichen Rastermaßes von 2,54 Millimeter, sodass er nicht direkt in das Board passt. Um das Problem zu umgehen, löten Sie etwa 2 Zentimeter lange, etwa zur Hälfte abisolierte Leitungen an das ESP8266-Board. Mit diesem kleinen Trick praktizieren Sie den ESP8266 auf das Prototyping-Board.

Die Tabelle “Pinbelegung (Bootloader)” zeigt die Beschaltung der Pins, die nötig ist, um den Bootloader des ESP8266 zu aktivieren. Nur bei aktiviertem Bootloader können Sie neue Programme hochladen, daher müssen die Pins beim Starten des Mikrocontrollers diese Beschaltung aufweisen. Sicherheitshalber sollten Sie die Pins nicht direkt an die Versorgungsspannungen anschließen, sondern 10-kOhm-Widerstände dazwischenschalten (siehe Abbildung 4).

Pinbelegung (Bootloader)

ESP-Pin

Logikpegel

CH_PD

HIGH (VCC)

GPIO2

HIGH (VCC)

GPIO15

LOW (GND)

GPIO0

LOW (GND)

Da das USB-nach-Seriell-Modul keinen besonders hohen Ausgangsstrom liefern kann, benötigen Sie eine zusätzliche externe Spannungsversorgung. Dabei genügt es, wenn die entsprechende Spannungsquelle rund 100 Milliampere Strom liefert. Es genügt also ein kleines Steckernetzteil, das eine stabilisierte Betriebsspannung zwischen 3,0 und 3,6 Volt aufweist. Als Alternative greifen Sie ersatzweise zu Batterien oder Akkus.

Der ESP8266 kommt mit zu hohen Betriebsspannungen nicht sonderlich gut zurecht. Sie sollten aus diesem Grund penibel darauf achten, das USB-nach-Seriell-Modul auf 3,3 Volt Ausgangsspannung einzustellen. Auch die zusätzliche Spannungsquelle darf maximal 3,6 Volt keinesfalls übersteigen. Um alle möglichen Fehler mit der Betriebsspannung auszuschließen, empfiehlt es sich, die Versorgungsspannung des ESP8266 erst anzuschließen, nachdem Sie die Ausgangsspannung des USB-nach-Seriell-Moduls und der externen Spannungsquelle nachgemessen haben.

Erster Test

Die Entwicklungsumgebung zum Erstellen von ESP8266-Programmen steht bereit; den Hardware-Testaufbau schließen Sie über einen USB-Port an den PC an. Damit ist jetzt der Zeitpunkt gekommen, um das erste Testprogramm zu erstellen und auf den ESP8266 hochzuladen. Dazu öffnen Sie das Beispielprogramm Blink, das Sie in der Arduino-Entwicklungsumgebung unter Datei | 01.Beispiele | Basics=> Blink finden. Hier ändern Sie nun in den Funktionen setup() und loop() die Nummer des anzusprechenden I/O-Ports von 13 auf 16, wie in Abbildung 6 zu sehen.

Abbildung 6: Das Blink-Programm mit den Änderungen für den ESP8266 der Arduino-IDE.

Abbildung 6: Das Blink-Programm mit den Änderungen für den ESP8266 der Arduino-IDE.

Um das Testprogramm zu kompilieren und in den ESP8266 hochzuladen, prüfen wir zuerst im Menü Werkzeuge nach, ob die Board-Settings auch stimmen (Abbildung 7). Besonderes Augenmerk gilt es hier auf den Port zu legen: Er muss demjenigen entsprechen, an dem der USB-zu-Seriell-Controller hängt. Nachdem Sie die Einstellungen geprüft haben, übersetzen Sie das Programm und befördern es auf den ESP8266. Dazu genügt ein Mausklick auf den Schalter mit dem Pfeil nach rechts in der Werkzeugleiste der IDE, die unterhalb der Menüleiste residiert. In Abbildung 8 sehen Sie, wie die Ausgabe der Arduino-Entwicklungsumgebung bei einem erfolgreichen Transfer aussieht.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 7 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Raspberry Pi Geek bei Google Play Readly Logo
Nach oben