Einstieg in MicroPython: Servo und Distanzsensor mit ESP32 ansteuern

Dank leistungsfähigerer Mikrocontroller bietet sich die Skriptsprache inzwischen für viele Projekte als mächtige Alternative zum Arduino und C++ an.

Artikel verschenken
In Pocket speichern vorlesen Druckansicht
Einstieg in MicroPython
Lesezeit: 16 Min.
Von
  • Thomas Euler
Inhaltsverzeichnis

Mehr Funktionalität für komplexere Projekte und dabei eine einfach zu lesende Programmiersprache – neue Mikrocontroller, die auf MicroPython setzen, machen nach 15 Jahren dem bisherigen Platzhirsch Arduino klare Konkurrenz. Wir erklären die notwendigen Grundlagen und Besonderheiten der Python-3-Variante für Mikrocontroller, geben eine Übersicht über aktuelle MicroPython-Distributionen und geeignete Boards. Am Beispiel des ESP32-Mikrocontrollers zeigen wir, welche Programmierumgebung sich für den Einstieg eignet und demonstrieren, wie man die Hardware anspricht.

Kurzinfo
  • MicroPython in Python programmieren
  • Passenden Mikrocontroller finden und einsetzen
  • Beispiel: Servo und Distanzsensor mit ESP32 ansteuern

Checkliste

  • Zeitaufwand: ca. eine Stunde (je nach Board)
  • Kosten: ab 11 Euro (je nach Board)
  • Programmieren: Grundkenntnisse in Python

Material

  • MicroPython-fähiger Mikrocontroller (z. B. pyboard, Adafruit HUZZAH32)
  • Distanzsensor Sharp GP2D120
  • Kleiner Modellbau-Servo

Bezugsquellen

Mit einer Crowdfunding-Kampagne stellte der Ingenieur Damien George Ende 2013 MicroPython und das dazugehörige pyboard vor. Inzwischen arbeitet George Vollzeit am MicroPython-Ökosystem, und es gibt Portierungen von MicroPython für eine Reihe von Mikrocontrollern, darunter sowohl die beliebten WLAN-Boards ESP8266 und ESP32 von Espressif als auch ARM-Cortex-M4-Boards. Erste Anlaufstelle ist die Webseite micropython.org, auf der sich neben der kompletten Dokumentation die aktuellen Firmwares für die verschiedenen Mikrocontrollerarchitekturen beziehungsweise -boards finden. Auch einen Emulator gibt es, um MicroPython ohne Hardware auszuprobieren. Der Quellcode ist Open Source und steht komplett auf GitHub zur Verfügung.

MicroPython enthält eine sehr kompakte Implementierung des Python-Interpreters; dieser begnügt sich bereits mit 256kB Flash-Speicher und läuft ab 16kB RAM. Trotzdem ist er im Kern auf maximale Kompatibilität zum Standard-Python (CPython) ausgelegt. Syntax und Sprachumfang entsprechen weitgehend dem von Python 3.4, so dass sich Python-Programmierer sofort zurechtfinden. Zusätzlich sind ein paar Sprachelemente jenseits von CPython definiert, die den Speicherbedarf gering halten und die Ausführungsgeschwindigkeit steigern. Eingebaut ist auch ein komfortabler Kommandozeileninterpreter (REPL für „read-eval-print-loop“), der eingegebenen Code direkt ausführt, ohne dass er gespeichert und auf das Board geladen werden muss. Mit diesem kann man zum Beispiel die Ansteuerung von neuer Hardware testen oder einfach nur MicroPython erkunden.

Immer mehr Wissen. Das digitale Abo für IT und Technik.






Immer mehr Wissen. Das digitale Abo für IT und Technik.