Chip MagPi Nr. 4/2017
Author: Thorsten Frank-Haverkamp
Date: 2017-07-14T22:00:00+00:00
Keywords: Raspberry PI; Computer; Bastel; Technik
Publisher: CHIP Communications GmbH

Auf

Coden lernen: Über eine Stunde Python-Videotraining

Plus: Alle Codes und Materialien zu den Workshops

DVD

04 • 201

RY PI

7 •
www.magpi.de

Juli/

Magazin

Das offizielle

Augus

RASPBER
t

04 • 2017

JULI/AUGUST

Das offizielle Raspberry Pi Magazin

RASPBERRY PI

TOOLKIT FÜR MAKER

Das brauchen Bastler:

—

Von der grundlegenden (Elektronik-)

SPANNENDE PROJEKTE FÜR DEN RASPI

Ausstattung bis zum Lötkolben

Spannende Projekte
mit dem

RasPi

Sofortbildkamera · Laserfalle ·

Pi-Klavier · LED-Thermometer ·

Theremin · Windows-98-Uhr u. v. m.

OBJEKT-ORIENTIERT

Auf

PROGRAMMIEREN

DVD

Der Einsteiger-Guide für alle:

Coden mit Scratch und Python

Auf DVD Python-Videotraining

Die 5-Euro-Buttons können
viel mehr, als Amazon zugibt

Workshops

Amazon Dash

Genialer Hack für

> Hilfe auf der Kommandozeile

> Temperaturgesteuerte Treppenlichter

04 • 2017 • € 9,95

> Monopoly-Simulation: die Grundlagen

ÖSTERREICH: 11,50 EUR BENELUX: 11,50 EUR

SCHWEIZ: 19,50 CHF

> Sicherer Ausschaltknopf für den Pi

DT-Control
geprüft:

Beiliegender Datenträger

IM TEST: NEUE HARDWARE FÜR DEN RASPI
ist nicht jugend-
beeinträchtigend

KIOSK

Im CHIP Kiosk finden Sie alle Produkte aus
dem Hause CHIP. Magazine und Specials

– gedruckt oder digital. Als Einzelheft oder Abo.

Der ultimative
www.chip-kiosk.de

Guide für

NAS & Heimnetz

148 Seiten

Inkl. 3 Vollversionen auf DVD

Nur 9,95 €

Jetzt bestellen.

www.chip-kiosk.de

Kiosk_993_EA_NAS_2017.indd 1

19.06.2017 10:26:37

Editorial

DIE NÄCHSTE

AUSGABE

VON

ERSCHEINT AM

TOLLE NEUE

13. SEPTEMBER

2017

PROJEKTE MIT DEM PI
bwohl ich schon so viele faszinie-
gen haben Sie in ein bis zwei Stunden nach-
rende Projekte mit dem Raspberry
gebaut. Wenn Sie mich fragen, was mich in

O Pi gesehen habe, bin ich doch
dieser MagPi-Ausgabe besonders anspricht,
immer wieder überrascht, was sich Bastler
dann sind es zwei Dinge: Zum einen ist es
und Tüftler Neues ausdenken. Das können
die Treppe, deren Beleuchtung je nach Wet-
manchmal sehr aufwendige Dinge sein, die
terlage bzw. Temperatur variiert (Seite 78).

viele Tage Einsatz im Hobbykeller erfordern,

Zum anderen ist es das Ultraschall-There-
manchmal aber auch relativ kleine Arbeiten,
min (Seite 76). Dieses elektronische Musik-
die sich recht leicht umsetzen lassen.

instrument erzeugt je nach Abstand unter-

In diesem Heft finden Sie wieder Projekte
schiedliche Töne. Wer so etwas einmal

Thorsten Franke-Haverkamp,
aus beiden Kategorien. Die Entwicklung der
ausprobiert hat, weiß, was für einen Spaß

Redaktionsleiter MagPi

Pi-Sofortbildkamera (Seite 34) etwa hat
das macht. Dabei ist der Aufwand für dieses
sicherlich viel Zeit in Anspruch genommen.

Projekt ebenfalls erstaunlich gering.

Unser LED-Thermometer (Seite 50) hinge-

Viel Spaß beim Ausprobieren!

RASPI-HACK MIT

AMAZONS DASH-BUTTONS

Videotraining

Keine Angst vor Python.

Auf der Heft-DVD gibt
es über eine Stunde

Einsteiger-Training.

Eine Registrierung ist
nicht erforderlich!

Knopf für alles

Mit dem Dash-Button kann
man nicht nur bestellen ...

Das hat sich Amazon clever ausgedacht: Der Dash-Button ist ein kleines, mit dem WLAN verbundenes Gerät. Man platziert es bei-PI ZERO W
spielsweise neben der Waschmaschine, drückt auf den Knopf,

FÜR 1 EURO
wenn das Waschmittel zur Neige geht, und bekommt umgehend
zu je

Nachschub geliefert. So weit die Idee von Amazon. Doch als
dem abo!

SEITE 14

RasPi-Bastler kann man mit dem 4,99 Euro teuren Dash-Button (4,99 Euro Rabatt erhält man nach dem ersten Knopfdruck) noch MAGPI IM ABONNEMENT
ganz andere Dinge machen. Lesen Sie mehr ab Seite 70.

Gefällt Ihnen die aktuelle Ausgabe von MagPi, dem
offiziellen Raspberry-Pi-Magazin? Das Heft gibt es
auch im Abonnement. So verpassen Sie keine Ausgabe
mehr und bekommen das Magazin alle zwei Monate
bequem frei Haus geliefert. Damit sparen

MAGPI KOSTENLOS

Sie nicht nur Geld, sondern

Sie haben die ersten Ausgaben
sichern sich auch
verpasst? Kein Problem, Sie kön-
eine tolle Abo-
nen ältere Ausgaben entweder
prämie: Zu jedem
gedruckt nachkaufen oder kos-

Abo gibt es den
tenlos als PDF herunterladen

Raspberry Pi Zero

(einmalige kostenlose Registrie-

W mit attraktivem
rung im CHIP-Kiosk erforderlich).

Kabel-Bundle.

chip-kiosk.de/chip/magpi

Mehr dazu auf S. 14
magpi.de

04 • 2017

3

Service

Inhalt

Ausgabe 4 Juli/August 2017
magpi.de

TRENDS

PROJEKTE

> FUSION MIT CODERDOJO

06

> PIMINIMINT

28

Pi Foundation schließt sich mit Coder-Stiftung zusammen

So quetscht man einen RasPi in eine Pfefferminzdose

> TROJANER / WEARABLES

07

> ALTE FILME RETTEN

30

Nun haben die Hacker auch den Pi entdeckt

Bild für Bild alte Filmrollen digitalisieren

> MONSTERBORG

08

> FLYAI

32

Riesiger Erfolg für den SUV unter den Robotern

Fliegen als Haustiere: Die Fütterung übernimmt der Pi

> KI-GESTEUERTE KAMERA

09

> POLAPI-ZERO

34

Pi-basierte Kamera schießt nur Gewinner-Fotos

Sofortbildkamera mit integriertem Thermodrucker

> BLOG IN A BOX

10

WordPress, fertig vorkonfiguriert für den Pi

> WINDOWS-98-ARMBANDUHR 36

> RX300 THIN CLIENT

11

Ungewöhnliche Smartwatch mit Nostalgie-Faktor

Zugriff auf Windows und Cloud Computing

> PIORDER

38

> ASTRO PI EU AUF DER ISS

12

Elektronisches Bestellsystem fürs Restaurant

Astronaut Thomas Pesquet wirbt für den Astro Pi

> TOUGH PI-ANO

40

> NEXT-GEN ZX SPECTRUM

16

Ein robustes Keyboard mit Knöpfen statt Tasten

Raspberry Pi Zero sorgt für mehr Power bei Games

> RASPCADE: BETRIEBSSYSTEM 42

> MOBILES INTERNET PER 3G HAT 17

Letzter Teil der Serie um unseren Spielautomaten

3G-System für den Raspberry Pi 2, 3 und Zero

Schwerpunkt Programmieren

PRAXIS

> OBJEKT-ORIENTIERT

> KOMMANDOZEILE

44

PROGRAMMIEREN

18

Gewusst wie: Praktische Befehle, die Ihnen weiterhelfen

Verschaffen Sie sich den Durchblick in Sachen OOP

> PROGRAMMIEREN IN C

48

> WÜRFELSPIEL IN SCRATCH

20

Teil 6 der Serie: Funktionen

Erstellen Sie probehalber ein kleines Spiel mit Scratch

> THERMOMETER AUS LEDS

50

> WÜRFELSPIEL IN PYTHON

22

Temperatur auslesen und visualisieren

Das gleiche Spiel, nur eine andere Sprache

18

CoderDojo

PROGRAMMIEREN

Toolkit

84

06

Diese Werkzeuge und Einzelteile
benötigen Sie, um größere

Projekte in die Tat umzusetzen

OOP ist die sinnvollste Methode,

Die Raspberry-Pi-Foundation und die Stiftung
um Programme zu schreiben. Wir

CoderDojo gehen gemeinsame Wege
geben eine Einführung für jeden
magpi.de

4

04 • 2017

Service

78 TOLLE PROJEKTE MIT

DEM RASPBERRY PI

Die Sommer-Ausgabe der MagPi ist prall gefüllt mit
großartigen und spannenden Projekten und Praxis-Work-
shops. Der vielfältige Themenmix reicht von einem Ther-
mometer aus LEDs bis zu temperaturgesteuerten

Treppenlichtern. Ebenfalls mit dabei sind Spiele und ein

Hack, mit dem man die Amazon Dash Buttons für andere

Dinge als zum Einkaufen verwenden kann.

> REAKTIONSSPIEL

52

ZUBEHÖR

Bei diesem Spiel lernen Sie, blitzschnell zu reagieren

> MONOPOLY-SIMULATOR

54

> RAINBOW HAT

92

Die Grundlagen von Simulation und Wahrscheinlichkeiten

> PICAPTURE HD

94

> GLSL-SHADER ERSTELLEN

58

Visuelle Effekte und Animationen für Ihre Projekte

> PIRATE RADIO

96

> PENDELKUNST

60

> JUSTBOOM

Faszinierende Werke im Stil eines Harmonographen

98

> HARRY-POTTER-UHR

> PAPIRUS

64

99

Die magische Karte des Rumtreibers für zu Hause

> WD PI DRIVE

100

> LICHTSCHRANKE MIT PI

68

Sichern Sie Durchgänge mit einem „Stolperdraht“

> SPEAKER PHAT

101

> AMAZON-HACK

70

> CLUSTERHAT

So programmieren Sie Amazons Dash-Buttons um

102

> AUSSCHALTER FÜR DEN PI

72

Per Knopfdruck runterfahren – so geht‘s

> PARKING-MANIA

ZUM SCHLUSS

74

Ein Spiel mit Scratch für Rangier-Künstler

> BUCHEMPFEHLUNGEN

104

> ULTRASCHALL-THEREMIN

76

Mit Python und Sonic Pi entsteht ein tolles Musikinstrument

> PORTRÄT: BEN CROSTON

106

> STUFENLICHTER

78

> RASPBERRY SHAKE

108

Eine Treppe, die anzeigt, wie kalt oder warm es ist

Erdbebenmessung mit dem Raspberry Pi

> SAME-GAME

80

Ein faszinierendes Pygame-Projekt

> DIE WELT DES RASPBERRY PI 110

Deutsche Foren und Communitys

> FAQ: SICHERHEIT

82

So schützen Sie den RasPi vor ungebetenen Gästen

> CROWDFUNDING

111

> VERANSTALTUNGSKALENDER 112

Die wichtigsten Termine im deutschsprachigen Raum

Toolkit für Maker

> LESERBRIEFE

113

> DAS WERKZEUG DER MAKER 84

> KOMMENTAR

Alles, was Sie für Ihre Projekte benötigen

114

Der erste Schritt – wie der Pi die Welt begeisterte

> SCHALTUNGEN BAUEN

86

Vom Prototyping und Löten

> GRUNDAUSSTATTUNG

88

SERVICE

Dieses Werkzeug ist ein Muss für den Werkzeugkasten

> 3D-DRUCK 8

>

9

EDITORIAL

03

Die wichtigsten Schritte im Überblick

> HEFT-DVD

67

> ARBEITEN MIT HOLZ

90

Grundwissen zum Umgang mit Holz

> IMPRESSUM

83
magpi.de

04 • 2017

5

Trends CODERDOJO

ENGE KOOPERATION MIT

CODERDOJO

Die Raspberry Pi Foundation und die CoderDojo-Stiftung fusionieren, um ihre gemeinsamen Ziele besser durchzusetzen
oderDojo ist wie die Pi Foun-
erwerben und ins besondere das Pro-
bekannt. Die beiden Stiftungen wol-
dation eine internationale,
grammieren er lernen können. Die

C
len bis Ende 2020 die Zahl der Code-
gemeinnützige Stiftung. Sie

Stiftung wurde 2013 gegründet und ist

Dojos auf 5.000 vervierfachen.

setzt sich dafür ein, dass Kinder und
inzwischen in 69 Ländern in 1.250

Die CoderDojo-Stiftung bleibt wei-

Jugendliche unabhängig von ihrer

CoderDojos tätig. Ein CoderDojo ist
terhin eine unabhängige Wohltätig-

Herkunft in einem sicheren sozialen
ein kostenloser Coding-Club. Die
keitsorganisation mit Sitz in Irland.

Umfeld Technologie-Kenntnisse

Mentoren arbeiten ehrenamtlich.

Die Marke CoderDojo, ihre Ziele und

Welche Kurse angeboten werden, ist
ihre Vision sollen nach dem Zusam-
von Dojo zu Dojo unterschiedlich und
menschluss unverändert bleiben.

hängt von den Spezialgebieten der

Außerdem werden die CoderDojos

Mentoren ab. Auch die Eltern können
weiterhin wie gewohnt plattformneu-
sich ehrenamtlich einbringen. Allein
tral bleiben und je nach Bedarf die
in Deutschland gibt es mehr als 20

Geräte einsetzen, die sie benötigen,

Dojos, zum Beispiel in Hamburg,
um jungen Menschen beim Lernen zu

Hannover, Wiesbaden oder Nürnberg.

helfen. Die Raspberry-Pi-Foundation

Wo sich das nächstgelegene Dojo
wird lediglich ein Fördermitglied der
tion
befindet, erfahren Sie unter der

CoderDojo-Stiftung. Philip Colligan,

Adresse coderdojo.com.

CEO der Raspberry-Pi-Foundation,
ounda
wird Direktor im Vorstand der Coder-

Enge Zusammenarbeit

Dojo-Stiftung. Die Fusion unterliegt
oderDojo F

Im Juni gaben die Raspberry Pi Foun-
allerdings noch der Genehmigung
s: C
dation und CoderDojo ihre Fusion
durch irische Regulierungsbehörden.

Foto

6

04 • 2017
magpi.de

NEWS

Trends

TROJANER BEFÄLLT

RASPBIAN

Kryptominer hacken Raspberry Pis,
um sich mit deren Hilfe Geld in der

Digitalwährung Monero zu beschaffen
eine große Verbreitung
macht den Raspberry Pi

S
sind, sollten geschützt sein, da sol-
che Verbindungen im Normalfall
zunehmend attraktiv für
unterbunden werden, solange der

Kriminelle. Seit Mai ist ein Trojaner

Port nicht manuell freigegeben
im Umlauf, der es auf den Pi abgese-
wurde. Die Hacker nutzen hierbei
hen hat. Doctor Web, ein russisches
aus, dass viele Raspberry-Pi-Nutzer

Unternehmen für Antivirensoft-
das Standard-Passwort nicht
ware, berichtete als Erstes darüber
ändern. So können sie sich mittels

( bit.ly/2sdeOT2). Betroffen sind

SSH auf dem Raspberry Pi einloggen.

ältere Raspbian-Versionen. Der Tro-

Um sich abzusichern, sollten Sie
janer Linux.Mul Drop.14 kapert den
auf die neueste Raspbian-Version

Rasp berry Pi und nutzt im Hinter-
updaten. Außerdem empfiehlt es
grund seine Rechenleistung, um
sich, das Passwort abzuändern, um
nach der Kryptowährung Monero zu
sich vor zukünftigen Angriffen zu

„schürfen“. Dazu wird der Port 22
schützen. Weitere Tipps zum Absi-
benutzt. Geräte, die hinter einem
chern des Mini-Computers lesen Sie

Router mit dem Internet verbunden
in den FAQs auf Seite 82.

WEARABLES FÜR MAKER:

TEXTILIEN UND TECHNIK

Anna Blumenkranz kombiniert Mikrocontroller und eher ungewöhn-
liche Materialien wie etwa Stoffe für spannende Elektronik-Projekte ls Wearables werden tech-sollen hier an die Techniken heran-
nische Gadgets bezeichnet,
geführt werden. Was alles möglich

A die man am Körper trägt, ist, sieht man am besten auf Annas wie etwa Smartwatches. In dem

Seite annablumenkranz.de. Hier
neuen Buch „Der kleine Hacker:

finden sich nicht nur Workshops,

Wearables für Maker“ (Franzis Ver-
sondern auch Videos, die die Wear-
lag, 25 Euro) zeigt die Autorin Anna
ables in Aktion zeigen.

Blumenkranz wie man solche

Wear ables selbst herstellt und wie
vielfältig das Themengebiet ist.

Unter den beschriebenen Projekten
sind ein leuchtender Hipster-

Kuschelroboter, eine sprechende

Tasche, eine Kopfhörermütze und
ein tragbares mobiles DJ-Misch-
pult. Auch Maker, die sich bislang
nicht mit Nähen beschäftigt haben,
magpi.de

04 • 2017

7

Trends MONSTERBORG

MonsterBorg ist ein robuster Robo-
ter mit mit einem Fahrgestell aus

3 mm dickem Aluminium-Blech

MONSTERBORG ÜBERTRIFFT

SEIN KICKSTARTER-ZIEL

Riesiger Erfolg für den bislang größten Roboter von PiBorg
it seinen 10 cm großen Rädern hat der Mons-
eine größere, stärkere Offroad-Version entwickelt.“
terBorg sein Kickstarter-Ziel niedergewalzt:

Mit vier 300 U/min schnellen Zhengke-37-mm-Mo-

M nämlich mit einer 1.749-Prozent-Finan- toren ist der MonsterBorg der bislang schnellste zierung und Zusagen über fast 60.000 Euro (magpi.

cc/2oBdFzg). „Aufregend!“ meint dazu Tim Freeburn

Der MonsterBorg
von PiBorg. Der Roboter soll auf piborg.org schon bald
in den allgemeinen Verkauf kommen.

Unten Der
ist schnell und ideal

ThunderBorg-

Die Idee für den MonsterBorg kam nach der ersten

Con troller steuert

FormulaPi-Rennserie mit dem YetiBorg auf. „Viele
stärkere Motoren
für draußen
an als bisherige
wollten die Roboter kaufen und bauen, sie aber auch

Boards
draußen oder im Gelände einsetzen. Also haben wir
und stärkste Roboter von PiBorg. „Er besitzt genug

Drehmoment, um sich beim Wechsel von Vollgas vor-
wärts auf Vollgas rückwärts auf flachem Untergrund
aufs Dach zu legen“, erzählt Tim. „Er kann alle mög-
lichen Oberflächen meistern – Gras, Teppich, Asphalt

– und fährt auch Hügel problemlos hoch.“

Der MonsterBorg basiert auf dem neuen Control-
ler-Board ThunderBorg von PiBorg. Dieses auch ein-
zeln erhältliche Board liefert einen Ausgangsstrom
von bis zu 5 A. Eine Laufzeit von bis zu drei Stun-
den (mit zehn AA-Akkus) wird längere Rennen in der
neuen MonsterBorg FormulaPi-Serie ermöglichen.

Die Nutzung des Raspberry Pi 3 sollte dabei „komple-
xeren Code wie etwa neuronale Netzwerke und selbst-
lernende Algorithmen ermöglichen“, wie Tim erklärt.

„Ich glaube, wir werden starke Kandidaten und tolle

Rundenzeiten zu sehen bekommen.“

8

04 • 2017
magpi.de

News

KI-KAMERA

Trends

KI-KAMERA MACHT

NUR GEWINNER-FOTOS

Diese Kamera auf Pi-Basis weiß, wann
ein Foto besonders gelungen ist
wei Kreative aus Belgien

Küche, Mixer. Sie gibt dem
haben eine Kamera ent-

Foto dann auf Basis der

Z wickelt, die dank eines Ähnlichkeit zu World
auf Raspberry-Pi-Basis laufenden

Press Photo-Gewin-

KI-Algorithmus „ausschließlich
nern eine Wertung. Falls
preiswürdige Fotos machen kann“.

das Foto zu mindestens 90

Die Trophy Camera soll erken-

Prozent mit dem Algorith-
nen, was ein preiswürdiges Foto
mus korreliert, der auf Basis
ausmacht, indem sie alle bishe-
der World-Press-Photo-Gewin-
rigen Gewinner des World Press
ner entstanden ist, lädt sie das Foto

Ohne Grafikanzeige soll

Photo of the Year-Award analysiert. automatisch auf die Website hoch.“
die Trophy Camera auf

Wenn man ein Foto mit der Kamera

„Die Idee für die Kamera ent-
ironische Weise demons-
trieren, dass eine KI Bilder
macht, soll die Kamera ausschließ-
stand aus Überlegungen zur Ent-
besser bewerten kann als
lich „Gewinnerfotos erkennen und
wicklung repetitiver visueller und

Menschen
speichern“.

ästhetischer Strategien im Foto-

Interessant dabei ist, dass die
journalismus“, erklärt Max Pin-
ren Ebene, die wir Menschen weder

Kamera keine Grafik anzeige
ckers, die andere Hälfte des Tro-
sehen noch verstehen können.“
besitzt, sondern lediglich ein zwei-
phy-Camera-Teams, der derzeit für

Die Trophy Camera liegt aktuell
zeiliges Textdisplay, das verrät,
seinen Doktortitel an der School of
in Version 0.9 vor. Für ein künfti-
ob das gerade aufgenommene Bild

Arts in Gent zu Tropen (bildlichen
ges Update hat Max große Pläne:

preiswürdig ist oder nicht. Für das

Ausdrücken) forscht. „Die Pres-

„Ich wollte die Kamera so bauen,

Projekt kommen ein Pi Zero W und
das Kameramodul v2 zum Einsatz.

Die Technik arbeitet auf einer

Unten Dries und

Auf die Frage, wie die Trophy

Max brauchten

Camera funktioniert, erklärt der
zehn Tage, um
die KI-gesteuerte
tieferen Ebene, die wir

Entwickler Dries Depoorter: „Hal-

Trophy Camera
ten Sie die Kamera auf Ihr Motiv
zu bauen. Sie ist
derzeit im Tetem

Menschen nicht verstehen
und drücken Sie den roten Knopf

Kunstraum in nie-

… auf der LCD-Anzeige erscheint
derländischen

Enschede
dann als Text, was die Kamera
sefotografie scheint sich zu einem
dass sie in Echtzeit arbeitet und
ausgestellt
sieht, etwa: Innenraum, Zimmer,
selbstreferenziellen Medium zu
nach preisgekrönten Bildern sucht.

entwickeln, das von Tropen, Arche-

Derzeit muss man noch den roten
typen und Popkultur-Referenzen

Knopf drücken. Aber die nächste
dominiert wird.“

Version wird einfach so arbeiten.“

Die Trophy Camera soll daher

Ursprünglich baute er die Trophy
eine ironische Demonstration der

Camera mit einem Pi 2, „aber dann
mangelnden Kreativität dessen
kam der Pi Zero W heraus, und
sein, was eigentlich ein äußerst
ich habe sofort bestellt“. Alles ins
kreatives Medium sein sollte.

Gehäuse zu bekommen, war nicht

Aber kann eine KI starke Bil-
einfach, „deshalb ist der Akku
der von schlechten unterschei-
ziemlich klein“. Der Bau hat insge-
den? Dries erklärt, „die Technik in
samt zehn Tage gedauert. Zu sehen
der Kamera sucht nach Mustern in
ist die Trophy Camera im Tetem,

Fotos und generiert eigene Stan-

Niederlande, noch bis 30. Juli. Wei-
dards zu ihrer Bewertung, funk-
tere Informationen (auf Niederlän-
tioniert aber auch auf einer tiefe-
disch): magpi.cc/2pXK6sw.

magpi.de

04 • 2017

9

D

Programm-Code

Trends WORDPRESS
auf Heft-DVD

BLOG IN A BOX

Sofort loslegen: WordPress fertig vorkonfiguriert für den Raspberry Pi ie haben zufällig eine
microSD-Card parat und

S kennen WordPress? Na
prima, dann legen Sie doch gleich
mit „Blog In A Box“ los: Das neue

Tool wurde von Automattic spezi-
ell für den Raspberry Pi entwickelt,
der gleichen Firma übrigens, die
hinter WordPress.com steht.

Die kostenlose Software ver-
wandelt den Raspberry Pi in eine
eigenständige Blogging-Plattform,
die eng an das beliebte Webblog-
und Content-Management-System

Oben Der Installer transferiert WordPress auf

WordPress angelehnt ist.

glied von Automattic, im Gespräch. eine microSD-Karte und kümmert sich um Was Blog In A Box so interes-

„Das Ausprobieren und Lernen
die optimale Konfiguration der Software
sant macht: Es greift nahtlos auf
stehen dabei im Vordergrund.

die Raspberry-Pi-Hardware zu.

Wir wollen, dass die Leute damit
bar. Damit lässt sich WordPress

Sie können damit vollautomatisch
experimentieren. Alles ist Open
vorab konfigurieren, etwa um das

Bilder mit dem Kameramodul auf-

Source“, betont er.

WLAN einzurichten oder Passwör-
nehmen oder die Daten des „Sense

HAT“ abrufen und diese veröffent-

Mit Blog In A Box lassen
lichen. Mit dem Sense Hat lassen
sich Luftdruck, Luftfeuchtigkeit
sich Messdaten bequem im
und Temperatur messen – ebenso
wie Bewegungen.

Internet veröffentlichen

„Wir wollten unbedingt eine
arbeitsfähige WordPress-Version
für den RasPi entwickeln,“ erklärt

Der Installer ist für Mac OS X,
ter zu vergeben. Danach schreibt
uns John Godley, ein Teammit-

Windows sowie Linux verfüg-
der Installer eine Image-Datei auf
die microSD-Karte. „Booten Sie
von dieser Karte und Sie haben ein
arbeitsfähiges WordPress-System,
inklusive MySQL, PHP und Nginx –
alles ist bereits installiert und kon-
figuriert“, freut sich John. Nach
dem Booten steht WordPress unter
bloginabox.local bereit.

Sie finden den Installer im Netz
unter https://inabox.blog oder
auf DVD D. Ein Assistent führt Sie
durch die Installation. Er lädt zu

Beginn die aktuelle WordPress-
und Blog-in-a-Box-Version aus
dem Internet. Danach folgt die

Konfiguration des Blogs.

Links Blog In A Box eignet sich zum Beispiel,
um aktuelle Messdaten einer Wetterstation
fortlaufend ins Internet zu übertragen

10

04 • 2017
magpi.de

RX300 THIN CLIENT

Trends

RX300 PI ZERO W

THIN CLIENT IN ZAHLEN

Eine deutsche Firma ermöglicht Zugriff auf

Windows und Cloud Computing mittels Pi 3

250.000
ie deutsche Firma NCom-
puting, die auf Desktop-

D Virtualisierung speziali-
siert ist, hat kürzlich einen Thin

WELTWEIT

Client auf Basis eines Raspberry

Pi 3 vorgestellt. Thin Clients sind
kleine Computer, die auf einen

VERKAUFT

Server angewiesen sind, üblicher-
weise mit einer cloudbasierten

Young Song, CEO von NCompu-

PC- oder Virtualisierungsumge-
ting, erklärt: „Unsere Vision ist

BIS MAI
bung. Der Server liefert dabei die
es, einfach zu bedienende, leis-
benötigte Rechenleistung, der Thin
tungsstarke und zentral verwal-

Client nur das Interface. Der RX300
tete Computing-Lösungen noch
unterstützt unter anderem virtu-
günstiger zu machen. Der Rasp-
elle Desktops von neun Windows-
berry-Pi-Einplatinencomputer ist

Versionen, darunter Windows 10
berühmt für seine Innovationen,

5 MONATE
und Windows Server 2016.

seine Größe, seine Vielseitigkeit

„Der Raspberry Pi hat in der
und seine Wirtschaftlichkeit und

SEIT DER

IT-Branche einen guten Ruf als
ist damit der perfekte Thin Client.

robustes und zuverlässiges Gerät

Gepaart mit vSpace Pro können

EINFÜHRUNG
und ist damit zunehmend auch für
wir liefern, was IT-Administra-
den Einsatz in Unternehmen inte-
toren brauchen und unsere End-
ressant,“ erklärt Christos Golias,
kunden haben wollen.“

Vertriebsleiter der ebenfalls deut-

Der RX300 hat zwei Boot-Modi:

schen Tarox AG. „Die Virtuali-

Thin-Client-Mode oder Rasp bian.

13 NEUE
sierungsumgebung der Software

Er kostet ca. 100 US-Dollar plus
vSpace Pro 10 von NComputing,

Steuern. Der Preis beinhaltet eine
verbunden mit dem Preis eines

Jahreslizenz der Virtualisierungs-

DISTRIBUTOREN

RX300, ist eine attraktive Lösung.“
software vSpace Pro 10.

Der RX300 ist ein Thin-Client- Computer,

FÜR PI ZERO W
der Zugang zu cloudbasierten

Windows-Versionen ermöglicht

4.000

VERKAUFTE ZERO W

AN EINEM TAG
magpi.de

04 • 2017

11

Trends WETTBEWERB

ASTRO PI EU

FORSCHT AUF DER ISS

Volles Engagement: ESA-Astronaut Thomas Pesquet wirbt für den Einsatz des Astro Pi er Weltraum, unendliche
in den nächsten Monaten an Bord
code der Sieger wird übrigens von

Weiten: Nein, hier ist nicht der ISS laufen werden.

der Erde per Space-to-Ground-

D die Rede vom Raumschiff In der langen Liste der Gewinner Link zur ISS transferiert.

Enterprise, sondern von der Inter-
taucht auch ein deutsches Team

Der hier unten im Bild vorge-
national Space Station (ISS) und
auf: nämlich die Schülergruppe
stellte französische ESA-Astronaut
der europäischen „Astro-Pi-Chal-
lenge“. Ins Leben gerufen wurde

Lasst uns gemeinsam das
der europäische Wettbewerb von
der European Space Agency (ESA),

Weltall erforschen, es lohnt

CNES und der Raspberry Pi Foun-
dation. Nun stehen nach einer
sich für alle Menschen
langen Auswahlprozedur endlich

Bild unten Thomas
die glücklichen Sieger fest.

Pesquet führt den

Astro Pi an Bord der

Die gestellte Aufgabe: Studen-

„Behringersdorf Space Center

Thomas Pesquet ist einer derjeni-

Raumstation vor.

ten und Schüler aus ganz Europa

(BSC)“ des Labenwolf-Gymnasi-
gen, der an der Auswahl beteiligt

Foto: ESA (European

Space Agency)

sollten Programme schreiben, die
ums in Nürnberg. Der Programm-
war. Er kehrte vor Kurzem wieder

12

04 • 2017
magpi.de

ASTRO-PI-CHALLENGE

Trends

SOCIAL TRENDS

Diese Themen bewegten die
deutschsprachige Community

MALWARE
facebook.com/groups/rpi.de

Für großen Wirbel sorgte die Cryptomining-Malware

Muldrop in der deutschen Facebook-Gruppe. Dabei ist
den meisten Nutzern klar, dass auch ein RasPi perma-
nent Updates erhalten muss.

zur Erde zurück. Thomas ist bereits

Bild oben Hier sehen Sie das Astro Pi in
seinem Schutzgehäuse an Bord der ISS.

sehr auf die Projekte der Wettbe-

Foto: ESA (European Space Agency)

werbsteilnehmer gespannt, denn:

„Wir haben so viele tolle Pro-
einer Atlas-V-Rakete zur Interna-
gramme erhalten. Uns fiel es wirk-
tionalen Raumstation gelangten.

lich nicht leicht, daraus die besten

In den kommenden Wochen wer-
für die ISS auszuwählen.“
den die Kollegen von Thomas ein

Der Code läuft nicht auf han-
waches Auge auf „Ed“ werfen: Auf
delsüblichen Raspberrys, sondern
diesem Astro Pi läuft der von den
auf speziellen, für den rauen Welt-

Schülern und Studenten geschrie-

PI ZERO W
raumbetrieb „gehärteten“ Geräten
bene Code im Dauerbetrieb. Derweil
magpi.cc/2lylJhX

– der kosmischen Strahlung wegen.

kümmert sich „Izzy“ um andere

Zwei Modelle kommen zum Einsatz:

Experimente. Im September star-

Große Beachtung in der Google-Plus-Community
nämlich die „Ed“ und „Izzy“ getauf-
tet eine weitere Astro-Pi-Aktion:

fand die Story der Pi Foundation über den neuen
ten Astro-Raspis, die bereits 2015

„Lasst euch überraschen“, meint

Pi Zero W. Allerdings fragten sich viele Nutzer in
mit einem Versorgungsflug an Bord

Thomas augenzwinkernd.

Deutschland, Österreich und der Schweiz: „Wo und
wann können wir den neuen Mini-Pi kaufen?“

DIE GEWINNER

Die Jury des Astro-Pi-Wett be-

Die Raspberry Pi Foundation dankt
werbs zeigte sich beeindruckt:

bei dieser Gelegenheit allen Teil-

Die Programme, die eingereicht
nehmern! Um den Upload des
wurden, zeichnen sich durch

Codes zur Internationalen Raum-
ihr hohes Niveau aus – umso
station kümmert sich die ESA
schwerer fiel die Endauswahl.

(European Space Agency) . Nach

Um möglichst vielen Teilneh-

Abschluss der Experimente schickt
mern eine Chance zu geben, wur-
die ESA die Resultate zur Erde.

NETZDURCHSUCHUNG
den einige Teams mit dem Status

Die Liste mit sämtlichen

„Highly Commended“ ausgezeich-

Gewinnern finden Sie auf der

#NetzDG
net. Sie dürfen ihre Programme

Seite der Raspberry Pi Founda-

Sehr viel Widerspruch auch aus Reihen der Ras-
ebenfalls auf der ISS laufen lassen.

tion, siehe magpi.cc/2o6mZwA.

Pi-Community erntete das Netzdurchsuchungs-
gesetz von Bundesjustizminister Heiko Maas.

magpi.de

04 • 2017

13

6 x MagPi +

Pi Zero W sichern!

Ihre Vorteile

Mehr Komfort

Pünktliche, bequeme und kostenlose Lieferung

Eine spannende DVD in jedem Heft

Ein Heft gratis

Bezahlen Sie bequem per Bankeinzug und Sie erhalten
zusätzlich eine Ausgabe MagPi gratis!

Attraktives Dankeschön

Freuen Sie sich auf ein hochwertiges Produkt als Dankeschön!

Kiosk_985_JA_MagPi_04_17.indd

S014-015_EA-JA.indd 14

Alle Seiten

29.06.2017 09:41:15

Raspberry Pi Zero W

• 1 Ghz, Single-core Prozessor • 512MB RAM • 802.11 b/g/n WLAN

• Bluetooth 4.1 & Bluetooth Low Energy (BLE) • Mini-HDMI für 1080p60-Video-Output • micro USB für Stromversorgung • micro

USB On-The-Go Port • 40-Pin-GPIO • CSI Kamera-Port • Broadcom

VideoCore IV GPU • Composite Video und Reset Header (unbestückt)

• MicroSDXC-Kartenleser • Inklusive USB-Konverter-Kabel, HDMI-

Konverter und Kamera-Kabel • Zuzahlung nur 1 € inkl. MwSt. und Porto Brandneu!

Ausfüllen und

Ja, ich bestelle 6 x MagPi für nur 54,80 € (inkl. MwSt. und Porto). M17MA04P4
abschicken

Zunächst für ein Jahr (6 Ausgaben). Das Dankeschön erhalte ich umgehend nach Zahlungseingang. Das Abo kann ich nach Ablauf eines Jahres jederzeit wieder in Textform kündigen. Es genügt eine kurze Nachricht von mir an den CHIP Aboservice, Postfach 225, 77649 Offenburg oder per E-Mail an abo@chip.de. Dieses Angebot gilt nur in Deutschland (Konditionen für das Ausland bitte auf Anfrage unter abo@chip.de) und nur solange der Vorrat reicht. Für Zahlungen per SEPA-Lastschrift aus oder unter
dem Ausland oder bei Bestellungen ins Ausland hilft Ihnen unser Aboservice unter 0781/6394526 oder per Mail an abo@chip.de gerne weiter.

Ich bezahle bequem durch Bankeinzug, erhalte eine Ausgabe gratis vorab und mein services.chip.de/

Dankeschön sofort SEPA-Lastschriftmandat: Ich ermächtige die CHIP Communications GmbH, wiederkehrende Zahlungen von meinem Konto mittels Lastschrift einzuziehen.

Zugleich weise ich mein Kreditinstitut an, die vom Verlag auf mein Konto gezogenen abo/pi-juli

Lastschriften einzulösen. Hinweis: Ich kann innerhalb von acht Wochen, beginnend mit Name, Vorname
dem Belastungsdatum, die Erstattung des belasteten Betrags verlangen. Es gelten dabei die mit meinem Kreditinstitut vereinbarten Bedingungen
bestellen

D E

Straße, Haus-Nr.

IBAN

Ihre BLZ

Ihre Konto-Nr.

Zahlungsempfänger:

So einfach können Sie bestellen:

CHIP Communications GmbH, St.-Martin-Straße 66, 81541 München

(Telefon) 0781-639 45 26

PLZ,Ort

Gläubiger-ID: DE11ZZZ00000186884

Mandatsreferenz wird separat mitgeteilt.

(Fax) 0781-846 19 1

Mit folgender Kreditkarte:

VISA

Eurocard/Mastercard

(E-Mail) abo@chip.de

Telefon/Handy

Geburtsdatum

(URL) services.chip.de/abo/

Kreditkarten-Nr.

Prüfnr.

pi-juli

Gültig bis:

E-Mail

Weitere Angebote finden Sie unter

Ja, ich bin einverstanden, dass die CHIP Communications GmbH mich per E-Mail über interessante Vorteilsangebote informiert. Meine Daten werden nicht an Dritte weiter-und erhalte als Dankeschön dazu
www.chip-kiosk.de/chip
gegeben. Dieses Einverständnis kann ich selbstverständlich jederzeit widerrufen.

Raspberry Pi Zero W + HDMI-Konverter

Sie haben ein gesetzliches Widerrufsrecht, die Belehrung können Sie sowie USB- und Kamera-Kabel (CA30),
unter www.chip-kiosk.de/widerrufsrecht abrufen.

Zzgl. 1 € Zuzahlung

Datum

Unterschrift

CHIP erscheint im Verlag: CHIP Communications GmbH,

St.-Martin-Straße 66, 81541 München.

Geschäftsführung: Thomas Koelzer (CEO), Philipp Brunner (COO)

Handelsregister: AG München, HRB 136615. Die Betreuung der

Abonnenten erfolgt durch: Abonnenten Service Center GmbH, CHIP

Coupon ausschneiden und schicken an: CHIP Aboservice, Postfach 225, 77649 Offenburg Aboservice, Hubert-Burda-Platz 2, 77652 Offenburg. Der Verlag behält sich vor, Bestellungen ohne Angabe von Gründen abzulehnen.

oder im Internet bestellen unter: services.chip.de/abo/pi-juli M17MA04P4

S014-015_EA-JA.indd 15

19.06.2017

29.06.2017 10:31:41

09:41:15

Trends NEWS

NEXT-GEN ZX

SPECTRUM

Der Raspberry Pi Zero sorgt für
mehr Power bei schnellen Games
in Rechner für unter

100 englische Pfund –

E mit dieser Kampfan-
sage brachte Clive Sinclair 1981
mit dem ZX81 Spectrum den ers-
ten Billig-Heimcomputer auf den

Markt. Dieser erfreute sich auch in

Deutschland und Österreich größ-

Shop bestellen (magpi.cc/2rc3FjT).

ter Beliebtheit. Bald darauf folgte

Wer basteln möchte, erhält das
der ZX-Spectrum.

Board alleine – ohne Gehäuse und

Als erfolgreiches Kickstarter-

Peripherie –für rund 180 Euro.

projekt kehrt der Retro-Compu-

Doch was bekommt man nun fürs

Als Beschleunigungsboard

Oben Das neue Gehäuse ist auf modern
getrimmt, die Platine soll aber auch in
einen alten ZX Spectrum passen
ist der RasPi Zero perfekt
schalten, falls man keinen RasPi
ter nun zurück, genauer gesagt als

Geld? Der ZX Spectrum Next soll
hat. Henrique Olifiers, Mitent-

„ZX Spectrum Next“. Das Finan-

Zum Beispiel abwärtskompati-
wickler des Spectrum Next, meint
zierungsziel von 250.000 Pfund hat
bel sein, das bedeutet, die heiß-
dazu, dass Spiele wie Hard Dri-

Unten Der Pi Zero
die Kampagne fast aus dem Stand
geliebten alten Programme laufen
vin’ und Starstrike II auf der Ori-
verbindet sich über
eine spezielle
geschafft. Mittlerweile kann man
weiter. Neu sind unter anderem
ginal-Hardware wegen der nied-

Kontaktleiste mit
den Rechner im schicken Gehäuse

HDMI, ein schnellerer Prozessor,
rigen Framerate unspielbar seien.

der Platine des

ZX Spectrum Next
ganz regulär für rund 400 Euro im
ein optionales WLAN-Modul sowie

„Drückt einfach den Boost-Knopf,
ein verbessertes Menüsystem, um
schon laufen alle diese Klassiker

Spiele flotter zu laden.

rund“, empfiehlt er.

Der Spectrum Next soll, so

Für Spiele sei das Gerät gerüs-
die Idee, kompatibel zur alten
tet, ergänzt Henrique: „Man kann

ZX-Spectrum-Hardware sein.

Games auf SD-Karte speichern

Im Maschinenraum des Rechners
und wir haben 1 MByte RAM an
werkelt ein SLX16-Prozessor als

Bord. Wer will, rüstet bis zu 2,5

Hauptantrieb. Wer will, baut ein

MByte auf.“ Spieler dürften sich

Beschleunigungsboard ein - das
auch über den PS/2-Port für die

Raspberry Pi Zero. Preiswerter

Maus freuen, sagt Henrique und
kann ein Grafik adapter nicht sein.

betont: „Wir unterstützen VGA

Hinweis: Der Spectrum Next
und HDMI, jeder Monitor lässt
lässt sich in einen „boost mode“
sich anschließen.“

16

04 • 2017
magpi.de

3G HAT

Trends

SOCIAL TRENDS

Diese Themen bewegten die
internationale Community

MOBILES

DIE NES-KONSOLE AUS LEGO
bit.ly/1iLi2DX

INTERNET PER Das Kit eines spanischen Anbieters enthält neben den nötigen Lego-Steinen auch eine Stein-für-3G HAT Stein-Anleitung, um ein Retro-Nintendo-NES-

Case zu bauen. Wer die Steine schon hat, findet
hier eine deutsche Anleitung: bit.ly/2tkCQHO.

3G-System für den Raspberry Pi 2, 3 und Zero
as britische Unterneh-

GPS- und GLONASS-Standards.

men Linkwave hat einen

Beide Versionen unterstützen die

D 3G-HAT vorgestellt, der mobilen Daten-Standards UMTS, mit den Modellen 2, 3, und Zero

HSDPA, HSUPA und HSPA+ für

PI WARS 2017
kompatibel ist. Der neue HAT
schnelle Up- und Downloads.

heißt PiloT und soll die Entwick-

Der PiloT wird über den Pi mit-
bit.ly/2snhooh
lung Pi-basierter IoT-Geräte
tels eines kurzen mitgeliefer-

Veteranen und Neuankömmlinge konkurrierten
erleichtern und beschleunigen.

ten USB-auf-microUSB-Kabels

Anfang April in Pi Wars. Der ExaBot des Exa Coding

Praktisch: Der neue PiloT

Clubs gewann den Schulwettbewerb, während

Brian Corteils Bot „2 wheels or not 2 wheels“ Cham-
pion in der Kategorie „Pros und Veteranen“ wurde.

von Linkwave bringt den Pi

TELESKOP-STATIV
nahezu überall ins Internet

MIT TRACKING
bit.ly/2t1ceMp

Mit etwas Feinwerktechnik,

Es gibt zwei Versionen des
mit Strom versorgt. Bei Verwen-
einem Rasp berry Pi 3 und etwas

PiloT. Das Standardmodell mit
dung im CDC-ECM-Modus über

Python hat Mike Hamende

HL8518-Modul kostet rund 110

USB präsentiert sich das PiloT als

(aka 8PumpkinDonuts) selbst

Euro, das zweite Modell mit

Ethernet-ähnliches WAN-Gerät
ein Teleskop-Stativ mit auto-

HL8548-G-Modul schlägt mit 125
und vereinfacht die Steuerung von
matischer Ausrichtungsfunk-

Euro zu Buche. Es bietet Satel-

Datensitzungen. Weitere Details
tion gebaut. Siehe auch MagPi
litenortung (GNSS) nach SiRF V,
unter bit.ly/2soxqza.

03/2017, Seite 36.

magpi.de

04 • 2017

17

Schwerpunkt OBJEKTORIENTIERTE PROGRAMMIERUNG

SO EINFACH GEHT

OBJEKT-

ORIENTIERT

PROGRAMMIEREN

Verschaffen Sie sich den ultimativen Durchblick in Sachen OOP

18

04 • 2017
magpi.de

D

Über eine Stunde

Videotraining zu Python auf

EINFÜHRUNG

Schwerpunkt

Heft-DVD c
eutzutage ist beinahe sämtlicher Code, mit
dem Sie zu tun haben, mittels „objekt

H orientierter Programmierung“ – kurz

OOP – geschrieben. Wenn Sie einmal damit
gearbeitet haben, erkennen Sie schnell, dass

OOP die sinnvollste Methode ist, Programme
zu schreiben. Denn das Prinzip ist intuitiv:

Der Code wird genutzt, um virtuelle Objekte
zu erzeugen. Sie repräsentieren Dinge aus
der echten Welt, etwa einen Hund, Möbel
oder die Räder eines Autos.

Solche Objekte enthalten zum einen alle

Variablen, die sie definieren. Bei einer Person wären das Größe, Alter und Name. Zum anderen enthalten sie alle Funktionen, die
sie beherrschen müssen. Ein Hund kann laufen, springen oder rennen. Ein Rad dreht sich.

OOP bündelt also Variablen und Funktionen. Dies macht es leicht, Code von einem Programm in ein anderes zu kopieren. Das geschieht bequem mithilfe von Importbefehlen. So können

Sie auf Basis der Vorarbeit anderer Programmierer
eigene Projekte in kürzester Zeit umsetzen.

Know-how importieren

Am Anfang des Codes vieler Programme finden Sie
eine Reihe von Importbefehlen, die Teile aus anderen Programmen in den eigenen Code kopieren. Dabei ist die objektorientierte Programmierung sicher nicht
perfekt. „Das Problem bei OOP ist, dass dort oft ein
ziemlicher Rattenschwanz dranhängt“, meint Joe

Armstrong, Erfinder der Programmiersprache Erlang.

ADIEU,

„Man wollte nur eine Banane. Stattdessen bekommt
man einen Gorilla mit einer Banane in der Hand – plus
den Dschungel.“ Zudem gibt es eine Reihe abgehobener Begriffe bei der OOP, darunter „Datenkapselung“

ALTE SCHULE
oder „Instanzierung“. Das lässt die Sache komplizierter wirken als sie ist und schreckt viele Einsteiger ab.

Sie sehen: Objektorientiertes Programmieren ist

Wenn Sie mit dem Coden anfangen, dann lernen Sie
etwas sperrig und beißt sich manchmal in den eige
höchstwahrscheinlich zuerst die prozedurale Program-
nen Schwanz. Viele Hacker, Bastler und selbst Pro
mierung kennen. Mit dieser altbewährten Methode
grammierer haben Probleme, das Konzept zu verin
bestimmen Sie sämtliche Variablen am Anfang des
nerlichen. Doch auch ohne OOP zu verstehen, kann

Programms. Danach schreiben Sie Definitionen für die
man sehr weit kommen. Junge Programmierer fin

Funktionen, die sich später immer neu aufrufen lassen.

den immer öfter über Scratch den Einstieg in die Pro

Die objektorientierte Programmierung nimmt all
grammierung. Software wie diese ist bereits objekt
diese Bausteine – also Variablen, Funktionen, Schleifen,
orientiert und in Raspbian sowie Debian mit dem

Bedingungen – und bündelt diese in eigenständigen, in

PixelDesktop enthalten. Sie soll Schülern das Pro
sich geschlossenen Blöcken.

grammieren anfangs möglichst einfach machen.

Es gibt viele Coder, die prozedurale Skripte schrei-

In Scratch heißen Objekte „Sprites“, angelehnt an
ben und dennoch Objekte aus Modulen und Paketen
frühe Videospielfiguren. Der Hintergedanke dabei
importieren. Man kann also auch Objekte nutzen, ohne
ist, dass Jugendliche und Kinder, die mit Scratch
es wirklich zu bemerken. So finden sich in fast jeder
aufwachsen, sich gleich wohlfühlen, wenn sie spä
modernen Programmiersprache einige Fragmente aus
ter den Objekten in Python begegnen.

der objektorientierten Programmierung.

magpi.de

04 • 2017

19

Schwerpunkt OBJEKTORIENTIERTE PROGRAMMIERUNG

WÜRFELSPIEL

IN SCRATCH

So erstellen Sie ein Videospiel, in dem Spieler
per Würfelglück gegeneinander antreten
uerst erstellen Sie probehalber ein kleines

Spiel in Scratch. Auf den nachfolgenden

Sie

Z Seiten zeigen wir Ihnen dann, wie Sie das
brauchen gleiche Spiel in Python programmieren.

Unser Würfelspiel basiert auf „Bunco“

> Raspbian

(magpi.cc/2h0ZNcj), das vor allem in Nordame-
mit PIXEL
rika gern gespielt wird. Für unser Beispiel verein-

> Scratch-2.0-
fachen wir allerdings die Regeln ein wenig: Jeder

Konto

Spieler wirft drei Würfel und zählt deren Augen.

Die höchste Punktzahl gewinnt. Um das in Scratch
umzusetzen, benötigen Sie zwei Spieler. Jeder wür-
felt, errechnet die Summe und vergleicht diese mit

>SCHRITT 01
der Summe des anderen Spielers. Bei derselben

Scratch öffnen

Punktzahl gibt es einen Gleichstand. Ansonsten

Starten Sie Ihren Browser und öffnen Sie die Seite
gibt der Sieger die Botschaft „Ich gewinne!“ aus.

scratch.mit.edu, um Scratch 2.0 zu starten. Benutzen

Auf diese Weise lernen Sie das Konzept lokaler

Sie nicht Version 1.4, da diese keine Klonfunktion hat,

Variablen kennen. Jeder der Spieler („Sprites“)

die für diesen Workshop nötig ist. Loggen Sie sich ein
hat drei Würfel (Variablen). Die Spieler können
oder erstellen Sie einen kostenlosen Account. Legen
sich dabei aber die Variablen anschauen, die für

Sie ein neues Projekt an – ein neuer Sprite in Form
den jeweils anderen als lokal gelten.

einer Katze taucht auf. Nennen Sie ihn „player1“.

Das Gegenteil einer lokalen Variable ist eine glo-
bale Variable. Das würde bedeuten, dass beide Spie-
ler zur gleichen Zeit dieselben drei Würfel werfen

>SCHRITT 02
würden. Das Ergebnis wäre stets ein Gleichstand.

Drei Würfel

Scratch funktioniert dabei ein wenig anders als

Klicken sie auf »Daten« und legen Sie eine neue

Python: Darin erstellen Sie zuerst einen Sprite und

Variable an. Geben Sie ihr den Namen dice1 und wäh-
duplizieren diesen später. In Python erstellen Sie
len Sie die Option »Nur für diese Figur«. Die Varia-
eine Blaupause für Ihre Sprites – auch „Klasse“
ble erscheint in der Palette. Wiederholen Sie das für
genannt – und erstellen anhand dieser die zwei
dice2 und dice3. Erstellen Sie schließlich eine vierte Objekte, die die Spieler darstellen. Doch dazu spä-

Variable namens total. Vergessen Sie nicht, bei allen
ter. Jetzt bauen wir Bunco erst einmal in Scratch.

den Haken bei „Nur für diese Figur“ zu setzen.

20

04 • 2017
magpi.de

SCRATCH

Schwerpunkt

>SCHRITT 05

Zahlen vergleichen

Bisher gibt es nur einen Sprite. In Schritt 06 fügen Sie
einen zweiten hinzu, damit die Punkte der beiden ver-
glichen werden können. Klicken Sie auf „Fühlen“ und
suchen Sie die x-position von player1. Ändern Sie x-position in total. Ziehen Sie diesen Block in die Größer-als-Gleichung in der falls-Klammer.

>SCHRITT 03

Der große Wurf

Klicken Sie auf »Ereignisse« und ziehen Sie »Wenn

(Flagge) angeklickt« nach rechts in den Skript-
bereich. Fügen Sie dann dreimal setze diceN auf

Zufallszahl von 1 bis 6 hinzu. Darunter bauen

Sie setze total auf dice1 + dice2 + dice3 ein.

Kombinieren Sie dazu zwei dieser Blöcke: () + ()

>SCHRITT 06

Zweiter Spieler

Der erste Spieler ist nun fertig. Jetzt klonen Sie dessen

Sprite einfach per »Rechtsklick | Duplizieren«. Der Name
wird dabei automatisch auf „player2“ gestellt. Klicken Sie
wieder auf den ersten Spieler und ändern Sie den Block
total von player1 in total von player2 (siehe unten). Jetzt werden die Punktzahlen der beiden Spieler verglichen. Die
höhere Zahl gewinnt. Klicken Sie auf die grüne Flagge, um

>SCHRITT 04
das Programm zu starten und zu sehen, wer gewinnt.

Sprachausgabe

Ziehen Sie einen sage-Block hinein und ändern Sie
ihn in sage total für 1 Sek. Wiederum darunter ziehen Sie einen falls-Block. Ziehen Sie in das freie Feld das Größer-als-Zeichen. Links der Gleichung muss die

Variable total stehen. Ein weiterer sage-Block innerhalb der falls-Klammer verkündet den Sieg.

SICHTBARKEIT

Das Prinzip des Sichtbarkeitsbereichs von Variablen – auch Scope genannt –
spielt eine wichtige Rolle in OOP. In Scratch ist das so einfach, dass man es kaum bemerkt: Beide Spieler haben ihre eigenen Variablen dice1, dice2 und dice3 sowie total erhalten. Diese sind lokal. Gibt player1 seinen Wert total aus, ist es nur dessen Wert. Würden beide Spieler auf dieselbe Variable total zugreifen, wäre sie global.

magpi.de

04 • 2017

21

Schwerpunkt OBJEKTORIENTIERTE PROGRAMMIERUNG

WÜRFELSPIEL

IN PYTHON

Selbes Spiel, andere Sprache

KLASSEN
ie einfache Version des Würfelspiels „Bunco“
läuft wunderbar in Scratch. Das gleiche Spiel

UND INSTANZEN

D bauen wir nun mit Ihnen in der Programmier-

Einer der größten Unterschiede zwischen den Sprites in Scratch und Objek-sprache Python auf. So bekommen Sie ein gutes Ver-
ten in Python ist, dass die Objekte mithilfe von Klassen erstellt werden. Dieser ständnis der Funktionsweise von Objekten.

Code fungiert als Blaupause für das jeweilige Objekt.

Stellen Sie sich zunächst vor, wie Sie vorgehen wür-

Wenn Sie in Scratch bereits vorhandene Sprites duplizieren, besitzt die den, wenn Sie dieses Programm prozedural schreiben

Kopie dieselben Funktionen wie das Original und erhält ihre eigenen Variab-müssten: Es gibt ein Modul namens random, mit dem
len. In Python und anderen Sprachen läuft das etwas anders: Objekte werden Sie Zufallszahlen generieren können. Dieses wür-nicht direkt erstellt, sondern über Klassen. Das hat nichts mit der Schule zu den Sie importieren. Dann erstellen Sie eine Liste für
tun – gemeint sind Kategorien von Gegenständen, die ähnliche Eigenschaften jeden einzelnen Spieler. Mit der Funktion randint
aufweisen. Etwa wie die erdähnlichen Planeten der „Klasse M“ aus Star Trek.

generieren Sie drei Zahlen zwischen eins und sechs.

Haben Sie einmal eine Klasse erstellt, nutzen Sie diese fortlaufend, Dann käme if else mit der Funktion sum() zum um Objekte zu erschaffen. Diese heißen „(Objekt)-Instanzen“. Alle Instan-Einsatz, um die Punkte jedes Spielers zu berechnen.

zen derselben Klasse greifen dann auf dieselben Variablen und Funkti-Mit dem Code rechts aus der Datei bunco_procedural.

onen zu. Letztere werden übrigens „Methoden“ genannt. Statt also wie py (auch auf DVD D) können Sie das Spiel testen.

in Scratch eine Kopie eines Sprites zu erstellen, legen Sie in Python eine Sie werden zwei Probleme mit dem prozeduralen
zweite, dritte, vierte Instanz einer Klasse an. Diese Technik ist zeitsparend Code finden: Das Würfelspiel „Bunco“ ist in Wirk-und hält den Code übersichtlich.

lichkeit deutlich komplexer als eben beschrieben. Es

22

04 • 2017
magpi.de

D

Über eine Stunde Video-
training zu Python auf Heft-DVD c

PYTHON

Schwerpunkt
wird sechs Runden lang gespielt. 21 Punkte bekommt

Sprache
ein Spieler, der drei gleiche Augen wirft, die die aktu-
bunco_procedural.py >PYTHON
elle Spielrunde repräsentieren – also drei Einsen in
der ersten Runde oder drei Zweien in der zweiten.

DOWNLOAD:

Keine Angst! So komplex wird unser Spiel nicht.

import random
bit.ly/2sSK35t

Allerdings werden wir verschiedene Spielertypen ein-

D
bauen, die ein wenig schummeln. Im Anschluss lassen
player1_dice = []

wir die virtuellen Gegner Tausende Runden spielen
player2_dice = []

Code
und küren dann den Sieger.

auf Heft-DVD c

Solche Sachen wären mit prozeduralem Program-
for i in range(3):

mieren unheimlich schwierig umzusetzen. Das zwingt
player1_dice.append(random.randint(1,6))

zum Umdenken. Die Lösung für das Problem: OOP.

player2_dice.append(random.randint(1,6))

Der objektorientierte Ansatz
print("Player 1 rolled" + str(player1_dice))

print("Player 2 rolled" + str(player2_dice))

Statt eine Liste von Variablen am Anfang zu schrei-
ben, erstellen Sie eine Klasse namens Player. Der
if sum(player1_dice) == sum(player2_dice):

Code in bunco_oop.py steht für einen Würfelspieler.

print("Draw")

Diesen nutzen Sie, um einen zweiten Spieler zu erstel-
elif sum(player1_dice) > sum(player2_dice):

len – siehe Kasten „Klassen und Instanzen“. Genau
print("Player 1 wins")

wie im prozeduralen Code importieren Sie zunächst
else:

das Modul randint. Danach geben Sie den Spie-
print("Player 2 wins")

lern Eigenschaften, indem Sie eine Klassendefinition
schreiben. Diese sieht wie folgt aus:

class Player:

bunco_oop.py

In dieser Definition findet sich eingerückter Code, der
from random import randint
dem Objekt „Player“ Eigenschaften gibt. Beachten

Sie, dass der Name der Klasse großgeschrieben wird,
class Player:

und anders als bei Funktionen kommt dieser ohne
def __init__(self):

Klammern aus. Als Erstes müssen Sie eine Liste ein-
self.dice = []

bauen, die die Würfel enthält, also dice = []. Wenn man es aber so schriebe:

def roll(self):

self.dice = [] # löscht die aktuellen Würfel
class Player:

for i in range(3):

dice = []

self.dice.append(randint(1,6))

…gäbe es ein Problem. Denn dies wäre gleichbedeu-
def get_dice(self):

tend mit der Funktion „Für alle Figuren“ in Scratch.

return self.dice

Jeder neue Spieler würde also auf dieselben Wür-
fel zugreifen und somit dieselben Augen werfen. Also
player1 = Player()

muss das Äquivalent zu „Nur für diese Figur“ her.

player2 = Player()

Um diesen Effekt zu erzielen, müssen Sie die zuvor
genannte Liste dice = [] innerhalb einer skurrilen player1.roll()

Funktion namens __init__() verpacken. Das sieht
player2.roll()

dann in etwa so aus:

print("Player 1 rolled" + str(player1.get_dice()))

class Player:

print("Player 2 rolled" + str(player2.get_dice()))

def __init__(self):

self.dice = []

if sum(player1.get_dice()) == sum(player2.get_dice()):

print("Draw!")

Die Funktion __init__() startet, wenn Sie eine
elif sum(player1.get_dice()) > sum(player2.get_dice()):

Klasse zum Erstellen neuer Objekte heranziehen. Das
print("Player 1 wins!")

nennt man auch „Konstruktor“ oder „Initialisierer“.

else:

Jedes Mal, wenn Sie dann einen neuen Spieler erstel-
print("Player 2 wins!")

len, startet der Code __init__() automatisch und
magpi.de

04 • 2017

23

Schwerpunkt OBJEKTORIENTIERTE PROGRAMMIERUNG
erzeugt so einen neuen Satz Würfel. Der Begriff „self“

Die Funktionen eines Objekts heißen „Methoden“,
bedarf ebenfalls einer Erklärung: Variablen wie die Liste
erstellt werden sie aber auf dieselbe Weise. Es gibt
dice = [] werden normalerweise entsorgt, sobald eine viele verschiedene Arten von Methoden. Klassische Funktion endet oder von vorn beginnt.

Vertreter sind allerdings die sogenannten Änderungs-

Wenn Sie also nur den Befehl dice = [] einge-und Abfragemethoden oder „setter and getter“.

ben würden, würde die Liste von __init__() erstellt

Die Methode roll ist ein Setter, weil sie die dice
werden, sich aber dann sofort wieder in Luft auflö-
so ändert, dass sie drei zufällige Zahlen anzeigen. Ein
sen. In Python umgehen Sie dieses Problem mit dem

Getter wiederum holt die Variablen aus den Objekten

Begriff „self“, den Sie in die Klammern der Funktion
ab und spielt sie zurück. In unserem Beispiel genügt

__init__() hineinschreiben:

eine einzige Abfragemethode:

def __init__(self)

def get_dice(self):

return self.dice

Dann nutzen Sie self, gefolgt von einem Punkt, um
die Variable in dieser Version des Objekts zu sichern:

Auch dieses Prinzip mag anfangs befremdlich wirken.

Schließlich könnte man ja direkt in das Objekt hinein-
self.dice = []

gehen, um auf die Variablen zuzugreifen. In Python
ginge das zwar ohne Probleme, aber es wird gemein-

Später nutzen Sie self. in Funktionen, wenn Sie auf
hin als schlechter Stil angesehen, da der Sinn und
eine Variable zugreifen oder diese ändern wollen.

Zweck von objektorientierter Programmierung darin

Schreiben Sie dazu self in die Klammern:

besteht, dass die Objekte ihre Variablen geschützt vor
anderen Objekten beherbergen.

def roll(self):

Stattdessen schreiben Sie also Methoden oder

Funktionen, die die Variablen ändern und danach wie-

Kurioses Konzept: Die Funktion gibt eine Version von
der abholen. Gewöhnen Sie sich am besten gleich an
sich selbst an sich selbst weiter. Wie dem auch sei,
diese saubere Arbeitsweise. Ab jetzt nutzen Sie die
konzentrieren Sie sich lieber auf die Praxis:

Klassendefinition zum Erstellen von Objekten.

• Am Anfang jeder Klasse steht die spezielle Funktion namens __init__(self).

Objekte erschaffen

• Variablen müssen innerhalb von init stehen.

Die Objekte erschaffen Sie genau wie jede beliebige

Variable, nämlich mit dem Gleichheitszeichen (=).

• Erstellen Sie Variablen mit self. , etwa self.name Erstellen Sie so zwei Würfelspieler: oder self.age oder self.dice = [].

player1 = Player()

• Schreiben Sie self in die Klammern der Funktion, player2 = Player()

die Zugriff auf die Variablen benötigen.

Beachten Sie, dass player1 und player2 nicht „Vari-

• Nutzen Sie self. und den Namen der Variablen in ablen“ heißen, sondern „Instanzen“. Diese steuern
der Funktion, um diese zu nutzen.

Sie mit Punkten an. Schreiben Sie also den Namen der

Instanz gefolgt von einem Punkt und dann den Namen

Klar so weit? Machen Sie sich nicht zu viele Gedan-
der gewünschten Methode.

ken darum, warum, was, wie funktioniert. Das war der

Für unser Beispiel haben wir eine Methode namens
schwerste Teil, der Rest wird Ihnen mit etwas Übung
get_dice() erstellt, die die gespeicherten Wür-
leichtfallen. Weiter zu den anderen Funktionen!

fel zurückspielt. Auch hier wird wieder der Punkt
verwendet, also player1.get_dice(). Als Erstes

Würfel-Funktion
kommt aber die Methode roll zum Einsatz, damit
alle Spieler ihre Würfel werfen:

Nun, da Sie eine Klasse für die Würfel erstellt haben,
müssen Sie diese auch rollen lassen. Dazu erstellen
player1.roll()

Sie eine etwas gewöhnlichere Funktions-Definition:

player2.roll()

def roll(self):

Der Rest des Codes aus bunco_oop.py ähnelt dem
dice = [] # clears any current dice
aus der prozeduralen Version stark. Der Unterschied
for i in range(3):

ist, dass statt sum() zum Errechnen der Summe die
self.dice.append(randint(1,6))

Methode .get_dice() verwendet wird.

24

04 • 2017
magpi.de

PYTHON

Schwerpunkt

Vererbte Schummelei
bunco_module.py

D

Wie bereits erwähnt ist der Vorteil der objektorien-
from random import randint

Code
tierten Programmierung, dass Sie Hunderte oder gar
auf Heft-DVD c

Tausende Spieler erstellen können, die alle eigene
class Player:

Variablen besitzen. Momentan ist unser Spiel noch
def __init__(self):

relativ langweilig, da alle Teilnehmer dieselben Chan-
self.dice = []

cen haben. Wie wäre es mit ein paar unfairen Tricks?

Im nächsten Schritt erstellen wir einen Betrüger,
def roll(self):

bei dem einer der Würfel stets eine Sechs zeigt. Da
self.dice = [] # löscht die aktuellen Würfel
ein Schummler selten allein kommt, bauen wir noch
for i in range(3):

einen ein, der mit gezinkten Würfeln spielt: Diese zei-
self.dice.append(randint(1,6))

gen immer ein Auge mehr an als eigentlich geworfen
wurde – es sei denn, es war bereits eine Sechs.

def get_dice(self):

Beide Mogler würden die fairen Mitspieler in ein
return self.dice
paar Hundert Spielen locker besiegen. Aber welcher
von ihnen hat die besseren Aussichten? Um das her-
class Cheat_Swapper(Player):

auszufinden, müssen Sie eine Simulation abspielen,
def cheat(self):

die diese Spiele automatisch durchläuft.

self.dice[-1] = 6

Diese Betrugsmaschen implementieren Sie mit
einer Technik namens „Vererbung“. Dabei wird eine
class Cheat_Loaded_Dice(Player):

Klasse erstellt, die alle Eigenschaften einer ande-
def cheat(self):

i = 0
while i < len(self.dice):

Welcher der
if self.dice[i] < 6:

self.dice[i] += 1

Schummler wird
i += 1
wohl gewinnen?

ren Klasse übernimmt und ein paar eigene mitbringt.

bunco_single_test.py

Stellen Sie es sich so vor wie bei einem Kind, das die
große Nase vom Vater geerbt hat, aber die O-Beine
from bunco_module import Player
ganz von selbst entwickelt.

from bunco_module import Cheat_Swapper

Unsere kleinen Schummeleien werden dieselben
from bunco_module import Cheat_Loaded_Dice

Funktionen dice und roll tragen wie das „Eltern-
teil“. Bis dahin wäre noch alles fair, käme da nicht der
cheater1 = Cheat_Swapper()

buchstäbliche Cheat-Code hinzu.

cheater2 = Cheat_Loaded_Dice()

In dem Programm bunco_module.py rechts, das

Sie auch auf der Heft-DVD finden, wird die Klasse
cheater1.roll()

Player() samt ihrer zwei Kinder definiert:

cheater2.roll()

class Player:

cheater1.cheat()

class Cheat_Swapper(Player):

cheater2.cheat()

class Cheat_Loaded_Dice(Player):

print("Cheater 1 rolled" + str(cheater1.get_dice())) Objekte, die Eigenschaften von den Eltern erben, wer-print("Cheater 2 rolled" + str(cheater2.get_dice())) den mit demselben Oberbegriff für die Klasse gekennzeichnet. Der Name der Elternklasse steht dabei hin-
if sum(cheater1.get_dice()) == sum(cheater2.get_dice()):

ten in Klammern.

print("Draw!")

Nun, da die beiden Schummler mit allen Metho-
den ihrer Eltern ausgestattet sind, also der Liste dice, elif sum(cheater1.get_dice()) > sum(cheater2.get_dice()):

dem Wurfmechanismus roll() und get_dice(),
print("Cheater 1 wins!")

fügen Sie jedem eine zusätzliche Funktion hinzu, die
cheat heißt. Diese wird je nach Art der Mogelei unter-
else:

schiedlich implementiert.

print("Cheater 2 wins!")

magpi.de

04 • 2017

25

Schwerpunkt OBJEKTORIENTIERTE PROGRAMMIERUNG

Die Definition der Klasse Cheat_Swapper ist nicht

Sie werden feststellen, dass dieser Code ganz ohne
besonders kompliziert:

prozedurales Programmieren auskommt. Das liegt
daran, dass wir dies einfach importieren werden,
class Cheat_Swapper(Player):

damit Sie die Funktionsweise des Befehls import ein-
def cheat(self):

mal in Aktion erleben. Als Nächstes schreiben Sie den
self.dice[-1] = 6

Code, der diese Objekte nutzt, in eine separate Datei
namens bunco_single_test.py und speichern diese

Bei dieser Methode wird der letzte Eintrag der Liste
im selben Verzeichnis wie die Datei bunco_module.

dice einfach mit einer Sechs überschrieben.

py. Die erste Zeile importiert die Klassendefinition für Die Definition für Cheat_Loaded_Dice, also die
den Player aus bunco_module.py.

gezinkten Würfel, ist etwas schwieriger:

from bunco_module import Player
class Cheat_Loaded_Dice(Player):

def cheat(self):

Beachten Sie, dass die Datei bunco_module ohne
i = 0
die Dateinamenerweiterung („.py“) geschrieben
while i < len(self.dice):

ist. Wenn Sie das bemerkt haben: Gratulation! Denn
if self.dice[i] < 6:

genau so importieren Sie jeden beliebigen Code in Ihr
self.dice[i] += 1

Programm. Die Zeile import Player fügt den Code der i += 1

Klasse Player aus der Datei bunco_module.py hier ein, ganz so als stünde der Text in diesem Dokument.

Die Methode geht alle Einträge in der Liste durch

Vergleichen Sie diese Zeile mit der from random
und prüft so, ob alle Werte niedriger als sechs sind.

import randint ganz am Anfang der Datei bunco_

Falls ja, wird der Wert um ein Auge erhöht. Als Übung
module.py. Das Prinzip dahinter ist dasselbe. Impor-
könnten Sie den Code der Datei bunco_module.py
tieren Sie nun die beiden anderen Klassendefinitionen
abschreiben (Seite 25) oder von DVD laden.

auf demselben Wege:

26

04 • 2017
magpi.de

PYTHON

Schwerpunkt
bunco_simulation.py
from bunco_module import Cheat_Swapper

from bunco_module import Cheat_Loaded_Dice
from bunco_module import *

D

Der Rest der Datei bunco_single_test.py erzeugt das-
swapper = Cheat_Swapper()

Code
selbe Spiel wie zuvor im Programm bunco_oop.py.

loaded_dice = Cheat_Loaded_Dice()

auf Heft-DVD c

Nun erstellen Sie je eine Instanz für die Klassen

Cheat_Swapper und Cheat_Loaded_Dice, die aus
swapper_score = 0
bunco_module importiert wurden:

loaded_dice_score = 0
cheater1 = Cheat_Swapper()

number_of_games = 100000
cheater2 = Cheat_Loaded_Dice()

game_number = 0

Danach starten Sie die Methode roll(). Achtung:

print("Simulation running")

Weder Cheat_Swapper() noch Cheat_Loaded_
print("==================")

Dice() besitzen roll als Methode. Diese erben sie while game_number < number_of_games:

beide von der Elternklasse namens Player():

swapper.roll()

loaded_dice.roll()

cheater1.roll()

cheater2.roll()

swapper.cheat()

loaded_dice.cheat()

Jetzt rufen Sie die Methode cheat() von jeder der bei-
den Objektinstanzen ab:

#Entfernen Sie das # vor „print“ vor dem Test der Simulation

#Diese Simulation dauert rund eine Stunde inklusive
cheater1.cheat()

#der Print-Statements und nur zehn Sekunden, wenn diese
cheater2.cheat()

#auskommentiert sind

Obwohl jedes der Objekte eine Methode namens

#print("Schummler 1 wuerfelt" + str(swapper.get_dice())) cheat() besitzt, sind diese unterschiedlich imple-

#print("Schummler 2 wuerfelt" + str(loaded_dice.get_dice())) mentiert. Der cheater1 ändert den letzten Würfel in
eine Sechs, während cheater2 auf jedes gewürfelte
if sum(swapper.get_dice()) == sum(loaded_dice.get_dice()):

Auge noch eins draufsetzt.

#print("Unentschieden!")

Drücken Sie F5 auf der Tastatur und schauen Sie,
pass
welcher der beiden Spieler gewinnt. Spielen Sie es
noch einmal durch und Sie werden vermutlich ein
elif sum(swapper.get_dice()) > sum(loaded_dice.get_dice()): anderes Ergebnis erhalten – meistens ist es knapp.

#print("Sechserwuerfel gewinnt!")

Im Verzeichnis mit Ihrem Code finden Sie nun
swapper_score+= 1
eine neue Datei namens bunco_module.pyc. Kom-

pilierte Dateien wie diese werden immer angelegt,
else:

wenn Sie ein Programm erstmalig starten, das Code

#print("Gezinkte Wuerfel gewinnen!")

importiert. Diese Datei können Sie nicht öffnen oder
loaded_dice_score += 1
mit einem Texteditor lesen. Sie können sie auch
löschen, denn sie wird beim nächsten Durchlauf von
game_number += 1
bunco_module.py erneut erstellt. Daher können Sie
die kompilierte Datei vorerst ignorieren.

print("Simulation complete")

Um mit statistischer Sicherheit zu belegen, welcher
print("-------------------")

der beiden Schummler nun die Oberhand hat, müssen
print("Final scores")

Sie eine Simulation starten. Dazu lassen Sie die vir-
print("------------")

tuellen Kontrahenten Hunderttausende Würfelspiele
print("Swapper won: " + str(swapper_score))

austragen und die Siege dokumentieren.

print("Loaded dice won: " + str(loaded_dice_score))

Das finale Programm kann genau das. Sie finden
es in der Datei bunco_simulation.py auf der DVD.

if swapper_score == loaded_dice_score:

In diesem Code ist alles vereint, was Sie soeben über
print("Game was drawn")

OOP gelernt haben: Es werden zwei Mogelpackungen
elif swapper_score > loaded_dice_score:

importiert, die 100.000 Spiele auswürfeln. Auch Klas-
print("Swapper won most games")

sendefinitionen des Programms bunco_module.py
else:

aus demselben Verzeichnis werden übernommen.

print("Loaded dice won most games")

magpi.de

04 • 2017

27

Projekte GALERIE

MATT WAGNER
vertreibt sich seine Zeit damit,
immer neue RasPi-Projekte zu ent-
werfen. Er hofft, dass er sein Hobby
bald zum Beruf machen kann.

hackmypi.com

Infos

> Der Proto-
typ verfügte

PIMINIMINT
sogar über eine

So quetscht man einen kompletten PC in eine Pfefferminzdose

NoIR-Kamera

> Leim sorgt
ls 2012 der erste Rasp-
anderen Projekt und die Pi Zeros
play sowie ein RedBear IoT pHAT.

dafür, dass der
berry Pi auf den Markt

USB-Stecker

A
waren schwer erhältlich“, erinnert

Für den Prototyp brauchte Matt
kam, stellte sich Matt Wag-
sich Matt. „Aber jetzt arbeite ich in
lediglich ein paar Wochen, inklu-
nicht wackelt
ner vor, wie er einen kompletten
einem Umfeld, wo mir lauter Mate-
sive Beschaffung der Bauteile. Das

> Heißkleber

Computer in eine Pfefferminzdose
rialien zum Basteln zur Verfügung

Konzept ist einfach: „Ich wollte
sichert die

Lötpunkte
packen würde. Damals war das noch stehen. So kam mir die Idee von frei verfügbare Komponenten ver-Wunschdenken, doch der deutlich
damals wieder in den Sinn.“
einen. Allerdings zwangen mich

> Das nächste

Modell soll
kleinere Pi Zero machte die Umset-

Das Ergebnis: Der PiMiniMint.

Versand- und Materialkosten dazu,
inklusive SIM-
zung möglich – wenngleich nicht

In dem winzigen Gehäuse ste-
kreativ zu sein“, erklärt Matt.

Karte kommen
sofort: „Ich steckte mitten in einem cken ein Pi Zero, ein 2-Zoll-Dis-So bastelte er sich seine eigene

2-Zoll-Display und

Board sind nur mit

Tesa befestigt

Der Pi Zero ist mit einem
pHAT zusammengelötet
und sitzt auf dem Akku

Der Schaltkreis zum Laden
des Akkus lässt sich per

Schalter an- und ausknipsen
magpi.de

28

04• 2017

PIMINIMINT

Projekte

Die rückseitigen Lötpunkte des Pi Zero
sind mit dem Ladekabel und dessen

Schalter sowie dem Display verbunden

BLECH GEHABT

Lösung zum Aufladen des Akkus.

Zwar habe er noch keinen Testlauf

>SCHRITT 01

Ein Adafruit PowerBoost wäre die
von 100 auf null Prozent gemacht,

Display anbringen

Das 2-Zoll-Display wird mit doppelseitigem Klebe-
ideale Lösung gewesen, da er genug doch Laufzeiten von über sechs band im Deckel der Dose befestigt. Dabei müssen die

Power hat, um den Computer zu

Stunden seien kein Problem.

Ladebuchsen des zugehörigen Boards bei den Schar-
betreiben. Auch der Zero LiPo von

Ein großer Nachteil des integ-
nieren liegen, damit die Kabel nicht gedehnt werden.

Pimoroni wäre eine Option gewe-
rierten Akkus war allerdings, dass
sen, allerdings „sitzt dieser zu
im Gehäuse nun kein Platz mehr
hoch auf der GPIO, sodass man
für die Infrarot-Kamera und den
damit buchstäblich den Deckel

USB-Port war, die im Prototypen
nicht mehr zukriegt, wenn das
noch enthalten waren.

Display verbaut ist“, sagt Matt.

Derzeit arbeitet Matt am zweiten

Auf den Vorschlag eines Kolle-

Exemplar des PiMiniMint, sozu-
gen hin entschloss er sich letztlich,
sagen als Auftragsarbeit für einen
ein herkömmliches USB-Lade-

Freund – inklusive Modifikati-
kabel von einem Smartphone zu
onen. „Seine Version wird zwei
zerlegen. Die darin enthaltene Pla-

WLAN-Antennen sowie eine SIM-

Projekte
tine zum Laden kombinierte er mit

Karte an Bord haben, damit er spä-
einem Slimline LiPo-Akku. Außer-
ter Daten via 3G/4G übertragen
dem fügte er einen Kippschalter
kann“, sagt Matt.

hinzu. „Anfangs hatte ich Prob-

In seinen Augen ist sein Projekt

>SCHRITT 02
leme mit der Verkabelung und der
nicht nur ein cooler Computer für

Ladebuchse basteln

Stromversorgung. Das hing mit der
die Hosentasche, sondern auch für

Matt verwendete die kleine Platine eines Telefon-

Art des Schalters und dessen Posi-

Retro-Games geeignet. „Ich habe
ladekabels und entfernte die USB-Buchse. Das
tion im Schaltkreis zusammen“,
den PiMiniMint schon als Access

Board lötete er dann an eine LiPo-Batterie und ver-
erklärt Matt. Erst der Wechsel auf

Point benutzt, um Dateien dar-
band diese per Schalter mit dem Pi Zero.

ein anderes, besseres Modell löste
auf zu speichern, oder als Rou-
das Problem. Der 2.500-mAh-Akku
ter, indem ich eine zweite Antenne
in Matts Mini-PC liefert ordentlich
angebracht habe. Es gibt sicher

Saft für eine hohe Lebensdauer.

noch viel mehr solche Ideen.“

Erstaunlich:

All das passt
in die Pfef-
ferminzdose
von 60 x 95
mm. Sogar ein

USB-Adapter
ist an Bord

>SCHRITT 03

Verbindungsaufbau

Der headerlose RedBear IoT pHAT sorgt für WLAN-
und Bluetooth-Verbindung. Er setzt direkt auf einer

40-Pin-Stiftleiste des Pi Zero auf. Mit dem neuen Pi

Zero W ist dieser Schritt allerdings überflüssig.

magpi.de

04 • 2017

29

Projekte GALERIE

JOE HERMAN

Joe ist Bastler und

Programmierer mit einer

Leidenschaft für Filme.

vimeo.com/jphfilm

Das Pi-Kameramodul im Innern des

Gehäuses nimmt jedes Bild der

Filmrolle einzeln auf

Der Raspberry Pi speichert die Bilder aus
dem Projektor und sendet sie an einen
zweiten Computer weiter

Der Schrittmotor dreht die

Filmrolle nach der Aufnahme
weiter zum nächsten Bild

FILME

RETTEN

Joe digitalisiert mit dem RasPi minutiös alte Filmrollen – Bild für Bild Infos
ie Rettung alter Videoauf-
sierung hätte viele Tausend Dol-
satz. Der Raspberry Pi fotografiert
nahmen vom Dachboden
lar verschlungen. Die simpelste
jedes Bild einzeln und schickt die-

D kann zur echten Heraus- Lösung für dieses Problem wäre, ses an einen Desktop-PC, wo die

> Eine Rolle von
fünf Minuten
forderung werden. Die Umwand-
die Filme während der Projek-

Daten später verarbeitet werden.

liefert bis zu
lung von analog zu digital ist nicht
tion einfach mit einer Kamera von

Außerdem steuert der RasPi einen

4.000 Bilder
nur zeitaufwendig, sondern auch
der Wand abzufilmen. Allerdings

Schrittmotor, der die Filmrolle

> 8-Millime-
teuer – normalerweise.

wären die Resultate dabei denk-
jedes Mal um genau ein Bild wei-
ter-Film

Der Bastler Joe Herman hat sich
bar schlecht. Zum Vergleich: Bei
terdreht. Das geht so lange wei-
braucht eine

Brennweite
eine eigene Lösung ausgedacht.

Profi-Verfahren wird jedes Bild
ter, bis die komplette Rolle durch-
von 25 mm

Mithilfe eines RasPi-Kamera-
einzeln digitalisiert. Am PC wer-
gelaufen ist. „Das klappt sicher

> Der Projek-
moduls und eines alten Filmpro-
den die Fotos dann zu einem Video
mit den meisten alten Projektoren.

tor hat einen
jektors digitalisiert er Rolle um
zusammengefügt. Genau darum ist

Die Dinger sind für die Ewigkeit

NEMA-17-Mo-

Rolle. Über 130 davon entdeck-
diese Arbeit auch so kostspielig.

gebaut“, meint Joe.

tor und einen

DRV8825-Chip
ten sein Cousin und sein Onkel im

Das ist bei Joes Projekt „Pi

Ist der Vorgang abgeschlossen,

Nachlass des Großvaters. „Manche

Film Capture“ anders. Benutzt
erwartet ihn ein Ordner voller Bil-

> Joe verwen-
det das Origi-
der Aufnahmen datieren bis ins
hat er einen normalen Raspberry
der. Mit dem kostenlosen Tool
nal-Kamera-

Jahr 1938 zurück“, sagt Joe.

Pi, das Standard-Kameramo-

FFmpeg verwandelt Joe die Einzel-
modul mit fünf

Die Bewahrung dieser Filme
dul sowie einen 8-Millimeter-
bilder (ffmpeg.org) im Nu in eine

Megapixeln
war seiner großen, weit verstreut
und Super-8-Projektor von Bell

Videodatei. Braucht es eine wei-
lebenden Familie sehr wichtig,

& Howell. Alternativ kommt ein
tere Bearbeitung, nutzt er das Pro-
doch eine professionelle Digitali-

Ampro Imperial 16mm zum Ein-
gramm AviSynth (avisynth.nl).

magpi.de

30

04• 2017

PI FILM CAPTURE

Projekte

VÖLLIG VON DER ROLLE

>SCHRITT 01

>SCHRITT 02

>SCHRITT 03

Direkte Aufnahme

Verarbeitung

Schrittmotor

Das Pi-Kameramodul wird direkt im

Jedes Bild der Filmrolle wird einzeln auf-

Nach der Aufnahme eines einzelnen

Gehäuse der Linse platziert, wodurch
gezeichnet. Der Raspberry Pi sendet diese

Bildes steuert der Raspberry Pi einen

Störungen durch Umgebungslicht von

Dateien zur Sicherung und Bearbeitung auf

Schrittmotor an, der die Filmrolle um
vornherein ausgeschlossen sind.

einen Desktop-Computer.

genau ein Bild weiterdreht.

„Mir war wichtig, dass alle Bau-
die Bilder direkt prüfen konnte.

teile leicht zu beschaffen sind“,

Im aktuellen Stadium seines Pro-
sagt John, „natürlich auch, weil ich
jekts kommt OpenCV (opencv.org)

anfangs nicht wusste, ob es wirklich zum Einsatz. „Die Software bie-klappt. Da wollte ich nicht so viel
tet HDR-ähnliche Funktionen, wie

Geld hineinstecken.“
man sie heute auf Smartphones oft

Sein erster Prototyp brachte den
findet“, erklärt Joe. Übergibt man

Projektor erfolgreich in Gang und
ihr also mehrere Bilder mit unter-
schoss bei jedem Bild ein Foto.

schiedlicher Belichtung, kombi-

„Fast dachte ich, das würde ein
niert das Tool diese, um in hellen
einfaches Projekt werden“, erin-
wie dunklen Bereichen möglichst
nert sich Joe. Doch die Aufnah-
viele Details zu bewahren.

men waren manchmal zu hell oder

„Bei manchen Filmen ist der
zu dunkel oder es wurden Bil-

Unterschied enorm“, sagt Joe,
der komplett übersprungen. Spä-

„allerdings dauert die Digitalisie-

Bastlern, die sein Projekt nachah-

Oben Im Laufe der

Entwicklung wurde
ter fügte Joe einen PC mit Ubuntu
rung dadurch doppelt so lange.

men möchten, rät er allerdings zu
die Software zur
zu seinem Aufbau hinzu, auf dem

Also setze ich die Technik nur ein,

Geduld. Es seien viele Faktoren im

Bildbearbeitung
immer besser,
er die Kamera besser einstellen und
wenn es wirklich nötig ist.“

Spiel, die anfangs trivial wirken.

sodass die Aufnah-

Außerdem benötigen die Aufnah-
men inzwischen
deutlich wertiger
men selbst unglaublich viel Zeit
aussehen
und auch Übung.

Die Ergebnisse sind es allerdings
wert. Joe hat bereits über 100 Film-
rollen aus dem Nachlass seines

Großvaters auf den PC überspielt.

So erweckte er einen Teil der Fami-
liengeschichte wieder zum Leben.

„Diese Aufnahmen mit der Fami-
lie zu teilen hat dieses Projekt so
befriedigend gemacht – bis heute
meine beste Arbeit“, sagt Joe. Er
hofft, damit andere zu inspirie-
ren, ihre staubigen Filmrollen vom

Joe digitalisierte bereits über 100

Dachboden zu holen und Geschich-

Filmrollen seines Großvaters
ten wieder erlebbar zu machen.

magpi.de

04 • 2017

31

Projekte GALERIE

DAVID BOWEN

Der Künstler ist Associate Professor für

Bildhauerei und Physical Computing

OpenCV und TensorFlow
an der University of Minnesota. Viele
werden zur Erkennung
seiner Arbeiten befassen sich mit dem
und Aufnahme genutzt

Kontrast zwischen Natur und Mechanik.

dwbowen.com

Die Kamera nimmt jede

Fliege auf, die in ihrem

Sichtfeld landet

Ist das Hauptresultat „Fliege“, wird

Sirup in die Kammer gepumpt

FLYAI

Eine künstliche Intelligenz kümmert sich um Fliegen
liegen krabbeln wild in
zeitig berge die Technologie aber
einer durchsichtigen Kugel

Infos

F
auch viele Risiken: „Die KI könnte
umher und werden dabei
menschliche Atome als Futter nut-
von einem Kameraauge beobach-
zen wollen“, so David.

tet. Eine mechanische Stimme liest

Warum er Hausfliegen für sein

> Die Fliegen
indes Daten aus der Bilderken-

Projekt benutzt? „Sie stehen stell-
können bis zu

40 Tage leben
nung vor, die über die Fütterung der
vertretend für das Absurde oder

Fliegen entscheiden. Mit diesem
auch für den Willen des Kollek-

> Damit überle-
ben Sie länger
beunruhigenden Szenario namens
tivs“, sagt er. Dabei agieren die Flie-
als in der Natur
flyAI (magpi.cc/2n7pijV) hat David
gen nicht so zufallsgetrieben, wie

> David sagt, er

Bowen eine sehr spezielle Installa-
es auf den ersten Blick wirkt. Laut
würde eingrei-
tion ins Leben gerufen. Auf die Idee

David arbeiten sich die Tiere gern
fen, falls nötig
kam er, als er Nick Bostroms Buch
von unten nach oben durch, und sie

> Früher ließ

„Superintelligenz: Szenarien einer
werden von Licht angezogen.

David Fliegen
kommenden Revolution“ las. Darin

Ein weiterer wichtiger Grund für
sogar tweeten
erkundet der Autor die künftigen
die Verwendung von Fliegen sei

> Er hofft, das

Nach der Analyse der Aufnahmen durch

Effekte künstlicher Intelligenz auf
gewesen, dass die Insekten beim

Projekt bald

Googles TensorFlow werden mehrere
auszustellen
die Menschheit. Zwar lägen darin

Betrachter nicht so viel Empathie
mögliche Ergebnisse aufgelistet
viele neue Möglichkeiten, gleich-
auslösen wie andere Tiere. Das ist
magpi.de

32

04• 2017

FLYAI

Projekte
gut so, denn das Überleben der Tiere
riment sechs Wochen lang laufen
hängt von der Genauigkeit der Bild -
ließ, stellte er fest: Die Fliegen leben
erkennung ab. Die Webcam am obe-
bis zu 40 Tage, also länger als in der
ren Ende der Kugel ist mit einem
freien Wildbahn. Und das trotz eini-

RasPi 3 verbunden. Mithilfe von
ger Schwierigkeiten: „Die Fliegen

OpenCV wird erkannt, ob sich eine
verschmutzen mit ihrem Kot die

Fliege im Sichtfeld befindet. Wenn
komplette Konstruktion und stö-
ja, wird ein Bild geknipst. Die Soft-
ren somit die Sicht der Kamera“,
ware TensorFlow von Google analy-
sagt David. Die Fliegen könnten sich
siert dann die Aufnahme, stellt die
seiner Meinung nach sogar in der

Ergebnisse nach und nach auf dem

Kugel vermehren, wenn man ihnen

Das Wohlergehen der Tiere
hängt von der Genauigkeit der

Bilderkennung ab

LC-Display dar und liest sie sogar
die richtigen Brutkonditionen zur
noch maschinell vor.

Verfügung stelle.

Erkennt die KI den Inhalt des

David denkt schon über eine

Fotos als Fliege, bekommen die

Erweiterung des Projekts nach.

Insekten ein wenig Futter. Dies

So will er die verendeten Fliegen
geschehe in 60 Prozent der Fälle,
womöglich als Rohstoff für eine
so David. „Ihr Schicksal hängt also
mikrobische Brennstoffzelle ver-
von der Genauigkeit der KI ab“,
wenden, die später den Pi mit Strom
fügt er hinzu. Die Fütterung steu-
versorgen soll. Auch Maschinenler-
ert ebenfalls der RasPi: Er triggert
nen sieht David als Option, damit
ein Halbleiterrelais, um eine Pumpe
die Bilderkennung noch schlauer
anzutreiben, die das Zuckerwas-
werde. Damit wäre seine lebende
ser nach oben in die Kugel trans-

Installation in der Lage, sich kom-
portiert. Nachdem David das Expe-
plett selbst zu erhalten.

DER AUFBAU DES FLIEGEN-EXPERIMENTS

>SCHRITT 01

>SCHRITT 02

>SCHRITT 03

Die Kammer

Display für die Daten

Fliegenfutter

Sie besteht aus zwei durchsichtigen Halb-

Ein handelsübliches LC-Display zeigt die

Der Raspberry Pi 3 steuert nicht nur die
kugeln aus Plastik. Die nachträglich ein-

Schnappschüsse der Kamera an. Darunter
komplette Software, sondern auch ein
gebauten Löcher sorgen für ausreichend
werden die Resultate der Bilderkennungs-

Halbleiterrelais. Es ist an zwei GPIO-

Luft. Die Halterung für die Kamera wurde
software angezeigt, die sogar per Laut-

Pins angebracht und pumpt Zucker-
speziell per CNC-Fräse angefertigt.

sprecher vorgelesen werden können.

wasser nach oben durch den Schlauch.

magpi.de

04 • 2017

33

Projekte GALERIE

PIERRE MUTH

Pierre ist Elektrotechniker und hat

Der Raspberry Pi Zero ermöglichte es

Die geringen Abmessungen
eine ausgeprägte Leidenschaft

Pierre, die Kamera auf ein Minimalmaß
des Adafruit-Nano-Thermo-
fürs Tüfteln, Foto-Experimente und
zu schrumpfen
druckers sind optimal für

Thermodrucker.

dieses Projekt
magpi.cc/2ndiKg8

Das Display ist schwarz-weiß – so
kann man sich das ausgedruckte

Resultat besser vorstellen

POLAPI-ZERO

Die winzige Kamera mit integriertem Thermodrucker weckt
dieselben Gefühle wie einst Polaroid-Kameras

Infos
er PolaPi-Zero ist Pierre
man sich seine Fotos direkt aus-

Muths zweiter Ausflug

D
geben lassen.

in die Welt der portablen

Der Original-PolaPi hatte eben-

> Pierre hat einen

Ein-Aus-Schal-

Fotografie mit dem Pi und einem
falls einen Raspberry Pi als Kern-
ter eingebaut

Thermodrucker. Er bringt einige
stück. Allerdings das Modell 2. Der

> Das Gehäuse

Erfahrung auf diesem Gebiet mit,
neuere Raspberry Pi Zero ermög-
druckte er bei
entwickelte er doch bereits einen
lichte nun ein noch kleineres
einem Dienst-

Fotoautomaten mit eingebau-

Kameragehäuse. Doch nicht nur
leister aus
ter „Lotterie“ – man schoss ein
der Raspberry Pi ist geschrumpft,

> Alle Infos zum

Foto von sich, ausgedruckt wurde
sondern auch der Drucker. Im Pro-

Projekt finden

Sie unter
jedoch das Bild von jemand ande-
totyp war dieser noch klobig und
magpi.cc/
rem. Diese Person musste man fin-
schwer. Nun verwendete Pierre

2ndslE3
den. Bei Erfolg gab es Freibier.

einen winzigen Nano Thermal

> Per Knopfdruck

Es gibt zwar mittlerweile viele

Receipt Printer von Adafruit. Mit-
an der Kamera

Fotoprojekte mit dem RasPi und
kann man
hilfe des LC-Displays von Sharp
durch die Foto-
dem zugehörigen Kamera-Modul.

kann der Fotograf seine Bilder erst
galerie blättern

Der PolaPi-Zero verfolgt allerdings
einmal in Schwarz-Weiß prüfen,

> Hier sehen Sie
einen kreativeren Ansatz, da er von bevor er sie ausdruckt.

die Kamera in

Polaroid-Kameras, also wahren

Für Pierre war das Projekt

Aktion:

Stilikonen, inspiriert wurde. Mit-
bit.ly/2soBFtt

„ein guter Vorwand, endlich mit
hilfe eines Thermodruckers kann

Python anzufangen“, sagt er. Die
magpi.de

34

04• 2017

D

Programm-Code
auf Heft-DVD

POLAPI-ZERO

Projekte

DER AUFBAU DES POLAPI-ZERO

>SCHRITT 01

>SCHRITT 02

>SCHRITT 03

Das Innere

Das Äußere

Der PolaPi-Zero

Der Schaltplan für das aktuelle Modell

Pierre gestaltete das Gehäuse am PC

Dank neuerer, kleinerer Komponen-
ähnelt dem des Prototypen der Kamera.

und ließ es bei einem Dienstleister für
ten konnte Pierre seinen Aufbau wei-

Neu sind lediglich das LC-Display sowie

3D-Prints drucken. Das weiße Design der
ter vereinfachen und dabei sogar neue
der Hardware-Knopf zum Durchblättern

Kamera ist auch eine Hommage an White

Fea tures hinzufügen, darunter zum Bei-
der Bildergalerie.

Box artwork von Vít Hašek.

spiel die Vorschau der Bildergalerie.

Unmenge an frei verfügbarem

Nutzer sind glücklich, wenn sie ihr

Python-Code im Netz motivierte
soeben geschossenes Foto auf zeit-
ihn zusätzlich. Bei seinem ers-
losem Kassenbon-Papier bewun-
ten Prototyp nutzte er noch Java.

dern können.

Pierre findet, sein Python-Skript
sei nicht besonders elegant, den-

Nächste Schritte
noch stellt er den kompletten Code

Nachdem er nun die passende
via GitHub als Image für den Rasp-

Plattform hatte, begann Pierre als
berry Pi zur Verfügung (auf DVD D

Nächstes, mit verschiedenen Foto-
und unter magpi.cc/2ndslE3).

grafietechniken zu experimen-

Das Gehäuse der Kamera gestal-
tieren. Dazu zählt etwa Slitscan:

tete Pierre mit der Software Auto-

Dabei wird zwischen der Linse und
desk 123D und schickte es dann
dem Motiv eine Fläche mit einem
an einen externen Dienstleister
schmalen, durchlässigen Schlitz
horizontal oder vertikal angewandt

Oben und unten

Beispielaufnah-
für 3D-Drucke. Auch die Dateien
vorbeigeführt, wodurch immer nur
wird. Da das Papier des Thermo-
men der Slitscan-
für das Gehäuse finden Sie auf der
ein schmaler Bereich auf einmal
druckers quasi ewig lang ist, lässt

Fotografie, mit der

Pierre gern experi-
oben genannten GitHub-Seite.

abgelichtet wird. Bewegungen im
sich dieser Effekt auch prima aus-
mentiert

Zur Kamera gehören noch ein

Motiv haben dann kuriose Auswir-
drucken. Pierre hat für die Zukunft

Pi-Kameramodul, ein Akku mit
kungen. Diesen Effekt hat Pierre
weiterhin das Ziel, nicht nur Dinge

7,2 Volt inklusive Spannungsreg-
im Programmcode nachgestellt.

zu benutzen, sondern auch selbst
ler und eine Handvoll Knöpfe zur

Heraus kommt dabei eine schräge,
welche zu entwickeln. Und so dür-
einfacheren Bedienung des Geräts.

verzerrte Bilddatei. Dabei spielt
fen wir gespannt sein, was ihm als

Fertig ist der PolaPi-Zero – und die
es auch eine Rolle, ob der Slitscan

Nächstes einfallen wird.

magpi.de

04 • 2017

35

Projekte GALERIE

MICHAEL DARBY
ist seit frühester Kindheit ein

Computernerd und richtiggehend
versessen auf alles, was mit Tech-
nik zu tun hat.

314reactor.com

Infos

> Windows 98

WINDOWS 98
wird mithilfe
von QEMU
emuliert

> Der Bootvor-
gang dauert
einige Minuten

> Der Pi A+ wird

RETRO-UHR
übertaktet und
läuft so mit

Ein Hauch von Nostalgie umweht diese ungewöhnliche Armbanduhr

800 MHz
ätte Microsoft in den

> Michael plant

98 läuft und von einem Pi ange-
sie wieder aus der Versenkung
auch eine
späten Neunzigern eine

H
trieben wird. Michael räumt zwar
holen. Man erinnert sich einfach

Pi-3-Version

Smartwatch designt - ver-
ein, dass ihn das Uralt-Windows
eher an die positiven Aspekte.“
mutlich hätte sie so ähnlich aus-
damals fast zum Wahnsinn getrie-

Nachdem Michael alle Kompo-
gesehen wie diese Uhr von Michael ben habe, dennoch hegt er nos-nenten beisammenhatte, darun-

Darby. Michael, alias 314reactor,
talgische Gefühle für den Vetera-
ter einen Raspberry Pi A+, benö-
hat eine etwas klobige Armband-
nen. „Jahre später blickt man auf
tigte er nur wenige Stunden, um
uhr entworfen, die unter Windows
gewisse Dinge zurück und möchte
alles zusammenzubauen. Auf

Hackster.io geht er auf die Bau-
teile und die einzelnen Schritte
ein: bit.ly/2sa6qTh. Gute Löt-
kenntnisse werden dabei allerdings
vorausgesetzt.

Der Pi A+ ist in einem „Ada-
fruit Pi Protector Case“ unterge-
bracht, an dessen Oberseite ein

PiTFT-2.4-Zoll-HAT-Touchscreen
montiert wird. Das Display erhält
fünf zusätzliche Tasten, von denen
jedoch nur eine wirklich genutzt
wird – und zwar um das System
sauber herunterzufahren. Strom
bezieht die Watch von einer dün-
nen LiPo-Batterie.

Um Windows 98 auf der Arm-
banduhr zu emulieren, ist QEMU
das Mittel der Wahl. Dieser Emu-

Eine LiPo-Batterie, die unter dem

Pi sitzt, versorgt Pi und Touch-
screen mit Strom

Der Screen wurde mit fünf Tas-
ten versehen. Davon wird derzeit
allerdings nur eine genutzt

Windows 98 läuft tatsächlich –
allerdings sehr langsam
magpi.de

36

04• 2017

WINDOWS-98-WATCH

Projekte

WINDOWS-

NOSTALGIE-UHR

>SCHRITT 01

Der gute alte Bildschirmschoner mit den fliegenden Windows-Fahnen Die Komponenten zusammensetzen

Der Pi A+ wird mit einem Kühlkörper und Abstands-
haltern versehen, bevor der piTFT 2,4-Zoll-Touch-
lator läuft unter Raspbian. „Das ist
einen genauen Blick auf die Kali-
screen montiert wird
vergleichsweise unkompliziert“,
brierung werfen – oder aber es
meint Michael. „Wenn man erst
hängt damit zusammen, wie Qemu
einmal eine QEMU-Umgebung
arbeitet, wenn es über die Kom-
auf einem PC eingerichtet und
mandozeile gestartet wird.“

Windows 98 installiert hat, geht

Dennoch hofft Michael, dass er
es nur noch darum, das virtuelle
den klassischen 3D-Shooter Doom

Laufwerk auf den Pi zu ziehen und
auf der Watch zum Laufen bringt.

dort laufen zu lassen.“

Allerdings gibt es auch hier noch

Vielleicht hat man in Zukunft
die Wahl zwischen mehreren

Betriebssystemen

>SCHRITT 02

Stromversorgung

Ist dann Windows 98 endlich so
einige technische Hürden, die er

Sugru und Klebeband dienen dazu, den 1000-mA-Akku
weit, dass es hochfährt, ist es im
überwinden muss.

und den PowerBoost auf der Unterseite des Raspberry

Prinzip funktionsfähig. Michael

Derzeit denkt Michael darü-

Pi zu befestigen.

gibt allerdings zu, dass es sehr
ber nach, den Pi A+ durch einen
langsam ist und die Navigation per

Pi 3 zu ersetzen. „Das macht die

Touchscreen sich ziemlich hake-

Watch zwar noch klobiger, aber
lig gestaltet. „Ich muss noch mal
dafür würde der Pi 3 das Emulie-
ren sehr viel besser bewältigen.

Ich kann eventuell einen größeren

Bildschirm verwenden und sogar
verschiedene Betriebssysteme
zur Auswahl anbieten, also etwa

Win 95, XP oder sogar etwas wie

React-OS. Diese könnte man durch
die Tasten an der Uhr auswählen.“

Michael hat schon jede Menge
positives Feedback für seine Watch
erhalten: „Ich hätte nie gedacht,

>SCHRITT 03
dass das so durch die Decke geht.

Windows emulieren

Der 2,4-Zoll-Touchscreen von Adafruit

Aber ich freue mich natürlich und

Windows 98 wird auf einem PC in eine IMG-Datei kon-
hat Tasten bekommen. Dann wurde er
betrachte es als Ansporn für meine
vertiert und dann auf den Pi übertragen. Dort wird es
auf den Pi montiert
weitere Arbeit.“
mihilfe von QEMU zum Laufen gebracht.

magpi.de

04 • 2017

37

Projekte GALERIE

EHSAN RAHMAN

Ehsan kellnert im Restaurant
seines Vaters. Außerdem ist
er begeisterter Maker.

magpi.cc/2mFCdZB

Ein Kameramodul fotografiert die

Bestellung, wenn sie aus dem

Drucker kommt

Im Inneren der Box sitzt ein

Der Pipsta gibt die Bestellungen

Raspberry Pi, der einen Apa-
aus. Das Küchenpersonal holt sie
che-Webserver hostet
dann einfach aus dem Drucker

Infos

PIORDER

> Die Bestellun-
gen werden
mit Fire-Tablets
aufgenommen

Ein indisches Restaurant wird mithilfe einiger Raspberry Pis

> Das Khyber
zur High-Tech-Location mit elektronischem Bestellsystem

Tandoori hat
über 50 Plätze
hsan Rahman hilft jedes
matisches Bestellsystem. PiOrder

Apache-Website hostet. Die Web-

> Das Onlinesys-

Wochenende im Khyber

E
besteht aus verschiedenen Rasp -
seiten selbst wurden in PHP und
tem verzeich-

Tandoori aus. Das indische
nete in den
berry Pis, mehreren Pi-Kamera-

HTML programmiert.

ersten zwei

Restaurant liegt in Surrey und
modulen und einem Pipsta-Ther-

Das Küchenpersonal wird über

Wochen 27
gehört seinem Vater. Das Beson-
moprinter (bit.ly/2rqiQBX).

einen mit dem Pi verbundenen

Bestellungen
dere daran: Viele Abläufe im Lokal

Das Servicepersonal nutzt große

Lautsprecher über neue Bestellun-

> Das Kassensys-
wurden mithilfe von Raspberry

Kindle Fire-Tablets, um die Bestel-
gen informiert. Zusätzlich druckt
tem läuft seit
acht Monaten

Pis automatisiert. Vor zwei Jah-
lungen aufzunehmen. Zwei klei-
der Pipsta-Thermodrucker die
ren hatte Ehsan nämlich keine Lust nere Tablets liegen in der Nähe Bestellung aus. Eines der Kamera-

> Die Kunden
erhalten
mehr, Bestellungen handschrift-
der Telefone, damit die Angestell-
module macht ein Foto davon, um

Live-Updates
lich auf einem Block zu notieren.

ten telefonische Bestellungen auf-
sicherzustellen, dass es korrekt
über die Warte-

Also suchte er eine Lösung. Das
nehmen können. In der Küche ist
ausgedruckt wurde - und um eine
zeiten

Ergebnis ist PiOrder, ein vollauto-
ein Raspberry Pi platziert, der eine

Sicherheitskopie der Bestellung zu
magpi.de

38

04• 2017

PIORDER

Projekte

Für die meisten Gäste in Deutschland wohl eine unan-
genehme Vorstellung: Auch die Videoüberwachung
des Restaurants wird über Raspberry Pis gesteuert

DAS BESTELLSYSTEM

IM ÜBERBLICK

>SCHRITT 01

Tablet-Interface

Das Servicepersonal übermittelt Bestellungen per

Tablet an eine Webseite. Ein Raspberry Pi, auf dem
erhalten. Über weitere Kamera-

Servicepersonal bis hin zu Ehsans

Apache läuft, hostet die Site.

module haben die Restaurant-

Vater – niemand nutzt mehr Stift
manager immer im Blick, wie viel
und Papier.

gerade in der Küche los ist.

Jeden Tag um die gleiche Zeit

Zum einen macht PiOrder dem
läuft automatisch eine Testbe-

Servicepersonal das Leben leichter. stellung, damit die Köche und die Zum anderen reduziert es auch die

Bedienungen sicher sein können,

Kosten.„Der Lieferdienst Just Eat
dass das System einwandfrei funk-
etwa berechnete 699 Pfund plus
tioniert“, erläutert Ehsan.

Steuern – nur um Vertragspartner

Einige zusätzliche Raspberry Pis
zu sein“, so Ehsan. Danach streicht stehen bereit, falls ein Gerät aus-Just Eat etwa 11 Prozent pro Bestel-
fallen sollte. „Aber ich habe sie
lung ein. „Aber was noch wichtiger
noch nie einsetzen müssen“, so
ist“, fährt Ehsan fort, „wir haben
die Bilanz von Ehsan.

nun die Kontrolle über unsere

Das Kyber Tandoori ist ein wah-

>SCHRITT 02

Software und den Bestellprozess.“
res High-Tech-Unternehmen. Zu-

Küchendrucker

Die Bestellungen werden in der Küche über einen

Pipsta-Thermoprinter ausgedruckt. Ein Kamera-

Für die Küchenchefs kämen
modul scannt die Bestellungen und sendet eine

Push-Mitteilung an den Restaurantmanager.

handschriftliche Bestellungen
nicht mehr infrage

Das System basiert auf einer
sätzliche Raspberry Pis dienen als

Mischung aus PHP, JavaScript und

Basis für eine Videoüberwachung.

and jQuery. Die Pis kommunizieren – was in Deutschland nicht unpro-untereinander über Bash-Skripte.

blematisch wäre. Außerdem setzt

„Der große Vorteil dieses Vorge-

Ehsan einen Pi 3 zur Fernüberwa-
hens ist, dass alles recht zuverläs-
chung ein, „damit mein Vater von
sig arbeitet“, meint Ehsan.

zu Hause immer im Blick hat, wie

Am Anfang gab es ein paar tech-
viel im Lokal los ist“. Ehsans Pläne
nische Probleme: Das ursprüngli-
gehen noch weiter: Er möchte,
che WLAN war nicht sehr zuver-
dass die Kunden am Tisch Bestel-
lässig, und Pipsta weigerte sich,
lungen per Smartphone oder Tablet

>SCHRITT 03
umfangreiche Bestellungen aus-
aufgeben können. „Die Köche und

Fernkontrolle
zudrucken. Aber nachdem diese
mein Vater waren am Anfang nicht

Der Manager behält so den Überblick, wie viele

Schwierigkeiten beseitig waren,
davon überzeugt, aber nach und

Bestellungen aufgegeben wurden. Auch die Küche
läuft das System nun stabil. Vom
nach erkennen sie die Vorteile.“
hat er dank Kameraüberwachung immer im Auge.

magpi.de

04 • 2017

39

Projekte GALERIE

BRIAN MCEVOY

Brian McEvoy ist ein eifriger Blogger.

Das Audiosignal der vier

Regelmäßig berichtet er über seine

USB-Soundkarten wird an

Projekte, deren Bandbreite vom Pro-
einen externen Verstär-
grammieren bis zum 3D-Druck reichen.

ker und Lautsprecher aus-

24hourengineer.com
gegeben

Statt „richtiger“ Tasten setzt

Eine weiche Kunststoffschicht

Brian Arcade-Buttons ein
schützt sowohl das Keyboard als
auch seine Benutzer

TOUGH PI-ANO

Bei diesem robusten Keyboard kann man beherzt in die Tasten greifen Infos
rian McEvoy wollte für

USB-Soundkarte das Audiosignal
nern zugute. „Besonders wich-
seinen Cousin mit Down-

B
an einen externen Verstärker und
tig war es, alles sehr einfach und
syndrom ein besonders

Lautsprecher ausgibt.

damit möglichst solide zu halten.“

> Das Tough
robustes Keyboard konstruieren.

Pi-ano hat 48

Nachdem Brian zwei Jahre lang

Anfangs plante er, ein „richtiges“

Tasten

„Er liebt die Musiktherapie, aber
über das Design des Tough Pi-ano

Piano möglichst originalgetreu
er schrottet jede Woche ein Key-

> Es wird für die
sinniert hatte, kostete es ihn nur
nachzubauen. Daher versuchte

Musiktherapie
board.“ Brians Tante bat ihn daher, ein paar Wochen, es tatsächlich er sich erst einmal an Holztas-eingesetzt
ein spezielles Therapiegerät für
zusammenzubauen. Dabei kamen
ten. Dies erwies sich jedoch als

> Die Tasten
seinen Cousin und andere Kinder
ihm seine Kenntnisse im Schrei-
zu problematisch und er wich auf
bestehen aus
mit Downsyndrom zu entwickeln.

Arcade-Buttons

„Die Idee hat mir gefallen, da die-

> Jede Oktave
ses Projekt eine ganz spezielle
wird von einem
separaten Pi

Herangehensweise erfordert. Sol-

Zero gesteuert
che Geräte müssen Beschädigun-

> Die Soundkar-
gen überstehen – und sie dürfen
ten haben nur
niemanden verletzen.“
je 0,99 Dollar

Ergebnis ist das Tough Pi-ano.

gekostet

Der Bereich der Tasten ist dick mit

Plastik überzogen, nirgends ste-
hen Metallteile heraus. Als Tasten
dienen Arcade-Buttons. Sie sind
billig und leicht zu ersetzen. Jede
der vier Oktaven wird von einem

Mit jedem Pi Zero werden zwölf

Arcade-Buttons verbunden

Pi Zero angetrieben, der über eine
magpi.de

40

04• 2017

TOUGH PI-ANO

Projekte

Die größte Schwierigkeit bestand
darin, das Rauschen in den Griff

DIE KONSTRUKTION
zu bekommen. Um das Problem
zu lösen, erhielt jede Taste einen

IM ÜBERBLICK

1.000-Ohm-Widerstand. „Ein

Grundrauschen ist immer noch da

– vielleicht sind die billigen Sound-
karten dafür verantwortlich.“

Zwar räumt Brian ein, dass auch
ein einziger Pi ausgereicht hätte,
das Pi-ano mit Strom zu versorgen.

Aber er findet, dass es sinnvoll ist,
jede Oktave mit einem Pi Zero zu
versorgen. „Wenn irgendein Teil
kaputtgeht, funktionieren dann
immerhin noch drei Oktaven –
wenigstens so lange, bis das Ganze

>SCHRITT 01
wieder repariert ist.“

Gehäuse aus Holz

Brians Tough Pi-ano hat nun

Brian hat sich für Pinienholz entschieden und
seinen festen Platz im Zentrum
sowohl in die Holzverkleidung als auch in die Plas-
für Kinder mit Autismus-Proble-
tikschicht für die Arcade-Buttons Löcher gebohrt
men und Downsyndrom, das seine

Tante und sein Onkel gegründet
haben. Potenziellen Piano-Kons-
trukteuren gibt Brian noch einige

Ratschläge mit auf den Weg: „Ich
die Arcade-Buttons aus Kunst-
würde die Lautsprecher mit in
stoff aus. „Letzten Endes war das
das Gehäuse einbauen. Allerdings
die beste Lösung, da die Knöpfe
muss dann der Verstärker aus-
einfach zu bekommen und leicht
reichend belüftet sein. Außerdem
auszuwechseln sind.“
sollte man unbedingt eines der

Arcade-Buttons haben sich als
beste Lösung herausgestellt.

>SCHRITT 02

Kunststoffknöpfe dienen als Tasten

Sie sind einfach zu ersetzen

Eigentlich hatte Brian herkömmliche Holztasten vor-
gesehen. Schließlich hat er sich jedoch für robuste

Brian schrieb ein Python-Pro-

Werkzeuge anschaffen, mit denen

Arcade-Buttons entschieden.

gramm, das mithilfe der Pygame-
üblicherweise Arcade-Buttons

Library ausliest, wenn die Arcade-
befestigt werden. Sonst holt man

Buttons gedrückt werden. Dann
sich beim Auswechseln irgend-
werden WAV-Samples abgespielt.

wann blutige Finger.“

Die Boards mit
den 1.000-Ohm-

Widerständen
sollen das Rau-
schen verringern

>SCHRITT 03

Alles verbinden

Die Arcade-Buttons für jede Oktave werden mit
einem Board mit Widerständen verbunden. Dieses
wiederum wird an den Pi Zero angeschlossen.

magpi.de

04 • 2017

41

Projekte WORKSHOP

WESLEY ARCHER

Der Raspberry-Pi-Fan betreibt die Website

Raspberry Coulis und schreibt Anleitungen
für Pi Supply und Cyntech.

raspberrycoulis.co.uk

@RaspberryCoulis

DER EIGENE

RASPCADE:

SOFTWARE

Im letzten Teil unserer Bauanleitung installieren wir die

Software, damit Sie mit Ihrem RaspCade spielen können
a unser RaspCade nun endlich zusammen

Der RaspCade bootet und zeigt
dabei den RaspCade Splash Screen
gebaut ist, wird es Zeit, die Software zu instal

D lieren und einzurichten, damit Sie Retro

VideoGames zocken können. Hier zeigen wir, wie Sie

RetroPie installieren, die Bedienelemente konfigurieren, Spiele hinzufügen und andere Tricks, mit denen Sie das Maximum aus Ihrem RaspCade herausholen,
damit Sie Ihre LieblingsSpiele zocken können.

>SCHRITT 01

RetroPie herunterladen

RetroPie spielt eine Schlüsselrolle für den RaspCade. Es
handelt es sich dabei um eine ausgefuchste Software,
auf der diverse Emulatoren laufen, und zwar in einem
ansehnlichen UserInterface, das an den Look heutiger Konsolen angepasst ist. Die Software wird ständig weiterentwickelt und es gibt relativ häufig Updates.

Sie finden das Programm für den Raspberry Pi2/3 auf

Heft-DVD D. Wir empfehlen allerdings, einen

Raspberry Pi 3 zu verwenden, um richtig Spaß mit

Sie
dem RaspCade zu haben. Sollten Sie eine Verbrauchen
sion für ein älteres Pi- Modell benötigen, finden Sie es auf retropie.org.uk.

> microSD-Karte

Klasse 10 (16
oder 32 GByte

>SCHRITT 02
empfohlen)

SD-Karte beschreiben

> RetroPie

Schreiben Sie nun das Image mit dem Programm

Ihrer Wahl auf die SD-Karte. Die offizielle Rasp -

> USB-Stick

(optional)

berry-Pi-Dokumentation beschreibt den Vorgang

(magpi.cc/1V5Oj8E). Wir empfehlen die Verwendung

> RaspCade

Splash Screen
einer hochwertigen SDKarte. Sie sollten dafür eine
magpi.cc/

Klasse10Karte verwenden, die hohe Transferraten

2dFLR9N

Der USB-Port
erleichtert das Hinzu-
bietet. Außerdem benötigen Sie ordentlich Kapazität
fügen neuer ROMs
für die Speicherung der ROMs. Wir empfehlen mindestens 16 GByte; bis zu 32 GByte werden unterstützt.

42

04 • 2017
magpi.de

D

RetroPie

SPIELAUTOMAT

Projekte
auf Heft-DVD c

>SCHRITT 03
und folgen Sie den Anweisungen auf dem Bild

Oben Wir empfeh-

RaspCade booten
len das Picade von
schirm, eventuell müssen Sie dabei auch einige Tas

Pimoroni wärms-

Wenn die SDKarte vorbereitet ist, stecken Sie sie in
ten drücken. Danach sollten Ihrem Joystick sowie
tens: Es vereinfacht
die Verwaltung von
den Raspberry Pi und starten den RaspCade. Geht alles den Drucktasten Aktionen zugewiesen sein. Sie kön

Bedienelementen
gut, erscheint beim Booten des RaspCade das Retronen die Zuweisung auch überspringen, indem Sie und Sounds ganz
erheblich

PieLogo. Sie können aber auch den RaspCade Splash
eine Taste gedrückt halten, bis das Tutorial fortfährt.

Screen (magpi.cc/2dFLR9N) verwenden (Näheres
dazu in der rechten Randspalte). Der erste Bootvor

>SCHRITT 05

DER
gang dauert etwas länger, da dabei die SDKarte voll

Einspielen der ROMs

RASPCADE
geschrieben wird. Wenn Sie den „Welcome Screen“

ROMs, das steht für Read-Only Memory, sind die

SPLASH
sehen, ist der Vorgang abgeschlossen.

SpieleDateien. Diese enthalten im Wesentlichen

SCREEN
die Dateien, die Sie auf einem Spiel-Modul finden

Folgen Sie der

>SCHRITT 04
würden. Sie benötigen diese, um die Spiele auf dem

Anleitung hier

Bedienelemente konfigurieren

RaspCade zu spielen. Beachten Sie dabei jedoch das

(magpi.cc/

2emU0kJ), um

Die Konfiguration der Bedienelemente ist bei Retro

Copyright. Mehr Infos und einen Guide zum Ein
den RaspCade

Pie einfach; gleich beim ersten Boot werden Sie aufspielen der ROMs finden Sie auf der RetroPie-Web

Splash Screen
gefordert, dies zu erledigen. Sie sollten dann den Welsite (magpi.cc/2dmE14h). Wenn Sie diesen Guide zu verwenden
und den Look
come Screen sehen, wo Sie aufgefordert werden, eine
befolgen, werden alle Dateien gleich an der richtigen
abzurunden.

Taste Ihres Geräts zu drücken und zu halten, um diese

Stelle abgelegt. Sie können aber auch den USBPort
zu konfigurieren. Drücken Sie eine Taste am RaspCade
an der Vorderseite des RaspCade dafür verwenden.

>SCHRITT 06

Neustart und spielen

ROMS PER

Nachdem Sie Ihre ROMs eingespielt haben, starten

USB EIN-

Sie den RaspCade neu, damit RetroPie diese laden

SPIELEN
kann. Nach dem Reboot sollten entsprechend den
installierten ROMs verschiedene neue Spielsysteme

Mit der fol-
genden Anlei-
auftauchen. Jetzt brauchen Sie nur noch Ihr Sys
tung können
tem auszuwählen und das Lieblingsspiel zu star

Sie einen USB-
ten, schon können Sie auf Ihrem RaspCade mit dem

Stick statt
einer SD-Karte

Spielen beginnen. Eventuell sind noch ein paar Ein
zum Einspie-
stellungen für das Display oder Bedienelemente für
len der ROMs
bestimmte Systeme anzupassen; hierzu empfehlen
verwenden:

magpi.cc/
wir das Wiki von RetroPie (magpi.cc/2emU7fV), das

Oben In dieser Anleitung zwar nicht beschrieben, aber der

2emUxmK

RaspCade gewinnt durch NeoPixel in den Tasten deutlich dazu.

viele entsprechende Informationen bereithält.

magpi.de

04 • 2017

43

Tutorial

Praxis GRUNDLAGEN

HILFE AUF DER

KOMMANDOZEILE

Dank dieser Befehle sind Sie auf der Kommandozeile nicht alleine n unserem Leitfaden für Kommandozeilen-Einsteiger ( MagPi 3/2017, Seite 40) haben

I
buch zu konsultieren. Das geht mit der Eingabe von:

wir uns kurz mit „man“ befasst. Das ist das
man

Handbuch, das Sie über die Kommandozeile aufrufen
können. Das Tool man ist so wichtig, dass es unserer

Die erste Anlaufstelle für Hilfe auf der Kommando-

Ansicht nach eine gründlichere Erklärung verdient. Es
zeile ist der Befehl man (Kürzel für „manual“). Geben
gibt aber auch noch andere Helferlein auf der Kom-

Sie man gefolgt vom Befehl ein und Sie erhalten
mandozeile, etwa die Befehle whatis, info und apro-detaillierte Informationen:

pos. Gerade auf der Kommandozeile freut sich jeder
über ein bisschen Unterstützung. Denn selbst hart-
man passwd
gesottene Coder kennen nicht alle Befehle auswendig.

In diesem Beitrag stellen wir Ihnen verschiedene

Damit bekommen Sie Hinweise, wie Sie Ihr Passwort

Möglichkeiten vor, wie Sie auf der Kommandozeile
ändern können. Die man-Fenster werden seitenweise

Hilfe erhalten. Egal auf welchen Befehl Sie stoßen, Sie
angezeigt. Mit der LEERTASTE springen Sie auf die
haben immer die Möglichkeit, das integrierte Hand-
nächste Seite. Sie beenden das Handbuch mit Q und

Die Übersicht erklärt den Befehl

Die Beschreibung informiert Sie im

Viele Befehle haben Optionen.

und die Syntax grob. In diesem Fall kön-

Detail, was das Tool macht und teilt Ihnen

Das ist ein Bindestrich oder ein doppel-
nen Sie den Befehl, eine Option und den
mit, wie es funktioniert.

ter gefolgt von einem Buchstaben oder

Kontonamen eingeben. Die Teile in den
einem Wort. Die man-Seite erklärt die

Klammern sind optional.

Optionen im Detail.

44
magpi.de
magpi.

44

04 • 2017

KOMMANDOZEILEN-HILFE

Praxis

KOMMANDOZEILE

Die info-Fenster sind
ähnlich aufgebaut
wie man und bieten
oftmals den gleichen

Inhalt. Manchmal gibt
es aber viel genauere

Informationen

(Beispiel bash).

gelangen so wieder auf die Kommandozeile. Soge-

Der Befehl man bash gibt eine einfache Beschreibung
nannte man pages sind anfangs nicht einfach zu
der GNU Bourne-Again Shell und den möglichen Opti-
lesen. Aber Sie gewöhnen sich schnell daran.

onen aus, die Sie mit dem Befehl bash kombinieren

Ganz oben finden Sie die Sektionen Name, Über-
können. Ein info bash vermittelt zusätzlich noch die
sicht und Beschreibung. Damit bekommen Sie einen
gesamte Geschichte und liefert mehrere Hundert

Überblick zum jeweiligen Befehl. Darunter sind die

Seiten an ergänzenden Informationen.

Optionen und Parameter gelistet. Manchmal ahnt

Drücken Sie H in einem info-Bildschirm, sehen
man gar nicht, was so ein Befehl noch alles auf dem

Sie die Navigationsmöglichkeiten für so lange Doku-

Kasten hat. Lesen Sie sich die man page also ruhig
mente. Mit der LEERTASTE blättern Sie eine Seite
auch für Befehle durch, die Sie bereits kennen. Bei
weiter und via Entf geht es eine Seite zurück. TAB
neuen Befehlen ist die Lektüre Pflicht.

stellt Links heraus und mit der EINGABETASTE

Es gibt sogar eine man page für man:

benutzen Sie sie. Mit Q beenden Sie info.

man man

Viele Befehle
haben eine einge-
baute, aber einfa-
che Hilfsfunktion,

Mit der Taste H bekommen Sie alle möglichen Tas-
die Sie über -h oder

--help aufrufen.

taturkürzel angezeigt. Damit können Sie dann kom-
fortabler navigieren als nur mit der Leertaste.

Mans weniger bekannter Verwandter ist „info“.

Damit zeigt das System Informationsseiten an, die
zu den Befehlen gehören. Manchmal sind sie mit
den man pages identisch, es gibt aber unterschied-
liche Beschreibungen. Versuchen Sie:

man bash
info bash
magpi.de
magpi.

04• 2017

45

w

Tutorial

Praxis GRUNDLAGEN

AUTOVERVOLLSTÄNDIGUNG MIT TAB

Eine weitere Möglichkeit, Dateien zu finden, ist Auto-
vervollständigung mit TAB. Wenn Sie die TAB-Taste
drücken, vervollständigen Sie damit automatisch

Befehle, Dateien und Verzeichnisse auf der Kom-
mandozeile. TAB wird so auf der Kommandozeile
schnell zum besten Freund. Damit können Sie eben-
falls sehr gut neue Befehle ausfindig machen.

Nehmen Sie zum Beispiel das Tool apt. Es gibt
bekanntlich apt-get und apt-cache. Kennen Sie
aber auch apt-config und apt-key?

Geben Sie das ein:

apt

Apropos verwenden
und drücken im Sie Anschluss die TAB-Taste dop-

BEFEHLE FINDEN

Sie, um das Hand-
buch nach gleichen
pelt. Sie bekommen nun alle möglichen Varianten von

Nachdem Sie man und info nun kennen, können Sie

Wörtern zu durchsu-
apt. Stöbern Sie einfach durch das gesamte Alphabet.

chen. Damit finden
sich nach Befehlen umsehen. Nun ist man -k nütz-

Sie Befehle anhand

Geben Sie etwa den Buchstaben „a“ ein:

von bestimmten
lich. Probieren Sie im Speziellen das aus:

Begriffen
a
man -k directory | more
und drücken TAB doppelt. Nun gibt das System

Dieser Befehl listet alle möglichen man-Einträge
alle Befehle aus, die mit einem „a“ beginnen. Im
auf. Mit der LEERTASTE blättern Sie wieder.Die

Anschluss finden Sie mithilfe von man heraus, was die

Option man -k sollten Sie sich merken. Rufen Sie

Befehle bewirken. Auf diese Weise erweitern Sie Ihr
man man auf, dann sehen Sie, dass die Option -k iden-Wissen über die Kommandozeile von Linux und UNIX.

tisch mit „apropos“ ist. Apropos verwenden Sie, um
man pages und Beschreibungen zu durchsuchen.

SCHNELLE HILFE

Kennen Sie den Namen eines Befehls nicht, ist diese

Bei vielen Befehlen gibt es eine Hilfsfunktion. Sie

Geben Sie einen

Möglichkeit besondern nützlich.

rufen diese normalerweise mit -h oder --help auf: Buchstaben ein

Führen Sie zum Beispiel diesen Befehl aus:

und drücken Sie
danach zweimal

TAB. Nun sehen
mktemp --help

Sie alle Befehle
apropos directory
mit diesem Buch-
staben. Weiter

Damit lassen Sie sich die Optionen anzeigen, die der
geht es anschlie-

Das System gibt nun alle Befehle aus, deren
ßend mit whatis.

Befehl mktemp zu bieten hat. Die Ausgabe ist iden-

Beschreibungen oder Namen das Wort „directory“
enthalten. Sie finden damit die üblichen Verdäch-
tigen wie zum Beispiel ls, cd und pwd, aber auch weniger bekannte Befehle wie etwa mktemp.

Neben jedem Befehl finden Sie eine Zahl wie zum

Beispiel (1) oder (2). Sie verweisen auf die Sektion
des Handbuchs (Überblick unter man man).

Die Nummer der Sektion ist nützlich, wenn Sie die

Befehle auf der Kommandozeile benutzen möch-
ten. Als Daumenregel gilt, dass sowohl 1: Ausführ-
bare Programme oder Shell-Befehle als auch 2: Sys-
temaufrufe einen genaueren Blick wert sind. Höhere

Nummern stehen für Bibliotheksaufrufe, spezielle

Dateien und Kernel-Routinen für Experten.

Weitere Informationen über den jeweiligen Befehl
finden Sie ebenfalls mithilfe von man:

man mktemp

Der Befehl informiert Sie im Detail darüber, wie Sie
temporäre Verzeichnisse erstellen können.

46
magpi.de
magpi.

46

04 • 2017

w

KOMMANDOZEILEN-HILFE

Tutorial

Praxis
tisch zur ersten Seite der man page von mktemp, aber
zeigt beispielsweise „Ungültige Option“ an. Bei der

Sie rufen so nicht die gesamte Dokumentation auf.

Suche zu Befehlen ist weiterhin whatis interessant:

Nicht alle Befehle bieten allerdings --help.

ls --help gibt zum Beispiel das volle man-Doku-
whatis pwd
ment aus, das Sie durch less aufteilen können:

Das Beispiel gibt zurück „print name of current/working
ls --help | less
directory“. Oftmals reicht die einfache Beschreibung und

Sie wissen, was der Befehl bewirkt. Zumindest sind es

Der Befehl man ls ist aber einfacher. Einige Befehle
genug Informationen, damit Sie entscheiden können, ob
haben gar keine Hilfe implementiert.

Sie den Befehl gerade benötigen oder nicht.

Dies sind nur einige Tools, die Ihnen unter Linux auf
pwd --help
der Kommandozeile weiterhelfen und die Arbeit mit
ihr somit wesentlich einfacher machen.

WEB-

SUCHE

Ein Vorteil einer Desktop-Oberfläche wie Pixel bei

Raspbian ist der Webbrowser in Kombination mit
einer Suchmaschine. Doch es geht auch ohne grafi-
sche Oberfläche wie Pixel.

Mit der Kommandozeile online zu sein, ist ein-
facher als Sie denken. Es gibt einige textbasierte

Webbrowser, mit denen Sie Zugriff auf Google,

Andere Tastaturkürzel erleichtern die Navigation

Bing und so weiter bekommen.

im Browser für die Kommandozeile:

Wir führen diese Befehlszeile aus:

g - Gehe zu URL
sudo apt-get update && sudo apt-get upgrade
sudo apt-get install elinks

Pfeil nach unten - Nächster Link

Anschließend können Sie den Webbrowser über die

Pfeil nach oben - Vorheriger Link

Kommandozeile öffnen:

Eingabtetaste - Link auswählen
elinks

Pfeil nach links - Zurück

Die elinks-Oberfläche füllt den gesamten Bild-
schirm aus und ersetzt somit die Kommando-
u - Vorwärts
zeile. Mit der Taste g öffnen Sie das URL-Eingabe-
feld. Sie können komplette URLs wie zum Beispiel
q - Beenden
http://www.google.de oder kurze Versionen wie
chip.de eingeben.

. - Nummerierung der Links aktivieren

Es gibt Tastaturkürzel für einige hilfreiche

Websites. Geben Sie g und danach diese Kürzel ein:

% - Farben umstellen
d - Suche mit dict.org
t - Neuer Tab
sd - Slashdot

T - Link in neuem Tab öffnen
g - Suche mit Google

> - Nächster Tab

Sie können auch Google-Suchbegriffe in der URL-

< - Vorheriger Tab

Zeile eingeben. Geben Sie „g chip“ ein, um nach
unserer Webseite in Google zu suchen.

c - Tab schließen
magpi.de
magpi.

04• 2017

47

Praxis PROGRAMMIEREN

SIMON LONG

Er arbeitet bei Raspberry Pi als Pro-
grammierer. Sein Spezialgebiet ist das

Design der Anwenderoberfläche. In sei-
ner Freizeit entwickelt er Apps für das
iPhone und löst Kreuzworträtsel.

raspberrypi.org

Eine Funktion muss einen

Wert des gleichen Typs
zurückgeben

Die Definition einer Funktion enthält
einen Rückgabe-Typen, einen Funktions-
namen und eine Liste mit Parametern

FUNKTIONEN

EINE EINFÜHRUNG IN C TEIL 06

Mit Funktionen wird Ihr Code wesentlich übersichtlicher
lle unsere bisherigen Beispiele enthielten
lassen sich sehr einfach wiederverwenden. Wir haben
eine Funktion: main. Sämtlicher weiterer

Funktionen bereits in Aktion gesehen. Die Funktion

A Code befand sich darin. Bei kleinen Program- main ist eine Standardfunktion in C, auch wenn sie men ist das in Ordnung. Wird der Code aber umfang-einen speziellen Namen hat. Weiterhin haben wir in
reicher, ist das nicht mehr praktikabel. Außerdem ist
unseren Beispielen bereits mit printf Bekanntschaft
es Platzverschwendung, wenn Sie die gleiche Sache
gemacht. Wie erstellen wir aber nun eigene Funktio-
mehr als einmal durchführen wollen. Teilen Sie den
nen und setzen sie ein? Ein Beispiel:

Code in Funktionen auf, ist er besser lesbar und Teile

#include <stdio.h>

RÜCKGABE-
int sum (int a, int b)

WERTE

{
int res;

Eine Funktion
res = a + b;
kann einen ein-
zelnen Wert
return res;
oder auch gar

}

keinen zurück-
void main (void)

geben. Defi-
nieren Sie die

{

Funktion als
int y = 2;
void, ist kein
int z = sum (5, y);

Rückgabewert
notwendig.

printf ("Summe von 5 und %d ist %d\n", y, z);

Einen Fehler

}

gibt es, wenn
bei nicht-void
falsche Typen

Oben Sie können einen Funktionsaufruf immer dann nutzen,

Das Beispiel enthält sowohl die Funktion main als
zurückgegeben
wenn eine Variable den gleichen Typ wie der Rückgabewert der auch eine zweite, die sum heißt. In beiden Fällen ist
werden.

Funktion hat. Im Code oben ersetzt ein Aufruf von sum_and_
diff eine Integer-Variable bei printf
die Struktur der Funktion identisch. Eine Zeile defi-

48

04 • 2017
magpi.de

EINFÜHRUNG IN C

Praxis
niert den Rückgabewert, den Namen und die Parame-
in der gleichen Reihenfolge: a ist 5 und b ist der Wert VARIABLEN-ter der Funktion. Im Anschluss folgt der Code, der in
von y. Sie können nur einen Wert von einer Funktion

BEREICH
geschweiften Klammern eingeschlossen ist. Darin ist
zurückgeben, aber mehrere Zeiger. Ein Beispiel:

definiert, was die Funktion eigentlich macht.

Deklarieren Sie

#include <stdio.h>
innerhalb einer

Was ist in einer Funktion?

Funktion eine
int sum_and_diff (int a, int b, int *res)

Variable, steht

Sehen wir uns die Funktion sum genauer an:

{
sie nur dieser
int sum;

Funktion zur

Verfügung und
int sum (int a, int b)

sum = a + b;
keiner Funk-

*res = a – b;
tion innerhalb

Die Definition einer Funktion besteht aus drei Tei-
return sum;
dieser Funktion
oder Funktio-
len. Der erste ist der Typ des Rückgabewerts, hier int.

}

nen, die diese

Der zweite Teil ist der Name der Funktion, sum. In den
void main (void)

Funktion aufru-
runden Klammern sind die Parameter. Sie sind durch

{
fen. Das nennt
man den Varia-

Kommata getrennt und die Typen werden definiert. In
int b = 2;
blenbereich, in
unserem Fall sind a und b jeweils Integer.

int diff;
dem die Varia-

Der Code ist innerhalb der geschweiften Klammern:

printf ("Summe von 5 und %d ist %d\n", b,
ble gültig ist.

sum_and_diff (5, b, &diff));
int res;
printf ("Die Differenz von 5 und %d ist %d\n", b, diff);

}

Das deklariert eine lokale Variable für die Funktion,
ein Integer mit Namen res. Die Variable lässt sich nur

Die Summe wird wie gehabt zurückgegeben, aber mit einem Zeiger liefern innerhalb der Funktion nutzen. Sind Variablen inner-wir auch die Differenz. Bedenken Sie, dass die Parameter einer Funk-halb einer Funktion deklariert, stehen sie ausschließ-
tion lokale Variablen sind. Selbst wenn Sie eine der Funktionen ändern, lich dieser Funktion zur Verfügung. Versuchen Sie,
hat das keinen Effekt auf die Variable, die der Funktion übergeben wurde.

res aus main anzusprechen, gibt es einen Fehler.

Verwenden Sie einen Zeiger, ändern Sie den Wert des Zeigers nicht, aber Sie können den Wert der Variable ändern, auf die gezeigt wird.

res = a + b;

Wir rufen die Funktion mit den gleichen Parametern wie zuvor auf, bringen aber einen dritten ins Spiel. Das ist ein Zeiger auf die Variable, Hier sind a und b die Parameter der Funktion. Beim die die Differenz enthalten soll. In main rufen wir die Funktion mit der Aufruf einer Funktion wird eine lokale Kopie der Para-Adresse von diff als den Zeigerparameter zur Funktion sum_and_diff meter erzeugt. Ändern Sie die Werte von a oder b
auf. Der Unterschied wird in diff der Hauptfunktion geschrieben.

innerhalb der Funktion, betrifft das nur die lokalen

Werte. Die Werte der Funktionsparameter, aus der

Die Reihenfolge ist wichtig
diese Funktion aufgerufen wurde, ändern sich nicht.

Sie sollten bei der Definition von Funktionen immer daran denken, dass der Compiler von oben nach unten arbeitet. Bevor Sie eine Funktion ver-return res;
wenden wollen, müssen sie ihn davon in Kenntnis setzen. Im Beispiel oben geschieht das automatisch, weil die Definition

Abschließend wird das Ergebnis zurückgegeben. Die
der Funktionen sum und sum_and_diff vor dem ers-

Funktion wurde designt, ein Integer zurückzugeben.

ten Aufruf in main platziert sind.

PARAMETER

Aus diesem Grund muss return ebenfalls mit Integer

In größeren Dateien rufen häufig mehrere Funkti-
aufgerufen und entsprechend an die aufrufende Funk-
onen viele weitere auf. Dann wird die Sache kompli-

Eine Funktion
kann beliebig
tion zurückgegeben werden.

ziert. Es ist nicht immer einfach, die Funktionen in
viele Parameter

Eine Funktion muss aber keinen Wert zurückge-
der richtigen Reihenfolge zu definieren. Sie können
enthalten oder
ben. Ist der return-Typ auf void gesetzt, wird nichts das vermeiden. C erlaubt eine Deklaration von Funkti-auch keine.

Brauchen Sie
zurückgegeben. In diesem Fall geht es ganz einfach
onen, bevor sie benutzt werden.

keine Parame-
nach der letzten Zeile zurück. Wollen Sie früher her-

Die Deklaration einer Funktion ist lediglich die
ter, listen Sie
aus (zum Beispiel im Falle eines Fehlers), dann rufen

Definition ohne den Code, der sich innerhalb der
die Parameter
als (void) in

Sie return ohne Wert dahinter auf.

geschweiften Klammern befindet. Die Deklaration für
der Definition
die Funktion sum_and_diff ist also:

der Funktion.

Eine Funktion aufrufen

Das ist äquiva-
lent zur Funk-

So rufen Sie eine Funktion aus main auf:

int sum_and_diff (int a, int b, int *res);
tion main. Rufen

Sie die Funktion
int z = sum (5, y);

Beachten Sie den Strichpunkt am Ende! Deklarationen
auf und schrei-
ben Sie dann
von Funktionen stehen am Anfang der Datei. Findet
einfach leere

Die Funktion sum gibt ein Integer zurück, deswe-
der Compiler eine Deklaration, weiß er, dass irgendwo

Klammern
gen definieren wir ebenfalls einen Integer-Wert. Die
eine solche vorkommt und welchen Typ sie zurück-

() nach dem

Namen.

Parameter befinden sich in runden Klammern und
gibt, auch wenn er die Definition nicht kennt.

magpi.de

04 • 2017

49

Praxis WORKSHOP

PHIL KING

Wenn Phil keine Texte redigiert
oder Artikel schreibt, arbeitet er
gerne an Pi-Projekten, etwa zu
fahrenden Robotern.

THERMOMETER

@philking68

AUS FÜNF LEDS

Temperatur auslesen und als Balkendiagramm visualisieren

Sie
ür Analog-Werte ist beim Pi ein Analog-Digi-
brauchen

>SCHRITT 02
tal-Converter-Chip (ADC) wie der MCP3008

F

ADC anschließen
erforderlich. Das ist ein beliebter ADC, den Sie

Schalten Sie den Pi sicherheitshalber ab, während

> GPIO Zero
auch in der GPIO Zero Python Library finden. Damit

Python Library

Sie die Schaltung aufbauen. Wie Sie im Diagramm
zeigen wir die Temperatur auf dem Schirm an und las-
unten sehen, ist eine Menge zu verdrahten, um den

> 1 lötfreies
sen dann LEDs mittels der LEDBarGraph-Klasse der

Breadboard

MCP3008 mit den GPIO-Pins des Pi zu verbinden.

Temperatur entsprechend aufleuchten.

Platzieren Sie zunächst den MCP3008 in der Mitte des

> 1 x MCP3008

ADC Chip

>SCHRITT 01

Breadboards, sodass er auf der Mittel-Nut sitzt. Ver-
binden Sie dann die Jumperkabel wie im Diagramm

> 1 x TMP36 Tem-
peratur-Sensor

SPI aktivieren
gezeigt. Zwei verbinden die „+“ Stromschiene mit je

Die Analog-Werte vom ADC werden mithilfe des
einem 3,3-V-Pin; zwei andere werden über die „–“

> 5 × LEDs (rot,
gelb, grün)

SPI-Protokolls an den Pi übermittelt. Auch wenn das

Schiene mit je einem GND-Pin verbunden. Die vier
bei GPIO Zero schon standardmäßig funktioniert, sind
mittleren Beine des ADC werden mit den GPIO-Pins 8

> 5 × 330Ω Wider-
stände
die Ergebnisse eventuell genauer, wenn volle SPI-

(CE0), 10 (MOSI), 9 (MISO), und 11 (SCLK) verbunden.

Unterstützung aktiv ist. Öffnen Sie ein Terminal-

> 1 × 1uF Konden-
sator

Fenster und geben Sie dort ein:

>SCHRITT 03

Sensor hinzufügen

> 11 × Jumper
male/female
sudo apt-get install python3-spidev

Jetzt, da der ADC mit dem Pi verbunden ist, können
python-spidev

Sie Geräte mit seinen von 0 bis 7 nummerierten Ein-

> 8 × Jumper
male/male
gangskanälen verbinden. Hier schließen wir einen

Klicken Sie auf OK und starten Sie den Pi neu.

analogen TMP36 Temperatursensor an. Dieser muss

Der TMP36-Sensor muss unbe-
dingt korrekt verdrahtet werden,
da er sonst schnell überhitzt

Verbinden Sie die Masse- und

Ausgangs-Pins des Sensors mit
einem Kondensator, um die aus-
gelesenen Werte zu stabilisieren

Der MCP3008 ADC sitzt auf der

Mittel-Nut; die unverdrahtete

Seite besteht aus acht Eingangs-
kanälen

Wir nutzen fünf LEDs, um eine

Balkenanzeige für die Tempe-
ratur zu realisieren. Jede LED ist
mit einem anderen GPIO-Pin ver-
bunden

Das kurze Bein jeder LED ist
über einen Widerstand mit der

Masse-Schiene verbunden, um
die Stromstärke zu begrenzen

50

04 • 2017
magpi.de

D

Code
auf Heft-DVD c

LED-THERMOMETER

Praxis
korrekt angeschlossen werden, da er sonst überhitzt.

ch10listing1.py

Sprache

Zeigt die flache Seite zu Ihnen, wird das linke Bein mit

>PYTHON 3
der „+“ Stromschiene verbunden, das rechte Bein mit
from gpiozero import MCP3008
der „–“ Stromschiene. Das mittlere Bein ist der Aus-
from time import sleep

DOWNLOAD:

gang; dieses schließen wir an Kanal 7 des MCP3008
magpi.cc/2bhwQbJ
an. Um die Werte zu stabilisieren, schalten wir einen
def convert_temp(gen):

Kondensator zwischen Ausgangs- und Massebeine.

for value in gen:

yield (value * 3.3 - 0.5) * 100

>SCHRITT 04

Temperatur auslesen
adc = MCP3008(channel=7)

Nun können wir den Wert des Sensors in Python ausle-
sen. Öffnen Sie dazu auf dem Pi IDLE aus dem Haupt-
for temp in convert_temp(adc.values):

menü: Menü | Entwicklung | Python 3 (IDLE). Erzeugen
print("Die Temperatur beträgt", temp, "C") Sie eine neue Datei, geben Sie den Code aus ch10lis-sleep(1)

ting1.py ein, und speichern Sie. Ganz oben importie-
ren Sie dann die MCP3008-Klasse aus GPIO Zero und die
sleep-Funktion aus der time-Library. Dann definie-ch10listing2.py
ren wir eine Funktion, die die Sensor-Ausgabe in Grad

Celsius umrechnet. Weiter weisen wir der adc-Variab-
from gpiozero import LEDBarGraph
len Kanal 7 des MCP3008 zu, und verwenden eine for-
from time import sleep

Schleife, um die umgerechnete Temperatur auf dem

Bildschirm anzuzeigen.

graph = LEDBarGraph (26, 19, 13, 6, 5, pwm=True)

>SCHRITT 05
graph.value = 1/10

LED-Balkenanzeige
sleep(1)

Als Nächstes fügen wir unsere fünf LEDs wie im Dia-
graph.value = 3/10
gramm zum Schaltkreis hinzu. Von grün bis rot haben
sleep(1)

wir die langen Beine an die folgenden GPIO-Pins ange-
graph.value = -3/10
schlossen: 26, 19, 13, 6, und 5. Erstellen Sie in IDLE
sleep(1)

eine neue Datei, geben Sie den Code aus ch10listing2.

graph.value = 9/10
py ein, und speichern Sie. Zu Beginn importieren wir
sleep(1)

die LEDBarGraph-Klasse aus GPIO Zero; dadurch kön-
graph.value = 95/100
nen wir die LEDs verwenden, um eine Balkenanzeige
sleep(1)

zu realisieren, was uns eine Menge komplexen Codings
graph.value = 0
erspart. Wir weisen die graph-Variable unseren LEDs
an den genannten GPIO-Pins zu und aktivieren PWM,
damit wir deren Helligkeit einstellen und die Anzeige
ch10listing3.py
so noch genauer machen können. Dann stellen wir
graph.value auf verschiedene Werte zwischen 0 und
from gpiozero import MCP3008, LEDBarGraph

1, um die entsprechende Anzahl an LEDs von grün nach
from time import sleep
rot aufleuchten zu lassen. Für ein besonders präzises

Ergebnis sorgt, dass sie auch partiell aufleuchten.

def convert_temp(gen):

for value in gen:

>SCHRITT 06
yield (value * 3.3 - 0.5) * 100

Temperatur anzeigen

Nun haben wir Temperatursensor und LED-Balken-
adc = MCP3008(channel=7)

anzeige eingerichtet und wollen sie kombinieren, um
graph = LEDBarGraph (26, 19, 13, 6, 5, pwm=True)

die Temperatur auf der LED-Balkenanzeige zu zeigen.

Erzeugen Sie in IDLE eine neue Datei, geben Sie den
for temp in convert_temp(adc.values):

Code aus ch10listing 3.py ein und speichern Sie. Ganz
bars = temp / 35
oben importieren Sie die GPIO Zero-Klassen MCP3008
graph.value = bars
und LEDBarGraph sowie die sleep-Function aus der sleep(1)

time-Library. Dann definieren wir eine Funktion,
um die Sensorwerte in Grad Celsius umzurechnen.

Wir weisen die adc-Variable Kanal 7 des MCP3008 zu,
viele LEDs der Balkenanzeige leuchten. In die-
graph den GPIO-Pins unserer LEDs, und setzen PWM
sem Beispiel haben wir temp durch 35 geteilt, was
auf true. In unserer for-Schleife schließlich fügen die Maximaltemperatur darstellt. Wenn also 35°C
wir eine bars-Variable hinzu, um festzustellen, wie
erreicht werden, leuchten alle LEDs voll auf.

magpi.de

04 • 2017

51

Praxis WORKSHOP

HENRY BUDDEN

Mit dem RasPi beschäftigte sich Henry
von Anfang an. Das Coden brachte er
sich selbst bei, ebenso die Grundlagen
der Elektronik. Seine Projekte stellt er

A B C D E

F G H I J

1

1
hier vor: magpi.cc/2eCbaMf

3V3

5V

GP2

5V

GP3 GND

GP4 GP14

5

5

GND GP15

GP17 GP18

GP27 GND

GP22 GP23

3V3 GP24

10

10

GP10 GND

GP09 GP25

Die roten LEDs zeigen an, wel-

GP11 GP8
cher Spieler die meisten Punkte

GND GP7
hat und in Führung liegt

DNC DNC

15

15

GP5 GND

GP6 GP12

GP13 GND

GP19 GP16

Mit der RGB-LED lässt

GP26 GP20

20

20

GND GP21
sich jede Farbe des
sichtbaren Lichtspekt-
rums erzeugen

25

25

30

30

A B C D E

F G H I J

Sie

SO BAUEN SIE EIN
brauchen

> 2 rote LEDs

> RGB-LED

REAKTIONSSPIEL

> 2 Taster

Reflexe wie ein Ninja-Kämpfer: Bei diesem Spiel lernen Sie, pfeilschnell

> 5× 470Ω

Widerstände
zu reagieren. Schaffen Sie es, den ersten Platz zu erobern?

> 8 Jumperkabel

Male/Female
ie brauchen wirklich nicht viel: Ein kleines

>SCHRITT 01

Steckbrett (Breadboard), einige elektrische

> 4× Jumperkabel

S

LEDs anschließen

Male/Male

Bauteile, schon haben Sie die Komponen-

Orientieren Sie sich am obigen Schaltungsdiagramm

> Alternativ können
ten für ein spaßiges Reaktionsspiel zusammen. Damit

(Steckbrett). Schließen Sie die roten LEDs an und ach-

Sie auch eines
schlagen Sie gleich mehrere Fliegen mit einer Klappe:

ten Sie darauf, dass das lange Beinchen (Anode) nach
der vielen Star-

Sie lernen, wie man ein Steckbrett benutzt, wie man
unten zeigt. Merkregel: Das lange Beinchen ist Plus,
terkits verwen-
den, wie man sie
elektronische Schaltungen aufbaut und wie man in
das kurze Minus. Das lange Beinchen der roten LED
bei Amazon & Co.

Python sein erstes Programm schreibt. Das Spiel ist
wird mit dem Plus-Ausgang des Raspberry Pi verbun-
zahlreich findet
für zwei Personen gedacht. Die Hardware lässt sich in
den (siehe gelbe Jumper im Diagramm). Die RGB-LED
relativ kurzer Zeit aufbauen. Viel Spaß dabei!

platzieren Sie so auf dem Steckbrett wie im Diagramm
zu sehen. Achtung: Ein Beinchen der RGB-LED ist
länger. In dieser Schaltung ist das der Minus-Pol. Die

Belegung bei diesem Typ ist LED-spezifisch.

>SCHRITT 02

Widerstände hinzufügen

LEDs benötigen immer einen separaten Vorwider-
stand als Schutz. Man schaltet ihn in Reihe mit der
jeweiligen LED – so wie im Fritzing-Diagramm oben.

Lässt man den Vorwiderstand weg, wird die LED durch
die schnell ansteigende Spannung zerstört. Sie benö-
tigen fünf Widerstände: Die RGB-LED zählt wie drei
separate LEDs, die die gleiche Kathode (negativer Pol)

miteinander teilen. Orientieren Sie sich bei der Ver-

Oben Der Schaltungsaufbau ist simpel. Die Komponenten lassen sich leicht in ein drahtung der Komponenten wieder an dem obigen

Gehäuse einbauen. Zusammen mit größeren Tastern ergibt das eine Art „Gameboy“

Diagramm, das die Belegung des Steckbretts zeigt.

magpi.de

52

04• 2017

D

Code
auf Heft-DVD c

REAKTIONSSPIEL

Praxis

Sprache:

>PYTHON

CODE-NAME:

02_reaction_game.py

DOWNLOAD:

magpi.cc/2nIWsTe

Oben Nach jeder Spielrunde erscheint die
aktualisierte Rangliste im Terminalfenster

>SCHRITT 03

Taster hinzufügen

Für dieses Projekt benötigen wir zwei Tasten: eine für
jeden Spieler. Wir haben für diesen Schaltungsauf-
bau Tasten mit vier Beinen verwendet, wie man sie
in vielen bunt zusammengewürfelten Bastelkits fin-
det. Drückt man eine solche Taste, erfolgt die Kon-
taktverbindung zwischen den Diagonalstiften. Genau
das haben wir im Diagramm berücksichtigt. Wenn Sie

Schalter mit zwei Anschlüssen verwenden, positionie-
ren Sie die Jumperkabel entsprechend auf der Steck-
platine. Die Taster stellen beim Drücken die Verbin-
dung zum Masse-Pin (GND) auf dem Raspberry her.

>SCHRITT 04

Kabel überprüfen

Gehen Sie zum Schluss alle Kabelverbindungen sorg-
fältig durch und checken Sie die Polarität der LEDs.

Falls die Polarität vertauscht sein sollte, bleibt die
jeweilige LED dunkel. Da man die GPIO-Pins leicht
verwechseln kann, lohnt es sich, ein Diagramm zu
drucken, das die exakten Bezeichnungen zeigt (das

Oben Behalten Sie die RGB-LED im Blick. Sobald sie leuchtet, ist auch für andere Projekte nützlich). Für den Rasp -
müssen Sie reagieren. Aber nicht, wenn die LED rot aufblinkt berry Pi 3 finden Sie eine Belegungstabelle unter folgender Adresse: https://goo.gl/j7XrUH. Vergewissern

>SCHRITT 06

Sie sich, dass jedes Jumperkabel mit dem richtigen

Der Spielablauf

GPIO-Pin des Raspberry verbunden ist.

Starten Sie das Programm, dann tippen Sie die

>SCHRITT 05

Namen der Spieler ein. Werfen Sie einen Blick auf
das Diagramm: Der Spieler, der am oberen Ende des

Code installieren

Steckbretts sitzt, trägt die Nummer 1. Der Spieler auf

Wir gehen davon aus, dass Sie die neueste Rasp bian-
der anderen Seite (also am unteren Ende des Bread-

Version (mit Pixel) verwenden. Falls nicht, müssen
boards) geht mit der Startnummer 2 ins Rennen. Nun

Sie die GPIO-Zero-Library nachinstallieren. Booten
heißt es volle Konzentration: Die RGB-LED in der

Sie den Pi. Nach dem Booten öffnen Sie ein Termi-

Mitte des Steckbrettes leuchtet auf. Die Farbe ist zum
nal-Fenster und geben diesen Befehl ein: git clone

Beispiel Gelb, Grün, Violett oder Blau.

https://github.com/henrybudden/rpesk-advan-

Los geht’s: Drücken Sie Ihre Taste so schnell, wie
ced/. Damit laden Sie die Python-Dateien von Git-

Sie können – aber auf keinen Fall, wenn die RGB-LED

Hub auf den Raspberry Pi. Alternativ verwenden Sie
in Rot aufscheint! Falls Sie dennoch reagieren, zieht
die Datei von unserer DVD D. Nachdem das erledigt

Ihnen das Programm einen Punkt ab. Neues Spiel,
ist, wechseln Sie den Ordner mit cd repsk-advan-
neues Glück: Nach jeder Runde erscheint die aktua-
ced. Dann starten Sie das Spiel mit folgendem
lisierte Punktezahl auf dem Monitor. Wer in Führung

Befehl: sudo python 02_reaction_game.py.

liegt, bei dem leuchtet die kleine rote LED auf.

magpi.de

04 • 2017

53

Praxis WORKSHOP

WILLIAM H. BELL

Technischer Berater, Teilchenphysi-
ker, Entwickler von Computersoftware,

IT-Administrator, Redakteur und Lehrer

TEIL 01
aus Leidenschaft.

whbell.net

DER EIGENE

MONOPOLY-

SIMULATOR

Hacken Sie das Brettspiel Monopoly, indem Sie herausfinden, welche Liegenschaften und Straßen am häufigsten besucht werden. Dafür simulieren wir ein Spiel onopoly ist ein beliebtes Brettspiel. Spie-Sie

Willkommen in der Welt der „ereignisorientierten
len Sie lange Zeit, scheinen Teilnehmer auf

M

Simulation“. Damit werden allerlei Effekte modelliert.

einigen Feldern häufiger als auf anderen zu
brauchen

Weitere Beispiele wären die Ankunftszeiten von Zügen
landen. Einige werden scheinbar von den hellblauen
oder auch Teilchenkollision.Die Simulationen werden

Straßen und andere von den orangefarbenen ange-
mithilfe vorhandener Erfahrungswerte konstruiert.

> Raspberry Pi
zogen. Deswegen lassen wir ein Spiel simulieren und

Im Anschluss gibt es dann ein Gesamtergebnis. Im Fall

> Raspbian
voraus sagen, wo die Spieler am häufigsten landen.

von Zügen wäre das der Fahrplan. Die Ankunftszeiten

> Matplotlib

In dieser Artikelreihe beginnen wir die Simulation
sind in diesem Fall die Daten, die als Input dienen.

mit ein fachen Komponenten und kreieren daraus ein

Bei der Teilchenphysik bezieht man die Daten aus
komplexes Modell. Auf diese Weise bestimmen wir die
theoretischen Modellen.

Wahrscheinlichkeit, welche Felder die Spieler am

Bei unserem Brettspiel sind die Zufallselemente die
häufigsten besuchen.

Würfel und die Reihenfolge der Ereignis- und Gemein-
schaftskarten. Nun können Sie Monopoly spielen und
herausfinden, welche Felder die Spieler am häufigsten
besuchen. Das Wissen hilft, die besten Felder zu kau-
fen – somit erhöht sich die Gewinnchance.

In diesem Beitrag kümmern wir uns lediglich um das

Brett und die Würfel. Fangen wir mit den Würfeln an.

Würfeln

Die Spieler bewegen sich anhand der gewürfelten Zahl.

Ein optimaler Würfel kann mit gleicher Wahrschein-
lichkeit auf jeder Seite landen. Deswegen ist die Wahr-

Die Grafik zeigt, wie wahrscheinlich Spieler auf
den jeweiligen Feldern in Monopoly landen.

Dabei wurden keine speziellen Effekte wie
etwa „Gehe in das Gefängnis“ berücksichtigt.

Die vertikalen Balken zeigen die Wahrschein-
lichkeit, auf einem Feld zu landen.

Die 40 Balken repräsentieren die Felder. 0 ist

Los und das letzte Feld ist 39.

54

04 • 2017
magpi.de

D

Code
auf Heft-DVD c

MONOPOLY-SIMULATION

Praxis
scheinlichkeit für jede Zahl gleich hoch:

twoDice.py

Sprache

P(1) = P(2) = P(3) = P(4) = P(5) = P(6)

>PYTHON

# Das Paket random importieren
import random

Die gesamte Wahrscheinlichkeit für alle möglichen

DOWNLOAD:

github.com/william

Zustände ist als Einheit definiert. Deswegen ist die
def rollTwoDice():

hbell/Monopoly

Wahrscheinlichkeit für jede Seite 1/6.

# Zwei Zufallszahlen aus dem Bereich

Simulation

Bei Monopoly verwenden Sie immer zwei Wür-

# 1 <= i <= 6 erzeugen und addieren
fel. Die Wahrscheinlichkeit, mit zwei Würfeln einen
return random.randint(1,6) + random.randint(1,6)

Gesamtwert zu erreichen, ist ungleich aller möglichen

Werte. Es gibt mehrere Konstellationen, wie Sie eine

Zahl würfeln können. Die Wahrscheinlichkeit, eine

# Eine Liste mit dem gewürfelten Gesamtwert.

Zwölf zu würfeln, sieht wie folgt aus:

# Es gibt zölf Elemente, da die maximale Zahl Zwölf ist.

counters=[0.]*12

P{6,6} = P(6) x P(6) = 1/36

# Mit zwei Würfeln insgesamt 100 Mal würfeln.

nRolls = 100

… weil es nur eine Möglichkeit gibt, diesen Wert zu
for i in range(nRolls):

würfeln. Bei einer Fünf ist es die Summe aller mögli-
totalValue = rollTwoDice() # würfeln
chen Kombinationen:

# Python-Listen fangen bei 0 an. Deswegen müssen Sie eine 1

P{2,3} + P{3,2} + P{1,4} + P{4,1} = 4/36 = 1/9

# von totalValue abziehen, damit der Index in der Liste stimmt.

# Den Gesamtwert zählen
counters[totalValue-1] = counters[totalValue-1] + 1.

Zwei Würfel simulieren

Ein sechsseitiger Würfel lässt sich mit einem Zufalls-

# Gesamtwahrscheinlichkeit ist immer als 1 definiert.

zahlengenerator simulieren, der Ganzzahlen zwischen

# Deswegen durch die gesamte Anzahl der gezählten Werte teilen.

for i in range(len(counters)):

Eins und Sechs erzeugt. Für diesen Zweck stellt die
counters[i] = counters[i] / float(nRolls)

Python-Bibliothek random die Funktion randint zur

Verfügung, die auch Bereiche zulässt.

# Die Wahrscheinlichkeit für jede Kombination ausgeben

Der Zufallszahlengenerator von Python ist nicht
print("Die Wahrscheinlickeit der Gesamtwerte mit zwei Würfeln:") komplett zufällig, reicht aber für unsere Zwecke. Er
for i in range(len(counters)):

erzeugt Zahlen aus einer zufälligen Serie, die wiede-

# 1 hinzufügen, da Python bei 0 zu zählen anfängt.

rum durch einen zufälligen Startwert initialisiert wird.

print(" P("+str(i+1)+")="+str(counters[i])) Ist der Wert nicht im Code, dann nimmt Python bei
print(
jedem Programmstart einen anderen Startwert.

"P(n) ist die Wahrscheinlichkeit mit zwei Würfeln.") magpi.de

04 • 2017

55

Praxis WORKSHOP

Zwei Würfel simulieren Sie, indem Sie die Funktion

Der Unterschied zwischen den Werten der theoreti-
randint zweimal verwenden und danach das Ergebnis schen Wahrscheinlichkeit und der beobachteten sind zusammenzählen. Jeder Aufruf der Funktion randint
statistische Fehler. Je öfter Sie würfeln, desto geringer
erzeugt dabei einen unabhängigen Wert.

wird der statistische Fehler.

Das Programm twoDice.py (auf DVD D) simuliert
insgesamt 100 Mal das Werfen von zwei Würfeln. Das

Das Brett modellieren

Programm enthält eine einfache Funktion, die sich

Das Spielbrett von Monopoly besteht aus 40 Feldern.

rollTwoDice nennt. Sie ruft die Funktion randint

Ein Spieler fängt bei „Los“ an und bewegt sich im
doppelt auf, zählt die Ergebnisse zusammen und gibt

Uhrzeigersinn um das Brett. Jedem dieser Felder kön-
das Ergebnis aus. Bei Programmstart wird eine Liste
nen Sie eine Zahl von Null bis 39 zuweisen, wobei Los
mit Namen counters erzeugt. Sie enthält zwölf Ele-
äquivalent zu 0 ist. Das letzte Feld ist logischerweise
mente, die jeweils auf 0 gesetzt sind.

39. Genau wie beim Programm twoDice.py können

In der Liste wird eine Gleitkommazahl genutzt, weil

Sie die Anzahl, wie oft ein Spieler auf ein Feld gekom-
das Ergebnis der Wahrscheinlichkeitsverteilung eine
men ist, in einer Python-Liste mit 40 Elementen spei-

Gleitkommazahl ist. Sobald die Liste steht, verwendet
chern. Sie benötigen aber noch eine weitere Funktion.

das Programm eine Schleife, die rollTwoDice aufruft

Das ist die momentane Position eines Spielers.

und die Rückgabewerte in der Liste counters spei-

Eine Simulation des Monopoly-Spielbretts ohne
chert. Wurden die simulierten Würfel 100 Mal gewor-
andere Effekte finden Sie im Programm boardOnly.

fen, werden alle Werte durch die Anzahl der Würfe
py (auf DVD D). Im Programm finden Sie die Funk-
geteilt. Auf diese Weise bekommen Sie die Angabe,
tionen rollTwoDice und plot. Letztere benutzt die wie wahrscheinlich ein Wert gewürfelt wird.

pyplot-Funktionen bar und show. Damit erzeugt der Sie rufen das Programm twoDice.py so auf:

Code ein Balkendiagramm, das auf dem Bildschirm
angezeigt wird. Die Funktion pyplot ist Teil von Mat-

./twoDice.py
plotlib. Bevor das Programm ohne Fehlermeldung
läuft, müssen Sie die Bibliothek Matplotlib installieren.

Ändern Sie nun mithilfe eines Texteditors wie etwa

IDLE die Anzahl von nRolls um den Faktor 100 oder
sudo apt-get install python-matplotlib

1.000 und lassen das Programm abermals laufen. Je
öfter Sie würfeln lassen, desto genauer nähert sich

Beim Start des Programms wird eine Python-Liste initi-
der Wert an die theoretische Wahrscheinlichkeit an,
alisiert, die sich counters nennt. Darin befinden sich 40
die bei der Benutzung von zwei Würfeln auftritt.

Elemente, die alle auf 0 gesetzt sind. Die Werte sind als

0.030

0.025

0.020

0.015

0.010

0.005

0.000 0

5

10

15

20

25

30

35

40

Oben Nach einer Million Würfen ist die Häufigkeit der besuchten 40 Felder nahezu gleich 56

04 • 2017
magpi.de

MONOPOLY-SIMULATION

Praxis

Gleitkommazahlen deklariert, weil sie am Ende des Pro-
boardOnly.py

Sprache
gramms durch die komplette Anzahl der Würfe geteilt

>PYTHON
werden. Das Programm würfelt insgesamt 1.000.000

# random importieren

Mal. Auf diese Weise bekommen wir eine Wahrschein-
import random

DOWNLOAD:

lichkeitsverteilung mit einem geringen statistischen
github.com/william

# matplotlib pyplot importieren
hbell/Monopoly

Fehler. Die aktuelle Position ist auf 0 gesetzt. Das ist wie
import matplotlib.pyplot as pyplot

Simulation
bereits erwähnt das Feld „Los“. Das Programm führt
die Schleife so lange aus, bis die festgelegte Anzahl der
def rollTwoDice():

geworfenen Würfel erreicht ist.

# Zwei Zufallszahlen aus dem Bereich

In jeder Schleife wird die Funktion rollTwoDice ver-

# 1 <= i <= 6 erzeugen und addieren
wendet, um eine neue Gesamtsumme zu erzeugen. Die
return random.randint(1,6) + random.randint(1,6)

Summe der beiden simulierten Würfel wird dann zur
momentanen Position hinzugefügt. Läuft der Spie-

# Eine Funktion, um das Balkendiagramm zu erzeugen
ler über das Feld mit der Nummer 39, entfernt das Pro-
def plot(x, y):

gramm die komplette Anzahl der Felder, damit die neue
pyplot.bar(x, y)

pyplot.show()

Position wieder auf dem Spielbrett ist. Danach wird die
neue Position in der Liste counters gespeichert.

# Die Anzahl der Felder auf dem Brett

Hat sich der Spieler einige Male um das Spielbrett
nsquares = 40
bewegt, nähern sich die in counters aufgezeich-
nete Werte der theoretischen Verteilung an. Die end-

# Eine Liste mit dem gewürfelten Gesamtwert
gültige Häufigkeitsverteilung wird am Ende durch
counters=[0.]*nsquares
die gesamte Anzahl der Züge geteilt. Auf diese Weise
erhalten Sie die Wahrscheinlichkeitsverteilung für das

# Eine Variable, die die momentane Position speichert

Monopoly-Spielbrett.

currentPosition = 0

Die verschiedenen Wahrscheinlichkeitswerte kön-
nen Sie nun schnöde auf dem Bildschirm ausgeben,

# Wie oft gewürfelt wird
nRolls = 1000000
oder Sie lassen ein schickes Balkendiagramm zeich-
nen. Dafür verwenden Sie die Bibliothek Matplotlib

# Eine Nachricht ausgeben
und die Funktion plot.

print("Es wird " + str(nRolls) + " gewürfelt...") Führen Sie das Programm boardOnly.py aus:

# Würfeln

./boardOnly.py
for i in range(nRolls):

# würfeln

Es dauert einige Sekunden, bis das Programm fer-
totalValue = rollTwoDice()

tig ist. Das liegt an der hohen Anzahl der Züge, die wir
durchführen lassen. Sobald das Programm durchge-

# Die Spiefigur auf die nächste Position ziehen
laufen ist, erscheint das Matplotlib-Fenster mit dem
currentPosition = currentPosition + totalValue

Balkendiagramm und den Wahrscheinlichkeiten. Um

# Beim Überqueren des letzten Feldes, Brett zurücksetzen.

das Programm so einfach wie möglich zu halten, ist
if currentPosition >= nsquares:

das Diagramm nicht beschriftet. Die x-Achse reprä-
currentPosition = currentPosition - nsquares
sentiert das jeweilige „Feld auf dem Spielbrett“ und
die y-Achse steht für „P(Feld)“. Sie könnten das mit

# Die momentane Position auf dem Feld zählen
anderen Funktionen aus Matplotlib beschriften.

counters[currentPosition] = counters[currentPosition] + 1.

Die von boardOnly.py erzeugte Wahrscheinlich-
keitsverteilung ist wegen des statistischen Fehlers

# Gesamtwahrscheinlichkeit ist immer als 1 definiert.

nicht eben. Je öfter Sie würfeln, desto ausgeglichener

# Deswegen durch die gesamte Anzahl der gezählten Werte teilen.

wird allerdings die Wahrscheinlichkeitsverteilung.

for i in range(len(counters)):

Das Programm boardOnly.py erzeugt eine einfache
counters[i] = counters[i] / float(nRolls)

Wahrscheinlichkeitsverteilung, die nicht länger aus-

# Wahrscheinlichkeit für jede Kombination ausgeben
geglichen ist, sobald andere Effekte aus dem Brett-
print("Die Wahrscheinlichkeit auf einem bestimmten Feld nach " +
spiel Monopoly berücksichtig werden.

str(nRolls) + " mal würfeln")

In einem künftigen Teil des Monopoly-Workshops
for i in range(len(counters)):

werden wir zunächst die wichtigsten Effekte des Brett-

# 1 hinzufügen, da Python bei 0 zu zählen anfängt.

spiels in die Berechnung aufnehmen. Im Anschluss
print(" P("+str(i)+")="+str(counters[i]))

kommen noch weitere Funktionen hinzu. Wie bei allen
print("P(n) ist die Wahrscheinlichkeit, auf dem nten Feld bei einem komplexen Simulationen lassen sich die Effekte beob-Monopoly-Spiel zu landen")

achten und messen. Am Ende wissen Sie dann, welche

# Das Balkendiagramm erzeugen

Liegenschaften ein Garant für den Gewinn sind.

plot(range(len(counters)),counters)

magpi.de

04 • 2017

57

Praxis WORKSHOP

PATRICIO GONZALEZ VIVO

Patricio ist Künstler und Grafiktechni-
ker sowie Autor des Buchs The Book of

Shaders. Er nutzt die Shader, um

Daten in wunderschöne Landschaften
zu verzaubern.

patriciogonzalezvivo.com

@patriciogv

Hier ist ein GLSL Shader Mod, der
unter Minecraft läuft. EIn großer

Unterschied zum Original!

GLSL-SHADER

SO PROGRAMMIEREN SIE EIGENE

Erstellen Sie hochmoderne visuelle Effekte und Animationen

Sie
für Ihre Computerspiele und Projekte
brauchen
eit den 1960ern besitzen Computer grafische

Wie funktionieren Shader? Wie unterscheiden sie sich

> glslViewer

Schnittstellen: Mauszeiger, Fenster, Sym-
von anderen Computersprachen? Für normale Com-

S
magpi.cc/
bole und Seitenleisten. In modernen PCs
puterprogramme sind Grafiken schwer zu verarbeiten.

2hNP4r3
ist das Standard. Gerade in den letzten Jahren sind

Herkömmliche Programme werden geschrieben, damit

> The Book of

Spiele immer realistischer und grafisch anspruchsvol-
sie auf der CPU laufen. Sie sind dafür entwickelt, eine

Shaders
ler geworden. Eine wichtige Rolle spielt dabei die GPU

Aufgabe nach der anderen auszuführen. Nehmen Sie
thebookof
shaders.com

(Graphics Processing Unit) oder Grafikkarte. Sie ermög-
zum Beispiel Python. Das Programm folgt einer Liste an
licht es etwa, wunderbare 3D-Effekte zu genießen.

Befehlen und verarbeitet dabei immer eine Zeile.

Grafikkarten lassen sich auch programmieren. Die klei-

Wird ein digitales Bild verarbeitet, wird jedem Pixel
nen Code-Stücke, die darauf laufen, nennen sich „Sha-
auf dem Bildschirm eine Farbe zugewiesen. Gehen
der“. Ein Beispiel ist das GLSL Shaders Mod Pack für
wir von einem alten Monitor mit einer Auflösung von

Minecraft (magpi.cc/2ikJsEN).

800×600 Pixeln aus. Dafür benötigen Sie 480.000

Programmiert werden Shader in einer trockenen,

Berechnungen. Nun ist das Bild aber eine Animation

C-ähnliche Computersprache. Sie wurde entwickelt,
und muss sich 24 Mal pro Sekunde ändern, um eine
um ein Bild Pixel für Pixel zu rendern, ohne dabei an

Bewegung zu vermitteln. In diesem Fall haben Sie mehr

Performance einzubüßen.

als 11.520.000 Berechnungen pro Sekunde. Das ist für
eine gewöhnliche CPU zu viel Arbeit.

Eigene Shader programmieren

GPU-Experten haben daher eine andere Möglichkeit
entwickelt, Grafiken auf einem Computer zu verar-
beiten: Der Chip in einer GPU verarbeitet mehrere Auf-
gaben gleichzeitig und unabhängig voneinander. Im
ersten Kapitel vom (englischsprachigen) „Book of Sha-
ders“ (thebookofshaders.com) finden Sie zu diesem

Thema eine detaillierte Erklärung.

Zu lernen, wie Sie Ihre eigenen Shader program-
mieren, ist nicht ganz einfach – aber lassen Sie sich
nicht entmutigen. Für den Einstieg verwenden wir

Bereits ein wenig Code reicht aus, um
etwas mit Shadern zu experimentieren
einfach den glslViewer (magpi.cc/2hNP4r3), den das
aktuelle Raspbian mitbringt. Die Software wurde ent-

58

04 • 2017
magpi.de

GLSL-SHADER

Praxis
wickelt, um Shader darzustellen. Sie folgt den Bei-

Der glslViewer rendert alles
spielen aus dem Book of Shaders. Die einfachen
im Vordergrund

Schritt-für-Schritt-Anleitungen vermitteln Ihnen
die Grundzüge des Umgangs mit Shadern. Sie kön-
nen übrigens eine Version des Shader-Buches aus-
drucken, wenn Sie diesen Anweisungen folgen:

magpi.cc/2iwOwWW. Dafür benötigen Sie nur einen

Webbrowser mit WebGL.

Live-Coding mit glslViewer

Das Programm glslViewer ist ein flexibler Renderer für

Shader, der direkt via Kommandozeile läuft. Er benötigt
keinen Fenstermanager.

Um einen Shader live zu programmieren, brauchen

Sie einen Texteditor –der glslViewer wird die Änderun-
gen sofort darstellen. Starten wir den ersten Versuch!

Öffnen Sie ein Terminal und installieren Sie glslViewer:

Starten SIe einmal die Bei-
sudo apt-get install glslviewer
spiele unten von der Seite
thebookofshaders.com

Erstellen Sie mit Ihrem Lieblingseditor (etwa Leafpad,

Nano oder auch Geany) eine Datei shader.frag:

nano shader.frag

…und hinterlegen Sie den folgenden Code:

#ifdef GL_ES
precision mediump float;

#endif
void main() {
gl_FragColor = vec4(1.0,0.0,1.0,1.0);

}

Speichern Sie die Daten und führen Sie sie mithilfe von
glslViewer gefolgt von einem kleinen „L“ aus:

sem Thema. Außerdem wird Ihnen verraten, wie Sie mit
glslViewer shader.frag -l

Änderungen beim Code komplexere Farben und Ani-
mationen erstellen. Sobald Sie mit dem Editieren fertig

Sie sollten nun ein magentafarbenes Viereck sehen.

sind, können Sie glslViewer schließen. Führen Sie fg im Das ist natürlich nicht viel, aber ein Anfang.

Terminal aus und schließen Sie die Software mit Q.

Hinweis: das -l steht für den Live-Code-Modus. Das Beispiele ausführen

Programm läuft nicht als Vollbild und Sie können wei-

Zusammen mit dem glslViewer erhalten Sie ein
terhin Änderungen durchführen. Sie können mit -x,

Python-Skript. Damit laden Sie diverse Beispiele aus

-y, -w, and -h auch die Position und Größe ändern.

dem Buch herunter, die Sie anschließend ausführen
können. Sehen Sie sich die nachfolgenden Beispiele

Mit der Tastenkombination [Strg]+[Z] schieben Sie
genauer an und Sie werden die Shader auf Ihrem
glslViewer in den Hintergrund. Danach öffnen Sie Ihre

Raspberry Pi in Windeseile laufen lassen können:

Datei wieder und editieren weiter.

glslLoader https://thebookofshaders.com/10/ikeda-00.frag
nano shader.frag
glslLoader https://thebookofshaders.com/10/ikeda-01.frag
glslLoader https://thebookofshaders.com/10/ikeda-02.frag

Folgen Sie dem Kapitel „Hello World“ im Book of Sha-
glslLoader https://thebookofshaders.com/10/ikeda-03.frag
ders (thebookofshaders.com/02, hier haben wir auch
glslLoader https://thebookofshaders.com/10/ikeda-04.frag
die Datei shader.frag her) und lernen Sie mehr zu die-
magpi.de

04 • 2017

59

Praxis WORKSHOP

MIKE COOK
ist ein Autor vom alten Schlag. Unter
anderem hat er an den Büchern „Rasp -

MIKES PI-PROJEKT
berry Pi für Dummies“ und „Spannende

Projekte mit dem Raspberry Pi“ mit-
gewirkt. magpi.cc/259aT3X

ZAUBERHAFTE

PENDELKUNST

Mit einem gehackten DJ Hero lassen sich faszinierende Kunstwerke im Stil eines Harmonographen zeichnen
ieses Mal stellen wir einen eher unge-
wöhnlichen Geräte-Hack vor: Auf einem

D

Sie

Flohmarkt fanden wir einen günstigen

DJ-Hero-Plattenteller und wollten sehen, ob sich
brauchen
dieser mit dem Raspberry Pi koppeln lässt. Es gibt
diese Art von Controller für verschiedene Konso-

> DJ Hero
len, doch in diesem Workshop kommt die Wii-Ver-

Plattenteller –

Wii-Version
sion zum Einsatz. Sie ist schlichtweg am einfachs-
ten zu verbinden, da der Raspberry Pi sie bereits wie

> WiiChuck Nun-
chaku-Adapter
ein I2C-Gerät betrachtet. Der DJ Hero wird norma-
bit.ly/2tItV36
lerweise in den AUX-Eingang des Wii-Controllers

> Flachbandkabel
gesteckt. Doch hier wird er direkt mit den GPIO-

Harmonograph-Display mit

Rasperry-Pi-Antrieb

Steuerung für Display, Zei-
chenoptionen, Sicherung

Plattenteller mit Knöpfen
als Eingabegerät

60

04 • 2017
magpi.de

D

Code
auf Heft-DVD c

ZAUBERHAFTE PENDELKUNST

Praxis

Clock I Data I

GPIO 3 GPIO 2
tisch dessen Verbindung auf den Pins. Da es nur vier

NUNCHAKU-

+3V3

Anschlüsse gibt, genügt es, wenn Sie dafür ein nor-

Sprache

Nunchacku-

2

2

Gnd

C

C

Adapter

ADAPER
males Flachbandkabel verwenden.

>PYTHON 2

Den DJ Hero ansprechen

DOWNLOAD

Der Controller bringt eine Menge Knöpfe und Joy-

DES CODES:

sticks mit verschiedenen Funktionen mit. In Bild 2
magpi.cc/1NqJjmV
sehen Sie die Tastenbelegung für dieses Projekt. Die

I2C-Adresse des Geräts lautet 0x52 und besteht aus

PROJEKT-

VIDEOS
einer Menge an Registern. Um das Gerät beim Hoch-
fahren zu initialisieren, schreiben Sie den Wert 0x55

Hier sehen Sie das

Bild 1 Verkabelung von Nunchaku-Adapter und Pi

Projekt in Aktion:

in das Register 0xF0. Beachten Sie, dass jeder wei-

Pins des Raspberry Pi verdrahtet. So können Sie ein-
magpi.cc/1NqJnTz
tere Lesevorgang die Adresse des ausgelesenen Regis-
fach das Ende des Kabels des DJ Hero abschneiden und
ters erhöht. Um also den Status auszulesen, müssen

Verlängerungen anlöten. Alternativ besorgen Sie sich

Sie das Register auf Null setzen und die Daten dann

Bild 2 Die Tasten-
einen „Wii Nunchaku-Adapter“ als PCB und verdrah-
sechs Mal auslesen. Diese sechs Byte enthalten alle
belegung auf dem
ten ihn mit dem Raspberry Pi. Bild 1 zeigt schema-

Informationen vom DJ-Pult. Die Zuteilung von Bits ist

DJ-Hero-Controller

Hintergrundfarbe

Parameter auswählen

Parameter bearbeiten

Neu zeichnen

Nicht belegt

Zeichenstärke

Harmonie-Steuerung

Amplitude – Phase

Amplitude – Frequenz

Sichern

Bild sichern

Vollbild sichern

& Ordner ändern

Dämpfung
magpi.de

04 • 2017

61

Praxis WORKSHOP

BIT

BYTE sind auf zwei Bytes verteilt. Der Plattenteller schließ-

7

6

5

4

3

2

1

0
lich ist kreuz und quer verteilt. Es braucht etwas Soft-
ware, um die Daten aus diesem Block zu ziehen.

TT 4:3

Speichere Joystick X 0:5

0

Der Plattenteller spuckt einen Wert über die Posi-
tionsänderung seit dem letzten Auslesen aus. Es han-

TT 2:1

Speichere Joystick Y 0:5

1 delt sich um einen „Signed“-Wert. Damit dieser hilf-
reich ist, muss er in eine für Python verständliche

Zahl konvertiert werden. Das fünfte Bit des Plattentel-

TT 0 ROT 4:3

Zeichenstärke 3:0 TT 5 2 lers wird also an alle höheren Bits weitergegeben. Das nennt man auch Vorzeichenerweiterung. Bei negati-ven Werten muss diese Zahl im sogenannten Einer-

ROT 2:0

3 komplement dargestellt werden. Die Bits 0 bis 4 wer-
den dabei invertiert und dann wird 1 abgezogen. Dieses

Format kommt bei Computersprachen universell zum

B-

B+ TTR

4 Einsatz, da es verhindert, dass es etwa zwei verschiedene Muster für „plus Null“ und „minus Null“ gibt.

TTG RD

TTB

5 Die Grafiken

Der Controller soll nun einen Harmonographen simu-
lieren. Diese Geräte waren in der viktorianischen Ära

TTR

Plattenteller, roter Knopf
sehr populär. Sie zeichneten mithilfe eines Stiftes an
einem Pendel tolle Kurvenmuster. In diesem Projekt

TTG

Plattenteller, grüner Knopf
werden wir insgesamt vier Pendel einsetzen, die jedes
mechanische Gerät alt aussehen lassen. Der Pfad jedes

TTB

Plattenteller, blauer Knopf

Pendels wird durch vier Faktoren bestimmt:

ROT Drehknopf – nicht belegt

01. Die Amplitude oder Stärke der Schwingung

B-

Knopf zum Invertieren des Displays

02. Die Frequenz der Schwingung, abhängig von

der Länge des Pendels

B+

Knopf zum Bearbeiten von Parametern

03. Die Phase der Schwingung, ein fester Wert,

RD

Knopf zum neu Zeichnen

der zur Frequenz hinzukommt

04. Die Dämpfung, also die langsame Verringe-

Stufen des Plattentellers
rung der Amplitude, während Reibung das

Pendeln verlangsamt

TT5 TT5 TT5 TT4 TT3 TT2 TT1 TT0

Das subtile Zusammenspiel dieser Faktoren sorgt

Vorzeichenerweiterung
dafür, dass nahezu unendlich viele Muster erzeugt
werden können. Auch Zeit spielt eine Rolle: Je länger
das Pendel schwingt, desto dichter das Muster. Letzt-
endlich sorgt die Dämpfung dafür, dass jedes Pendel

Bild 3 Der Datenoutput vom DJ Hero
zum Stehen kommt, doch in dieser Simulation können

Sie den Wert probehalber auch auf null stellen.

schematisch in Bild 3 dargestellt. Das wirkt zunächst

Die Software
sehr komplex. Allerdings ist dies bereits eine verein-

Den Code finden Sie in der Datei DJArt.py. Er wurde
fachte Variante, da der DJ Hero auch mit einem zwei-
mithilfe des Framework von Pygame geschrieben. Die
ten Plattenteller ausgestattet werden kann. Diese

Zeichenfläche wird durch screenSize definiert, Sie
linke Seite haben wir in dem Diagramm weggelassen.

können diese je nach Monitorgröße beliebig anpassen.

Die Knöpfe selbst sind einfach: Jeder belegt ein Bit

Durch die Variable controlBar ist diese Fläche an den
eines Bytes eines zurückgesandten Datenblocks.Die

Rändern noch einmal je 100 Pixel größer, damit genug
anderen Steuerelemente sind auf mehrere Bits ver-

Spielraum für die editierbaren Parameter vorhanden
teilt. Die zwei Achsen des Joysticks etwa belegen die
ist. Die Funktion swing zeichnet die Pfade der Pen-
ersten sechs Bits in den ersten beiden Bytes, während
del auf dem Bildschirm auf und bezieht sich dabei auf
sich die Werte des Schiebereglers in Bits 4 bis 1 des
die Berechnungen der Funktion calcNewPoint. Statt
zweiten Bytes befinden. Die fünf Bit vom Drehknopf
jeden Punkt einzeln auf dem Bildschirm darzustellen,

62

04 • 2017
magpi.de

ZAUBERHAFTE PENDELKUNST

Praxis
beträgt die Zeichendauer 40 ms und erst dann wird
das Ergebnis angezeigt. Der gesamte Rest des Codes
dient dazu, die Parameter des Programms zu bearbei-
ten. So legt die Funktion initValues die Anfangs-
parameter fest – diese sollten Sie später immer mal
ändern, um neue Kombinationen zu entdecken.

Der DJ Hero selbst wird von der Funktion readDJ aus-
gelesen, buttonFix gibt zurück, wenn einer der vielen

Knöpfe gedrückt wird. Ansonsten kommt eine Null an.

In den Rohdaten wiederum wird ein Bit als Null zurück-
gegeben, wenn eine Taste gedrückt wird, ansonsten eine

Eins. Die Funktion adjustPends dient dazu, die Reich-
weite der Parameter ein wenig einzuschränken. Eine

Amplitude von maximal 1 stellt sicher, dass die Graphen
nicht über die Zeichenfläche hinausschießen.

Damit Sie Ihre kleinen Kunstwerke auch speichern

Bild 5 Beispiel-
können, gibt es den Joystick: Bewegen Sie ihn ganz
designs, die wir mit-

Die Bedienung
nach links, um das Bild zu sichern und ganz nach
hilfe dieses Projekts
erzeugt haben

Die Software beginnt stets mit einem bestimmten
oben, um zugleich die Parameter zu dokumentieren.

Satz an Parametern, die ein Muster auf einem schwar-

Beim ersten Speichervorgang müssen Sie der Soft-
zen Hintergrund zeichnen. Die Minustaste ändert die
ware ein Zielverzeichnis nennen, alle weiteren Dateien

Hintergrundfarbe auf weiß und umgekehrt. Bild 4
landen dann ebenfalls dort und werden automatisch
zeigt Ihnen das komplette Programmfenster auf wei-
durchnummeriert. Zur Bestätigung erhalten Sie dann
ßem Hintergrund. Der Knopf „Neu Zeichnen“ lässt
ein Popup namens „saved“ unten links in der Oberflä-
die Simulation für eine bestimmte Zeit laufen, die
che. Möchten Sie einen neuen Speicherordner bestim-
vom Schieberegler „Zeichenstärke“ bestimmt wird.

men, bewegen Sie den Joystick ganz nach rechts oder

Ist der Regler ganz links, ist es schneller vorbei. Ist
unten. Dann erscheint der Dialog erneut.

er ganz rechts, dauert die Simulation länger. Mit der

Auf dem Bildschirm sehen die Muster mit einem

Plustaste ändern Sie Parameter wie die Zeichenfarbe
schwarzen Hintergrund am besten aus – möchten Sie
jedes einzelnen Pendels.

die Graphen ausdrucken, klappt das aber mit weißem

Das Anpassen der Werte ist einfach: Drücken Sie

Hintergrund besser. In unseren Test ergaben sich die
einfach einen der farbigen Knöpfe auf dem Platten-
schönsten Resultate, wenn die Frequenz zweier Pen-
teller und drehen Sie diesen im Uhrzeigersinn, um
del in einem einfachen Verhältnis zueinander einge-
vorwärts zu schalten und umgekehrt, um einen
stellt ist, oder leicht daneben wie etwa 1:2.01. Unzu-

Schritt zurückzugehen. Ist die Frequenz in Rot an -
sammenhängende Frequenzänderungen sorgen eher
gezeigt. Halten Sie den gleichfarbigen Button und
für chaotisches Gekritzel. Auch kleinste Änderungen
drehen Sie die Platte, um die Frequenz anzupassen.

bei Dämpfung oder Phase ändern das Ergebnis ganz

Nun gibt es vier Parameter, aber nur drei Knöpfe. Die
massiv. Besonders bei letzterem Wert kommt dies zum

Lösung: Der Wert „Amplitude“ ist gelb, also halten

Tragen. Ändern Sie einen Wert, so zeigt Ihnen das Pro-

Sie in diesem Fall rot und grün gleichzeitig.

gramm eine kurze Vorschau des Graphen in Echtzeit.

Manche Werte haben kleinere Limits wie Null oder

Eins, während die Farbe bis maximal 255 gehen kann.

Richtige Lissajous-Figuren erzeugen Sie, wenn Sie die

Amplitude der Pendel 1 und 3 auf Null setzen und die
der anderen beiden auf Eins. Die Dämpfung stellen Sie
ebenfalls auf Null. In Bild 5 sehen Sie eine Auswahl an Graphen aus unseren Testläufen.

Nächste Schritte

Die einzige unbenutzte Taste auf dem DJ Hero ist der

Drehregler. Sie können sich einmal daran versuchen,
ein wenig Code zu schreiben, damit sich etwa die Stärke
der gezeichneten Linien ändert. Wenn Sie einen Pi 3
benutzen, können Sie die Darstellungstiefe des Vor-
schaubildes ein wenig höher stellen, da der Pi etwas
flotter zeichnet als seine Vorgänger. Sie können auch
per Code die Farbe der Linien abhängig von deren abso-
luter X- und Y-Position ändern. Oder Sie entwickeln

Bild 4 Der Kontrollbildschirm samt der Auswirkungen
verschiedener Parameter auf das Endergebnis
eigene kreative Ideen auf Basis dieses Projekts!

magpi.de

04 • 2017

63

Praxis WORKSHOP

SPENCER ORGAN

Lehrer für Physik und Chemie. Gleich-
zeitig Raspberry-Pi-Fan und zertifi-
zierter RPi-Trainer mit einem Faible für

Raspberry-Pi-Workshops, bei denen

MAGISCH:

ambitionierte Projekte in die Praxis
umgesetzt werden. magpi.cc/2bkQ53q

HARRY-POTTER-UHR

Eine zauberhafte Zeitanzeige – ganz nach den Romanen von Joanne K. Rowling arry Potter erfreut sich immer noch größ-

Sie
im Netzwerk entdeckt werden soll, die MAC-
ter Beliebtheit. Und jeder erinnert sich an die

H

Adresse und tragen Sie diese im Code ein. Unter iOS
magischen Dinge in den Romanen, die alle ihr
brauchen
finden Sie die MAC-Adresse unter Einstellungen |

Eigenleben führen. Wie die ungewöhnliche Karte des

Allgemein | Info |WLAN-Adresse; bei Android-Rumtreibers (Marauder’s Map) oder die Weasley-Uhr

> Servos (für die

Geräten versteckt sie sich unter Einstellungen |

Uhr und den

(Who is home?-Clock). Unser Workshop greift diese

Optionen | Info zu Gerät | Status.

Positionszeiger)

Idee auf und zaubert eine Anzeige herbei, die verrät, ob

> Zeiger für Uhr
jemand gerade mit seinem Handy im Netzwerk ist.

>SCHRITT 03

> Arduino Uno

Servos anschließen
bit.ly/2tJ85MF

>SCHRITT 01

Schließen Sie die beiden Servos am Arduino an. Nut-

> 2× Mini-Bread-

Das Setup vorbereiten
zen Sie ein Steckbrett für den gemeinsamen 5-Volt-
boards

Installieren Sie die Bibliotheken für den Explorer HAT
und Masse-Anschluss des Arduino. Verbinden Sie die
bit.ly/2toaHAx

Pro (auf Heft-DVD D bzw. unter magpi.cc/2lOfDOk).

roten Stromkabel jeweils mit den Anschlüssen der

> Durchsichtiges

Wir benutzen zwei seiner 5V-DC-Ausgänge, um das

Servos und dem gemeinsamen 5-Volt-Anschluss. Das

Breadboard

Relais anzusteuern. Hinweis: Die Ports liefern keine 5

Gleiche gilt für die braunen Kabel, die Sie an Masse

(Steckbrett,
mittlere Größe)

Volt, sondern verbinden die Ausgänge jeweils mit Masse. anschließen. Verbinden Sie das orangefarbene Signal-bit.ly/2swzKRX
kabel des Uhren-Servos mit dem Digital-Pin 12 des

> Pimoroni

>SCHRITT 02

Arduino, das orangefarbene Signalkabel des Positi-

Explorer HAT Pro

Die MAC-Adresse eintragen
onszeigers (Servo) mit dem Digital-Pin 11. Unter goo.

bit.ly/2sORvyu

Kopieren Sie den Code (auf Heft-DVD D bzw. unter
gl/iqyy7W oder auf Heft-DVD D finden Sie dazu den

> 2× 5 V Mini
magpi.cc/2lOfkTJ). Ermitteln Sie für jedes Gerät, das
genauen Schaltungsaufbau bzw.Verdrahtungsplan.

DC Relais
magpi.cc/

2lOere6

> 4× LED, ein Satz

Jumperkabel,
male/male und
female/male

> Eine Holzkiste
oder ein

Fast wie im Buch: Der Zeiger

Uhrengehäuse
verrät, ob jemand im Netz

> Grafik für den
ist. Der Servo steuert also
jeweils zwei Positionen an.

Hintergrund

Die Uhr wird nur simuliert.

Für die Bewegung des

Zeigers brauchen Sie einen

SO PRÜFEN

Servo, dessen Achse sich
kontinuierlich dreht.

SIE DIE UHR

Die Funktion
der Uhr testen

Sie, indem Sie
den digitalen

Eingang 1 des

Arduino mit

Masse verbin-
den.

magpi.de

64

04• 2017

D

Code
auf Heft-DVD c

HARRY-POTTER-UHR

Praxis
clock.py

Sprache:

>PYTHON

!/usr/bin/env python

DOWNLOAD:

import subprocess
magpi.cc/2lOfkTJ
import time
import explorerhat
occupant = ["Person 1 device","Person 2 device"]

# MAC addresses for our devices - in order of people above
address = ["XX:XX:XX:XX:XX:XX","XX:XX:XX:XX:XX:XX"]

Oben Die Spulenanschlüsse des Relais werden mit dem 5V-An-
while True:

schluss und dem Ausgang des Explorer HAT Pro verdrahtet. Die print("starting loop")

Schalterkontakte verbindet man mit dem Digitaleingang 1 (und 2
für das zweite Relais) und dem Masseanschluss des Arduino
output = subprocess.check_output(

"sudo arp-scan -l", shell=True)

>SCHRITT 04
print ("starting scan")

LEDs anschließen
for i in range (len(address)):

Wir nutzen vier LEDs, um die Gebiete auf der „Karte des
if address[i] in output:

Rumtreibers“ zu markieren. Verbinden Sie das kurze
print address[i]

Beinchen (Kathode) mit Masse. Schließen Sie das lange
print occupant[i]

Beinchen (Anode) an die Digitalpins 5,6,7 und 8 an.

Die folgenden LED-Pins sind im Einsatz:

if "XX:XX:XX:XX:XX:XX:XX" in output:

Digital Pin 5

= Person 2

#Person 1 MAC address

Digital Pin 6

= Abwesend (Away Notification)

explorerhat.output[0].on()

Digital Pin 7

= Person 1

Digital Pin 8

= Anwesend (Home Notification)

else:

explorerhat.output[0].off()

>SCHRITT 05

RasPi mit Arduino koppeln

Bevor Sie die Relais anschließen, kontrollieren Sie
if "XX:XX:XX:XX:XX:XX:XX" in output:

deren Anschlussskizze. Sie benötigen die beiden Pins

#Person 2 MAC address
für die Spule und die Pins für den Schalter. Eine Seite
explorerhat.output[1].on()

der Spule wird bei beiden Relais mit dem 5V-Ausgang
des Explorer HAT Pro verbunden. Die andere Seite des
else:

Spulen anschlusses verbinden Sie mit den Ausgängen
explorerhat.output[1].off()

1 und 2 des Explorer HAT Pro. Der gemeinsame Schal-
time.sleep(60)

teranschluss beider Relais wird mit dem Massekontakt
des Arduino verbunden. Den Schalterkontakt des ers-

FEHLER
ten Relais verbinden Sie mit Digital 1 des Arduino, und

BEHEBEN
den Schalterkontakt des zweiten Relais mit Digital 2.

Wir verwenden den Schalterkontakt, der genau dann

Wenn Sie
aktiviert wird, wenn das Relais unter Spannung steht.

die Relais
falsch schal-

Orientieren Sie sich an wiederum am Schaltplan:

ten (also„aus“

Unter goo.gl/iqyy7W oder auf Heft-DVD D.

statt „an“ ist),
sollten Sie die

>SCHRITT 06

Belegung der

Anschlüsse

Der mechanische Zusammenbau
vertauschen.

Laden Sie den Code für den Arduino herunter und ins-
tallieren Sie ihn (Sie finden ihn auf Heft-DVD D bezie-
hungsweise magpi.cc/ 2lOfkTJ). Dann bereiten Sie das

Zugänglich

Gehäuse vor. Sie können eine alte Zigarrenkiste ver-

Arduino, RasPi
wenden oder ein ausrangiertes Uhrengehäuse – was
und die Relais
wurden mit lan-
auch immer. Befestigen Sie die Zeiger jeweils auf den
gen Kabeln ver-

Achsen der beiden Servos. Montieren Sie die Servos so
sehen, damit die

Komponenten
im Gehäuse, dass der eine Zeiger frei rotieren und der
leichter hand-
andere sich auf und ab bewegen kann.

habbar sind
magpi.de

04 • 2017

65

Service HEFT-DVD

CODE, TOOLS & Co.

AUF DVD

Unser Service für Sie: Auf der Heft-DVD finden Sie alle

Tools, Betriebssysteme und Dateien zu den Workshops
aben wir Sie auf den Ge-

VIDEO-WORKSHOP:

schmack gebracht und Sie

H

PROGRAMMIEREN
möchten etwa die Harry-

Potter-Uhr nachbauen? Dann los!

In dem mehr als eine Stunde

Auf der Heft-DVD finden Sie alle
langen Auszug aus dem

Codes und Vorlagen für die Work-

Videoworkshop „Programmieren
shops sowie wichtige und prakti-
lernen mit Python“ von Rhein-
sche Standard-Tools. Hinweise auf
werk erlernen Sie systematisch
diese Codes und Tools sind im Heft
die Grundlagen der Python-Pro-
mit dem DVD-Symbol D gekenn-
grammierung anhand eines kon-
zeichnet. Mit dabei sind dieses Mal
kreten Beispiels, das nach und
unter anderem die temperaturge-
nach erweitert wird.

steuerten Treppenlichter von Seite

Mehr aus dem Maker-Programm

78, das LED-Thermometer (Seite
von Rheinwerk finden Sie unter

50) und die Codes des Ultraschall-
rheinwerk-verlag.de/maker

Theremin von Seite 76.

PROJEKTDATEIEN UND CODE

In diesem Heft finden Sie einige Workshops, die
dazu einladen, Projekte gleich selbst einmal anzu-
gehen. Damit der Einstieg gut gelingt, haben wir
die notwendigen Projektdateien und den Code mit
auf die DVD gepackt. Artikel, zu denen es diese

Sparen Sie sich das Abtippen: Die

Extras auf dem Datenträger gibt, sind im Heft mit

Dateien zu vielen Workshops im

Heft finden Sie auf der DVD
einem DVD-Symbol D gekennzeichnet.

TOOLPACK

Sie wollen ein Betriebssystem wie Raspbian mit
neuem Pixel-Desktop auf eine SD-Karte schreiben
und damit Ihren RasPi bestücken? Dann probieren

Sie doch einmal das neue Open-Source-Programm

Etcher aus. Sie finden die Software neben weiteren
nützlichen Tools wie dem Win32 Disk Imager oder

Vor dem Flashen sollten Sie Ihre

SD-Karte löschen. Der SD For-
dem SD Formatter auf unserer Heft-DVD.

matter ist dabei die erste Wahl
magpi.de

66

06 • 2016
magpi.

66

04 • 2017

SUBTHEMA

Service

Betriebssysteme

Raspbian „Jessie“ 2017-04-10

Raspbian ist die offizielle Linux-Distri-

Boot-Screen die neu gestalteten Icons
bution für den RasPi. Sie bietet mit
sowie eine komfortablere Konfigura-
dem neuen Pixel-Desktop jetzt eine
tion von Bluetooth und WLAN. Insbe-
moderne Benutzeroberfläche. Auffäl-
sondere der Pi 3 fühlt sich damit wie
ligste Änderungen sind neben dem
ein „richtiger“ Desktop-PC an.

Noobs 2.4

Die Bezeichnung „Noob” wird im Engli-
tionsmanager, der die Einrichtung des
schen gerne als Abkürzung für „New-

Betriebssystems kinderleicht macht.

bie”, also „Anfänger”, verwendet. Hier

Sie kopieren Noobs auf eine SD-Karte,
steht sie für „New Out Of the Box Soft-
starten damit Ihren Pi und installieren
ware” und kennzeichnet einen Installa-
alles Weitere per Mausklick.

RetroPie

RetroPie ist ein alternatives Betriebs-
len wie den Commodore Amiga oder
system für den Raspberry Pi, basie-
die NES-Konsole emulieren. Klasse:

rend auf Raspbian. Mit diesem Sys-

Auch für Unterstützung von Spiele-
tem können Sie viele verschiedene

Hardware wie Controller oder Joy-
alte Spieleplattformen und -Konso-
sticks ist gesorgt.

HIGHLIGHTS DER HEFT-DVD

04 • 2017

> Video-Workshop

JULI/AUGUST

Das offizielle Raspberry Pi Magazin

> Aktuelle Builds von

ÜBER EINE STUNDE

VIDEO-WORKSHOP

Raspbian und Noobs

Programmieren lernen mit Python

Auf DVD:

AKTUELLE SYSTEME

PYTHON

> Alle Tools und Codes

Raspbian, Noobs, RetroPie

Über 1 S

TOOLPACK
tunde

Video

zu den Workshops
training

Etcher, SD Card Formatter,

(keine Regis

trierung

Win32 Disk Imager, Blog in a Box
erfor

derlich)

Extras

DVD-Start: Führen Sie die Datei »starter.html« im Stammverzeichnis der DVD per PROGRAMMCODE &

Doppelklick aus. Sie läuft auf jedem Rechner mit Webbrowser.

MATERIALIEN

DVD kaputt? Sollte diese Heft-DVD defekt sein oder fehlen, senden Sie bitte eine ZU DEN WORKSHOPS IM HEFT

E-Mail an dvd@chip.de.

> Würfeln mit Python

Haftungsausschluss: Die Installation von Programmen der Heft-DVD erfolgt

> LED-Thermometer
auf eigene Gefahr. Die CHIP Communications GmbH haftet nicht für Schäden,

> Amazon-Hack: Dash-Button
die aus der Installation von Software entstehen. Trotz aktueller Virenprüfung

> Harry-Potter-Uhr
ist eine Haftung für Schäden und Beeinträchtigungen durch Computerviren

> Lichtschranke u. v. m.

ausgeschlossen. Schadenersatzansprüche, aus welchem Rechtsgrund auch immer, sind ausgeschlossen, wenn die CHIP Communications GmbH nicht im Vorsatz oder in grober Fahrlässigkeit handelt. Dies gilt auch für Ansprüche auf DT-Control

Ersatz von Folgeschäden.

geprüft:

Beiliegender Datenträger
ist nicht jugend-
beeinträchtigend
magpi.de
magpi.

06 •

04 20

•

16

2017

67

Praxis WORKSHOP

PHIL KING

Wenn Phil nicht gerade Artikel für die

MagPi schreibt, kümmert er sich um

RasPi-Projekte. Hinweis: Dieser Beitrag
basiert auf einer Idee von Marc Scott:

@philking68 @Coding2Learn

Der Fotowiderstand wird
vom Laser beeinflusst: Je
stärker das Licht, desto
geringer ist der Wider-
standswert

Man misst die Zeit, die nötig
ist, um den Kondensator
zu laden. Daraus lässt sich
die einfallende Lichtmenge
ableiten

Ein Piezo-Summer ertönt
sofort, sobald die Laser-
lichtschranke irgendwo
unterbrochen wird

SO BASTELN SIE EINE

LICHTSCHRANKE

Mit diesem „Stolperdraht“ können Sie sogar Ihre Wohnung sichern Sie
orab ein wenig Theorie für diesen Workshop,
brauchen
schnell aufgeladen, je nachdem, ob und wie viel Licht
bevor es ans Eingemachte geht: Der Raspberry

V
auf den Fotowiderstand (LDR) fällt. Diese Eigenschaft

Pi erkennt problemlos einen digitalen Input
nutzen wir, um unsere Lichtschranke zu betreiben.

> GPIO Zero
per GPIO-Pin. Liegt eine Spannung unterhalb von

> 1 Steckbrett

1,8 Volt an, gilt der Eingang als ausgeschaltet. Span-

>SCHRITT 01

(Breadboard)

nungswerte darüber bedeuten: eingeschaltet. Schwie-

Fotowiderstand anschließen

> 1 Fotowiderstand
riger ist es bei analogem Input. Solche Signale bewe-

Der LDR ist ein lichtempfindliches Bauelement, des-

(LDR)

gen sich in einem Wertebereich von 0 Volt bis 3,3 Volt.

sen elektrischer Widerstand sinkt, je mehr Licht dar-

> 1× 1μF Konden-

Das Problem: Ein RasPi kann solche Werte nicht
auf fällt. Diesen Fotowiderstand platzieren wir jetzt
sator
messen und damit auch nicht interpretieren. Die
auf dem Steckbrett. Dann fügen wir den Kondensator

> 1 Laserpointer

Lösung: Wir nehmen einen Kondensator und mes-
hinzu. Wichtig: Achten Sie bei diesem Bauelement auf

> 5× Jumperkabel
sen, wie lange es dauert, bis er eine Ladung von 1,8
die Polarität. Das längere Beinchen (positiv) muss in

Female/Male

Volt erreicht. Dazu schalten wir einen Kondensator in
der gleichen Spalte auf dem Steckbrett stecken wie das

> 5× Jumperkabel

Reihe mit einem Fotowiderstand (LDR). Die Überle-

Beinchen des LDR, siehe dazu Grafik oben. Verdrahten

Female/Female
gung dahinter: Der Kondensator wird unterschiedlich

Sie diese Spalte mit GPIO 4. Den anderen Anschluss

> 1 Trinkstrohhalm
des LDR verbinden Sie mit dem 3,3-Volt-Pin und das

> 1 Kunststoff–
andere Beinchen des Kondensators mit einem GND-
gehäuse

Pin. Ihre Schaltung sollte jetzt so aussehen wie oben
im Schaubild gezeigt.

>SCHRITT 02

Fotowiderstand überprüfen

Starten Sie den RasPi: Wählen Sie im Hauptmenü

Menü | Entwicklung | Python 3 (IDLE). Legen Sie eine neue Datei an: File | New File, übernehmen Sie den Code von ch8listing1.py, sichern Sie die Datei.

Beim Start importieren wir die LightSensor-Class

Oben Platzieren Sie die Laserlichtschranke zum Beispiel im

Durchgangsbereich einer Türe – sozusagen als „Wachhund“
von GPIO Zero. Dann weisen wir die Variable ldr dem
magpi.de

68

04• 2017

D

Code

LICHTSCHRANKE

Praxis
auf Heft-DVD c

Sprache
ch8listing1.py

>PYTHON 3
from gpiozero import LightSensor

DOWNLOAD:

magpi.cc/2bhxwxC
ldr = LightSensor(4)

while True:

print(ldr.value)

ch8listing2.py

Oben In einem abgedunkelten Raum können Sie die Lichtschranke am leichtesten überprüfen und Fehlerquellen ausschließen
from gpiozero import Buzzer

LDR-Input von GPIO-Pin 4 zu. Zum Schluss benutzen
buzzer = Buzzer(17)

wir die Endlosschleife while True:, um den aktu-
buzzer.beep()

ellen Wert des vom LDR erfassten Lichts kontinuier-
lich anzuzeigen (Werte: 0 oder 1). Testen Sie das Pro-
ch8listing3.py
gramm, indem Sie den Laserpointer einsetzen.

>SCHRITT 03
from gpiozero import LightSensor, Buzzer

Fotowiderstand abschirmen
from time import sleep

Sobald Sie Ihren Schaltungsaufbau mit dem Laserpoin-
ter überprüfen, werden Sie bemerken, dass diverse
ldr = LightSensor(4)

Lichtquellen – zum Beispiel das Tageslicht oder eine
buzzer = Buzzer(17)

Zimmerlampe – das Messresultat unter Umständen ver-
fälschen. Dieser Effekt lässt sich reduzieren, indem man
while True:

das Störlicht durch eine Blende ausschaltet. Schneiden
sleep(0.1)

Sie dazu ein kurzes Stück von einem lichtundurchläs-
if ldr.value < 0.5:

sigen Trinkstrohhalm ab (2 bis 5 cm). Diese Blende ste-
buzzer.beep(0.5, 0.5, 8)

cken Sie auf den Fotowiderstand. Vermutlich sind die
sleep(8)

nun gemessenen Werte eindeutiger.

else:

buzzer.off()

>SCHRITT 04

Summer verdrahten

Die Lichtschranke soll Alarm schlagen, wenn man den

Script sozusagen zu verlangsamen. So wird dem Kon-

Lichtstrahl unterbricht. Deshalb fügen wir der Schal-
densator Zeit gegeben, damit er sich aufladen kann.

tung einen Piezo-Summer hinzu und achten auf die

Wie eben weisen wir einige Variablen dem Summer und

Polarität: Verdrahten Sie das lange Beinchen des Sum-
dem Fotowiderstand bzw.den GPIO-Pins 4 und 17 zu
mers mit GPIO 17 und das kurze mit einem GND-Pin.

(bitte nicht mit der physikalischen Nummerierung ver-

Testen wir das Ganze: Legen Sie eine neue Datei an,
wechseln, siehe dazu Grafik auf der vorherigen Seite).

kopieren Sie den Code von ch8listing2.py hinein.

Wir verwenden dann eine Schleife, sprich while

Speichern Sie die Datei. Importieren Sie danach die

True:, um kontinuierlich den Spannungspegel des

Buzzer-Class von GPIO-Zero. Weisen Sie dann die

Fotowiderstands zu prüfen. Fällt er unter 0,5 Volt, soll
buzzer-Variable dem Buzzer-Output von GPIO 17 zu.

der Summer uns alarmieren. Dieser Wert lässt sich

Zum Schluss verwenden wir buzzer.beep, um den
ändern, um die Empfindlichkeit zu steuern. Je höher

Summer im Sekundentakt ein- und auszuschalten.

der Wert, desto sensibler reagiert die Alarmanlage.

>SCHRITT 05

Testen Sie es und starten Sie das Programm.

Wenn Sie die Lichtschranke unterbrechen, sollte der

Lichtschranke testen

Piezo-Summer acht Sekunden lang ertönen. Sie kön-

Nun sorgen wir dafür, dass der Summer anschlägt,
nen die Signaldauer ändern, indem Sie die buzzer.

wenn jemand die Lichtschranke unterbricht. Legen
beep- Parameter und die sleep-Time ändern.

Sie eine neue Python-Datei an und kopieren Sie den

Wenn alle Komponenten des Aufbaus reibungs-

Code von ch8listing 3.py hinein. Damit das Programm
los funktionieren, bauen Sie Ihre Alarmanlage in ein
läuft, müssen beim Start die Buzzer- und LightSen-
unauffälliges Gehäuse ein und bringen es anschlie-
sor-Classes von GPIO Zero importiert werden. Das
ßend in Stellung. Um Platz zu sparen, bietet es sich

Gleiche gilt für die Funktion sleep, die wir von time an, die wenigen Bauteile der Schaltung direkt mit den
übernehmen. Dieser Zwischenschritt ist nötig, um das

Anschlüssen des Raspberry Pis zu verlöten.

magpi.de

04 • 2017

69

Praxis WORKSHOP

CLIVE WEBSTER

Clive versteht sich seit 2004 als
professioneller Elektroniktüftler.

Ihm eilt der Ruf eines leidenschaft-
lichen Raspberry-Pi-Fans voraus.

@clivewriting

5 Euro für einen
smarten WiFi-

Knopf? Super!

Wir haben uns
gleich sieben

Stück davon
zugelegt

Kaufen Sie Dash-

Buttons, die sich
optisch voneinan-
der unterschei-
den. So vermei-
den Sie später

Verwechslungen

Der Pi Zero W
ist der perfekte

Minirechner für
das Projekt, da
er kaum Strom
verbraucht und
deshalb immer
online sein kann

AMAZON-HACK

Bestellen auf Knopfdruck – das wünscht sich Amazon. Doch mit dem Sie
schlauen Dash-Button lassen sich ganz andere Dinge anstellen …

brauchen
a hat sich Amazon etwas sehr Raffiniertes aus-
mit dem Internet verbunden ist. Das kleine Plastikding
gedacht, um uns Kunden den Online-Ein-

> Dash-Buttons

D
ist ein typisches Beispiel für das „Internet of Things“
amzn.to/
kauf so schmackhaft und leicht wie möglich zu

(IoT) und sehr beliebt bei Elektronikbastlern und Pro-

2sPCooy
machen: den sogenannten „Dash-Button“. Bestellen
grammierern. Denn die stellen damit Dinge an, die

> Ein smartes
auf Knopfdruck, ohne lange nachzudenken und nur für Amazon sicherlich nicht so geplant hatte.

Gerät, z. B. eine

Prime-Kunden – das ist die eigentliche Idee dahinter,

Genau das tun wir jetzt: Ordern Sie einen Dash-But-

LIFX-Lampe,
siehe Amazon.

auch wenn Amazon das ein wenig anders formuliert.

ton – er kostet 4,99 Euro. Sobald Sie den Bestellknopf
goo.gl/3JySGQ

Falls Sie noch nie etwas von diesem ominösen
in der Hand halten, konfigurieren Sie ihn mit der ent-

Dash-Button gehört haben: Stellen Sie sich die-
sprechenden Amazon-App (nur für Android und iOS
sen Plastikknopf wie den Funkschlüssel für Ihr Auto
erhältlich) und ordern ein Produkt. Sobald das erledigt
vor. Man drückt drauf, schon passiert etwas. Mit dem
ist, öffnen Sie die App und deaktivieren den Dash-

Dash-Button verhält es sich ähnlich: Nur ein kurzer

Button. Dann aktivieren Sie ihn wieder, wählen dies-

Knopfdruck, schon ist die Bestellung raus und binnen
mal aber – das ist wichtig – kein Produkt aus. Schlie-

24 Stunden landet das heiß ersehnte Produkt bei Ihnen ßen Sie die App. Jetzt sollten Ihre WiFi-Einstellungen zu Hause im Briefkasten (amazon.de/dashbutton).

auf dem Button gespeichert sein, ohne dass noch-

Technisch gesehen handelt es sich beim Dash-But-
mals eine Verbindung zu Amazon aufgebaut wird. Der
ton um eine WiFi-fähige Taste, die über den Router

Knopf ist jetzt bereit für sein neues Leben.

70

04 • 2017
magpi.de

D

Code

AMAZON DASH-BUTTON

Praxis
auf Heft-DVD c

BASIS-CODE

Python einrichten

Bei diesem Projekt verwenden wir Jessie Lite für den
trigger.py

Sprache

>PYTHON

Pi Zero W, da es als Headless Server ohne GUI läuft.

Doch zuerst das Update: sudo apt-get update
from scapy.all import *

DOWNLOAD:

magpi.cc/

&& apt-get -y dist-upgrade. Da der Dash-But-

DashButtonCode
ton bereits den Router kontaktiert hat, sollte seine
def arp_detect(pkt):

MAC-Adresse im Log des Routers gespeichert sein.

if pkt[ARP].op == 1: #network request

Bei der FritzBox finden Sie diese Info im Webinter-
if pkt[ARP].hwsrc == 'xx:xx:xx:xx:xx:xx'

face unter Heimnetz | Heimnetzübersicht | Details.

return "Button detected!"

Jetzt legen wir los: Die Idee hinter diesem Hack

ist es, den RasPi als Interpreter zu nutzen. Er über-
print sniff(prn=arp_display, filter="arp", store=0)

wacht kontinuierlich Ihr Netz auf die Anwesenheit
des Dash-Buttons und nutzt diese Info als Trigger für

BEISPIEL-CODE
bestimmte Aktionen. Wir verwenden Python, um das

Drücken des Dash-Buttons abzufangen. Das erfor-
lights.py
dert allerdings ein zusätzliches Modul:

from scapy.all import *
sudo apt-get install -y pip
from lifxlan import *
sudo pip install scapy

#Buttons

Pip ist ein Python-spezifischer Installer und Scapy ist
andrex = 'xx:xx:xx:xx:xx:xx'

das Modul, das wir nutzen, um die MAC-Adresse des

Buttons zu „sniffen“ (pkt[ARP].hwsrc), wenn sie

#Lights
im Netz erscheint. Der Dash-Button bleibt so lange
bedroom = Light('xx:xx:xx:xx:xx:xx', '192.168.1.xxx')

im Ruhemodus, bis Sie ihn drücken – nur dann ist die
second_arp = False

MAC-Adresse im Netzwerk sichtbar.

def arp_detect(pkt):

Lampe per Knopf steuern
if pkt[ARP].op == 1: #network request

Jetzt können wir den Knopfdruck abfangen, der ideale
if pkt[ARP].hwsrc == andrex:

current_state = bedroom.get_power()

AMAZON-HACK Moment also, etwas auszuprobieren: Zufällig haben
wir eine smarte Glühbirne von LIFX parat (gibt es
if current_state == 0:

auch u.a. bei Amazon, ca. 45 Euro). Um sie anzusteu-
bedroom.set_power("on")

ern brauchen wir das LifxLAN-Python-Modul: pip
else:

install lifxlan. Öffnen Sie das Trigger-Script und
bedroom.set_power("off")

fügen Sie anschließend die LifxLAN- Modul-Funktio-
nen hinzu (in Zeile from lifxlan import *).

if second_arp == False:

Nun müssen wir die MAC- und die IP-Adresse der
sniff(prn=arp_detect, filter="arp", store=0)

Glühbirne finden (siehe Router). Dann ordnen wir
second_arp = True
der Lampe einen Namen im Python-Script zu. Dafür
else:

verwenden wir das „Light“-Objekt des LifxLAN-
second_arp = False

Moduls: bedroom = Light('xx:xx:xx:xx:xx:xx',

'192.168.1.xxx'). Wir müssen zudem den aktuel-
und Umbauten in Ihrer Wohnung. Natürlich funktio-
len Leistungspegel der Glühbirne ermitteln, um sie zu
niert diese Idee nicht nur mit der hier im Artikel vor-
schalten. Das erledigen wir mit der Variablen current_
gestellten LIFX-Glühbirne, sondern mit jeder anderen
state = bedroom.get_power() und dem Kommando
smarten Lampe oder schaltbaren Produkten, wie etwa
bedroom.set_power() unseres if, else-State ments. „Philips Hue“ oder „Samsung SmartThings“.

Dummerweise sendet der Dash-Button jedes Mal zwei

ARP-Pakete, wenn er gedrückt wird. Also sorgen wir

Vielseitig einsetzbar
dafür, dass das zweite ARP-Paket ignoriert wird: Dazu

Sie sollten diesen Beitrag vor allem als Anregung für
dient die second_arp-Boolean-Variable.

eigene Projekte verstehen. Der kleine Dash-Button

Ist das erledigt, sichern Sie das Script und sorgen
von Amazon setzt viele Dinge in Bewegung oder nimmt
dafür, dass es ausführbar ist: chmod +x lights.py.

Ihnen lästige Pflichten ab. Beispiel: Sie sind es leid, Ihre

Fügen Sie es als cronjob (crontab -e) hinzu, um

Kinder zum Essen zu rufen? Per JavaScript könnten Sie
sicherzugehen, dass es läuft, sobald der Pi bootet:

auf einen SMS-Messenger zugreifen und den Kids eine

@reboot sudo python /home/pi/lights.py.

Nachricht senden, siehe magpi.cc/2mt3zmo. Oder Sie

Nun halten Sie einen praktischen Knopf in Ihrer
greifen die geniale Idee von Aaron Bell auf: Er zeigt, wie

Hand, mit dem Sie alle smarten Lampen in Ihrem Haus-
man einen Dash-Button in einen cleveren IFTTT-Trigger
halt schalten können. Das erspart Ihnen lästige Kabel
verwandelt, siehe magpi.cc/2msVvC5.

magpi.de

04 • 2017

71

Praxis WORKSHOP

TONY HANSEN

Tony ist ein alter Hase in Sachen Soft-
ware und Computer. Er befasst sich
schon eine ganze Weile mit den The-

men. Seit ein paar Jahren liebt er wie-
der den Geruch von Lötzinn ...

magpi.cc/2nCOVrA

AUSSCHALTER

FÜR DEN PI

Fahren Sie Ihren Raspberry Pi sicher herunter, ohne den Strom zu kappen Sie
m den Preis so niedrig wie möglich zu halten,

Im Netz finden Sie zahlreiche Tutorials, die Ihnen
fehlt dem Raspberry Pi ein Ein- und Ausschal-
zeigen, wie Sie mithilfe eines Steckbretts einen Tas-

U
brauchen
ter. „Dann ziehen wir eben den Stecker“, wer-
ter mit der GPIO des Pi verbinden. Dieser Artikel
den Sie sagen. Das kann aber die SD-Karte in einem
dreht sich um die praktischen Anwendungsmöglich-
inkonsistenten Zustand hinterlassen. Alle Anleitungen
keiten solcher Taster oder Schalter.

> Raspberry Pi

(Modell egal)

besagen, dass Sie den Befehl zum Herunterfahren ver-
wenden und dann erst den Stecker ziehen sollten. Dies

Basisfunktionen

> Einen Taster /

Schalter wie zum
ist aber leider nicht immer möglich. Das gilt vor allen

Mithilfe der Bibliothek GPIO Zero wird das Thema

Beispiel:

Dingen dann, wenn der Pi ohne Bildschirm läuft und
mit dem Taster zum Kinderspiel. Nehmen wir an,
amzn.to/
keine Tastatur angesteckt ist. Vielleicht gibt es nicht
dass Ihr Schalter mit GPIO 21 und GND (Masse) ver-

2rUDJdE
einmal eine Verbindung zum Netzwerk. Ein Hobbybast-
bunden ist. Der Code dafür ist sehr einfach. Sie fin-
ler lötet in so einem Fall einen eigenen Ausschalter hin!

den ihn auf DVD D oder unter magpi.cc/2nD29F7.

Die Datei heißt shutdown-press-simple.py.

Der Code lauscht auf GPIO 21 und wartet, bis der dazu-
gehörige Taster gedrückt wird. Danach führt er Befehle
aus, die den Raspberry Pi herunterfahren. GPIO 21 ist

Der Taster wird mit den Pins
ideal. Es handelt sich dabei um Pin 40, er befindet sich

39 und 40 verbunden
direkt neben einer GND-Verbindung auf Pin 39. Bei
einer GPIO-Schnittstelle mit 26 Pins ist der GPIO-Pin 7
gut geeignet. Er befindet sich am Ende und neben Pin

Rechtwinklige Pins, die

25. Das ist wiederum eine GND-Verbindung.

für einen Reset-Schal-
ter gelötet wurden

Erstellen Sie mit Ihrem favorisierten Texteditor

(nano, vim oder Leafpad) auf dem Pi ein Script:

$ nano ~pi/shutdown-press-simple.py

Damit das Script bei Systemstart läuft, fügen Sie am

Ende der Datei /etc/rc.local diesen Code ein:

$ sudo su

# echo "~pi/shutdown-press-simple.py &" >> /
etc/rc.local

Starten Sie den Raspberry Pi nun neu, dann läuft das

Script automatisch. Es wartet darauf, dass der Tas-
ter gedrückt wird und führt den relevanten Code aus.

Ein großer Nachteil dieses Codes ist jedoch, dass der Pi

72

04 • 2017
magpi.de

D

Code

SICHERER AUSSCHALTER

Praxis
auf Heft-DVD c

Sprache

>PYTHON

DOWNLOAD:

magpi.cc/2nD29F7

Sicherer Ausschalter

Optionaler Reset-Taster
eventuell unbeabsichtigt herunterfährt, wenn Sie den
beim Drücken einer Taste ausführen. Ein Beispiel

Taster versehentlich drücken. Besser wäre es, wenn
wäre, eine LED leuchten oder blinken zu lassen. Den

Sie den Knopf mehrere Sekunden drücken müssten,

Code dafür hinterlegen wir wieder bei when_pressed.

bevor sich das Gerät ausschaltet. Sehen Sie sich die

Wir müssen sicherstellen, dass die LED wieder ausge-

Datei shutdown-with-hold.py an.

schaltet ist, wenn die Taste nicht den komplett defi-
nierten Zeitraum gedrückt wird. Dafür benutzen wir

Variablen einsetzen
das Ereignis when_released.

Statt GPIO Pin 21 und die Haltezeit fest zu program-

Wie zuvor haben wir die wichtigen Komponenten in
mieren, müssen wir den Code etwas modifizieren.

die Funktionen when_pressed(), when_released(),

Zunächst einmal werden für diese Zahlen Variablen
und shutdown() gepackt. Sie repräsentieren die ent-
definiert. Wir stellen diese Variablen an den Anfang
sprechenden Tastenereignisse.

des Programms. Bei so einem kleinen Programm
muss man die Werte zwar nicht unbedingt am Beginn

Weitere Feedback-Optionen
deklarieren. Dies hat sich jedoch bewährt und gilt als

Fallen Ihnen noch andere Möglichkeiten für Feedback
gute Praxis. Ändern Sie das Programm später, müs-
oder alternative Signale ein, während Sie die Taste
sen Sie die Variablen nicht suchen. Außerdem können
für das Herunterfahren gedrückt halten? Wie wäre es

Sie GPIO-Nummer und Wartezeit via Kommandozeile
mit einem Summer oder einer Nachricht, die auf dem
überschreiben, ohne den Code ändern zu müssen.

Bildschirm erscheint? Sie könnten auch die LED auf

Wir definieren eine Funktion mit Namen shut-
dem Board für die Anzeige der Aktivität verwenden
down(), um den Systembefehl poweroff auszuführen. und sie immer schneller blinken lassen. Das Abspielen Der Taster ist ebenfalls einer Variable zugewiesen, die
einer Audiodatei ist ebenfalls denkbar. Im Repository
wir anschließend verwenden. Diesmal legen wir aber
von GitHub finden Sie noch weitere Beispiele. An die-
auch fest, dass der Taster gedrückt bleiben muss. Ist
ser Stelle sind Ihrer Fantasie keine Grenzen gesetzt ...

er sechs Sekunden lang gedrückt, wird jeder Befehl
ausgeführt, der when_held zugewiesen ist. Bei uns ist
das die Funktion shutdown(), die wir vorher definiert
haben. Der Aufruf pause() ist notwendig, damit das

Links Beispiel mit

Script auf das Drücken der Taste wartet.

einem Reset- und

Wenn Sie sich die Beispiele ansehen, die GPIO Zero
einem Ausschalter
an einem Pi Zero.

mitbringt, finden Sie ein sehr ähnliches Script:

Rechtwinklige
magpi.cc/2lANxVA.

Knöpfe machen die

Sache kompakt.

Rückmeldung bei gedrückter Taste

Die Schalter sind
an ein Gehäuse
von Ada fruit ange-

Es geht aber noch besser. Was bei unserem Code
schlossen
fehlt, ist eine Rückmeldung. Wir wissen nicht wirk-
lich, ob etwas passiert, wenn wir die Taste drücken.

Zum Glück können wir dank GPIO Zero noch viel mehr
magpi.de

04 • 2017

73

Praxis WORKSHOP

LUKE CASTLE

Luke liebt das Coding und nimmt gerne
alte Space-Invaders-Automaten aus-
einander. Sein Herz schlägt auch für
den Astro Pi, einige Apps dafür gehen
auf sein Konto. magpi.cc/2iUTZXz

SCRATCH-SPIEL:

PARKING-MANIA

Was nervt Autofahrer in der Stadt? Einparken zum Beispiel. Dieses Sie

Scratch-Spiel stellt Ihre Rangierkünste auf die Probe …

brauchen
it Scratch kommt wirklich jeder klar. Eigentlich

Größe mit dem entsprechenden Befehl ändern. Alter-
logisch, denn diese visuelle Programmierspra-

> Auto-Sprite

M
nativ entwerfen Sie eigene Sprites, das gibt dem Spiel
magpi.cc/
che wurde ursprünglich für Kinder entwickelt.

einen individuelleren Anstrich. Öffnen Sie einen Brow-

2kiV2gc

Aber sie eignet sich auch für Erwachsene, die einen
ser, geben Sie scratch.mit.edu ein und starten Sie ein

> Hintergrund
unkomplizierten Einstieg in dieses Thema suchen. Wie
neues Projekt. Importieren Sie Hintergrund und Spri-
für das Spiel
leicht man in Scratch (siehe scratch.mit.edu) ein Pro-
tes. Scratch besitzt einen Editor, mit dem Sie solche
magpi.cc/

2kj3sEB
gramm schreiben kann, zeigt der Workshop: Wir ent-

Objekte bearbeiten können (siehe Bild gegenüber).

wickeln mit wenigen Mausklicks ein Spiel, bei dem

> Münz-Sprite

>SCHRITT 02
magpi.cc/
man einen Wagen fehlerfrei einparken muss.

2kj3pbR

Startposition festlegen

>SCHRITT 01

Zu Beginn des Spiels stellen wir sicher, dass jeder

Vorlagen herunterladen
die gleichen Bedingungen hat. Der Wagen muss also

Wir haben einige Vorlagen für Sie vorbereitet, siehe
immer auf der gleichen Startposition stehen. Wäh-

Liste links im Textkasten. Alle Vorlagen finden Sie auch len Sie das Auto-Sprite und das dazugehörige Skript auf der Heft-DVD D, etwa das Auto und die Münze, die
aus, dann ziehen Sie den Ereignissebefehl wenn grüne
sogenannten „Sprites“ (bewegliche Grafikobjekte). Sie

Flagge angeklickt in das Skript-Fenster. Platzie-
müssen diese Vorlagen noch etwas anpassen bzw. ihre
ren Sie einen gehe-zu-Bewegungsbefehl darunter und
ersetzen Sie die Nummer in x mit -229 und y durch 24, sodass der Wagen ungefähr in der Mitte der Startposition links im Fenster steht. Damit der Wagen in
die richtige Richtung zeigt, fügen wir das Bewegungs-
kommando setze Richtung auf 90 hinzu.

>SCHRITT 03

Auf die Plätze, fertig, los …

Nun bringen wir den Wagen auf die Straße. Platzieren

Sie unter dem letzten Befehl die Steuerungsanweisung
warte 5 Sekunden. Das gibt dem Spieler Zeit, nach
der Maus zu greifen. Es folgt ein Steuerungsblock:

wiederhole fortlaufend. In ihn fügen Sie den dre-

Das ist das Ziel des Spiels: ohne irgendwo
anzurempeln die Münze erreichen und
dann den Siegerlohn einstreichen

Das ist Ihr Auto, das Sie mit-
hilfe des Mauszeigers die

Straße entlangleiten

74

04 • 2017
magpi.de

D

Materialien
auf Heft-DVD c

PARKING-MANIA

Praxis

Links Dieses

Projekt setzt das
aktuelle Scratch

2.0 voraus. Starten

Sie deshalb Ihren

Browser und öff-
nen Sie den Link
scratch.mit.edu
he-dich-zu-Mauszeiger-Bewegungsblock ein.

Darunter platzieren Sie das gehe-5-er-Schritt-

Bewegungskommando. Dadurch erreichen Sie, dass
der Wagen sozusagen am Mauszeiger kleben bleibt
und ihm in einer flüssigen Bewegung folgt.

>SCHRITT 04

Kollisionen erkennen

Als Nächstes benötigen wir eine Funktion, die prüft,
ob der Wagen die Grasnarbe berührt – das würde als

Unfall gewertet. Wir fügen einen falls-dann-Be-
fehl in den wiederhole-fortlaufend-Block ein. Die

Bedingung lautet: wird farbe grün berührt (Füh-
len-Block). Klicken Sie auf die blaue Farbe, dann auf
das Gras im Hintergrundbild, um die Farbe „Grün“
auszuwählen. In die verbleibende Lücke des falls-
dann-Befehls fügen Sie ein: sage Game over! für

2 Sekunden (Aussehenblock). Darauf folgt stoppe
alles als Steuerungskommando. Das beendet alle

Skripts, sobald der Wagen vom Kurs abkommt.

>SCHRITT 05

Spiel beenden

Wir brauchen ein zweites Skript, das prüft, ob der Wagen
die Münze berührt. Ziehen Sie den Ereignisse befehl
wenn grüne Flagge angeklickt in das Skript-Fens-

Links Diese beiden
ter. Daran schließt sich ein wiederhole-fortlau-

Skripte sind alles,
fend-Block an. Er umschließt die falls-dann-Anwei-was Sie selbst
erstellen müssen.

sung. Fügen Sie in das Feld einen Fühlen-Block („wird

Sprites und Hinter-
berührt?“) ein und klicken Sie auf den kleinen Drop-
grund finden Sie
auf der Heft-DVD
down-Pfeil. Damit wechseln Sie zu Sprite 2. Falls Sie das

Sprite umbenannt haben, etwa „Münze“ oder „Coin“,

Spiel und ist bereit für die nächste Runde. Sie haben
wählen Sie diesen neuen Namen. In den Zwischenraum
damit in wenigen Schritten ein Spiel programmiert.

des falls-dann-Blocks setzen Sie folgenden Befehl:

Wir haben uns bewusst für einen simplen Aufbau
sage Du hast gewonnen! für 1 Sekunde. (Füh-
entschieden, damit Sie die Möglichkeit haben, mit
len-Block). Daran schließt sich direkt der stoppe-al-
dem Code zu experimentieren. Vielleicht gelingt es
les-Befehl an. Dieses Skript sorgt dafür, dass „Du hast Ihnen ja, einen Timer einzubauen? Oder wie wäre es
gewonnen!“ auf dem Bildschirm erscheint, sobald der
mit einem Countdown-Zähler, um die Spannung vor

Wagen die Münze berührt. Die Textmeldung wird für
dem Start zu steigern? Sie werden sehen, mit Scratch
eine Sekunde eingeblendet. Anschließend stoppt das
lassen sich Ideen leicht realisieren. Viel Spaß dabei!

magpi.de

04 • 2017

75

Praxis WORKSHOP

MARC SCOTT

Marc hatte einen Raspberry-Pi- und

Minecraft-Club an seiner alten Schule, wo
er EDV sowie System- und Regeltechnik
unterrichtete. Er ist jetzt Leiter Kursinhalte
bei der Raspberry Pi Foundation.

magpi.cc/2pOFrJB

Der HC-SR04 Ultraschall-Distanz-
sensor erkennt den Abstand zu
einem Objekt wie Ihrer Hand

Ein aus zwei Widerständen beste-
hender Spannungsteiler reduziert die

Spannung des Echo-Pins auf 3,3 V

Der Sensor besitzt inklusive 5V und

GND vier Verbindungen zur GPIO-

Anschlussleiste des Pi

SO BAUEN SIE EIN

ULTRASCHALL-THEREMIN

Bauen Sie Ihr eigenes Theremin-Musikinstrument mit einem

Sie

Ultraschall-Distanzsensor sowie ein wenig Python und Sonic-Pi-Code brauchen
in Theremin ist ein Musikinstrument, das
einen 470-Ohm-Widerstand mit Masse verbunden ist.

> HC-SR04 Ultra-

Klänge ohne Berührung erzeugt. In die-

Wenn Sie den Sensor wie im Diagramm gezeigt ver-

E
schall-Distanz-
ser Anleitung verwenden wir einen Ultra-
drahtet haben, ist der Echo Pin 17 und der Trigger Pin 4.

Sensor
schall-Distanzsensor, um die Noten zu steuern, die per

Klicken Sie auf Menü | Entwicklung | Python 3 (IDLE),
bit.ly/2swd18m

Sonic Pi ausgegeben werden. Der Ultraschall-Distanz-
um eine neue Python-Shell zu öffnen. Klicken Sie auf

> Breadboard
sensor besitzt vier Pins: GND (Masse), Trig (Trigger),

File | New File. Der Code zur Berechnung der Distanz
bit.ly/2slNsZi

Echo (Echo), und Vcc (Strom).Um den Sensor zu ver-
steht in theremin1.py. Kopieren Sie ihn von der Heft-

> Jumper-Satz
wenden, schließen Sie seinen GND-Pin an einen Mas-

DVD D, speichern Sie und starten Sie ihn. sensor.

bit.ly/2sL6klc
se-Pin des Raspberry Pi an, den Trig-Pin an einen
distance ist die Distanz in Metern zwischen Objekt

GPIO-Pin des Pi, und den Vcc-Pin an den 5V-Pin des Pi.

und Sensor. Lassen Sie den Code laufen und bewegen

Der Echo-Pin wird über einen 330-Ohm-Widerstand

Sie Ihre Hand vor und zurück. Sie sollten sehen kön-
mit einem GPIO-Pin verbunden, der wiederum über
nen, wie sich die in der Shell angezeigte Distanz ändert.

Unten Spielen Sie das Theremin, indem Sie

Ihre Hand auf- und abbewegen

Sonic Pi einsatzbereit machen

Sonic Pi erhält Nachrichten von Ihrem Python-Skript.

Öffnen Sie Sonic Pi per Klicks auf Menü | Entwick-
lung | Sonic Pi. In den Puffer können Sie nun eine
live_loop schreiben. Dies ist eine Schleife, die nie
endet, aber leicht aktualisiert werden kann, was Expe-
rimente erleichtert. Sie können eine Zeile hinzufügen,
um die Zeit zu reduzieren, die Sonic Pi und Python
benötigen, um miteinander zu kommunizieren.

live_loop :listen do
set_sched_ahead_time! 0.1
end
magpi.de

ULTRASCHALL-THEREMIN

Praxis
theremin1.py

Sprache

>PYTHON
from gpiozero import DistanceSensor
from time import sleep

DATEINAMEN:

theremin1.py
theremin2.py
sensor = DistanceSensor(echo=17,
theremin3.py
trigger=4)

Oben Der Distanzsensor sendet ein hochfrequentes Signal aus DOWNLOAD:

und misst die Zeit bis zum Eintreffen des Echos
magpi.cc/
while True:

2q j7qTN
print(sensor.distance)

Nun können Sie den Live Loop mit den Python-Nach-
sleep(1)

D
richten synchronisieren.

live_loop :listen do
theremin2.py

Code
auf Heft-DVD c
message = sync "/play_this"

end
live_loop :listen do
set_sched_ahead_time! 0.1

Die eintreffende Nachricht ist ein Dictionary, das
end
den Key :args enthält. Der Wert dieses Keys ist eine

Liste, deren erstes Element der MIDI-Wert der zu
spielenden Note ist.

theremin3.py
live_loop :listen do
from gpiozero import DistanceSensor
message = sync "/play_this"

from time import sleep
note = message[:args][0]

end
from pythonosc import osc_message_builder
from pythonosc import udp_client

Nun muss die Note noch gespielt werden.

sensor = DistanceSensor(echo=17, trigger=4)

live_loop :listen do
sender = udp_client.SimpleUDPClient('127.0.0.1', 4559)

message = sync "/play_this"

note = message[:args][0]

while True:

play note
pitch = round(sensor.distance * 100 + 30)

end
sender.send_message('/play_this', pitch)

sleep(0.1)

Sie können den Live Loop bei Klick auf den Run-But-
ton sofort losspielen lassen. Sie werden allerdings
nichts hören, da noch keine Nachrichten ankommen.

sensor = DistanceSensor(echo=17, trigger=4)

sender = udp_client.SimpleUDPClient('127.0.0.1', 4559)

Noten aus Python heraus schicken

Zum Abschluss müssen noch MIDI-Notenwerte von
while True:

Sonic Pi an die Python-Datei gesendet werden. Dazu
print(sensor.distance)

benötigen Sie die OSC-Library.

sleep(1)

from gpiozero import DistanceSensor

Die Distanzen müssen in MIDI-Werte konvertiert
from time import sleep
werden. Es sollten ganze Zahlen sein, die um den Wert

60 liegen, was dem mittleren C entspricht. Multipli-
from pythonosc import osc_message_builder
zieren Sie den Wert mit 100, runden Sie, und addieren
from pythonosc import udp_client

Sie noch etwas dazu, damit die Note nicht zu tief wird.

sensor = DistanceSensor(echo=17, trigger=4)

while True:

pitch = round(sensor.distance * 100 + 30)

while True:

sleep(1)

print(sensor.distance)

sleep(1)

Zum Abschluss sollten Sie die Tonhöhe an Sonic Pi senden
und die Sleep Time reduzieren. Der gesamte Code steht in

Nun können Sie ein Sender-Objekt erzeugen, das die
theremin3.py. Speichern Sie, führen Sie den Code aus und Nachricht absendet.

staunen Sie über Ihr ganz persönliches Theremin.

magpi.de

04 • 2017

77

Praxis WORKSHOP

LORRAINE UNDERWOOD

Lorraine betreibt den Kendal Pi Jam.

Sie ist eine irische Makerin, die in York-
shire lebt und aus der Web-Entwick-
lung kommt.

@LMcUnderwoodmagpi.cc/2ovDD9z

TEMPERATURGESTEUERTE

STUFENLICHTER

Farbige Lichter an den Treppenstufen, die die Temperatur draußen Sie
anzeigen, sorgen dafür, dass jeder Tag farbenfroh anfängt
brauchen
enn Sie am Morgen aufwachen, möchten Sie da

>SCHRITT 01

> 5V-RGB-Streifen
nicht wissen, ob Sie warme oder luftige Sachen

Lichter vorbereiten
magpi.cc/

W brauchen werden? Mit Lorraines Stufenlichtern Suchen Sie zunächst das richtige Ende des RGB-Strei-2pzIMyC
finden Sie das auf dem Weg zum Frühstück heraus. Der
fens, das zur Ansteuerung gedacht ist (Data In). Es

> 5V-Netzteil

Raspberry Pi unter der Treppe verbindet sich mit dem
sollte mit „Din“ beschriftet sein. Bei diesem Streifen
amzn.to/

Web und ruft die Temperatur ab. Dann steuert er den

2sSZb2t
gibt es fünf Litzen, die von drei Verbindungen stam-

LED-Streifen an, der entlang der Treppe verläuft. Wenn men: zwei von GND, eine von Din, und zwei von 5V.

> Hohlsteck-
es kälter ist als 0 Grad, leuchten die unteren 35 LEDs
buchse mit

Verbinden Sie die 5V-Litze mit dem „+“ Block der

Schraubklemmen
weiß. Unter 5 Grad plus leuchten die nächsten 35 LEDs

Hohlsteckbuchse, indem Sie den abisolierten Draht in
ebay.eu/
blau. Dies geht so weiter bis 25 Grad (LEDs leuchten
die Schraubklemme legen und diese dann mit einem

2pWtJLz
rot), wobei das in York shire kaum vorkommt.

Schraubendreher festziehen. Schließen Sie auch die

> Male/Female-

GND-Litze an den „–“ Block so an. Ziehen Sie vorsichtig

Jumperkabel
an den Kabeln, um den sicheren Sitz zu prüfen.

Das Ende des LEDStreifens

Über 25 Grad in Großbritannien? Kommt so gut
wie nie vor …

Das ist die normale

Frühlingstemperatur in

Yorkshire: unter zehn

Grad!

78

04 • 2017
magpi.de

D

Code
auf Heft-DVD c

TEMPERATURGESTEUERTE STUFENLICHTER

Praxis

>SCHRITT 02

Sprache

Pi vorbereiten

>PYTHON

Verbinden Sie die Din- und GND-Litzen mit den Ste-
ckerenden der Jumperkabel. Verbinden Sie die Buch-

DOWNLOAD:

magpi.cc/Stairlights
senseiten wie folgt mit dem Pi: Din an GPIO-Pin 18;

GND an einen beliebigen Masse-Pin.

Sie könnten den Pi auch über die andere 5V-Litze
mit Strom versorgen, doch dabei kann das Board Scha-
den nehmen. Verwenden Sie besser ein normales

Netzteil. Folgen Sie den Schritten der Adafruit-Anlei-
tung, um die NeoPixel-Library rpi_ws281x zu installie-
ren: magpi.cc/1nRSyYk.Verbinden Sie die Buchse mit
dem Netzteil. Stecken Sie dieses ein und testen Sie den

Streifen mit den Skripten aus dem examples-Ordner.

>SCHRITT 03

Wetter-API einrichten

Sie brauchen einen Entwickler-Account für eine Wet-

5V und GND werden per Hohlsteckbuchse
ter-API, um die Außentemperatur für Ihre Region
mit der Stromversorgung verbunden. GND
abzufragen. Wir haben forecast.io benutzt, da hier
und Din werden per Jumperkabel am Pi
angeschlossen.

täglich 1.000 kostenlose Abfragen möglich sind.

> Öffnen Sie forecast.io

>SCHRITT 05

> Wählen Sie „Developer“

Fehlersuche

> Wählen Sie „Sign up“ und erstellen Sie ein Konto

Wenn die Beispiele der NeoPixel-Library nicht funk-

> Ist Ihre E-Mail-Adresse bestätigt, bekommen Sie
tionieren, prüfen Sie alle Verbindungen. Ist die Din-
einen Key, den Sie für Schritt 4 brauchen

Litze am richtigen GPIO-Pin Ihres Raspberry Pi ange-
schlossen? Oder haben Sie vielleicht an „Dout“

Sie könnten natürlich auch mit einem zweiten Pi im
angeschlossen? Bei Anschluss über Dout gehen die

Freien die Temperatur messen. Es hängt davon ab, wie

LEDs an, aber sonst passiert nichts.

aufwendig Sie Ihr Projekt gestalten möchten.

Prüfen Sie auch, ob das Skript ordnungsgemäß

>SCHRITT 04
läuft, bevor Sie es in Cron einspielen. Sonst warten Sie
umsonst auf einen Job, der gar nicht läuft.

Es werde Licht!

Falls die LEDs in merkwürdigen Farben leuchten:

Laden Sie stairlights.py (auf Heft-DVD D) in das Einige Anwender berichten über Unverträglichkeiten
home/pi-Verzeichnis und ändern Sie:

der NeoPixel-Library mit dem Audio-Setup des Pi.

Zeile 6: Geben Sie den Key ein.

>SCHRITT 06

Wie geht’s weiter?

Zeile 7: Ändern Sie longi und lati auf Ihre Längen-Wir haben die Cron-Tasks modifiziert, damit die LEDs
und Breitengrade. Mit Google Maps können Sie diese
nachts ausgehen:

leicht herausfinden: Machen Sie einen Rechtsklick auf

Ihre Position und wählen Sie „Was ist hier?“

*/5 7-21 * * * /usr/bin/python3.4 /home/pi/stairlights.py

*/5 7-21 * * * /usr/bin/python3.4 /home/pi/nightynight.py

Erstellen Sie einen Cron-Task, um die Außentempera-
tur alle fünf Minuten zu prüfen und die LEDs zu aktu-

…nightynight.py ist dabei ein einfaches Skript, das
alisieren. Tippen Sie dazu in ein Terminalfenster:

aus den ersten 26 Zeilen von stairlights.py und der
folgenden Zeile besteht, um die LEDs abzuschalten:

sudo –E crontab -e
colorMe(strip, Color(0, 0, 0), 0, 239)

Geben Sie am Ende der Datei Folgendes ein:

Mit dem LED-Streifen an Ihrer Treppe kön-

*/5 * * * * /usr/bin/python3.4 /home/pi/
nen Sie noch einiges anderes anstellen, etwa far-
stairlights.py
bige Spiel-Taster hinzufügen, um ein schnel-

@reboot /usr/bin/python3.4 /home/pi/stair-
les Reaktionsspiel zu implementieren. Oder, falls
lights.py

Ihr Smartphone sich mit dem Bluetooth des Pi
verbindet, könnte Ihre Treppe einen Willkom-

Speichern Sie die Änderungen.

mens-Gruß abspielen. Lassen Sie sich inspirieren ...

magpi.de

04 • 2017

79

Praxis PROGRAMMIEREN

OPEMIPO OGUNKOLA

Ope liebt sowohl Hard- als
auch Software. Er programmiert

Python, C++ und C und kennt sich
etwas mit Webentwicklung aus.

magpi.cc/2oIbmMS

DAS EIGENE

SAME-GAME

Sie klicken auf eine Form und sie verschwindet. Das Spielbrett setzt sich OPTIONALE

DATENBANK
neu zusammen und Sie bekommen Punkte. Das ist Same!

Wenn Sie
ier stellen wir Ihnen das Konzept des einfa-
möchten, kön-

Struktur des Codes
nen Sie die
chen Spiels „Same“ vor. Es besteht aus Kugeln
besten Ergeb-

H

Der Code für dieses Projekt ist ziemlich umfangreich.

mit verschiedenen Farben, die per Zufalls -

Deswegen gehen wir davon aus, dass Grundkenntnisse
nisse in einer
prinzip auf einem Spielbrett arrangiert sind. Kugeln
in Pygame vorhanden sind. Wir konzentrieren uns

SQLite-Daten-
bank sichern.

mit gleichen Farben verbinden sich zu Formen. Kli-
lieber auf das Konzept, das für die Umsetzung eines
cken Sie auf irgendeinen Teil dieser Form, verschwin-
solchen Projekts notwendig ist. Bevor wir anfangen,
det sie und die übrig gebliebenen Kugeln rutschen
laden Sie zunächst den Code von der Heft-DVD D
nach. Wir schreiben den kompletten Code selbst und
herunter. Sie starten ein Spiel, indem Sie den Befehl
verwenden dafür Pygame. Nach dieser Anleitung soll-
python Gui.py eingeben.

ten Sie eigene Modifikationen vornehmen und das

Bei einem Projekt wie diesem müssen Sie sich

Spiel an Ihre Bedürfnisse anpassen können.

zunächst darüber klarwerden, was Sie eigentlich
erreichen möchten. Je komplexer Programme wer-

Klicken Sie auf die Formen, um zu spielen. Diese etwa wäre eine gute Wahl …

den, desto wichtiger ist dieser Schritt. Wir verwen-
den für die Struktur des Programms das MVC-Mus-
ter (Model-View-Controller oder auf Deutsch

Modell-Präsentation-Steuerung). Model verweist auf
permanente Daten, im Controller liegt die Steuerung
und View ist, was der Anwender sieht.

Der gesamte Controller-Code liegt bei uns in der

Datei logic.py. Darin befindet sich das Punktesystem,
das Entfernen der Kugeln, das Finden von Mustern
und so weiter. Die Datei Gui.py enthält sämtlichen

Code, der für die Präsentation zuständig ist. Hier wer-
den die Kugeln und die Verbindungsbrücken gezeich-
net, wobei die Anweisungen dafür aus logic.py stam-
men. Weiterhin wird hier die Anzeigetafel erstellt. Die

Komponente Model liegt bei uns ebenfalls in logic.py.

Lediglich der Rekord wird gespeichert – er befindet
sich in der Datei TopScores.txt.

Die Daten lesen wir mit getHighScore() aus und
aktualisieren die Datei mit updateHighScore(), sollte
das notwendig sein. Sie finden die Funktionen in der

Mehrere Kugeln mit gleicher

Farbe ergeben eine Form

80

04 • 2017
magpi.de

D

Code
auf Heft-DVD c

SAME GAME

Praxis

Sprache

Gui.py

Logic.py

>PYTHON

Abhängig:

Enthält:

Enthält:

DATEINAMEN:

Logic.py

Gui.py

> Anzeigeklasse für das Spiel

> Die Klasse Board

DOWNLOAD:

> Stellt das Brett anhand der Klasse

> Hat ein Attribut Board
magpi.cc/2oIl4yM

Board dar

> Kugeln werden hier vom Spielbrett

> Erkennt, welche Kugel angeklickt
entfernt
wurde und verwendet die Methode

> Errechnet den Punktestand
remove in der Klasse Board

Oben Der Codefluss ist ziemlich einfach und hängt zum

Datei logic.py, aber genau genommen gehören sie
größten Teil von zwei Scripten ab
zum Bereich Model.

Da wir nun wissen, wie unser Code aufgebaut ist,

Auf Ereignisse reagieren
können wir über die Implementierung sprechen. Wir

Unser Spiel muss außerdem auf Ereignisse reagieren.

SAME
sehen das Spielbrett als zweidimensionale Liste an

Wir müssen wissen, welche Kugel angeklickt wurde.

AUFPEPPEN

Kugeln, die wir balls nennen. So können wir die Kugel

Das erledigt _getPosition(). Dadurch bekommen

Sie können
mit Position x,y via balls[x][y] ansprechen.

wir die Position x,y der angeklickten Kugel und None,

Klänge hin-

Eine weitere wichtige Aufgabe ist es, Kugeln mit glei-
wenn der Klick keine Kugel getroffen hat. Mit diesen
zufügen, die

Farben der
cher Farbe zu einer Form zu kombinieren. Dafür prü-

Informationen können wir die Kugel und die dazu-

Kugeln sowie
fen wir, was über und unter sowie links und rechts ist.

gehörige Form entfernen. Das erledigt die Funktion
vergebene

Die Funktion _adjacent() erledigt das. Im Anschluss

_removeBalls() in logic.py. Die Schleife für das Ver-Punkte ändern

– und was
findet _findAdjacent() alle Kugeln, die zu dieser Form
arbeiten der Ereignisse ist in der Funktion run().

Ihnen sonst
gehören. Die Funktion _markBalls() markiert eine

Nach jedem Ereignis wird damit das Brett aktualisiert.

noch einfällt!

Form für das Entfernen und _clearBalls() löscht sie.

Die Funktion _findAdjacent() ist außerdem für die

Permanente Spieledaten

Berechnung zuständig, wie viele Kugeln entfernt wur-

Unser Spiel merkt sich nur den Rekord. Dafür verwen-
den und berechnet mit getScore() den Punktestand.

den wir eine einfache Textdatei. Alternativ dazu könn-
ten Sie eine SQLite-Datenbank verwenden, um darin

Das Brett anzeigen
mehrere Rekorde zu speichern.

Nachdem logic.py steht, können wir uns mit dem

Code befassen, der für die Anzeige und die Verarbei-

Same mit anderen teilen
tung der Klicks zuständig ist. Hier spielt Pygame seine

Unser Spiel funktioniert nun, aber ein bisschen Fein-

Stärke aus. Sie finden sämtlichen Code für die Anzeige
schliff ist noch nötig. Wir wollen das Spiel mit unse-
in _display(). Darin ist eine Funktion, die sich um
ren Freunden teilen und denen das Leben so einfach
die verschiedenen Farben kümmert. Weiterhin zeich-
wie möglich machen. Wir können dazu eine aus-
net sie das Brett und die Verbindungsbrücken.

führbare Datei erstellen, die unser Spiel enthält.

Der Spieler muss dann nur auf die Datei klicken und
kann loslegen. Es sind keine zusätzlichen Downloads
notwendig. Dafür brauchen wir aber die Software
pyinstaller, die wir zunächst installieren müssen.

Das erledigt der nachfolgende Befehl:

pip install pyinstaller

Mithilfe des folgenden Befehls erzeugen Sie über das

Terminal ein Paket im Spieleverzeichnis:

pyinstaller Gui.spec --windowed –onefile

Das war es auch schon! Die ausführbare Datei können

Sie nun mit Freunden teilen. Pyinstaller unterstützt
verschiedene Betriebssysteme.

Links Nach einem Klick fällt die rote Kugel
herunter und es entsteht eine neue Form
magpi.de

04 • 2017

81

Praxis KNOW-HOW

FRAGEN &

ANTWORTEN

So schützen Sie den RasPi vor ungebetenen Gästen …

DER PI UND DIE

SICHERHEIT

WIE SICHER IST DER RASPI?

nern auslesen. Wer auf Nummer sicher gehen will,

Passwort
verschlüsselt die Daten, etwa mit dem Tool eCryptfs.

Schützen Sie Ihren Pi vor Muldrop.14 & Co. (siehe

Hier finden Sie ein Tutorial dazu: bit.ly/2sSrCOn.

Seite 7). Eine Lücke ist das Standardpasswort, das all-
gemein bekannt ist. Solange der Pi nicht in ein LAN

Sicherheit per Hardware
oder das Internet eingebunden ist – kein Problem.

Für den Pi gibt es zahlreiche Aufsteckplatinen (HATs).

Ansonsten: Ändern Sie das Passwort (siehe unten).

Einige davon kümmern sich selbstständig um die

Datenverschlüsselung, wie etwa Funkmodule für die

Vorsicht mit SSH

Hausautomation oder ähnliche Komponenten.

Standardmäßig ist SSH bei Raspbian deaktiviert.

Allerdings sind Standardpasswort und Verbindungs-
name bekannt. Theoretisch kann sich also jeder per

WAS IST MIT DER ONLINE-SICHERHEIT?

SSH einen Fernzugang zum RasPi verschaffen, sobald

Sie SSH über das Konfigurationstool aktivieren.

Browser

Der Standard-Browser für Raspbian ist Chromium, der

Geschütztes Netzwerk
das Grundgerüst von Google Chrome ist. Er ist modern

Sowohl Raspbian als auch die meisten anderen
und sicher, zudem lassen sich ganz leicht Werbeblo-

Betriebssysteme für den Pi stammen von Linux ab.

cker oder spezielle Sicherheits-Add-ons installieren.

Das bedeutet hohe Sicherheit von Haus aus. Ändern

Davon abgesehen: Da Raspbian auf Linux basiert, hat

Sie dennoch SSH-Passwort und Verbindungsnamen.

Malware aus dem Internet generell schlechte Karten.

Scratch

WIE SCHÜTZE ICH DEN RASPI?

Wenn Sie online mit Scratch zum Beispiel Spiele oder
andere Software entwickeln, sind Sie durch das haus-

Passwort ändern
eigene Login geschützt. Sie können es aber auch dazu

Gleich nach der Installation des Betriebssystems soll-
nutzen, beispielsweise Ihre selbst programmierten
ten Sie das dazugehörige Passwort ändern. Allerdings:

Spiele per Login-System abzuschotten.

Wenn Sie es vergessen, gibt es keinen Ersatzschlüs-
sel! Um das OS zu schützen, öffnen Sie das Terminal

Python
und geben passwd ein. Tragen Sie zuerst den aktuellen Mit Python lassen sich beliebige Daten aus dem Web Code ein, dann wählen Sie ein neues Passwort.

extrahieren, etwa Wetterinfos oder Börsendaten, und
an eigene Programme weiterleiten. Wählen Sie nur

Daten verschlüsseln
vertrauenswürdige Quellen. Achten Sie darauf, wie

Auf der SD-Karte sind alle Ihre Daten gespeichert. Sie
diese Infos von Python verarbeitet werden und ob sich
lässt sich ganz leicht auf anderen RasPis oder Rech-
beim Parsing eventuell Sicherheitslücken auftun.

magpi.de

82

04• 2017

FAQ Praxis

AUS DER RASPBERRY-PI-FAQ

RASPBERRYPI.ORG/HELP

WO BEKOMME ICH EINEN RASPBERRY PI?

WAS IST DIE BESONDERHEIT BEIM PI ZERO W?

Einen Pi bekommen Sie an jeder Ecke: sei es im Elektro-

Dabei handelt es sich um das kleinste Modell der Serie.

nikshop oder im Versandhandel. Sie können ihn bei Amazon

Trotzdem ist auf der winzigen Platine noch Platz für WLAN
oder bei klassischen Elektronikversendern wie Conrad, Rei-

802.11b/g/n, Bluetooth 4.0 und einen Kamera-Port. Der
chelt, ELV, Pollin oder Voelkner ordern. Wenn Sie speziellere Rechenzwerg wird von einem 1 GHz Single-Core-Prozes-Bauteile suchen, werden Sie zum Beispiel bei den Anbie-
sor angetrieben, er besitzt 512 MByte RAM sowie einen
tern www.rasppishop.de, www.exp-tech.de, www.pi-shop.

HAT-kompatiblen 40-Pin-Anschluss. Zudem zeichnet sich
ch (Firmensitz in der Schweiz) oder alternativ bei www.wat-
der Pi Zero W durch seine geringe Leistungsaufnahme aus
terott.com (Deutschland) fündig.

– ideal also für mobile Anwendungen oder IoT-Projekte.

WAS KOSTEN DIE EINZELNEN MODELLE?

IST DER RASPI SOFORT BETRIEBSBEREIT?

Die Preise schwanken je nach Anbieter und der aktuel-

Das kommt immer darauf an. Wenn Sie ihn als Kit kaufen, ist len Verfügbarkeit, das gilt insbesondere für das kleinste
im Regelfall alles mit dabei und Sie können gleich loslegen.

Modell „Pi Zero W“. Manchmal bekommt man den Rasp-

Wenn Sie den Raspberry Pi solo kaufen, benötigen Sie noch
berry preisgünstiger, wenn man ihn als Teil eines Kits
eine SD-Karte und ein Netzteil (2,5 A / 5 V). Ältere RasPi-
ordert. Zur Orientierung: Der Pi 3 kostet rund 40 Euro. Der Modelle brauchen eventuell zusätzlich einen WLAN- und

Pi Zero W wird meist als Kit angeboten. Ausnahme: Der

Bluetooth-Adapter sowie einen aktiven USB-Hub, wenn Sie
deutsche Versender Pi3g.com (bit.ly/2sOIpSB).

eine Festplatte anschließen wollen.

IMPRESSUM

Redaktionsleitung Thorsten Franke-Haverkamp

Executive Director Florian Schuster

(verantwortlich für den redaktionellen Inhalt)

Director Sales Erik Wicha, ewicha@chip.de,

Chefin vom Dienst Julia Schmidt

chip.de/media

Redaktion Russell Barnes, Rachel Churcher, Thorsten

Key Account Manager Katharina Lutz, kalutz@chip.de

Franke-Haverkamp, Patrick Hannemann, Lucy

Sales Manager Catharina Lerch, clerch@chip.de

Hattersly, Phil King, Angelika Reinhard, Julia

Verantwortlich für AdTech Factory GmbH & Co. KG,

Schmidt, Rob Zwetsloot

den Anzeigenteil Hauptstraße 127, 77652 Offenburg

Text-/Schlussredaktion Birgit Lachmann, Angelika Reinhard Gudrun Nauder, Tel. (089) 9250-2132,

Red. Mitarbeit Jürgen Donauer, Jörg Reichertz,

gudrun.nauder@adtechfactory.com

Matthias Semlinger

Herstellung Andreas Hummel, Frank Schormüller,

Autoren und Entwickler Wesley Archer, William H. Bell, Henry Budden, Medienmanage ment, Vogel Business

Davis Bowen, Luke Castle, Michael Darby,

Media GmbH & Co. KG, 97064 Würzburg

Mike Cook, Tony Hansen, Joe Herman,

Druck Vogel Druck & Medienservice GmbH,

Simon Long, Brian Mcevoy, Pierre Muth,

Leibnizstr. 5, 97204 Höchberg

Opemipo Ogunkola, Spencer Organ,

Head of Distribution Horst Jarkovsky

Ehsan Rahman, Matt Richardson, Marc Scott,

& Marketing

Lorraine Underwood, Patricio Gonzalez Vivo,

Vertrieb MZV GmbH & Co. KG, 85716 Unterschleißheim

Matt Wagner, Clive Webster

Internet: www.mzv.de

Art Direction Dougal Matthews, Stephanie Schönberger

Kontakt Leserservice specials@chip.de

Grafikleitung Antje Küther

© 2017 by CHIP Communications GmbH.

Grafik Veronika Zangl (verantw.), Sam Alder

Nachdruck nur mit schriftlicher Genehmigung.

(Illustrator), Lee Allen, Daiva Bumelyte,

Bezugspreise Einzelheft: 9,95 Euro;

Andrea Graf, Mike Kay

Ausland: Österreich 11,50 Euro;

DVD Patrick Hannemann

Schweiz 19,50 SFr; BeNeLux 11,50 Euro

Nachbestellung (zzgl. Versand) chip-kiosk.de

VERLAG UND REDAKTION

Jahresabo (inkl. Versand) 54,80 Euro, Ausland: Österreich 69 Euro; Anschrift CHIP Communications GmbH,

St.-Martin-Straße 66, 81541 München

Schweiz 117 SFr; BeNeLux 69 Euro

Tel. (089) 9250-4500

Abonnentenservice Abonnenten Service Center GmbH,

Die Inhaber- und Beteiligungs verhältnisse

CHIP-Aboservice, Postfach 225, 77649 Offenburg,

lauten wie folgt: Alleinige Gesellschafterin ist die

Tel. (0781) 63 94 526 (Mo bis Fr, 8 bis 18 Uhr),

Burda Tech Holding GmbH mit Sitz in der

Fax (0781) 84 61 91, E-Mail: abo@chip.de,

St.-Martin-Straße 66, 81541 München

kontakt@chip-kiosk.de

Geschäftsführer Thomas Koelzer (CEO),

MagPi – das offizielle Raspberry Pi Magazin erscheint als Lizenzausgabe des MagPi Magazine der Philipp Brunner (COO)

Raspberry Pi (Trading) Ltd., 30 Station Road, Cambridge, CB1 2JH. Alle Inhalte dieses Hefts unterliegen, sofern nicht anders gekennzeichnet, der Creative-Commons-Lizenz – Namensnennung – Nicht-Verleger Prof. Dr. Hubert Burda
kommerziell – Weitergabe unter gleichen Bedingungen 3.0 (CC BY-NC-SA 3.0).

magpi.de

04 • 2017

83

Feature

TOOLKIT

FÜR MAKER

Alles, was Sie für spannende Projekte benötigen
n der MagPi dreht sich alles ums Selberma-
ten. Projekte mit hohem handwerklichen Aufwand bleiben
chen. Tag für Tag präsentieren eifrige Maker

I
leider manchmal auf der Strecke. Darum zeigen wir Ihnen
in den Communitys ihre brandneuen, beein-
auf den nächsten Seiten, welche Werkzeuge und Einzel-
druckenden Projekte mit dem Raspberry Pi. Die bes-
teile Sie benötigen, um größere Projekte in die Tat umzuset-
ten davon stellen wir Ihnen im Heft vor. Oft geht es
zen. Einige dieser Komponenten haben sich sicher schon in
dabei um Programmierung und um kleinere Arbei-

Ihrem Fundus angesammelt, wenn Sie regelmäßig tüfteln ...

84

04 • 2017
magpi.de

TOOLKIT

Feature

KNOW-HOW: BAUTEILE

Diese Komponenten können Sie mit

SCHALTUNGEN einer Steckplatine nutzen, aber teils
auch in fertigen Schaltungen

EINFACHER DRAHT

Dieser Draht ist sehr biegsam, da
er im Kern nur aus einem Strang

Erste Schritte zum Aufbau Ihrer eigenen Schaltungen

Metall besteht – ideal für Prototypen also. Man kann den Draht A B C D E

F G H I J
as bescheiden wirkende
zwar verlöten, allerdings ist er nicht

1

1

Breadboard, auch Steck-

D
ideal für gelötete Schaltungen.

platine genannt, ist perfekt
für den Bau von Schaltungs-Proto-

5

5
typen geeignet. LEDs und andere

Komponenten lassen sich blitz-
schnell anschließen. Daher gehört es

10

10
für jeden Maker zur Grundausstatt-
tung. Falls Sie noch kein Breadboard
haben: Sie finden diese in mehreren

Größen bei vielen Händlern.

JUMPERKABEL

15

15

Mit Steckplatinen können Sie expe-

Damit kann man flott eine Steck
rimentieren – ganz ohne zu löten. Alle
platine an den RasPi anschließen.

Bauteile lassen sich danach weiterver-
wenden und wieder neu arrangieren.

20

20

In Kombination mit einem Pi erstellen

FÜR MAKER

Sie im Nu Schaltungen. Manche der

Löcher sind durch Metallstreifen mit-

25

25
einander verbunden, sodass Sie Ihre

Schaltungen mit wenig Draht vervoll-
ständigen können.

WIDERSTÄNDE

Links Das Diagramm zeigt, wie die Löcher im

Die meisten Schaltungen erfordern

30

30

Breadboard miteinander verbunden sind –

A B C D E

F G H I J
einen oder mehrere Widerstände,
behalten Sie dies im Hinterkopf
die es in verschiedenen Stärken gibt.

KNÖPFE

Ein sehr gebräuchliches Eingabegerät. Per Knopfdruck wird ein Stromkreis geschlossen. Auch Sensoren können als Eingabegeräte dienen.

LEDS

Mit LEDs kann man

Schaltungen testen oder Lichteffekte
erzeugen. Andere Ausgabegeräte können

Lautsprecher, Motoren
oder Summer sein.

magpi.de

04 • 2017

85

Feature

SO BAUEN SIE

SCHALTUNGEN

Der Weg vom Prototyp bis zur finalen Schaltung
schaltungen auf Steckpla-

DRAHT
tinen lassen sich sicher

S

Der etwas dickere Draht mit dickerem
in dem einen oder ande-

Kern eignet sich besser zum Löten als
ren Projekt auch dauerhaft nutzen.

das dünnere Material fürs Prototyping.

Allerdings sind gelötete Schaltun-
gen robuster, da die Drähte sich
nicht lockern können. Wir zeigen

Ihnen, wie der Einstieg mit dem

Lötkolben garantiert gelingt.

ISOLIERZANGE

Das spezielle Werkzeug lässt Sie
nicht nur Drähte durchtrennen,

LÖTHELFER
sondern auch verschieden starke

Beim Löten von komplexen Schal-

Isolierungen entfernen.

tungen wünscht man sich oft ein

DER LÖTKOLBEN
weiteres Paar Hände. Da kommt

Ohne Lötkolben können Sie nicht
der Löthelfer gelegen: Mit seinem
löten – logisch! Somit ist er das
festen Standfuß und dem sicheren

Herzstück Ihrer Sammlung. Im Prin-

Griff hält er zwei Komponenten ruhi-
zip ist das nur ein Stift mit einer hei-
ger als jede Hand. Für besonders
ßen Spitze, die weiches Metall zum
filigrane Arbeiten ist am Gestell oft

Schmelzen bringt. Nach dem Küh-
sogar eine Lupe angebracht.

len wird es fest und leitet Strom.

DAS RICHTIGE

MODELL FINDEN

ENTLÖTPUMPE

Die meisten Lötkolben haben einen

LÖTZINN

Wenn Sie zu viel Lötzinn aufgetra-
einfachen Ein-/Ausschalter. Dabei gibt

Diese Legierung aus Zinn und Kup-
gen haben, können Sie es mit die-
es nur eine Einstellung: heiß. Für den
fer oder Blei wird geschmolzen und
sem Gerät aufsaugen. Erhitzen Sie

Anfang genügt das sicherlich. Möch-
hält nach dem Abkühlen Komponen-
das Metall dazu, denn sonst lässt es
ten Sie aber später auch komplexere
ten und Drähte fest zusammen.

sich nicht ablösen.

Projekte umsetzen, nehmen Sie lieber
etwas mehr Geld in die Hand und kau-
fen Sie einen Kolben mit verschiede-
nen Temperatureinstellungen.

86

04 • 2017
magpi.de

LÖTEN

Feature

IHR EINSTIEG

INS LÖTEN

So erlernen Sie den geschickten Umgang mit dem Lötkolben

DRÄHTE

VERLÖTEN

>SCHRITT 01

Zwei Mal messen

Stellen Sie sicher, dass der

GRÜNDLICH

Draht die richtige Länge für die

Schaltung hat. Sie können auch

LÖTEN AUF

VORBEREITEN
zuerst ein Ende abisolieren und

PLATINEN

>SCHRITT 01
den Draht erst nach dem Löten
von der Spule abschneiden. Der

>SCHRITT 01

Etwas Geduld

Draht ist sehr biegsam, also las-

Komponente anpassen

Lötkolben können Sie nicht ein-
sen Sie auch ruhig etwas Spiel

Üblicherweise löten Sie Bauteile auf
fach auspacken und dann gleich
beim Messen.

eine Platine. Passen Sie auf, dass Sie
loslegen. Die Spitze muss regel-
wirklich die richtige Komponente in
mäßig gereinigt werden. Dazu

>SCHRITT 02
der korrekten Ausrichtung anbrin-
wärmen Sie den Kolben zuerst

Draht verzinnen
gen. Kürzen Sie ggf. die Kontakte.

auf. Befeuchten Sie anschließend

Ist der Draht abisoliert, verzin-
den Schwamm aus der Lötstation
nen Sie das Metall. Fixieren Sie

>SCHRITT 02
ganz leicht mit Wasser – wringen
das eine Ende im Löthelfer und

Verlöten

Sie ihn zuvor ruhig noch einmal
tragen Sie etwas Lötzinn auf das

Fügen Sie ein wenig Lötzinn hinzu,
aus. Manche Kolben kommen mit

Metall auf, sodass es reichlich
bis das Metall auf der Platine und
einem Reiniger aus Kupfer. Hier
bedeckt ist.

der Kontakt miteinander verbunden
ist kein Wasser mehr nötig.

sind. Dadurch kann später der Strom

>SCHRITT 03
ungehindert zwischen Board und

>SCHRITT 02

Verbindung

Bauteil hin- und herfließen.

Reinigung

Der Löthelfer ist hier hilfreich,

Ist der Kolben so heiß, dass er
denn er kann sowohl den Draht

>SCHRITT 03
bei Kontakt mit dem Schwamm
als auch ein weiteres Bauteil

Weitere Überlegungen
dampft, wischen Sie ihn mit bei-
festhalten. Am besten verzin-

Wenn Sie etwa einen Header mit
den Seiten kurz ab. Verteilen Sie
nen Sie nicht nur den Draht,
mehreren Pins verlöten wollen,
nun ein wenig Lötzinn auf der
sondern auch den anderen Kon-
machen Sie sich besser vorher über

Spitze des Kolbens.

takt am Bauteil. Wenn Sie das
den Ablauf Gedanken. Löten Sie in
heiße Zinn dann verbinden,
der falschen Reihenfolge, müssen

>SCHRITT 03
sitzt später alles bombenfest.

Sie sich später ziemlich verrenken.

Noch mal von vorn

Diesen Vorgang wiederholen

Sie ein paarmal, bevor Sie eine

Schaltung löten – am besten

ZUM ABSCHLUSS ...

auch immer mal zwischendrin.

Ihre Schaltungen können Sie nach Fertigstellung noch opti-

Tun Sie dies bei jeder Benut-
mieren, indem Sie abstehende Drähte kürzen oder versie-
zung des Kolbens, wird er
geln. Ein Schrumpfschlauch etwa zieht sich über dem Draht
deutlich länger halten.

zusammen, wenn Sie ihn mit einem Fön erhitzen. Er schützt
dadurch Verbindungsstellen. Lötpunkte auf einer Platine
können Sie mit einer Heißklebepistole zusätzlich schützen.

magpi.de

04 • 2017

87

Feature

WERKZEUG-

KAS

Diese Werkzeuge gehören zu TEN
r Grundausstattung eines jeden Bastlers
ichts geht über eine alt-

TEPPICHMESSER
modische, gut gefüllte

N

Die guten alten Cutter werden Ihnen

Werkzeugkiste. Wäh-
jederzeit treue Dienste erweisen,
rend viele Gerätschaften auch
wenn Sie mal wieder etwas zurecht-
irgendwo in der Garage herum-
kürzen müssen.

liegen können, sollten die Werk-
zeuge von dieser Liste bei Ihren

Projekten immer griffbereit sein.

FEILEN

NUSSKASTEN

Mit Feilen und etwas Sandpapier

Probleme mit der Mutter? Zugege-
verpassen Sie einem 3D-gedruck-
ben, das war nicht optimal formuliert,
ten Bauteil buchstäblich den letz-
doch Sie werden eine „Knarre“ oder
ten Schliff. Am besten haben Sie eine

SCHRAUBENDREHER

„Ratsche“ mit verschiedenen Bits

Auswahl an sehr feinen Feilen und

Bei eigenen Projekten oder Tutorials
definitiv öfter brauchen.

Papier mit feiner Körnung zu Hause.

sind die klassischen Schraubendre-
her mit (Kreuz-)Schlitz unverzichtbar.

Für elektronische Basteleien sollten

Sie aber auch ein Set an sehr kleinen

Schraubendrehern besitzen. Diese
kommen oft bei feinen Mechaniken
wie Brillen oder Uhren zum Einsatz.

MAULSCHLÜSSEL

Trotz Ratsche und Bits bleibt der
gute alte Maulschlüssel unver-

KLEBER
zichtbar. Praktisch sind verstellbare

Manchmal hilft nur Leim. Sekun-

Modelle. Damit müssen Sie nicht
denkleber, Holzkleber, Epoxidharz

SCHRAUBEN VERSTEHEN
immer die richtige Größe suchen.

oder Heißkleber – es schadet nicht,

Online stoßen Sie

UNC

UNF METRISCH
eine reiche Auswahl an Klebstoff
auf viele verschie-
vorrätig zu haben.

dene Abmessungen

1–64

1–72

M2 × 0.4
für Schrauben. Je nach 3–48

3–56

M2.5 × 0.45

Anleitung wird das

4–40

4–48

M3 × 0.5
metrische oder imperi- 6–32

6–40

M3.5 × 0.6
ale System verwendet. 8–32

8–36

M4 × 0.7

Mit dieser Tabelle kön- 10–24 10–32 M5 × 0.8
nen Sie die Werte mit- 1⁄4–20

1⁄4–28 M6 × 1

GREIFZANGE
einander vergleichen

5⁄16–18 5⁄16–24 M8 × 1.25

Dank der Zange mit der feinen Spitze
und konvertieren.

3⁄8–16

3⁄8–24

M10 × 1.5
gelangen Sie auch an schwierige Stel-
len, in die Ihre Finger nicht ganz hinein-
passen wollen.

88

04 • 2017
magpi.de

WERKZEUG/3D-DRUCK

Feature

3D-DRUCK

Die neue Drucktechnik setzt Bastler-Träume in die Realität um

DATEN VORBEREITEN

DATEIEN DRUCKEN

In bestimmten Dingen unterschei-
kenntnisse in 3D-Software. Es gibt

Liegen Ihnen die finalen Dateien vor, geht es
den sich 3D- und 2D-Druck nicht:

viele kostenpflichtige Programme,
ans Ausdrucken. Sie könnten sich einen eigenen

In beiden Fällen müssen Sie die
aber auch die Open-Source-Vari-

3D-Drucker kaufen, etwa aus der Makerbot-Serie.

Dateien erst vorbereiten. Hat sich
ante Blender. Dazu finden Sie ein

Dann könnten Sie so viel drucken und herumpro-
diese Arbeit schon jemand anders
hervorragendes Tutorial für Ein-
bieren, wie Sie wollen, bis Sie das perfekte Modell
gemacht, umso besser! Oft können
steiger unter magpi.cc/2oxxWFA.

haben. Allerdings sind die Drucker sehr teuer und

Sie sich die gewünschten Dateien

Bedenken Sie dabei, dass fast alle
nicht gerade geräuscharm. Eine beliebte Alterna-
aus einem reichen Fundus passend

3D-Drucker von unten nach oben in
tive sind darum lokale Dienstleister für 3D-Drucke,
zu Ihrem Projekt herunterladen.

mehreren Schichten drucken. Beim
die Sie etwa auf der Seite 3DHubs.com finden. Dort-

3D-Dateien haben häufig Endun-

Gestalten der Modelle sollten Sie
hin schicken Sie Ihre Dateien. Oft erhalten Sie sogar
gen wie .stl oder .vrml. Eigene
dies in Anbetracht der Montage im

Empfehlungen zum Material. Nach Fertigstellung

Modelle zu erstellen erfordert Vor-

Kopf behalten.

holen Sie den Ausdruck entweder ab oder bekom-
men ihn per Post

Je einfacher das Design, desto
schneller geht der Druck vonstatten
zurück. Es gibt
inzwischen viele

Anbieter. Bei
gelegentlichen

3D-Drucken lie-
gen Sie so deut-
lich günstiger als
mit der Anschaf-
fung eines eige-
nen Geräts.

Der Ausdruck bei einem

Diensleister ist teils
günstiger als man denkt

DRUCK FINALISIEREN

Typisch für 3D-gedruckte Objekte
zen, um die Oberflächen zu glät-

Rechts Unser

3D-Gehäuse eines
ist die ziemlich raue Oberfläche,
ten. Das ist mit wenig Aufwand

Gameboy-Klons
die vom schichtweisen Auftra-
verbunden, bringt aber auch Nach-
aus MagPi 4/2017
gen des Plastiks herrührt. Durch
teile mit sich: So müssen Sie etwa

Unten Vorher
die Auswahl des Druckverfahrens
mit fiesen Chemikalien hantieren.

und nachher –
der per Aceton-
oder des Materials lässt sich die-

Übrigens: Runde Feilen hel-
dampf geglättete
ser Effekt etwas reduzieren. Doch
fen Ihnen beim Weiten von Bohr-

Druck sieht deut-
lich besser aus:

zumeist hilft in solchen Fällen
löchern für Schrauben und Co.

magpi.cc/2oxLj8R
nur der Feinschliff mit Sandpa-
pier und Feilen. Je nach Komplexi-
tät des Modells ist das ein aufwen-
diger Prozess. Alternativ können

Sie auch Weißleim auftragen, der
sich anschließend übermalen lässt.

Ein dritter Weg besteht darin, das

Werkstück Acetondampf auszuset-
magpi.de

04 • 2017

89

Feature

HOLZARBEITEN

Schreinern Sie gern? Diese Werkzeuge brauchen Sie für richtig coole Projekte ine voll ausgestattete

SCHLAGBOHRER

Werkstatt enthält viele

E

Brauchen Sie ein zusätzliches Loch?

unverzichtbare Tools. Wir

Dann ist der Bohrer Ihr bester
zeigen Ihnen hier ein paar wich-

Freund. Besorgen Sie sich eine reiche
tige Werkzeuge, die Sie neben den

Auswahl an Bohrköpfen für verschie-
bereits genannten Gerätschaften
dene Materialien und Stärken.

bei der Arbeit mit dem Rohstoff

Holz benötigen.

SCHRAUBSTOCK

Der Schraubstock darf an keiner

Werkbank fehlen. Er hilft Ihnen
dabei, Holz und andere Materialien
präzise zu schneiden. Es gibt prak-
tische Schraubstock-Modelle, die
etwa verhindern, dass Sie die Werk-
bank beschädigen.

MASSBAND & BLEISTIFT

Es mag offensichtlich sein und wird

SCHRAUBZWINGE
dennoch oft vergessen. Fangen Sie

Diese Helfer sind praktisch, um Werk-
gar nicht erst an, mit einem 15-Zen-
stücke an Ort und Stelle zu fixieren,
timeter-Lineal zu messen. Legen Sie
damit Sie einheitliche Löcher bohren
sich ein Maßband zu. Dann gilt: zwei-
können. Es empfiehlt sich, mehrere
mal messen, einmal schneiden.

Schraubzwingen zu besitzen.

ELEKTROWERKZEUG

Wollen Sie Ihre Schreinerfähigkeiten ausbauen? Dann sollten Sie sich einige Elektrowerkzeuge zulegen. Natürlich sollten Sie Ihre Kinder nie unbeaufsichtigt damit arbeiten lassen! Wir empfehlen Ihnen für den Anfang eine Schleifmaschine, um große Holzwerkstücke flott zu glätten, sowie eine Stichsäge. Diese hilft Ihnen dabei, selbst komplexe Formen in ein Stück Holz zu sägen. Die Metallplatte liegt dabei auf dem Werkstück auf. So gleitet das Gerät über das Holz, während Sie das Sägeblatt vorwärts-bewegen. Zeichnen Sie sich den Pfad am besten direkt auf das Holz.

Bei der Arbeit mit Holz besteht ein großes

SAFETY Verletzungsrisiko! Nutzen Sie im Umgang

!

mit elektrischen Werkzeugen immer eine

FIRST! Schutzbrille, Staubmaske und Handschuhe!

90

04 • 2017
magpi.de

HOLZARBEITEN

Feature

UMGANG MIT HOLZ

01. MESSEN & ZEICHNEN

03. LÖCHER FÜLLEN

Sie können nicht einfach in den Baumarkt marschie-

Bohrlöcher oder Scharten im Holz können Sie ganz
ren und blindlings MDF-Platten zersägen. Sie müssen
einfach mit ein wenig Holzleim auffüllen. Benutzen
sich jeden Schritt vorher überlegen. Also zeichnen Sie

Sie dabei so wenig wie möglich davon. Überstehende

Ihr Projekt auf Papier. Teilen Sie den Aufbau dabei in

Reste entfernen Sie mit einem Cutter und glätten die
seine Einzelteile auf. Messen Sie alles ab und basteln

Übergänge zum Holz anschließend mit ein wenig sehr

Sie zuvor einen Prototyp aus Papier oder Karton.

feinem Sandpapier.

02. LEIMEN

04. PROJEKT FINALISIEREN

Wenn Sie auf Nummer sicher gehen wollen und Ihr

Soll Ihr Projekt bei Wind und Wetter zum Einsatz

Modell später sowieso nicht mehr zerlegen möchten,
kommen, sollten Sie das Holz versiegeln oder lasie-
sollten Sie die Verbindungen von Bauteilen verleimen
ren. Benutzen Sie die Lacke aber nur in gut belüfteten

– auch zusätzlich zum Verschrauben. So überstehen

Räumen – und machen Sie diesen Schritt, bevor Sie

Schwachstellen selbst größere Belastungen.

elektronische Bauteile am Holz anbringen.

MAKERSPACES

Bastler ohne eigene Werkstatt können sich hier frei entfalten
akerspaces oder offene Werk-
ces auch Schulungen an. Sie fin-
stätten sind Orte, an denen

M
da viele der spezialisierten Geräte
sehr teuer sind und viel Platz brau-
den diese offenen Werkstätten

Menschen gemeinsam an Pro-
chen. Bei den Makerspaces zahlen
in allen Großstädten. Aber selbst
jekten arbeiten. Von Software über

Sie oftmals nur eine kleine monat-
in Städtchen wie Aschaffenburg

Schaltungen bis hin zu 3D-Drucken
liche Gebühr, um Zugang zu allen
oder Lörrach haben sich schon
oder gar Metallarbeiten ist hier alles

Werkzeugen zu erhalten. Oft treiben

Makerspaces etabliert. Einen
dabei. Jeder gute Makerspace bie-
sich dort auch kluge Leute herum,

Überblick gibt es hier:

tet den Bastlern dabei die nötigen
die Ihnen bei Problemen weiter-
wiki.hackerspaces.org/Germany

Werkzeuge an. Das ist praktisch,
helfen. Häufig bieten Makerspa-
bzw. /Austria oder /Switzerland.

abLab Berlin

Foto: F

Rechts Am besten
mit Makerspaces
versorgt sind
nach wie vor die

Großstädte. Hier
ein Blick ins

FabLab Berlin
magpi.de

04 • 2017

91

Zubehör TEST

Der ideale

Einstieg in
die IoT-Welt.

Diese Platine
bietet viel

Leistung für
wenig Geld

RAINBOW HAT

Perfekt, um Android Things auf dem Raspberry Pi kennenzulernen er ursprüngliche Projekt-einem Atmel-QT1070-Treiberchip

Was bei der Bestückung der Platine
name lautete „Brillo“. Des-
für kapazitive Berührungstasten,
ins Auge fällt, ist der Leuchtbogen:

D sen Aufgabe: als neues mehreren Breakout-Pins für Servo, Er setzt sich aus sieben besonders Betriebssystem das Internet der

I²C, SPI und UART sowie einem
lichtstarken, mehrfarbigen LEDs

Dinge (IoT) beflügeln. Treibende

Druck- und Temperatursensor.

zusammen. Dieser digitale „Regen-

Kraft hinter dem Projekt ist Goo-
bogen“ gibt der Platine übrigens

Tipp
gle. Der Suchmaschinenkonzern will

LED-Regenbogen
ihren Produktnamen.

mit dieser Android-Variante eine

Langeweile im privaten Elektronik -

Angesteuert werden die LEDs

ENVIRO

PHAT
einheitliche IoT-Plattform schaf-
labor kommt da sicherlich nicht auf,
über die SPI-Schnittstelle des Rasp-

Eine Platine im
fen. Davon profitiert auch der Pi 3,
zumal das alphanumerische Dis-
berry Pi; dabei handelt es sich um

Zero-Format
auf dem Android Things, so der neue
play das komplette Alphabet anzei-
ein synchrones Datenbus-System.

mit Sensoren

Name des Betriebssystems, dank
gen kann, inklusive der Zahlenreihe

Dieser Bus ist ebenfalls für kurze
für die Messung
von Tempera-

64-Bit-Prozessor problemlos läuft.

von 0 bis 9. Angesteuert werden die

Distanzen gedacht, so wie I2C, und
tur, Druck, Licht,

Ohne entsprechende Zusatzhard-
vier grünen 14-Segment-Anzeigen
kommt beispielsweise in Embed-

Bewegung
ware lässt sich mit Android Things
über den seriellen I2C-Datenbus des
ded-Systemen oder bei Sensoren
sowie Magnet-
feldern. Perfekt
auf einem Raspberry Pi jedoch recht

Rasp berry Pi.

zum Einsatz.

für kleine Wet-
wenig anfangen. Genau hier kommt

Mit diesem Datenbus eröffnen
terstationen.

Pimoroni mit der Erweiterungspla-
sich für Elektronikbastler viele

Sogar mit Alarm
tine Rainbow HAT ins Spiel.

Anwendungsgebiete im Verbund mit Der kleine Piezo-Summer auf der Das „Schweizer Messer“ im Pro-anderen Erweiterungsplatinen oder

Rainbow HAT wird per PWM an -
duktsortiment richtet sich expli-
zum Beispiel einem Arduino.

gesprochen. Die Pulsweitenmodu-
zit an experimentierfreudige Bast-

Die drei kapazitiven Taster mit
lation erlaubt es, den Ton in einem
ler, was leicht an der Bestückung
integrierter LED (Rot, Grün, Blau)

gewissen Rahmen zu variieren –
der Platine zu erkennen ist: Sie ist
werden über die GPIO angesprochen

Klangwunder sollte man aber nicht
ca. 20 €
mit verschiedenfarbigen LEDs aus-

– auch hier bleibt Ihnen überlassen,
erwarten. Für akustische Signale
bit.ly/2sJvGQV
gestattet, einem Piezo-Summer,
was Sie damit anstellen.

taugt er aber zweifellos.

92

04 • 2017
magpi.de

D

Projekt- und Beispieldateien
auf Heft-DVD

RAINBOW HAT Zubehör
bit.ly/2shfYLp
ca. 30 €

Android Things einrichten

Nachdem Sie die aktuelle Version von Android

Things OS geladen haben (auf DVD D oder unter
magpi.cc/2lWvvPg), transferieren Sie es auf eine
microSD-Karte. Sobald Sie den Raspberry Pi mit
dem OS booten, erscheinen einige Infos zur Netz-
werkverbindung auf dem Monitor. Wichtig: Ver-
binden Sie den RasPi per Ethernet-Kabel mit dem

Router. Sie können vorab leider kein WLAN ein-
richten! Dann installieren Sie Android Studio auf
einem Remote-Computer. Den Raspberry errei-
chen Sie per Terminal und adb-Tool aus dem SDK
heraus. Ihre Apps programmieren Sie in Android

Studio und übertragen diese dann auf den RasPi.

Vom I2C-Datenbus war schon
grammierung erfolgt per Remote-
die Rede. Seine Dienste sind wie-

PC und Java. Das setzt jedoch ent-
der gefragt, wenn man auf den
sprechende Kenntnisse voraus.

BMP280-Sensor zugreifen möchte:

Oder Sie importieren eines der

Er liefert nämlich sowohl Tempera-
vielen Beispielprojekte aus dem
tur- als auch Luftdruckdaten. Wenn

Android Things GitHub Repo-

Sie jetzt an einen Einsatz der Rain-
sitory (auf DVD D oder unter
bow-HAT-Platine als Wettersta-
github.com/androidthings). Für
tion denken, liegen Sie nicht falsch
den Einstieg empfehlen wir Ihnen

– es ist nur eine der vielen Verwen-
die kleine „sample-button app“. Sie
dungsmöglichkeiten dieser Platine.

sorgt dafür, dass die LED der kapazi-

Damit gelingt der Einstieg
in Android Things und das

Internet der Dinge

Was die Hardware angeht, sind noch
tiven A-Taste aufleuchtet, wenn sie
die 15 Breakout-Pins für Servo, I2C,
betätigt wird. Experimentieren Sie

SPI und UART erwähnenswert – sie
ruhig mit dem Code und ändern Sie
sind für den 3,3-Volt-Betrieb aus-
die GPIO-Pin-Nummern, um andere

Oben Android Studio hilft Ihnen beim Programmieren der Platine gelegt. Falls Sie einen Beschleu-Tasten und LEDs ins Spiel zu brin-
nigungsmesser oder ein Magne-
gen. Die Zuordnung der Nummern

Das Fazit
tometer vermissen – nein, dafür
verrät Ihnen pinout.xyz.

Die Rainbow-HAT-Platine bringt alles mit, um mit
war leider kein Platz mehr auf der

Wir empfehlen Ihnen die Rain-

Android Things oder unter Rasp bian in Python
ansonsten vollgestopften Platine.

bow-HAT-Seite von Pimoroni (bit.

eigene Programme zu entwickeln. Diese Pla-

Sicherlich fragen Sie sich, wie
ly/2shfYLp). Hier finden Sie wich-
tine taugt nicht nur für kleine IoT-Projekte, denn
man auf die vielen Funktionen der
tige Quellen, etwa die Python-API,
sie hat genügend Leistungs reserven. Allerdings

Platine zugreift. Eine Variante wäre
sowie weiterführende Infos und
erfordert sie weitergehende Kenntnisse.

Python. Wir haben es aber zuerst

Links. Die Dokumentation und Bei-
mit Android Things versucht (siehe
spiele in Python gibt es auf DVD D

Textkasten rechts oben). Die Pro-
oder unter goo.gl/kzvBZV.

magpi.de

04 • 2017

93

Zubehör TEST

Video-
mitschnitt in

HD für relativ
wenig Geld,
passend für
den Pi

PICAPTURE HD1

Preiswerte Framegrabber sind dünn gesät. Eine der wenigen Ausnahmen kommt von Lintest Systems. Wir haben die Karte für Sie getestet ie sind leistungsstark und

720p und 1080p. Beide Modelle
zen. Apropos: Die PiCapture HD1
kosten meist viel Geld: Die
der Karte (es gibt eine billigere
verträgt sich im Prinzip mit jedem

S Rede ist von Video-Cap- SD-1-Version) sind über die GPIO- Raspberry, der einen 40-poligen Tipp
ture-Karten, auch Framegrabber

Ports und den Kamera-Anschluss

GPIO-Port besitzt. Für den Pi Zero

FEBON100
genannt, mit denen sich Video-

(Camera Serial Interface, CSI) mit
gelten diese Spezifikationen aller-

UVC CVBS
signale digitalisieren und weiter-
dem Raspberry verbunden. Das
dings nicht, die Abmessungen der

Eine der weni-
verarbeiten lassen. Umso erfreu-
ist wichtig, denn der Vorteil der
beiden Platinen stimmt nicht hun-
gen Video-
licher ist es, dass es solche Karten

CSI-Schnittstelle gegenüber USB
dertprozentig überein.

Capture-Karten
mittlerweile auch für den Pi gibt,
ist die direkte Verbindung zum

Zur Praxis: Sobald die Zusatz-
auf USB-Basis
für den Rasp-
wie zum Beispiel die „PiCapture

Broadcom-BCM2835-Chip (SoC)

platine auf dem Raspberry Pi mon-
berry Pi. Aller-

HD1“ von Lintest Systems für ca.

und damit zum Videocore-Multi-
tiert und eingerichtet ist, dürfen
dings ohne

180 Euro (inklusive Versand). Mehr
media-Prozessor.

Sie loslegen und Videos aufzeich-
die nötige HD-

Unterstützung.

noch: Dieser günstige Framegrab-

Die Erweiterungskarte verhält
nen. Da dabei die CSI-Schnitt-
ber für den RasPi verspricht, auch
sich wie ein HAT, bezieht ihren
stelle des Raspberry Pi zum Ein-

HD-Signale zu verarbeiten.

Strom aus den GPIO-Ports und
satz kommt, können Sie direkt die

Als Input dienen digitale Signale
baut Verbindungen via I2C- oder

Camera-Module-Software einset-
via HDMI/DVI, analoge YPbPr-Sig-

UART-Schnittstelle auf. Da die
zen, um Videos mitzuschneiden.

nale, wie sie bei Component Video

GPIO-Pins auf der Platine durch-

Sie benötigen also kein separates
ca. 70 €
anfallen, sowie Farbvideosignale
kontaktiert sind, lassen sie sich

Programm – ein cleverer Schach-
magpi.cc/2moR0s8

(RGB) in den Auflösungen 480p,
weiterhin für andere Zwecke nut-
zug der Entwickler.

94

04 • 2017
magpi.de

PICAPTURE HD1

Zubehör
bit.ly/2rHGWNA
ca. 180 €

Oben Die Farben

Dies bedeutet zugleich, dass man
wirken etwas aus-
gewaschen und
die Videoschnittkarte zum Bei-
weichen auch ein
spiel auch in ambitioniertere Pro-
ganzes Stück vom

Originalfarbton ab
jekte mit Python einbinden kann.

Denkbar wäre es, ein Video mitzu-

Links Abhängig vom
schneiden und zeitgleich eine Vor-
jeweiligen Video
schau abzuspielen – auf dem Com-
kommt es in einigen

Bildbereichen zu
putermonitor oder dem Fernseher.

Problemen bei der

Man kann ebenso die beiden Kom-

Farbdarstellung
mandos raspistill (für Bilder) und
raspivid (für Videos) verwenden.

Allerdings zeigen sich dann
einige Fehler beziehungsweise

Limitierungen der PiCapture HD1:

die CSI-Schnittstelle nicht ausge-

Es zeigt aber, dass die Möglichkei-

Das Video läuft zwar flüssig und
legt. Das bedeutet, dass man den
ten der Karte beschränkt sind. Man
die Bilder erscheinen in der rich-

Ton auf andere Weise importieren
sollte nicht erwarten, perfekte
tigen Auflösung, doch bei Games
muss. Man landet also sehr schnell

Mitschnitte von Videos zu erstel-
len, auch wenn eine hochauflö-

Dieser Framegrabber nutzt die
sende HDMI-Quelle zur Verfügung
steht. Zudem muss man einige

CSI-Schnittstelle des Rasp-

Einschränkungen hinsichtlich der
berry Pi für das Video-Capture
maximal möglichen Bildwieder-
holfrequenz hinnehmen.

tauchen immer wieder Farbfehler
wieder bei einem Videoschnittpro-
auf. Sie sind zwar nicht gravierend,
gramm, wenn man beide Kompo-

Das Fazit
aber trotzdem sichtbar.

nenten – Video und Ton – zusam-

Noch ist das PiCapture HD1

Man könnte zwar zum Beispiel
menbringen möchte.

keine umfassende Lösung. Für
mit Videoschnittprogrammen die

Natürlich ist es ein wenig unfair,
einige Projekte ist es aber eine

Farben nachträglich korrigieren,
eine so preiswerte Lösung wie das
echte Alternative – auch der
das liefe aber dem ursprünglichen

PiCapture HD1 mit einem leis-
niedrigen Kosten wegen.

Zweck der preiswerten Karte ent-
tungsstarken Rechner zu verglei-
gegen. Und dann wäre da noch
chen, der mit professionellem
die Sache mit dem Ton: Dafür ist

Video-Equipment ausgestattet ist.

magpi.de

04 • 2017

95

Zubehör TEST

Ein toller

Bausatz für

Radiofans,
der auch für

Einsteiger
geeignet ist

PIRATE RADIO

PI ZERO W PROJECT KIT

Cooler Sound im modernen Look: Ein Radio-Kit für Elektronikbastler usikfans dürfen sich auf

Pimoroni, um die beiden wichtigs-
beispielsweise einige Steckerleis-
ein besonderes Hörerleb-
ten Bauteile zu nennen.

ten verlöten, um die pHAT-BEAT-

Tipp

M nis freuen: Pimoroni hat Das Gehäuse des Radios ist flott Platine und den Pi Zero W mitein-AMP ZERO
einen neuen Bausatz im Ange-
montiert, dazu gehören diverse
ander zu koppeln. Die Kabeladern

PHAT
bot, das „Pirate Radio“. Keine

Plastikteile, Abstandshalter sowie
des Lautsprechers werden auf dem

Die Firma Just-

Sorge, bei diesem Bastelprojekt
die Frontblende - eine gut bebil-
pHAT BEAT in die entsprechenden

Boom bietet ein
ist trotz des Namens alles legal.

derte Anleitung findet sich unter

Buchsen gesteckt – noch kurz die

Audioboard im

Pirate Radio fischt ausschließlich
magpi.cc/2o1i7d7. Die einzel-

Schrauben anziehen, fertig!

Pi-Zero-Format
an, das bis zu
im Internet – genau dort, wo sich
nen Teile sind akkurat per Laser

20 Watt Aus-

Tag und Nacht einige Zehntausend
geschnitten – es passt also alles

Streaming-Software
gangsleistung
kostenlose Musik- und Nachrich-
auf Anhieb zusammen.

Der neue Pi Zero W zeichnet sich
liefert. Der Ver-
stärker lässt
tensender tummeln.

Den mitgelieferten Lautsprecher
dadurch aus, dass WiFi bereits
sich per Infra-

Eines gleich vorweg: Die ver-

(5 Watt) befestigen Sie mit vier
ab Werk unterstützt wird. Einen
rot-Fernbedie-
wendeten elektronischen Kompo-

Kunststoffschrauben direkt auf der
entsprechenden USB-Adapter
nung steuern.

nenten sind qualitativ hochwer-

Frontblende. Das zweiadrige Kabel,
benötigt man also nicht – anders
tig. Deshalb ist das Radio-Kit auch
das den Lautsprecher mit dem
als noch beim Vorgängermodell.

der teuerste der vier neuen Pimo-

RasPi verbindet, ist praktischer-

Dadurch sieht das Radio nach
roni-Bausätze. Zum Lieferumfang
weise bereits verlötet.

dem Zusammenbau auch wesent-
gehört ein Pi Zero W. Das heißt,

Apropos Lötkolben: Ganz ohne
lich gefälliger aus.

WLAN und Bluetooth sind gleich
geht es nicht, schließlich ist das

Falls nötig: Dem Kit liegt ein
ca. 28 €
mit an Bord, ebenso die neue Auf-

Pirate-Radio-Kit für Elektronik-

USB-auf-microUSB-Adapter
magpi.cc/2lNJMKO
steckplatine „pHAT BEATs“ von
bastler gedacht. So müssen Sie
bei, ebenso wie ein separater

96

04 • 2017
magpi.de

PIRATE RADIO

Zubehör
bit.ly/2udc4Bt
ca. 47 €

Komplettpaket

In der kleinen

Kiste ist alles
drin, was Sie für
den Bau des

Pirate Radios
brauchen
pHAT BEAT

HDMI-Adapter. Das ist praktisch,
list editieren und die Webadres-

Passend zum Pi Zero W hat Pimoroni das Audio-
falls Sie keine passenden Kabel zu
sen Ihrer Lieblingsstationen hinzu-
board „pHAT BEAT“ (ca. 19 €) im Programm. Die

Hause in Ihrer Bastelkiste finden.

fügen. Ein Radio kommt natürlich
kleine Platine (65 x 30 x 7,5 mm) bietet einen

Das Betriebssystem lässt sich so
nie ohne Knöpfe aus – der einfa-
integrierten Verstärker (MAX98357A) mit Ste-
wahlweise per Monitor konfigu-
cheren Bedienung wegen. Die Tas-
reo-Ausgang. Per DIP-Switch wechseln Sie in den
rieren. Oder Sie wählen den Head-
ten für Lautstärke, Senderwahl und

Mono-Modus, die Betriebsart des Pirate Radios.

less-Mode und richten das Gerät

Pause befinden sich an der Seite der

Das Board besitzt sechs Drucktasten und zwei Rei-
per ssh und wpa_supplicant.conf

Aufsteckplatine, sprich des pHAT
hen mit RGB-LEDs – sie werden als VU-Meter ein-
ein (inklusive der Router-Daten).

BEAT. Die Lautstärke wird in Echt-
gesetzt. Die LEDs lassen sich individuell ansteuern.

Dazu präparieren Sie die microSD-
zeit per LED-Leiste angezeigt (eine

Dazu benötigen Sie die Python-Bibliothek der Pla-

Karte vor dem ersten Booten des

Art analoges VU-Meter). Und der
tine (auf Heft-DVD D bzw. magpi.cc/2otOwp6).

Ein wirklich hochwertiges

Radio-Kit, das Musikfans
beim Bau viel Spaß bereitet

Raspberry Pi entsprechend.

Sound des Radios? Er ist viel besser

Pimoroni hat sich natürlich auch
und lauter als gedacht.

um die dazugehörige Software

Was beim Testen jede Menge
gekümmert: Passend zum Radio-

Spaß bereitet hat, war das Air-

Das Fazit

Kit gibt es drei Projekte, die

Play-Speaker-Projekt. Dabei
auf der Internetseite des Hers-
strea men Sie Musik via iPhone

Trauen Sie sich: Das Pirate-Radio-Kit ist wirklich
tel-lers beschrieben werden, siehe
oder iPad auf das Pirate Radio.

leicht zu bauen – da passt alles. Sie müssen nur ein
dazu goo.gl/CvoYCH.

Wer anspruchsvolle Experimente
wenig Zeit in das Löten der Steckerleisten investie-

Beim ersten Projekt handelt es
mag, sollte den dritten Vorschlag
ren. Dafür bekommen Sie ein Radio, das sich sehen
sich um ein Internetradio, das auf
in die Tat umsetzen: das Spo-
und hören lassen kann. Schade nur, dass der musi-
dem VLC-Daemon basiert. Die
tify-Streaming-Projekt. Dabei
kalische Zwerg ausschließlich in Mono ertönt. Sein
benötigten Programmpakete wer-
kommt „Modipy“ zum Einsatz, ein
pHAT–BEAT-Audioboard könnte locker ein doppelt
den per Konsole installiert; ein ein-

MPD-Server, der Ihre Musik sowohl
so großes Stereo-Radio antreiben.

faches Kommando reicht dafür.

von lokalen Quellen als auch von

Praktisch: Sie können die Play-

Streaming-Diensten abspielt.

magpi.de

04 • 2017

97

Zubehör TEST: JUSTBOOM-FERNBEDIENUNG
bit.ly/2tMSSdE
ca. 30 €

Bestens
zur Bedie-
nung hoch-
wertiger

Audio-Setups
geeignet

JUSTBOOM

FERNBEDIENUNG

Kann die minimalistische Multimedia-Fernbedienung mit

Sechs-Achsen-Gyroskop auf ganzer Linie überzeugen?

ber die Wiimote gab es
sie leicht wieder zentrieren. Bei

Tasten fühlt man einen deutlichen
immer wieder Witze, sie

Kodi bewegte sich im Test jedoch

Klick. Sie besitzen außerdem eine

Ü würde wie eine TV-Fern- der Zeiger nur recht lahm über angenehme Größe, sodass man bedienung aussehen. Möglicher-den Bildschirm. Das zwang uns,
nicht so schnell die falsche Taste
weise haben dem JustBoom-Team
das Handgelenk stark abzubiegen,
erwischt. Wie erwähnt, funktio-
genau diese Witze als Inspiration
wollten wir bis in die Ecken gelan-
nieren die Tasten auf dem Rasp-

Tipp
gedient. Auch wenn die Fernbedie-
gen. Bei Windows-PCs und dem
berry-Pi-Desktop, was ziemlich
nung mit ihren paar Knöpfen recht

Raspberry Pi fiel uns die Navigation praktisch ist. Die OK-Taste erzeugt RII MINI I7
minimalistisch wirkt, beherbergt
auf dem Schirm leichter.

einen normalen Mausklick, die

Ähnelt der Just-

Boom, besitzt
sie doch ein sechs-Achsen-Gyros-

Als reine Multimedia-Fern-

Zurück- und Home-Tasten funkti-
aber mehr Funk-
kop, das eine Bewegungssteuerung
bedienung macht die JustBoom
onieren im Browser – das ist recht
tionen und kann
ermöglicht.

einen guten Job. Laut Hersteller
nützlich zum Navigieren.

auch als schnur-
lose PC-Maus

Die Funktion ist aber nicht
besitzt sie gerade so viele Knöpfe,
verwendet
immer aktiv. Sie wird durch Drü-
wie für den Medienkonsum not-
werden.

Das Fazit
cken des Knopfs in der Mitte der
wendig sind. Bei Kodi funktioniert

Lautstärke-Wippe ein- und aus-
das auch recht gut. Am meisten

Ordentliches Gerät mit einzig-
geschaltet. Dann emuliert sie
haben wir eine Play-/Pause-Taste
artiger Funktion. Eine Play-/
einen Mauszeiger, der den Dreh-
vermisst. Doch man kann sich

Pause-Taste fehlt, aber sonst
und Neigebewegungen des Users
durchaus daran gewöhnen, zwei-
funktioniert die Fernbedie-
auf dem Bildschirm folgt. Das
mal OK zu drücken, um die Wie-
nung gut.

funktioniert ziemlich gut. Wenn
dergabe zu pausieren.

ca. 23 €
man die Bewegungssteuerung aus-

Die Fertigungsqualität ist eben-
amzn.to/2rUy8PN
und wieder einschaltet, kann man
falls ordentlich: Beim Drücken der

98

04 • 2017
magpi.de

TEST: PAPIRUS ZERO MEDIUM

Zubehör
magpi.cc/2ou5KTh
ca. 37 €

Strom-
sparende

Display-
technik für

Pi-Zero-

Projekte

PAPIRUSnen, demonstriert „Buttons“. Auch

„Conway’s Game of Life“ und eine

ZERO MEDIUM Digitaluhr sind als Code-Beispiele
dabei. Beim Wechsel von Inhalten

Ein E-Paper-pHAT für den Raspberry Pi Zero
fällt eine gewisse Verzögerung auf;
mit einem „clear“-Befehl lässt sich
en „regulären“ PaPiRus
be-Pads auf das Board aufgeklebt
das Display zuvor löschen.

HAT in voller Baugröße
werden. Wir haben das Me dium-

Die PaPiRus-Python-Library

D haben wir uns bereits vor Display mit 2,0 Zoll Diagonale besitzt eine „write“-Funktion, längerer Zeit angesehen. Nun ist
und der Auflösung 200 × 96 Pixel
um Text-Strings auszugeben
der kleine Bruder an der Reihe,
getestet, es gibt aber auch eine
sowie deren Position und Größe
der speziell für den Pi Zero designt

Small-Variante mit 1,44 Zoll (128 ×
zu bestimmen. Wie man den Font

Tipp
wurde. Bei beiden Displays kommt

96 Pixel) sowie ein Multi-Screen-
wechseln kann, bleibt allerdings

E-Paper-Technik zum Einsatz, um

Pack mit beiden Größen.

unklar. Eine „draw“-Funktion

PAPIRUS

Texte und Bilder anzuzeigen, die

Ist der Schirm aufgebaut und
zeigt schwarz-weiße Bitmaps an.

HAT
auch ohne Stromzufuhr viele Tage
auf der GPIO-Leiste eines Pi Zero

Die meisten Bildtypen konvertiert

Der PaPiRus in
sichtbar bleiben. Damit lässt sich
montiert, installieren Sie die Soft-
die Software sogar automatisch.

voller Baugröße
bei mobilen Projekten Strom spa-
ware mit einem einzigen Termi-
besitzt ein bis zu

2,7 Zoll großes
ren, etwa bei einem smarten Tür-
nal-Kommando. Ein zweites Kom-

Das Fazit

Display. Auch
schild. Das Display bietet einen
mando ist erforderlich, um die
hier wird E-Pa-
hohen Kontrast und ist auch bei
richtige Auflösung einzustellen,

Der PaPiRus Zero bietet zwar
per-Technik
verwendet, um
hellem Sonnenlicht gut ablesbar.

dann kann es losgehen.

keinen schnellen Refresh,

Text und Bilder

Wie sein großer Bruder kommt

Einer der installierten Ordner
ist aber ideal als stromspa-
anzuzeigen.

der PaPiRus Zero in zwei Haupt-
enthält einige Code-Beispiele in
rende Anzeige geeignet. Das
teilen: dem pHAT-Board mit auf-

Python, etwa eine Temperatur-

E-Paper-Display lässt sich aus
jedem Winkel und selbst bei
gelöteter Buchsenleiste und der
anzeige, die den im pHAT einge-
wenig Licht gut ablesen und
äußerst dünnen Anzeige. Beim
bauten Temperatursensor LM75
besitzt eine ordentliche Pixel-

Zusammenbau muss das Flach-
ausliest. Die Verwendung der fünf
dichte von 110 ppi.

bandkabel des Displays in den
winzigen pHAT-Taster, die am

Anschluss an der Seite des pHAT
oberen Rand angebracht sind und
ab 50 €
geschoben und die Anzeige mit den
zum Umschalten der gewünschten
magpi.cc/2ouxPtz
mitgelieferten doppelseitigen Kle-

Information benutzt werden kön-
magpi.de

04 • 2017

99

Zubehör TEST PIDRIVE COMPUTE CENTRE
bit.ly/2rWzF7X
ca. 120 €

Voll
kompatible

Hard- und

Software

WD PIDRIVE

COMPUTE CENTRE

Komplettpaket: ein Pi-Kit mit Festplatte, Gehäuse und vielen Extras estern Digital bietet eine
sicher sitzt. Aufs Gehäuse kommt
macht es einfach, dem Raspberry

Reihe von PiDrive-Kits an.

ein magnetischer Deckel, der sich

Pi neue Betriebssysteme hinzu-

W Diese vereinen die Rasp - schnell abnehmen lässt, um Kom- zufügen. Dank des nun reichlich berry-Pi-microSD-Karte mit einer
ponenten an die GPIO-Leiste des Pi
vorhandenen Speicherplatzes gibt
größeren WD-Festplatte und ver-
anzuschließen.

es dabei keinerlei Probleme.

passen dem Pi damit ein aufge-

Wir haben neben Raspbian noch

Tipp
motztes Speichersystem.

Foundation Edition

Ubuntu Mate 16.04, OpenELEC und

STARTER-

Das WD PiDrive Compute Cen-

Natürlich wäre es einfach gewe-

RetroPie hinzugefügt. Bei jedem

KIT
tre besteht aus einem Raspberry
sen, ein Kit zu bauen, bei dem die

Betriebssystem war noch viel Platz

Wenn Sie ein

Pi 3 und einer WD Pi-Drive Foun-

Festplatte als externes Laufwerk an für Dateien übrig.

Raspberry-Pi-
dation Edition 375 GB. Hinzu
den Raspberry Pi angebunden wird.

Alles in allem eine tolle Sache:

Kit möchten,
kommen eine schnurlose Tasta-

Doch die Foundation-Edition-Soft-

Eine große Festplatte macht mehr
aber auf die
große Fest-
tur und Maus sowie ein Kunst-
ware macht das System richtig
aus dem Raspberry Pi. Darü-
platte verzich-
stoffgehäuse für Raspberry Pi und
rund. WD hat sich nämlich die Zeit
ber hinaus steckt das Ganze auch
ten können,

WD-Festplatte.

genommen, eine angepasste Ver-
noch in einem richtig hübschen
sehen Sie sich
doch einmal

Der Zusammenbau gestaltet sich
sion von Noobs zu entwickeln, die

Mini-Desktop-Gehäuse.

das offizielle
einfach: Schrauben Sie das Rasp-
direkt auf der Festplatte läuft.

Starter-Kit an.

berry-Pi-Board an den Boden des

Sie wählen bei der Installation

Gehäuses und die Festplatte dane-

SDA1 und werden dann durch die

Das Fazit
ben. Raspberry Pi sowie Fest-

Installation von Raspbian mit Pixel

Ein sehr gelungenes Kit, das
platte werden über ein gegabel-
geführt. Ab diesem Moment läuft
aus dem Raspberry Pi quasi
tes USB-Kabel mit Strom versorgt.

Raspbian auf der 375 GByte großen
einen Mini-Desktop-PC mit

Netzteil und sämtliche Kabel gehö-

Festplatte. Außerdem hat WD eine

Festplatte macht.

ren zum Lieferumfang.

eigene Edition von BerryBoot ent-
ca. 125 €

Das Gehäuse besitzt Ausspa-
wickelt (magpi.cc/2ns5lnA). Das
bit.ly/2sRh6Gt
rungen, in denen die Festplatte

Bootauswahlmenü von BerryBoot

100

04 • 2017
magpi.de

TEST: SPEAKER PHAT

Zubehör
bit.ly/2srFsV3
ca. 14 €

Bringen Sie

Ihren Pi zum

Klingen

SPEAKER PHAT

Ein winziges Lautsprecher-Board bringt Sound für Ihre Projekte er neueste pHAT von Pimo-extra. Man kann ihn aber auch für
zum Standard-Audiogerät macht.

roni mag nicht besonders
ein tragbares Retro-Game oder

Ein Neustart kann aber noch nötig

D fett klingen, verschafft mit einem Mikro für einen selbst sein. Wir haben es mit aplay und Ihren Projekten aber auf einfache
gebauten Sprachassistenten auf
mplayer auf der Kommandozeile

Weise Audio. Das Board in Zero-

Basis von Amazon Alexa nutzen.

versucht sowie mit Sonic Pi und

Größe enthält einen Mini-Laut-
sprecher, einen I2S-DAC und

Verschafft Ihren Projekten auf
einen Monoverstärker. Besonders
gut gefällt uns das Artwork auf

Tipp
einfache Weise etwas Sound
der Oberseite im Stil eines

MINI POR-

80er-Jahre-Ghetto blasters.

Der Speaker pHAT wird als Kit

YouTube im Webbrowser Chro-

TABLE

Der 8Ω-Lautsprecher besitzt nur
geliefert und ist in rund 30 Minu-
mium. Wer die LEDs manuell steu-

SPEAKER

2 Watt Leistung und klingt damit
ten zusammengebaut. Zunächst
ern möchte, kann dies mit einer

Dieser Lautspre-
eher nach blechernem Transistor-
schrauben Sie den Lautsprecher
eigenen Bibliothek tun.

cher mit Strom-
radio als nach Ghettoblaster – im
mit winzigen Distanzbuchsen an
versorgung per

USB hat ordent-

Bassbereich hat er kaum etwas zu
die Rückseite des Boards, was etwas

Das Fazit
lich Wumms.

bieten. Damit stellt er keine Kon-
fummelig ist. Dann löten Sie die

Audio erhält er
kurrenz für hochwertige Audio-

Anschlüsse des Lautsprechers an

Der Speaker pHAT wendet sich
von dem Aus-
nicht an Audiophile, sondern
gang eines Pi

Add- ons wie IQaudIO oder Just-
die Kontakte des Boards. Am bes-

(nicht vom Zero).

Boom dar. Aber dafür ist Speaker
ten benutzen Sie dazu eine Pin-
bietet rudimentären Klang mit
wenig Leistung. Mit dem win-
pHAT ja auch nicht gemacht. Er soll
zette, da die mitgelieferten blanken
zigen Zero-Board, das keine
nur bei entsprechenden Projek-

Drähtchen beim Löten heiß werden.

externe Stromversorgung
ten Benachrichtigungsklänge oder

Danach müssen Sie nur noch die
benötigt, verschaffen Sie Ihren

Sprachmeldungen ausgeben. Für

40-polige Buchsenleiste einlöten,

Projekten dennoch auf einfa-
das digitale Furzkissen aus der letz-
schon ist der pHAT einsatzbereit.

che Weise Audiofähigkeit.

ten Ausgabe (MagPi 03/2017) etwa

Die Software-Installation
ca. 15 €
wäre er optimal, denn so bräuchte
beschränkt sich auf einen einzi-
magpi.cc/2diQyHq
man keinen Aktivlautsprecher
gen Terminal-Befehl, der den pHAT
magpi.de

04 • 2017

101

Zubehör TEST

Rechts Der Cluster HAT sitzt auf
einem Raspberry Pi 2/3-Board

Ideal zum

Testen oder

Simulieren
von kleineren

Clustern

CLUSTERHAT

Bauen Sie aus einem Raspberry Pi und vier Pi Zeros einen Cluster in Computer- Cluster
lassen. All diese Schwierigkeiten
günstigsten Cluster auf dem Markt.

gehört zu den eindrucks-
muss man meistern, bevor man

Das ist ideal für alle, die sich für

E vollsten Rasp berry-
überhaupt anfangen kann zu ler-

Cluster-Computing interessieren.

Pi-Projekten. Und die Program-
nen, wie man Computer verwaltet,
mierung von Clustern zählt zu
die vernetzt laufen.

Einrichtung

Tipp
den meistgesuchten Fähigkeiten

Die Einrichtung der Cluster-HAT-
in der Big-Data-Welt. Ein Clus-

Günstige Lösung

Hardware gestaltete sich ganz ein-

PICO 5
ter besteht aus einer Reihe mit-

Der Cluster HAT macht die Erstel-
fach: Wir haben die vier Abstands-

STARTER
einander vernetzter Computer,
lung eines Clusters günstig und
halter auf einen Raspberry Pi 3

KIT
die als ein System angesprochen
einfach. Diese niedrige Einstiegs-
geschraubt, das mitgelieferte

Pico Cluster
werden. Jeder Computer (oder
hürde erleichtert das Erlernen von

USB-Kabel angesteckt und den
führt eine Reihe
an Cluster-Kits

„node“) arbeitet an derselben Auf-

Cluster-Computing-Techniken

HAT befestigt (das Kabel muss
für verschie-
gabe und wird dabei von einem
ungemein. Der HAT sitzt dabei auf
dabei zwischen Board und HAT
dene Boards

Steuerrechner überwacht.

einem Raspberry Pi 2/3. Sie stecken verlaufen). Danach mussten (auch für Raspberry Pi). Sie

Zu lernen, wie man solche Clus-
vier Pi Zeros über USB-Buchsen
wir nur noch das USB- Kabel am
verwenden
ter von Rechnern verwaltet und
in den HAT. Ein USB-Kabel vom

HAT anschließen und die vier Pi

Ethernet-Netze
einsetzt, ist äußerst nützlich. Tra-

Raspberry Pi zum HAT versorgt

Zeros in die Buchsen stecken. Der
sowie Rasp-
berry-Pi-2-/3-
ditionell war Cluster-Computing
die vier Pi Zero-Boards mit Strom.

gesamte Aufbau war in weniger als

Boards, sind
allerdings immer ein aufwendi-

Das Board selbst wird direkt über
fünf Minuten erledigt.

aber teurer.

ges und teures Unterfangen. Man

GPIO-Pins gesteuert.

Ebenfalls klasse: Eine spezielle
benötigt nämlich viele – am bes-

Sie benötigen eine microSD-

Seite (magpi.cc/2jHMeQq) bietet
ten identische – Rechner und einen Karte für jeden Pi Zero und eine für Image-Dateien für den Con troller

Netzwerk-Controller sowie die
den steuernden Raspberry Pi – ins-

(einen Pi 2 oder 3) sowie je eine

Kenntnisse, um diese miteinan-
gesamt also fünf Karten. Wir haben

Image-Datei für jeden Pi Zero. Die
der zu vernetzen. Darüber hinaus
die Kosten für Raspberry Pi, Cluster
für Cluster HAT angepasste Version
spielen auch die Stromkosten eine

HAT, vier Pi Zeros und vier offizielle von Raspbian bootet auf die Kom-Rolle: Diese können steil anstei-
microSD-Karten zusammengerech-
mandozeile, bietet aber ein Skript
ab ca. 250 €
gen, wenn Sie etliche Computer in
net und kommen so auf rund 130
zur Kontrolle des Clusters. Dies
magpi.cc/2kAcJLG

Standardgröße als Cluster laufen

Euro. Das ergibt den mit Abstand
sieht zum Beispiel so aus:

102

04 • 2017
magpi.de

CLUSTER HAT

Zubehör
bit.ly/2sSzpc4
ca. 34 €
clusterhat on all

Benchmark (magpi.cc/2jKpH5C)

hen, benötigen Sie Kenntnisse in

Oben links Die

USB-Buchsen des
und fand heraus, dass der Clus-

Python, Java, SQL (und bezüglich

Cluster HAT bieten

Dieser Kommandozeilenbefehl
ter aus vier Pi Zeros auf die halbe
relationaler Datenbanken). Außer-
vier Pi-Zero-Boards

Anschluss
schaltet alle vier Pi Zeros ein. Mit

Geschwindigkeit eines Raspberry
dem benötigen Sie ein gutes Ver-
p1-4 können Sie sie aber auch

Pi 3 alleine kommt.

ständnis der Linux-Kommando-
separat kontrollieren. Etwa so:

Dieses Ergebnis lässt sich logisch zeile. Zum Glück sind Anfänger Oben rechts Das

Raspberry-Pi-3-
erklären, wie Nick ausführt: „Das
nicht allein. Es gibt ein recht akti-

Board ist das ein-
clusterhat p2 off
liegt zum Teil an den schnelleren
ves Cluster-HAT-Board bei Google
zige Gerät, das
clusterhat p2 on

Ethernet verwen-

Einzelkernen des Pi 3. Aber auch

Groups (magpi.cc/2jHYqk6). Dort
det. Die Pi-Zero-
die Node-zu-Node-Kommunika-
werden von der Community viele

Boards werden per

Ethernet-over-USB

Es dauert ein wenig, bis jeder Pi
tion ist beim Pi 3 viel schneller als

Ressourcen und Projekte geteilt.

angesprochen

Zero hochgefahren ist und seine
bei der Kommunikation zwischen

Zudem gibt es ein lesenswertes

Software geladen hat, doch dann
einzelnen Zeros über Ethernet-
englischsprachiges Buch mit dem
erscheint er in ifconfig.

over-USB.“ Sie bauen also keinen

Titel „Raspberry Pi Super Clus-

Greifen Sie per SSH (standard-
schnelleren Raspberry Pi. Aller-
ter“ (ca. 29 €) von Andrew K. Den-
mäßig aktiv) auf die nodes zu:

dings spielt das auch keine Rolle.

nis (amzn.to/2sY9GSe).

Hier geht es vor allem um einen

Wir finden, dass der Cluster
ssh pi@p1.local
kostengünstigen Cluster, der sich

HAT eine tolle Möglichkeit bietet,
leicht zusammenbauen lässt und
sich mit Distributed Computing

Hier können Sie ifconfig verwen-
mit dem man etwas lernen kann.

zu beschäftigen. Er ist kompakt,
den, um die IP-Adresse herauszu-

Ist der Cluster aufgebaut, kön-
preisgünstig und leicht einzurich-
finden, die Cluster HAT einem der
nen Sie mit den Konzepten von
ten. Um Cluster-Computing zu ler-

Pi Zeros zugewiesen hat.

Cluster-Computing experimentie-
nen, muss man viele Hürden meis-
ren. Der Cluster HAT ist dabei ideal tern. Cluster HAT nimmt Ihnen Experimentieren
zum Unterrichten, Lernen oder
dabei die Last eines teuren und

Natürlich ist dieses Setup von

Entwickeln von Ideen für das Clus-
schwierigen Hardware-Setups ab.

einem Supercomputer weit ent-
ter-Computing.

fernt. Auf climbers.net gibt es

Wir glauben, dass das System

Das Fazit

Benchmarks von Nick Smith
sogar für Profis interessant sein

(magpi.cc/2jKlq23). Nick ver-
kann, die nicht ständig Zugriff auf

Eine kompakte und kosten-
wendete iperf, um die Ether-
größere Cluster haben. Sie können
günstige Lösung für den Bau
net-over-USB-Verbindung zu
auf dem Cluster HAT Code ausfüh-
eines Clusters. Das Ergebnis
testen, und stellte fest, dass sie
ren und testen und ihn dann auf
hat vielleicht wenig Rechen-
ähnlich schnell ist wie Ether-
ein größeres System migrieren.

leistung, ist aber perfekt zum

Lernen und Lehren von Distri-
net. Die Pi Zeros sind im Vergleich
buted-Computing-Konzepten.

zum Raspberry Pi 2/3 aber deut-

Distributed Computing
lich langsamer. Nick vermaß das

Cluster-Computing ist nichts

System mit dem HPC-Challenge-
für Anfänger. Realistisch gese-
magpi.de

04 • 2017

103

Zum Schluss BÜCHER

LINUX: KURZ & GUT

ENTDECKER & (3. AUFLAGE)

ABENTEURER

Autor: Daniel J Barrett

Verlag: O‘Reilly
hier problemlos mit den

Preis: € 12,90

In fast allen Büchern rund um den Pi finden

Standardbefehlen arbeiten.

ISBN: 978-3-96009-034-2

Sie Projekte zum Nachbauen. Doch das ewig

Die Befehle sind nicht

Info: bit.ly/2toAFUg
gleiche Media Center oder die Lichtsteuerung
alphabetisch sortiert, son-
werden schnell langweilig. Hier stellen wir
dern in Themenbereiche

Ihnen Bücher zu etwas ungewöhnlicheren

Das kleine Büchlein
gegliedert wie „Grundle-

Projekten vor, als Inspirationsquelle oder um
ist ein ungemein
gende Dateioperationen“,
einfach mal etwas anderes auszuprobieren.

praktisches Nach-

„Festplatten und Dateisys-
schlagewerk für die
teme“, „E-Mail“ oder „Netz-
wichtigsten Stan-
werkverbindungen“. Falls Sie
dardbefehle und ihre Variati-
hin und wieder auf der Suche

DROHNEN SELBER
onen für die Kommandozeile unter
nach einem bestimmten Befehl

BAUEN & TUNEN

Linux allgemein und damit auch
sind, den Sie zwar kennen, aber
unter Raspbian. Die Befehle wer-
nicht wissen, wie er angewendet

Autor: Patrick Leiner
den mit Anwendungsbeispielen
wird, schlagen Sie das Glossar auf

Verlag: Franzis
vorgestellt. Auf ihre Besonderhei-
und finden ihn dort über die

Preis: € 29,95

ISBN: 978-3-645-60444-4
ten – sofern vorhanden – wird
alphabetische Schlagwortliste.

Info: bit.ly/2omuxJq
ebenfalls hingewiesen. Das Buch

Dieser praktische, handliche
erhebt nicht den Anspruch, eine

Begleiter ist nicht zufällig bereits
umfassende Referenz zu sein: Spe-
in der dritten Auflage erhältlich.

zialfälle, wie etwa die Anwendung

Auch wenn der Raspberry Pi in diesem Buch gar
des Befehls zypper statt apt, wer-
nicht vorkommt – in diesem Fall machen wir gerne
den nicht erwähnt, aber das ist

Fazit
eine Ausnahme. Denn hier lernen Sie, wie Sie
unter Raspbian unerheblich, da Sie
selbst eine Drohne bauen – und das ist auch ohne

Pi richtig klasse. Ob Quadrocopter, Hexacopter
oder sogar einen Octocopter: Eignen Sie sich die

Grund lagen an und bauen Sie Schritt für Schritt

RASPBERRY PI MIT

Ihre eigene Flugdrohne, die Sie später dann auch
für Ihre Pi-Projekte verwenden können.

WINDOWS 10 IOT UND C#

Autoren: Sönke Cordts,

Maren Nasutta
kennen. Das Buch ist

Verlag: mana Buch
danach in sechs große The-

PLAYMOBIL FÜR

Preis: € 19,95
menbereiche gegliedert:

ISBN: 978-3944330556

ECHTE JUNGS

Strom und Spannung, Digi-

Info: bit.ly/2sLMC8V
talsensoren, Bussysteme,

Autor: Wilfried Klaas

Analogsensoren, Datenspei-

Verlag: Franzis

Das Arbeiten mit
cherung und Konnektivität.

Preis: € 24,95

Windows IoT und

Schade, ein oder zwei durch-

ISBN: 978-3-645-65331-2

Info: bit.ly/2pRa53B
dem Raspberry Pi ist
exerzierte IoT-Projekte wären
alles andere als banal oder
das Sahnehäubchen gewesen.

intuitiv. Dieses Buch bietet sich als

Aber diese findet man auch bei

Begleiter für Ihre Projekte an. Es

Microsoft selbst. Den Autoren ist
vermittelt übersichtlich die nöti-
übrigens der Austausch mit den

Sie haben noch jede Menge Playmobil auf dem
gen Hintergrundinformationen

Lesern sehr wichtig: Sie wünschen

Dachboden? Dann haben wir genau das Richtige
für Sie. Wie wäre es mit einer kleinen Polizeistation
und eignet sich daher gut als
sich ausdrücklich, dass die Leser
mit Überwachungskameras, Außenbeleuchtung,

Nachschlagewerk. Eine kleine Ein-
sich bei Hinweisen oder Anregun-
automatischem Türsystem für die Zellen, Gebäu-
führung zum Rasp berry Pi holt
gen zum Inhalt unter der im Buch
deüberwachung und mehr? Wer Spaß an Modell-
selbst Leser ab, die sich bislang
angegebenen E-Mail-Adresse bei
aufbauten hat, kommt mit diesem Buch voll auf
noch nie mit dem Minirechner
ihnen melden.

seine Kosten. Achtung: Für die Projekte wird unter
befasst haben. Anschließend pro-
anderem ein Arduino benötigt.

grammieren Sie eine erste App in

Visual Basic und lernen so neben-

Fazit
bei wichtige Aspekte der Software

104

04 • 2017
magpi.de

EMPFEHLUNGEN

Zum Schluss

PYTHON CRASHKURS

DOWNLOADS

Die RasPi Foundation veröffentlicht regel

Autor: Eric Matthes
mäßig tolle Sonderhefte, die Sie gratis herun

Verlag: dpunkt

Software zu installieren.

terladen können – allerdings nur auf Englisch.

Preis: € 32,90

Das erspart viel Suchen

ISBN: 978-3-86490-444-8
und damit Frust, gerade

Info: bit.ly/2rMBqcy
am Anfang. Entspre-

ESSENTIALS:

Fast 600 Seiten
chend wurden auch die

CODE MUSIC WITH
umfasst diese Ein-

Textelemente des Codes

SONIC PI
führung in das Pro-
nicht übersetzt. Für das
grammieren mit

Lernen durch direkte

Autor: MagPi-Team

Python. Schritt für

Umsetzung der Beispiele

Herausgeber: Raspberry Pi

Schritt wird hier
ist das jedoch unerheblich.

Foundation

Preis: kostenlos (als

Programmier-Einsteigern erklärt,

Anhand von drei großen Blöcken,

PDF-Download)

was sie benötigen und wie sie vor-

(dem Spiel „Alien Invasion“,

Info: raspberrypi.org/magpi
gehen müssen. Dabei wird auch auf Datenvisualisierung und Weban-unterschiedliche Plattformen ein-
wendungen), wird Ihnen ausführ-
gegangen. Die deutsche Ausgabe
lich beigebracht, was Sie für die

Eine umfassende Einführung in Sonic Pi mit vie-
len praktischen Beispielen, die auch Anfängern
dieses Handbuchs hat jedoch leider

Projekte brauchen. Im Anhang
gleich ein Erfolgserlebnis bringen. Mit etwas
gleich im ersten Kapitel ihre
werden wichtige Punkte zur Instal-

Übung werden Sie bald selbst in einer Live-

Tücken. Denn die wichtigen ersten
lation und Hilfestellung noch ein-

Performance eigene Beats, Bässe und Leads
erklingen lassen.

Arbeitsschritte wurden nicht mit
mal zusammengefasst. Hinzu
den deutschen Versionen der Tools
kommt ein Stichwortverzeichnis.

– wie etwa Geany – nachvollzogen.

ESSENTIALS:

Um den Abläufen folgen zu kön-

CONQUER THE
nen, empfiehlt es sich deshalb, die

Fazit
englische Version der erwähnten

COMMAND LINE

Autor: MagPi-Team

FRANZIS MAKER KIT

Herausgeber: Raspberry Pi

Foundation

INTERNET OF THINGS

Preis: kostenlos (als

PDF-Download)

Info: raspberrypi.org/magpi

Autor: Fabian Kainka

Verlag: Franzis

Boards liegt

Die Kommandozeile ist ein mächtiges Tool: Mit

Preis: € 79,95
jedoch vor allem
den richtigen Befehlen können Sie in Sekunden

ISBN: 978-3-645-65316-9
im geringeren

Dinge erledigen, die in grafischen Interfaces

Info: bit.ly/2sUyPx4
viele Klick benötigen. Dieses Handbuch ist ein

Stromverbrauch.

kleiner Leitfaden zur Bash und den vielfältigen

Bei diesem span-

Aufgaben, die Sie damit erledigen können.

Das Franzis Maker Kit
nenden Maker-Kit
umfasst einen kom-
wirft man also
pletten Bausatz mit
einen Blick über

RASPBERRY PI

22 Bauteilen wie verschiedenen
den Tellerrand des

PROJECTS BOOK

Widerständen, einem LC-Display

Raspberry Pi. Dafür erhält man die

VOLUME 2
und einem Potenziometer. Kern-

Chance, schnell in die Welt des
stück ist ein Pretzel-Board (im

„Internet of Things“ einzutau-

Autor: MagPi-Team

Herausgeber: Raspberry Pi

Bausatz enthalten). Dieses vielsei-
chen. Grundkenntnisse zu Arduino

Foundation
tige IoT-WLAN-Board stellt eine
sind kein Muss, aber sehr hilfreich,

Preis: kostenlos (als

Kombination aus Arduino Nano
wenn man an einer Stelle mal

PDF-Download)

und einem WLAN-Modul des Typs
nicht weiterkommt. Viele weiter-

Info: raspberrypi.org/magpi

ESP8266 dar. Dazu gibt es ein aus-
führende Informationen und auch
führliches Handbuch mit mehr als

Projekte findet man auf der Web-

20 Projekten. Ein Raspberry Pi ist
seite des Autors (iot.fkainka.de).

Das „Projects Book“ ist eine Sammlung der bes-
ten Projekte, Tutorials und Zubehörtests, die in
für die Projekte nicht notwendig.

der englischen MagPi 2016 erschienen sind. Darü-

Ähnliche Projekte wurden zwar
ber hinaus ist ein kurzes Einführungskapitel zur
auch schon mit dem Pi durchge-

Fazit

Inbetriebnahme des Raspberry Pi enthalten.

führt, der Vorteil des Pretzel-
magpi.de

04• 2017

105

Zum Schluss COMMUNITY

COMMUNITY-

PORTRÄT

BEN

CROSTON

Ben Croston Sie verwenden Python, um auf die GPIO-Pins
zuzugreifen? Diese Möglichkeit verdanken

Profession: Maker

Sie Ben: Er entwickelte die RPi.GPIO-Library

Beruf: Brauereibesitzer

Website: twitter.com/
ein Herz schlägt für kniff-
how optimiert er den komplexen

CrostonBen

S lige Eigenbauprojekte – Brauprozess: „Bierbrauen ist eine schon sein ganzes Leben

Wissenschaft für sich. Es erfor-
lang. Als noch niemand den
dert ein hohes Maß an Akribie,

Begriff kannte, entwickelte Ben
um das gleiche Bier immer wieder
bereits sein erstes Home-Auto-
zu erhalten“, betont Ben. Welche
mation-Projekt, damals noch als

Rolle der Raspberry Pi dabei spielt

Schüler. Ende 1980 folgte dann

– nun, dazu gleich.

die ultimative Herausforderung:

Die Frage, die sich ihm stellte,
der Bau eines eigenen Roboters.

lautete: Auf welche Weise kann

Das Programmieren brachte er
moderne Computertechnik beim
sich selbst bei, inspiriert durch

Brauprozess helfen? Schnell kam
den BBC Micro, einen auf dem
der Raspberry Pi ins Spiel: Er

6502-Prozessor (2 MHz) basie-
kontrolliert die Temperatur, ein
renden Heimcomputer der briti-
wesentlicher Faktor, der darüber
schen Firma Acorn.

entscheidet, ob das Bier gelingt.

Doch zurück zum Hier und Jetzt:

Ben entwickelte dafür ein

Ben Croston hat eine große Lei-

Web-Interface, sodass sich per
denschaft – er braut sein eigenes

Remote Access die Temperatur

Bier. Nach seinem Weggang von
des Brausystems aus der Ferne

British Aerospace – er beschäf-
überwachen lässt. Gemessen wird
tigte sich dort mit Datenanalyse
mit einem DS18B20-Sensor.

und Simulationssystemen–,

Seine Ursprungsidee war, die
machte er aus seinem Hobby

RPi.GPIO-Bibliothek nur dazu zu
einen Beruf: Er verdient sein Geld
nutzen, die elektrische Heizung
jetzt als professioneller Bier-
und die Motoren über Sensoren
brauer. Mit seinem über die vie-
zu kontrollieren und zu steuern.

len Jahre gesammelten Know-

Mittlerweile sind weitere Funk-

106

04 • 2017
magpi.de

BEN CROSTON

Zum Schluss
tionen hinzugekommen. Ben
ahnte, wie sehr seine Bibliothek
plant, zusätzliche RasPis in seine
die Softwareentwickler und Rasp-

Brauanlage einzubinden, wozu
berry-Enthusiasten auf der gan-
auch der Fermenter gehört.

zen Welt inspirieren würde, fragen

Während des Fermentations-
wir ihn im Interview. Seine klare
vorgangs, der je nach Biersorte

Antwort darauf: „Nein!“
rund eine Woche dauert, wird die

Das habe niemand vorherge-

Temperatur fortlaufend und sehr
sehen, meint er und wirft einen
penibel per Software überwacht.

Blick in die Zukunft: „Der Rasp -

Wenn nötig, greift das Kontroll-
berry Pi ist eine Erfolgsgeschichte.

Ben setzt sich aktiv dafür
ein, dass Schüler das

Programmieren erlernen
system ein und regelt nach. Nur

Wir werden noch viele spannende
so lässt sich ein Bier von gleich-

Dinge sehen, die auf dem Pi basie-
bleibender Qualität herstellen.

ren, ich freue mich darauf.“

Mit seiner RPi.GPIO-Library

Dafür engagiert er sich: In den
hat Ben eine rasante Entwick-

Schulen rührt Ben die Werbe-
lung in Gang gesetzt, die immer
trommel und fordert Schüler auf,
neue Raspberry-Projekte hervor-

Coden zu lernen und sich mit

Brauhaus Ben pumpt das Bier während des Brauens in einen
speziellen Tank. Dort läuft es durch einen Wärmetauscher
bringt. Ob er damals ansatzweise

Computern zu beschäftigen.

HIGHLIGHTS

DAS PI-PARTYBIER

Alle Besucher freuen sich darauf: Jedes Jahr braut

Ben für die große Raspberry-Pi-Geburtstagsparty
eine spezielle Biersorte. Der Name: „Irration Ale“. Es
ist nicht nur beliebt, weil es schmeckt, sondern auch,
weil es als Freibier ausgeschenkt wird. Erheben wir
unsere Gläser also auf den Raspberry Pi!

magpi.cc/2n14qaw

RPI.GPIO

Diese überaus nützliche Python-Bibliothek ist
sozusagen der Geburtshelfer für Hunderttausende
von Raspberry-Projekten auf der ganzen Welt. In
der aktuellen Version von Raspbian ist die Bib-
liothek bereits vorinstalliert. Sie wird immer dann
verwendet, wenn Sie mit einem Programm auf die

GPIO-Pins des Raspberry zugreifen.

FRÜHE EXPERIMENTE

Hardware ist sein liebstes Spielzeug: Hier links im Bild
sehen wir Ben mit seiner Urversion eines Hausautomati-
onssystems, das auf der PC-Technologie der 90er-Jahre
basiert. Es steuert diverse Steckdosen und Datenleitun-

Ben präsentiert sein erstes GPIO-Projekt: ein Home-
gen an – für damalige Verhältnisse ambitioniert!

Automation-System. Mehr als 20 Jahre ist das jetzt her
magpi.de

04 • 2017

107

Zum Schluss FEATURE

BRANDEN CHRISTENSEN

Branden ist der Direktor des Raspberry-

Shake-Projekts und gleichzeitig CEO
von OSOP. Er ist ausgebildeter Seismo-
loge und erforscht weltweit Erdbeben
und Vulkane.

Helfen Sie beim weltweiten Beobachtungsprojekt mit: Stellen Sie die Messdaten des Raspberry-Shake-Seismografen ins Netz

RASPBERRY SHAKE

Erdbebenmessung für jedermann – ein Seismograf für den kleinen Geldbeutel ach jedem schweren Erd

Software sowie die dazugehörige
tionen visualisiert, die das Geofon
beben ist es eine traurige

Hardware entwickelt.

liefert. Die Software ist ein Open

N Gewissheit: Wieder ein

Mit dem erfolgreichen Kick

SourceProjekt des USGS Alaska
mal sind viele Menschen gestorben,
starterProjekt, das OSOP initi

Volcano Observatory.

Dörfer und Städte wurden großfläiert hat, können nun weltweit alle Die Preise für das Kit hängen von
chig in Trümmerhalden verwandelt.

RaspberryPiBesitzer daran mitden jeweiligen Ansprüchen an die Woran es mangelt, sind präzise und
wirken, Erdbebenprognosen zu
wissenschaftliche Genauigkeit der
vor allem rechtzeitige Vorhersagen;
verbessern. Branden Christensen,

Daten ab: Das einfachste Modell ist
bislang gehören die seismischen

CEO von OSOP, stellt das ambitifür knapp 140 Dollar zu haben, das Aktivitäten der Erde zu den großen
onierte RaspberryShakeProjekt
teuerste kostet 1.200 Dollar.

Rätseln der Wissenschaft.

vor: „Selbst die preiswertesten

Sparsam Das

Raspi-Shake-Kit

Genauere Prognosen, bessere

Seismografen, die Wissenschaft

Weltweites Netzwerk
ist sehr klein. Es

Modelle – dies hat sich OSOP zum
lern aktuelle Daten liefern, kosten

Mit dem RaspberryShakeKit ver
benötigt nur 26

GPIO-Pins und

Ziel gesetzt, eine Firma, die sich mit
bereits 5.000 Dollar. Für den prifolgt OSOP noch ein weiteres Ziel: arbeitet mit jedem
der Analyse von seismografischen
vaten Gebrauch ist das natürlich
ein möglichst engmaschiges Über

Raspberry-Modell
zusammen

Daten beschäftigt und geografische
viel zu teuer. Wir haben uns deswachungsnetz über den gesamten halb überlegt, wie eine technisch

Globus zu spannen.

praktikable und dennoch bezahl

Das Netz solle, so Branden weibare Lösung für den Raspberry Pi ter, „auf einer möglichst großen
aussehen könnte.“

Zahl von automatisiert arbeitenden

Stationen basieren, um eine ver

Bezahlbare Hardware
lässliche und präzise Datengrund

Das RaspberryShakeKit ist
lage zu liefern“.

nun das Resultat dieser Über

Man war sich anfangs aber nicht
legungen: Es besteht aus
wirklich sicher, ob das Interesse der
einem Geofon, das die Erdbe

Community groß genug sein würde.

benwellen empfängt, einer Platine,

Denn schließlich sei ein Seismograf
die die Daten des Sensors digitakein gewöhnliches Mess instrument.

lisiert, sowie der SWARMSoft

„Wir konnten nicht abschätzen, ob
ware. Damit werden die Informaes dafür einen Markt geben würde, 108

04 • 2017
magpi.de

RASPBERRY SHAKE

Zum Schluss
doch wir fanden die Idee einfach
ler Erfolg! Es waren übrigens am
cool“, so Branden. Gesagt, getan.

Schluss – um ganz genau zu sein –

Die Vorstellung des Raspberry

99.258 USDollar.“

ShakeKits bei Kickstarter lieferte

„Als wir die 50.000DollarMarke
prompt die klare Antwort der Comerreicht hatten, war uns klar, dass munity: „Baut es!“
ein echter Markt für solche Produkte existiert“, erzählt uns Bran

Großes Interesse
den beim Interview. Genau dies

Branden staunt noch immer über die sei der Zeitpunkt gewesen, als man große Nachfrage: „Zuerst dachten
sich dazu entschied, das Produkt
wir, wenn wir die Finanzierung von
nochmals komplett zu überarbeiten

20 bis 30 Einheiten erreichen, dann
und die Spezifikationen zu ändern:

ist das eine tolle Sache. Doch es

„Dadurch konnten wir günstigere
hatte der Pi die Nase vorn, so Bran

Seismograf Die

Empfindlichkeit
den. Schon alleine wegen der großen

Wir möchten ein möglichst
des Sensors, ein

Community und der preiswerten
sogenanntes

Geofon, ist für ein

Hardware. „Uns allen war am Ende
engmaschiges Netzwerk für

Gerät dieser Preis-
bewusst, dass wir dem Raspberry Pi
kategorie sehr
hoch
maßgeblich den überwältigenden
die Datenanalyse schaffen

Erfolg unseres CrowdfundingProjekts verdanken“, ist sich Branden kam ganz anders als gedacht. Unser

Komponenten einkaufen und den
ganz sicher.

ursprüngliches Ziel hatten wir schon Preis nochmals senken“.

Falls das RaspberryShakePro18 Stunden nach dem Start der Kam

Man habe sich natürlich auch
jekt Ihr Interesse geweckt hat: Unter
pagne erreicht. Schnell waren wir
andere Einplatinencomputer als
raspberryshake.net finden Sie weibei 50.000 Dollar, dann bei knapp denkbare Plattform für den Seismotere technische Informationen und 100.000 Dollar angelangt. Ein tolgrafen angeschaut, doch am Ende den dazugehörigen OnlineShop.

STATIONVIEW: WO DIE ERDE BEBT

Auch in Mitteleuropa bebt die Erde unter unseren
seismischen Wellen. Derzeit sind weltweit 220 Stati-

Füßen, wie ein Blick in StationView zeigt: Die Soft-
onen online; die Zahl der Messpunkte steigt laufend,
ware visualisiert sämtliche Daten, die innerhalb
da bis jetzt rund 700 Raspberry-Pi-Shake-Kits ver-
des Raspberry-Shake-Netzwerks empfangen wer-
kauft wurden. Wer mitmachen will, meldet sein Gerät
den (raspberryshake.net/stationview). Die farbige
im Netz an, aktiviert die Option „Data Sharing“, und

Legende rechts am Kartenrand zeigt die Stärke der
schon erscheint die eigene Station auf der Karte.

Die seismischen Daten
werden in Echtzeit auf
der Karte angezeigt

Jedes Dreieck auf der

Karte repräsentiert einen

Die Raspberry Shakes

Messpunkt. Per Maus-
wurden in über 60
klick lassen sich dort

Länder ausgeliefert
weitere Daten abrufen
magpi.de

04 • 2017

109

Zum Schluss DEUTSCHE COMMUNITYS

DIE WELT DES

RASPBERRY PI

Auch im deutschsprachigen Internet tut sich einiges rund um den Mini-PC

DEUTSCHE FOREN &

COMMUNITYS

RASPBERRY PI – DEUTSCHLAND
ünf Jahre Raspberry Pi bedeuten auch fünf

Die inoffizielle Facebook-Gruppe ist mit über vier-

Jahre deutschsprachige Community. Denn

F
zehntausend Mitgliedern die mit Abstand größte
die war von Anfang an mit dabei – vom ers-
deutschsprachige Gruppe auf Facebook. Sie wurde
ten Rasp berry Pi Model A bis zum brandaktuellen
gebildet, damit sich Pi-Interessierte leichter auf

Raspberry Pi Zero W. Kein Wunder, gibt es doch im

Deutsch austauschen können.

deutschsprachigen Raum jede Menge Bastler und

Tüftler, die den Mini-Computer gleich nach Erschei-
nen in ihr Herz geschlossen haben.

Wir haben an dieser Stelle ein paar unserer Mei-
nung nach relevante und interessante Adressen für

Sie zusammengestellt. Sie geben eine erste Orientie-
rung und sind als Anlaufstellen für Fragen oder zum

Erfahrungsaustausch geeignet. Ab der nächsten Aus-
gabe (MagPi 5/2017, erscheint am 13. September 2017)

wollen wir den deutschsprachigen Communitys an
dieser Stelle einen festen Platz geben. Denn so schön
es auch ist, dass der Raspberry Pi eine weltweite Fan-

RASPBERRY PI FORUM

Das aktuell aktivste deutschsprachige Forum neben
gemeinde hat: Manche Probleme lassen sich aus der
der offiziellen Plattform ist das inoffizielle „Raspberry

(sprachlichen) Nähe leichter lösen.

Pi Forum“ (forum-raspberrypi.de). Im Gegensatz

Hinweis: Falls wir Ihrer Meinung nach eine wich-
zum offiziellen deutschen Forum präsentieren sich
tige deutschsprachige Community vergessen haben,
hier die Themen übersichtlich sortiert.

schreiben Sie uns an specials@chip.de.

DAS DEUTSCHE FORUM

VON RASPBERRYPI.ORG

Die erste Anlaufstelle für alle

Themen rund um den Pi ist natür-
lich die offizielle Homepage der

Stiftung. Die ist zwar auf Englisch,
aber daran angeschlossen sind
viele sehr informative Foren. Auch

RASPBERRY PI JAM BERLIN
eine deutsche Community hat

Für alle RasPi-Bastler aus dem Raum Berlin empfeh-
sich hier gebildet, die sich rege zu
len wir den Twitter-Account von Raspberry Jam
allen Themen rund um den Pi

Berlin. Der Account ist sogar etwas aktueller als die
austauscht (bit.ly/2sSLePQ).

eigentliche Webseite.

110

04 • 2017
magpi.de

CROWDFUNDING Zum Schluss

Zum Schluss

NEUE PROJEKTE

Hier stellen wir Ihnen die besten aktuellen Crowdfunding-Ideen vor AUSSERDEM …

Weitere Projekte, die wir spannend finden
magpi.cc/2re7MZc

VIDEO-

MIKROSKOP

„Mein erstes Projekt mit einer

Pi-Kamera!“ ist der Titel dieses

Reddit-Threads von Yelneerg. Hier
hat Yelneerg das Kameramodul
auf ein Mikroskop montiert. Zuvor
hat er die Linse entfernt, damit die

Kamera die speziellen Vergröße-

PIPLAY PORTABLE
rungslinsen nutzen kann. Klasse!

kck.st/2p3RowC
magpi.cc/2re9mdD

Das PiPlay-Handheld ist ein kleines Retro-Gaming-Kit
auf Basis eines Pi Zero, das man selbst zusammenbaut.

Entfernt erinnert es an alte Handhelds wie den Game

Gear von Sega. Im Gegensatz zum Joy Bonnet von Ada-
fruit hat das PiPlay ein eigenes Display. Es wird von

AA-Batterien mit Strom versorgt und es können sogar

Kopfhörer angeschlossen werden.

NETFLIX AUF DEM RASPI 3

Wir hätten so gerne eine offizielle Netflix-App für Kodi auf dem Raspberry Pi. Auf die App warten wir immer noch, aber dafür hat es Jon von TechWizTime geschafft, dass Netflix nativ auf dem Raspberry Pi 3 läuft. Das ist knifflig und eine starke Leistung.

COMMODORE 64C
magpi.cc/2regOFl

LED-KARTE

RASPBERRY PI

MIT TRACKING

CONVERSION FRAME

Die Karte erinnert an Crime- Serien,
in denen die Position des Verdäch-
kck.st/2pLLyAi
tigen über sein Telefon verfolgt
wird. Reddit-User GawkyFuse

Der Commodore 64 hat eine sehr treue Fangemeinde.

baute diese Karte von New York,

Der „Brotkasten“ begeistert Tekkies auch mehr als
die mit LEDs in Echtzeit anzeigt,

35 Jahre nach seiner Einführung. Wiederveröffent-
wo er und seine Frau sich gerade
lichungen mit mehr Power in der gleichen Box sind
befinden. Wenn sich einer von
beliebt. Hier setzt dieses Umwandlungs-Kit an. Es
beiden bewegt, leuchtet der Rah-
ersetzt Teile des alten C64-Gehäuses und ermöglicht das
men blau auf.

Aufrüsten mit einem Raspberry Pi 2 oder 3.

magpi.de

04 • 2017

111

Zum Schluss TERMINE

VERANSTALTUNG:

VERANSTALTUNG:

Pi Trash Roboter

Long night of IoT, Arduino &

ORT: Frankfurt

Raspberry Pi

ZEIT: 22. + 23. Juli 2017

ORT: Fab Lab Berlin

INFO: bit.ly/2s8aCnz

ZEIT: Jeden Montag ab 17 Uhr

INFO: bit.ly/2rSlilT

VERANSTALTUNG: 3D-Kids

(3D-Modellierung und

3D-Druck)

ORT: FabLab München

ZEIT: 16. September 2017

INFO: bit.ly/2tLLWhC

VERANSTALTUNGSKALENDER

>MAKER FAIRE

>HACKEN OPEN AIR

BODENSEE

>MINECRAFT

WERKSTATT

07 — 10 | 09 | 2017

15 + 16 | 07 | 2017

Elektronik statt Metal, daher auch mit

21 — 24 | 08 | 2017

Maker-Treffen mit vielen Besuchern

„H“ geschrieben. Im UJZ Peine
aus der Schweiz und Österreich.

Sommerferienprogramm von

Neue Messe Friedrichshafen

FabLabKids im FabLab München

>MINI MAKER FAIRE

>LONG NIGHT OF IOT

>MINECRAFT

ZÜRICH

ARDUINO /

HACKING

9 + 10 | 09 | 2017

RASPBERRY PI

Dynamo Jugendkulturhaus

22 + 23 | 08 | 2017

Und noch einmal Minecraft, diesmal

Jeden Montagabend

>MAKER FAIRE
vom Erfindergarden Frankfurt

Offener Treff für Hardware- und Soft-

BERGSTRASSE
ware-Hacking. Anfänger willkommen.

>MAKER FAIRE

16 + 17 | 09 | 2017

Fab Lab Berlin im Work Room 2

HANNOVER

Karl-Kübel-Schule in Bensheim

>SCHÜLER-MEETUP

25 — 27 | 08 | 2017
ten)

un

IM FAB LAB BERLIN

HCC Hannover Congress Centrum

>MINECRAFT

HACKING

21 | 07 | 2017 & jeden

>CAD FÜR ANFÄNGER
zweiten Freitag

16 + 17 | 09 | 2017

30 | 08 | 2017

In den Sektor5 Coworking Spaces in

Offen für alle interessierten Schüler

Wien
von 13 bis 17 Jahren.

Mit Onshape für den 3D-Druck
abLab München (

Fab Lab Berlin im Work Room 2
kon struieren. Im FabLab München

>TRASH ROBOTER

>TRASH ROBOTER

>BBC MICRO:BIT

16 + 17 | 09 | 2017

22 + 23 | 07 | 2017

01 | 09 | 2017

Ebenfalls in den Sektor5 Coworking

Spaces in Wien
ab Lab Berlin; F

Baue deinen eigenen Roboter aus

FabLabKids im FabLab München

Müll und einem Pi Zero.

den; F

>3DKIDS

Vom Erfindergarden Frankfurt

>MINECRAFT

HACKING

16 | 09 | 2017

>3DCRAFT

02 + 03 | 09 | 2017

Workshop zu 3D-Modellierung und

22 | 07 | 2017

Erfindergarden im Fab Lab Berlin

3D-Druck im FabLab München

3D-Modelle für Minecraft

>TRASH ROBOTER

FabLabKids im FabLab München

>TRASH ROBOTER

23 + 24 | 09 | 2017
abLab München; Erfindergar

>BBC MICRO:BIT

02 + 03 | 09 | 2017

Erfindergarden im Fab Lab Berlin

Erfindergarden Frankfurt

04 | 08 | 2017

>LED-MOOD-LIGHT

Einführungskurs in das Program-
v. u. re.: F
mieren für den BBC Micro:bit oder

30 | 09 | 2017
den Calliope

Workshop für Teens ab 12

FabLabKids im FabLab München

FabLab München

Fotos i. UZS

112

04 • 2017
magpi.de

LESERBRIEFE

Zum Schluss

DIE NÄCHSTE

Retro Spiele Spaß (MagPi 3/2017)

Magic Mirror aus MagPi 3/2017, S. 78

AUSGABE

VON

Gerade bin ich dabei, mir das im Heft vorgestellte

ERSCHEINT AM

Retro-Spiele-System zu bauen. Zu dem Artikel habe

13. 09. 2017
ich zwei Anmerkungen: Erstens führen die Links zur

Bestellung der Bauteile zu verschiedenen Webshops.

Dabei kann man bis auf eines der Bauteile doch alles
bei einem einzigen Händler bekommen. Wenn man
dreimal sieben Euro Versandkosten zahlen möchte,
dann gerne – aber das ist doch nicht praktikabel.

Meine zweite Anmerkung betrifft den Hinweiskasten

„Kleinkram“, in dem erklärt wird, welche Schrauben
man benötigt. Hier hilft einem in Deutschland und

Europa die Zoll-Schraubengröße nicht wirklich. Ich
hätte mir – zumindest als Alternative – eine Auflis-
tung der Schrauben mit metrischen Maßen
gewünscht.

Sascha Großmann
deutschen Kalender oder die Einbindung des eigenen

Bei den Angaben zu den Bezugsquellen haben wir uns

Google-Kalenders zu bekommen. Die Internetsuche
bemüht, eine Auswahl unterschiedlicher Anbieter zu
ist mühsam und meist findet man Ergebnisse nur in

Schreiben
berücksichtigen. Vielleicht war das ein Fehler, weil so
englischer Sprache.

Sie uns
der Eindruck entstehen könnte, man müsste die Teile

René Meister
jeweils dort bestellen. Natürlich macht es keinen Sinn,

Sie möchten
alle Kleinteile bei unterschiedlichen Händlern zu bezie-

In unserem großen Feature haben wir uns tatsächlich
uns etwas
hen und jeweils extra Versandkosten zu bezahlen. Ande-
hauptsächlich auf die „handwerklichen“ Arbeiten kon-
zur MagPi
rerseits sähe eine Liste mit dem Hinweis „Sie bekom-
zentriert. Da blieb auf den vier Seiten zum Starten und
mitteilen?

men alles bei XY“ doch sehr nach Schleichwerbung aus.

Anpassen des Systems leider zu wenig Platz, um jedes

Kontaktieren Sie

Grundsätzlich sind die Bezugsquellen immer nur als
die Redaktion via

Detail zu klären.

Vorschläge anzusehen. Das gilt übrigens für nahezu alle
specials@chip.de

Beiträge in MagPi.

Die Community ist unserer Erfahrung nach aber sehr
hilfsbereit und Sie sollten unbedingt versuchen, dort

Das von den Ruiz-Brüdern (siehe MagPi 3/2017, Seite 28)

Ihre Fragen zu stellen:

entworfene Gehäuse basiert auf dem Zoll-Format. Die
forum.magicmirror.builders

Druckdaten finden sich sowohl auf Heft-DVD als auch

Leider – da haben Sie völlig Recht – findet die Diskus-
unter thingiverse.com/thing:1277483 (dort führt ein
sion nur auf Englisch statt. Ein deutsches Forum zu

Retro Spiele Spaß aus
weiterer Link zu allen benötigten Teilen). Selbstver-
diesem Thema ist uns nicht bekannt.

MagPi 3/2017, S. 16
ständlich können Sie auch ein metrisches Gewinde
schneiden und metrische Schrauben verwenden. Eine

Es ist nicht ganz einfach, einen teildurchlässigen
gute Umrechnungstabelle gibt es hier:

Spiegel für den Bau eines Magic Mirrors zu
schrauben-lexikon.de/td8-zoll-umrechnung.asp
be kommen. Wo findet man hierzu weitere Informationen?

Magic Mirror (MagPi 3/2017)

Frank John

Im Heft (MagPi 3/2017, Seite 80) verweisen wir hierzu

Ich lese mit großem Interesse jede MagPi-Zeitschrift,
auf den Test von Tobias Danker. Er hat verschiedene
und so freute ich mich über das Feature zum Magic

Mirror. Zunächst hatte ich Probleme, diesen zum ers-

„Spionspiegel“ zum Bau eines Smart Mirrors getestet,
ten Mal zu starten, und dann habe ich das Phänomen,
wobei alle Produkte ihre Vor- und Nachteile haben. Wir
dass alles bis auf das Wetter funktioniert.

würden Ihnen empfehlen, vor dem Kauf einen Blick auf

Dabei ist die Grundeinstellung eigentlich klar. Den-
seine Testergebnisse zu werfen.

noch wäre es schön, eine Beschreibung für einen
glancr.de/development/test-spionspiegel
magpi.de

04 • 2017

113

Zum Schluss KOMMENTAR

MATT RICHARDSON

Matt Richardson ist Executive Director der Raspberry Pi

Foundation North America und Autor von Raspberry Pi für

Einsteiger. Kontakt via Twitter: @MattRichardson DIE NÄCHSTE

AUSGABE

VON

ERSCHEINT AM

13. SEPTEMBER

2017

DER ERSTE

SCHRITT

Matt Richardson ist immer noch positiv überrascht, dass der Raspberry Pi in so kurzer Zeit so viele Menschen inspirieren konnte
or genau fünf Jahren habe ich zum ersten Mal
einen Raspberry Pi ausgepackt. Ich schloss

V
von Leuten, mit Computern zu basteln“, sagte Tor-
valds. „Dabei ist der Minirechner so günstig, dass
ihn an meinen Fernseher an und kramte eine
man sich auch ein Scheitern leisten kann.“
alte USB-Tastatur und eine Maus hervor, um ihn

Dank der verbesserten Hardware, dem Raspbian-
hochzufahren. Als ich dem winzigen, 35 Euro teu-

Betriebssystem, den freien Software-Paketen und der
ren Computer beim Booten zusah, war mir irgendwie
tollen Community ist es heute einfacher als je zuvor,
schon klar, dass das jetzt etwas Besonderes war. Aber
spannende Projekte mit dem kleinen Computer
ich hätte nie gedacht, dass er sich einmal zu einem
umzusetzen. Die Verbesserungen und das Wachstum
solchen Phänomen entwickeln würde. Ich hatte keine
der letzten Jahre bedeuten hoffentlich, dass immer

Ahnung, wie riesig die Community werden würde.

mehr Menschen, die den Raspberry Pi einmal geboo-

Und ich hatte keine Ahnung, wie sehr sich mein
tet haben, auch weiter mit ihm auf Entdeckungsreise

Leben von diesem Augenblick an verändern würde.

gehen. Hinzu kommt, dass man in RasPi-Projekte

Das alles begann mit diesem kleinen Schritt: dem
alles Mögliche integrieren und sogar (Elektronik-)

ersten Booten des Raspberry Pi.

Schrott weiterverwenden kann.

Ein maßgeblicher Grund für den Erfolg des Rasp -
berry Pi, seiner Community und der dahinterstehen-

Junge Menschen motivieren
den gemeinnützigen Stiftung war, dass die Einstiegs-

Das Wichtigste aber ist, dass die Menschen, vor allem
hürde sehr gering ist - was vor allem am geringen

Jugendliche, überhaupt die Möglichkeit bekommen,

Preis liegt. Da muss man nicht lange überlegen, ob
sich eingehend mit dem Computer zu beschäftigen.

man den Pi vielleicht einmal ausprobiert.

Was Schüler betrifft: Es kann ihren weiteren Lebens-

Linus Torvalds, der Initiator hinter der Entwick-
weg sehr positiv beeinflussen, wenn sie sich in ihren
lung des Linux-Betriebssystemkernels, sprach 2012
jungen, prägenden Jahren mit dem Raspberry Pi
in einem BBC-News-Interview genau darüber. Er
beschäftigen. Das ist einer der Hauptgründe, warum
vertrat die Meinung, dass viele Menschen den Rasp-
viele unserer Angebote speziell für sie gemacht sind
berry Pi zwar ausprobieren, aber sich darüber hin-
und warum wir weltweit Lehrer kostenlos weiter-
aus nicht weiter damit beschäftigen würden. Den-
bilden. Junge Menschen zur Beschäftigung mit dem
noch fand er: Je mehr Menschen schon diesen ersten

Pi zu motivieren, kann dabei nicht nur einen positi-

Schritt machten und den RasPi in Betrieb nähmen,
ven Effekt für sie selbst, sondern auch für die Gesell-
desto mehr Menschen würden potenziell auch von
schaft haben. Mit erschwinglicher Rechenleistung,
der zugrunde liegenden Technik beeinflusst.

exzellenter Software, der Community im Rücken und

„Ich halte Erfindungen wie den Raspberry Pi für
freien Ressourcen bekommen die Schüler das nötige
sehr wichtig: Sie ermöglichen einer größeren Gruppe

Rüstzeug an die Hand.

114

04 • 2017
magpi.de

Über

Ein

40

Angebot für

E-Paper
helle Köpfe.

6 Monate Technik Flat XL lesen
und nur 4 Monate zahlen!

Vorteile

Alle Neuheiten des CHIP Magazins

Kostenlose Mitgliedschaft
und der CHIP-Specials
als Insider

Persönliches digitales Archiv

XL-Flat mit DVD-Inhalten,
wie Software und Workshops

Ausfüllen und

Ja, ich bestelle:

6 Monate Technik Flat XL für nur 23,96 € inkl. MwSt. + Porto anstatt für 35,94 € V17VA07N2
abschicken

Möchte ich die Technik Flat XL nach Ablauf der 6 Monate weiterbeziehen, brauche ich nichts zu tun.

Nach 6 Monaten kann ich die Flatrate jederzeit in Textform kündigen. Es genügt eine kurze Nachricht an den CHIP Aboservice, Postfach 225, 77649 Offenburg oder oder unter
per E-Mail an abo@chip.de. Dieses Angebot gilt nur in Deutschland (Konditionen für das Ausland bitte auf Anfrage unter abo@chip.de) und nur solange der Vorrat reicht. Für Zahlungen per SEPA-Lastschrift aus dem Ausland hilft Ihnen unser Aboservice unter 0781/6394526 oder per Mail an abo@chip.de gerne weiter.

services.chip.de/abo/

Ich bezahle bequem durch Bankeinzug. SEPA-Lastschriftmandat: Ich ermächtige die CHIP

Communications GmbH, wiederkehrende Zahlungen von meinem Konto mittels Lastschrift technik07
einzuziehen. Zugleich weise ich mein Kreditinstitut an, die vom Verlag auf mein Konto gezogenen Lastschriften einzulösen. Hinweis: Ich kann innerhalb von acht Wochen, begin-Name, Vorname
nend mit dem Belastungsdatum, die Erstattung des belasteten Betrags verlangen.

bestellen

Es gelten dabei die mit meinem Kreditinstitut vereinbarten Bedingungen D E

So einfach können Sie bestellen:

Straße, Haus-Nr.

IBAN

Ihre BLZ

Ihre Konto-Nr.

(Telefon) 0781-639 45 26

Zahlungsempfänger:

(Fax) 0781-846 19 1

CHIP Communications GmbH, St.-Martin-Straße 66, 81541 München

Gläubiger-ID: DE11ZZZ00000186884

(E-Mail) abo@chip.de

Mandatsreferenz wird separat mitgeteilt.

(URL) services.chip.de/abo/technik07

Mit folgender Kreditkarte:

VISA

Eurocard/Mastercard

PLZ,Ort

Weitere Angebote finden Sie unter

Kreditkarten-Nr.

Prüfnr.

www.chip-kiosk.de/chip

Gültig bis:

Telefon/Handy

Geburtsdatum

Sie haben ein gesetzliches Widerrufsrecht, die Belehrung können Sie unter Ja, ich bin einverstanden, dass die CHIP Communications GmbH mich per E-Mail www.chip-kiosk.de/widerrufsrecht abrufen.

über interessante Vorteilsangebote informiert. Meine Daten werden nicht an Dritte weitergegeben. Dieses Einverständnis kann ich selbstverständlich jederzeit widerrufen.

CHIP erscheint im Verlag: CHIP Communications GmbH,

St.-Martin-Straße 66, 81541 München.

Geschäftsführung: Thomas Koelzer (CEO), Markus Scheuermann (COO) Handelsregister: AG München, HRB 136615. Die Betreuung der Abonnenten E-Mail

Datum

Unterschrift
erfolgt durch: Abonnenten Service Center GmbH, CHIP Aboservice, Hubert-Burda-Platz 2, 77652 Offenburg. Der Verlag behält sich vor, Bestellungen ohne Angabe von Gründen abzulehnen.

Coupon ausschneiden und schicken an: CHIP Aboservice, Postfach 225, 77649 Offenburg oder im Internet bestellen unter: services.chip.de/abo/technik07

V17VA07N2

KIOSK-950-AZ-Technik-Flat_MagPi_Juli.indd 2

26.06.2017 14:11:18

BESTELLT | BELIEFERT | BEGEISTERT

Mehr als 75.000 Produkte

Top-Preis-Leistungsverhältnis

Hohe Verfügbarkeit und 24-h-Lieferservice

Starke Marken und echte Qualität
reichelt.de

@reichelt_el
google.com/+reichelt

ASUS TINKER

LEH

HRT DEN ANDEREN

ERE

DIESES

ES BOARD

ARD LEHRT DEN ANDEREN DAS FÜRCHTEN!

DIESES BOARD LEHRT DEN ANDEREN D

ES BOA

BOA

DIESE

ARD LE

ASUS Tinker Board, 2 GB
übernimmt nicht nur den Formfaktor des Raspberry Pi,
sondern platziert auch alle Anschlüsse an der gleichen Stelle!

1,8 GHz ARM Cortex-A17 32-bit Quad-Core-CPU Rockchip RK3288

2 GB RAM & ARM Mali-T764 MP2 GPU für 4K-/UHD-Videos

WLAN, BT 4.0, Gigabit LAN

HDMI, USB, CSI, DSI, MicroSD-Slot, 40 Pin I/O
unterstützt Debian OS mit Kodi Media-Center

Bestell-Nr.: ASUS TINKER

59,90

ZUM SPAREN IST ES NIE ZU HELL!

0,96” Arduino Grove OLED Display

LED-Sparwochen bei reichelt!

mit Grove-kompatiblem 4-Pin-I²C-Anschluss

3er-Sparpack

128 x 64 Pixel

LED-Globe, E27

Treiber: SSD1308Z

Energieeffizient

5 W, 420 lm

2.700 K

Displayfarbe: weiß

20.000 h

SCHNELL

Bestell-Nr.:

GRV OLED 0.96

ZUGREIFEN!

14,50

Bestell-Nr.: VT-7266

Über 97% zufriedene Kunden

AKTIONS

PREIS 3,95
www.shopauskunft.de

Tagespreise · Preisstand: 27. 6. 2017, Preise in € inkl. gesetzl. MwSt., zzgl. Versandkosten, reichelt elektronik, Elektronikring 1, 26452 Sande (D) JETZT NEWSLETTER

Wir verlosen monatlich unter allen neuen Newsletter-

Abonnenten ein technisches Highlight!

www.reichelt.de

ABONNIEREN & GEWINNEN!

BESTELLHOTLINE: +49 (0)4422 955-333

JETZT MITMACHEN ► http://rch.lt/v3
reichelt_MagPi_04-2017.indd 1

27.06.2017 09:24:43