Mikrocontroller: Sensordaten mit Micro Python und ESP8266 auslesen

Python gilt als relativ einfach und ist die Sprache der Wahl in der Data Science und beim maschinellen Lernen. Aber die Sprache kann auch anders. Mithilfe von Micro Python können zum Beispiel Sensordaten ausgelesen werden. Ein kleines Elektronikprojekt ganz ohne Löten.

Eine Anleitung von Dirk Koller veröffentlicht am
Micro Python läuft unter anderem auf den beliebten ESP32- und ESP8266-Boards
Micro Python läuft unter anderem auf den beliebten ESP32- und ESP8266-Boards (Bild: Dirk Koller)

Auf der Suche nach einer günstigen Lösung für Sensorabfragen landet man schnell beim Arduino-Projekt, einer aus Hard- und Software bestehenden Physical-Computing-Plattform. Der Bastler kann hier aus einer stattlichen Anzahl von Entwicklungsboards wie Nano, Uno oder Duemilanove auswählen, die sich preislich zwischen 5 und 50 Euro bewegen. Die zugehörige Entwicklungsumgebung Processing ist einfach gehalten und erlaubt die Programmierung in einer C/C++-ähnlichen Programmiersprache. Lediglich die zwei Funktionen setup und loop sind zu implementieren, um etwa an die Daten eines Sensors zu gelangen.

Inhalt:
  1. Mikrocontroller: Sensordaten mit Micro Python und ESP8266 auslesen
  2. Micro Python mit dem Controller verbinden
  3. Programmieren in Python
  4. Dateien übertragen mit Rshell
  5. Gute Alternative zu C/C++

Die Programmierung mit C/C++ ist allerdings nicht jedermanns Sache und in den letzten Jahren ist - zusammen mit Data Science und Machine Learning - das demnächst 30 Jahre alte Python sehr beliebt geworden. Es war wohl nur eine Frage der Zeit, bis jemand die Sprache, die als ausdrucksstark und einfach zu lernen gilt, auf einen Mikrocontroller und damit in den Fokus der Bastlerszene bringt.

Micro Python: klein, aber mächtig

Genau dies ist mit Micro Python im Jahr 2013 geschehen. Das Kickstarter-Projekt des Australiers Damien George ist eine zu Python 3 kompatible Implementierung, die auf verschiedenen Architekturen wie zum Beispiel ARM läuft. Neben Compiler und Runtime beinhaltet das Open-Source-Projekt einen interaktiven Modus zur Befehlseingabe und einige Pakete der Python Standard Library. Wie Arduino ist Micro Python damit perfekt für Elektronikprojekte geeignet.

Das offizielle Entwicklungsboard namens Pyboard ist je nach Ausstattung für etwa 20 Euro erhältlich. Micro Python läuft aber auch auf den beliebten ESP32- und ESP8266-Boards, die deutlich günstiger sind. Ein solches, in Form des Espressif ESP8266 NodeMCU mit programmierbaren Ein- und Ausgängen (GPIO) und WLAN, wird hier für ein kleines Beispielprojekt verwendet.

  • Ein ESP8266 NodeMCU (Bild: Dirk Koller)
  • Ein erfolgreicher Flash-Vorgang (Bild: Dirk Koller)
  • Python-Anweisungen in REPL (Bild: Dirk Koller)
  • Das DHT22-Breakout-Modul (Bild: Dirk Koller)
  • Messwerte im Browser (Bild: Dirk Koller)
  • Verbinden mit der Rshell (Bild: Dirk Koller)
Ein ESP8266 NodeMCU (Bild: Dirk Koller)
Stellenmarkt
  1. IT Systemadministrator / Junior Projektleitung (m/w/d)
    DS Smith Packaging Deutschland Stiftung & Co. KG, Erlensee
  2. (Junior) IT-Anforderungsmanager (m/w/x) Warenwirtschaftssysteme / Filialhandel - International
    ALDI International Services GmbH & Co. oHG, Mülheim an der Ruhr
Detailsuche

Das Bauteil ist ab zwei Euro bei Ebay-Lieferanten aus China und ab etwa fünf Euro, dafür aber mit deutlich kürzerer Lieferzeit, bei heimischen Elekronikversendern zu finden.

Installation von Micro Python

Bevor mit der Programmierung begonnen werden kann, muss Micro Python auf den Mikrocontroller gebracht werden. Die Portierung für den ESP8266 ist auf der Download-Seite unter Firmware for 8266 boards zu finden. Es empfiehlt sich, den letzten stabilen Build zu verwenden. Das Flashen der Firmware erfolgt mit Hilfe der Software Esptool. Da Esptool auch in Python geschrieben ist, wird die Programmiersprache auf einem Rechner benötigt, am besten in der Version 3.4 oder neuer. Ist diese Voraussetzung erfüllt, erfolgt die Installation mit Hilfe des Python Package Installers Pip.

  1. pip install esptool

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
Micro Python mit dem Controller verbinden 
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6.  


Aktuell auf der Startseite von Golem.de
Luftsicherheit
Wenn plötzlich das Foto einer Waffe auf dem iPhone erscheint

Ein Jugendlicher hat ein Foto einer Waffe per Apples Airdrop an mehrere Flugpassagiere gesendet. Das Flugzeug wurde daraufhin evakuiert.

Luftsicherheit: Wenn plötzlich das Foto einer Waffe auf dem iPhone erscheint
Artikel
  1. Paypal, Impfausweis, Port Royale: Erste Apotheken geben wieder Zertifikate aus
    Paypal, Impfausweis, Port Royale
    Erste Apotheken geben wieder Zertifikate aus

    Sonst noch was? Was am 30. Juli 2021 neben den großen Meldungen sonst noch passiert ist, in aller Kürze.

  2. Black Widow: Scarlett Johansson verklagt Disney
    Black Widow
    Scarlett Johansson verklagt Disney

    Scarlett Johansson hat wegen des Veröffentlichungsmodells von Black Widow Klage eingereicht. Disney nennt das Verhalten "herzlos".

  3. VW ID.4 im Test: Schön brav
    VW ID.4 im Test
    Schön brav

    Eine Rakete ist der ID.4 nicht. Dafür bietet das neue E-Auto von VW viel Platz, hält Spur und Geschwindigkeit - und einmal geht es sogar sportlich in die Kurve.
    Ein Test von Werner Pluta

elcaron 02. Dez 2019

Ich habe eher Probleme damit, dass der ESP das Board erwärmt. Mit DeepSleep ist dem an...

PatrickSchlegel 02. Dez 2019

++

tsp 02. Dez 2019

Abgesehen davon, dass ich nicht denke, dass die Sache mit den Einrückungen ein "Problem...

floxiii 02. Dez 2019

https://randomnerdtutorials.com/micropython-esp32-deep-sleep-wake-up-sources/ Deep Sleep...

floxiii 02. Dez 2019

Der ESP32 benötigt im Deep Sleep nur wenige A.



Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Schnäppchen • Viewsonic XG270QG (WQHD, 165 Hz) 549,99€ • Gigabyte X570 AORUS Master 278,98€ + 30€ Cashback • Mega-Marken-Sparen bei MediaMarkt (u. a. Lenovo & Razer) • Tag der Freundschaft bei Saturn: 1 Produkt zahlen, 2 erhalten • Alternate-Deals (u. a. AKRacing Core EX-Wide SE 248,99€) [Werbung]
    •  /