Der
übliche Umgang mit dem Micro:bit erfordert für die Programmentwicklung
immer einen Zugriff auf das Internet. Eine Ausnahme bildet MicroPython.
Da gibt es zwar auch eine Online-Programmierumgebung, aber möglich ist
auch die Offline-Programmierung auf dem heimischen PC, sodass alle
Daten auf der eigenen Festplatte liegen. Dazu gibt es den Mu-Editor: https://github.com/mu-editor/mu
Der
Mu-Editor ist selbst in Python geschrieben und für alle wichtigen
Betriebssysteme erhältlich. Unter Windows ist es einfach nur eine
exe-File, das ohne weitere Installation gestartet werden kann. Mu
findet den am USB angeschlossenen Micro:bit problemlos und überträgt
mit dem Flash-Knopf die gesamte Micropython-Runtime und das gerade
geschriebene Programm. Startet man das eingebaute Terminal (Repl), kann
man auch direkt mit dem System kommunizieren. Die Eingabe von "Help()"
bringt tatsächlich einige nützliche Informationen.
>>> help()
Welcome to MicroPython on the micro:bit!
Try these commands:
display.scroll('Hello')
running_time()
sleep(1000)
button_a.is_pressed()
What do these commands do? Can you improve them? HINT: use the up and down
arrow keys to get your command history. Press the TAB key to auto-complete
unfinished words (so 'di' becomes 'display' after you press TAB). These
tricks save a lot of typing and look cool!
Explore:
Type 'help(something)' to find out about it. Type 'dir(something)' to see what
it can do. Type 'dir()' to see what stuff is available. For goodness sake,
don't type 'import this'.
Control commands:
CTRL-C -- stop a running program
CTRL-D -- on a blank line, do a soft reset of the micro:bit
CTRL-E -- enter paste mode, turning off auto-indent
Available modules: antigravity, array, collections, gc, love, math,
micropython, music, neopixel, os, radio, random, speech, struct, sys, this
For more information about Python, visit: http://python.org/
To find out about MicroPython, visit: http://micropython.org/
Python/micro:bit documentation is here: https://microbit-micropython.readthedocs.io/
>>>
>>>
Der beste Einstieg gelingt mit der in der Hilfe genannten Seite https://microbit-micropython.readthedocs.io/.
Da findet man die wichtigsten Themen und zahlreiche Programmbeispiele.
Unter anderem gibt es da Informationen zum File-System. Mit MicroPython
kann man Dateien speichern und lesen, ideal zur Realisierung von
Datenloggern aller Art.
Das habe ich nun probiert. Das Ziel
ist ein Beschleunigungs-Datenlogger, den man im Auto mitführen kann.
Damit lässt sich der individuelle Fahrtstil von "ruhig und gelassen"
bis "sportlich und risikoreich" unterscheiden. Ich habe hier die
Beschleunigung in x- und y-Richtung einfach addiert, was physikalisch
nicht ganz korrekt ist und teilweise höhere Beschleunigungen anzeigt
als die vektorielle Addition. Aber wer schnell in die Kurve fährt und
dann auch noch hart beschleunigt oder bremst, fährt doppelt gefährlich.
from microbit import *
with open('Axy.py', 'w') as my_file:
my_file.write("axy\n")
for n in range(1, 2001, 1):
a = accelerometer.get_x()+accelerometer.get_y()
my_file.write(str(a)+"\n")
sleep(100)
print("done")
Das
Programm ist erfreulich kurz und speichert 2000 Messwerte in einem
Zeitraum von insgesamt 1000 Sekunden, also etwa einer Viertelstunde. Es
wird eine Datei mit dem Namen Axy.py erzeugt. Man könnte sie auch
Axy.txt nennen, aber die Endung py ist praktisch, weil man die Daten
dann direkt in Mu ansehen kann.
Und das geht so: Man klickt
auf den Files-Knopf. Ein eventuell gerade laufendes Programm wird
gestoppt, und Mu verschafft sich den Zugriff auf das File-System. Da
steht nun tatsächlich die gerade erzeugte Datei. Man kann sie mit der
linken Maustaste packen und nach rechts auf den eigenen Computer
ziehen. Damit die die Datei kopiert, die Daten sind gerettet. Mit der
Übertragung eines neuen Programms wird die Datei nämlich auf jeden Fall
gelöscht. Möglich sind aber mehrere Dateien im Grundverzeichnis, nicht
jedoch Unterverzeichnisse.
Die Datei Axy.py kann man nun direkt in den Editor laden oder mit anderer Software auswerten.
In
diesem Fall wurden die Daten aus dem Mu-Editor kopiert und in eine
Excel-Tabelle eingefügt. Die grafische Auswertung zeigte dann einen
katastrophalen Fahrstil, der zum sofortigen Verlust des Führerscheins
führte. Nein, stimmt gar nicht. Da war nur eine Simulation, bei der ich
etwas mit dem Micro:bit gewackelt habe.
Elektronik-Labor Projekte Microbit