• IT-Karriere:
  • Services:

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. A. Menarini Research & Business Service GmbH, Berlin
  2. Sky Deutschland GmbH, Unterföhring bei München

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.  


Anzeige
Top-Angebote
  1. (u. a. Transport Fever 2 für 22,99€, Project CARS 2 Delux für 15,99€)
  2. (u. a. PS4 Pro Naughty Dog Bundle für 399,99€, PS4 VR Megapack Ed. 2 für 279,99€, Death...
  3. (Samsung Galaxy A51 128 GB für 299,00€)
  4. (aktuell u. a. WD Eements 10 TB für 179,00€, Crucial X8 1 TB externe SSD für 149,00€, Zotac...

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.


Folgen Sie uns
       


DJI Robomaster S1 - Test

Was fährt da auf dem Flur entlang? Der Robomaster S1 ist ein flinker Roboter, mit dem wir Rennen fahren oder gegen andere Robomaster im Duell antreten können. Das macht einen Riesenspaß und ist auch ein guter Einstieg ins Programmieren.

DJI Robomaster S1 - Test Video aufrufen
    •  /