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. Referentin bzw. Referent (m/w/d) für IT und Digitalisierung
    Behörde für Justiz und Verbraucherschutz, Hamburg
  2. IT-Netzwerkadministrator (m/w/d)
    DRK Landesverband Rheinland-Pfalz e.V., Mainz
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.  


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.



Aktuell auf der Startseite von Golem.de
Waffensystem Spur
Menschen töten, so einfach wie Atmen

Soldaten müssen bald nicht mehr um ihr Leben fürchten. Wozu auch, wenn sie aus sicherer Entfernung Roboter in den Krieg schicken können.
Ein IMHO von Oliver Nickel

Waffensystem Spur: Menschen töten, so einfach wie Atmen
Artikel
  1. OpenBSD, TSMC, Deathloop: Halbleiterwerk für Automotive-Chips in Japan bestätigt
    OpenBSD, TSMC, Deathloop
    Halbleiterwerk für Automotive-Chips in Japan bestätigt

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

  2. Whatsapp: Vater bekommt wegen eines Nacktfotos Ärger mit Polizei
    Whatsapp
    Vater bekommt wegen eines Nacktfotos Ärger mit Polizei

    Ein Vater nutzte ein 15 Jahre altes Nacktfoto seines Sohnes als Statusfoto bei Whatsapp. Nun läuft ein Kinderpornografie-Verfahren.

  3. Pornoplattform: Journalisten wollen Xhamster-Eigentümer gefunden haben
    Pornoplattform
    Journalisten wollen Xhamster-Eigentümer gefunden haben

    Xhamster ist und bleibt Heimat für zahlreiche rechtswidrige Inhalte. Doch ohne zu wissen, wer profitiert, wusste man bisher auch nicht, wer verantwortlich ist.

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
    Daily Deals • Bis 21% auf Logitech, bis 33% auf Digitus - Cyber Week • Crucial 16GB Kit 3600 69,99€ • Razer Huntsman Mini 79,99€ • Gaming-Möbel günstiger (u. a. DX Racer 1 Chair 201,20€) • Alternate-Deals (u. a. Razer Gaming-Maus 19,99€) • Gamesplanet Anniversary Sale Classic & Retro [Werbung]
    •  /