24
Das Franzis Raspberry Pi Lernpaket

Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

Embed Size (px)

Citation preview

Page 1: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

Das FranzisRaspberry Pi

Lernpaket

65245-2 Handbuch_Titelei 14.03.14 10:47 Seite 1

Page 2: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

DA

S

TURN ON YOUR CREATIVITY

RASPBERRY PI

65245-2 Handbuch_Titelei 14.03.14 10:47 Seite 3

Page 3: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

1 Von der Betriebs system installation bis zum

ersten Python -Programm 6

2 Die erste LED leuchtet am Raspberry  Pi 22

3 Verkehrsampel 36

4 Fußgänger ampel 42

5 Bunte LED-Muster und Laufl ichter 54

6 LED per Puls weitenmodulation dimmen 64

7 Speicherkartenfüllstandsanzeige mit LEDs 72

8 Grafi scher Spielwürfel 78

9 Analoguhr auf dem Bildschirm 86

10 Erstes Experiment mit der 7-Segment-Anzeige 94

11 Zahlen auf der 7-Segment-Anzeige darstellen 102

12 Mehrstellige Zahlen auf der 7-Segment-Anzeige 106

13 Weltzeituhr mit 7-Segment -Anzeige 116

14 IP-Adresse des Rasp berry Pi anzeigen 124

15 Grafi sche Dialog felder zur Programmsteuerung 130

16 Variabler Spielwürfel mit 7-Segment -Anzeige 148

17 Metronom – mit dem Piezo-Summer 162

18 Eieruhr mit 7-Segment-Anzeige 166

19 PiDance mit LEDs 174

20 PiDance mit LEDs und Musik 182

21 Gehäuse für Raspberry  Pi selbst gebaut 188

Inhalt

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 565245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 5 14.03.2014 09:31:5214.03.2014 09:31:52

Page 4: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

11 VON DER BETRIEBS- VON DER BETRIEBS-SYSTEM INSTALLATION SYSTEM INSTALLATION

BIS ZUM ERSTEN BIS ZUM ERSTEN PYTHON -PROGRAMMPYTHON -PROGRAMM

Kaum ein elektronisches Gerät in seiner Preisklasse hat in den letz-

ten Monaten so viel von sich reden gemacht wie der Rasp berry Pi.

Der Raspberry Pi ist, auch wenn es auf den ersten Blick gar nicht so

aussieht, ein vollwertiger Computer etwa in der Größe einer Kredit-

karte – zu einem sehr günstigen Preis. Nicht nur die Hardware ist

günstig, sondern auch die Software: Das Betriebssystem und alle im

Alltag notwendigen Anwendungen werden kostenlos zum Down-

load angeboten.

Abb. 1.1: Der Raspberry Pi – ein PC im MiniformatDer Raspberry Pi ein PC im Miniformat

Mit dem speziell angepassten Linux mit grafi scher Oberfl äche ist

der Raspberry  Pi ein stromsparender, lautloser PC-Ersatz. Seine frei

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 665245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 6 14.03.2014 09:31:5814.03.2014 09:31:58

Page 5: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

22 DIE ERSTE LED DIE ERSTE LED LEUCHTET AM LEUCHTET AM RASPBERRY  PIRASPBERRY  PI

Die 26-polige Stiftleiste in der Ecke des Raspberry  Pi bietet die

Möglichkeit, direkt Hardware anzuschließen, um z. B. über Taster Ein-

gaben zu machen oder programmgesteuert LEDs leuchten zu lassen.

Diese Stiftleiste wird als GPIO bezeichnet. Die englische Abkürzung

»General Purpose Input Output« bedeutet auf Deutsch einfach »All-

gemeine Ein- und Ausgabe«.

Von diesen 26 Pins lassen sich 17 wahlweise als Eingang oder Aus-

gang programmieren und so für vielfältige Hardwareerweiterungen

nutzen. Die übrigen sind für die Stromversorgung und andere Zwe-

cke fest eingerichtet.

Abb. 2.1: Belegung der GPIO-Schnittstelle. Die graue Linie oben und links bezeichnet Belegung der GPIO Schnittstelle Die graue Linie oben und links bezeichnet

den Rand der Platine. GPIO-Pin 2 liegt also ganz außen in der Ecke des Raspberry Pi.

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 2265245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 22 14.03.2014 09:32:1614.03.2014 09:32:16

Page 6: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

33 VERKEHRSAMPEL VERKEHRSAMPEL

Eine einzelne LED ein- und wieder auszuschalten, mag im ersten

Moment ganz spannend sein, aber dafür braucht man eigentlich kei-

nen Computer. Eine Verkehrsampel mit ihrem typischen Leuchtzyk-

lus von Grün über Gelb nach Rot und dann über eine Lichtkombina-

tion Rot-Gelb wieder zu Grün ist mit drei LEDs leicht aufzubauen und

zeigt weitere Programmiertechniken in Python.

Bauen Sie die abgebildete Schaltung auf der Steckplatine auf. Zur

Ansteuerung der LEDs werden drei GPIO-Ports und eine gemeinsa-

me Masseleitung verwendet. Die GPIO-Portnummern im BCM-Mo-

dus sind auf dem Raspberry Pi in der Zeichnung abgebildet.

Benötigte Bauteile: 1x Steckplatine, 1x LED rot, 1x LED gelb, 1x LED

grün, 3x 220-Ohm-Widerstand, 4x Verbindungskabel

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 3665245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 36 14.03.2014 09:32:3614.03.2014 09:32:36

Page 7: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

44 FUSSGÄNGER AMPEL FUSSGÄNGER AMPEL

Im nächsten Experiment erweitern wir die Ampelschaltung noch

um eine zusätzliche Fußgängerampel, die während der Rotphase der

Verkehrsampel ein Blinklicht für Fußgänger anzeigt, wie es in einigen

Ländern verwendet wird. Natürlich könnte man auch die in Mittel-

europa übliche Fußgänger ampel mit rotem und grünem Licht in das

Programm einbauen, nur enthält dieses Lernpaket neben den von

der Verkehrsampel verwendeten LEDs nur noch eine weitere.

Bauen Sie für das folgende Experiment eine zusätzliche LED mit

Vorwiderstand wie abgebildet in die Schaltung ein. Diese wird am

GPIO-Port 24 angeschlossen.

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 4265245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 42 14.03.2014 09:32:4414.03.2014 09:32:44

Page 8: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

55 BUNTE LED-MUSTER BUNTE LED-MUSTER UND LAUFLICHTERUND LAUFLICHTER

Laufl ichter sind immer wieder beliebte Eff ekte, um Aufmerksam-

keit zu erregen, sei es im Partykeller oder in professioneller Leucht-

werbung. Mit dem Raspberry Pi und ein paar LEDs lässt sich so etwas

leicht realisieren.

Bauen Sie für das folgende Experiment vier LEDs mit Vorwider-

ständen wie abgebildet auf. Diese Schaltung entspricht der Fußgän-

gerampel ohne den Taster aus dem vorherigen Experi ment.

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 5465245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 54 14.03.2014 09:32:5714.03.2014 09:32:57

Page 9: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

66 LED PER PULS- LED PER PULS-WEITENMODULATION WEITENMODULATION

DIMMENDIMMEN

LEDs sind typische Bauteile zur Ausgabe von Signalen in der

Digital elektronik. Sie können zwei verschiedene Zustände anneh-

men, ein und aus, 0 und 1 oder True und False. Das Gleiche gilt für

die als digitale Ausgänge defi nierten GPIO-Ports. Demnach wäre es

theoretisch nicht möglich, eine LED zu dimmen.

Mit einem Trick ist es dennoch möglich, die Helligkeit einer LED

an einem digitalen GPIO-Port zu regeln. Lässt man eine LED schnell

genug blinken, nimmt das menschliche Auge das nicht mehr als Blin-

ken wahr. Die als Pulsweitenmodulation bezeichnete Technik erzeugt

ein pulsierendes Signal, das sich in sehr kurzen Abständen ein- und

ausschaltet. Die Spannung des Signals bleibt immer gleich, nur das

Verhältnis zwischen Level False (0 V) und Level True (+3,3 V) wird

verändert. Das Tastverhältnis gibt das Verhältnis der Länge des einge-

schalteten Zustands zur Gesamtdauer eines Schaltzyklus an.

Abb. 6.1: Links: Tastverhältnis 50 % – rechts: Tastverhältnis 20 %.k h l h h l

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 6465245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 64 14.03.2014 09:33:0714.03.2014 09:33:07

Page 10: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

77 SPEICHERKARTEN- SPEICHERKARTEN-FÜLLSTANDSANZEIGE FÜLLSTANDSANZEIGE

MIT LEDSMIT LEDS

Speicherkarten sind wie Festplatten immer viel zu schnell voll. Da

wünscht man sich eine einfache optische Füllstandsanzeige, um im-

mer auf einen Blick erkennen zu können, wann der Speicherplatz zur

Neige geht. Mit drei LEDs lässt sich das auf dem Raspberry  Pi sehr

komfortabel realisieren. Dazu werden Funktionen des Betriebssys-

tems genutzt, die über Python abgefragt werden.

Abb. 7.1: Natürlich lässt sich der freie Speicherplatz auch direkt im Datei manager

auf dem Raspberry Pi anzeigen.

Für die Anzeige des freien Speicherplatzes verwenden wir die drei

LEDs aus der Ampelschaltung, die in unterschied lichen Farbkombi-

nationen leuchten.

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 7265245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 72 14.03.2014 09:33:2114.03.2014 09:33:21

Page 11: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

88 GRAFISCHER GRAFISCHER SPIELWÜRFEL SPIELWÜRFEL

Ein cooles Spiel braucht Grafi k und nicht nur eine Textausgabe

wie in Zeiten der allerersten DOS-Computer. Die Bibliothek PyGame

liefert vordefi nierte Funktionen und Objekte zur Grafi kdarstellung

und Spieleprogrammierung. Damit braucht man nicht mehr alles von

Grund auf neu zu erfi nden.

Für viele Spiele braucht man einen Würfel, aber oft ist gerade kei-

ner griff bereit. Das nächste Programmbeispiel zeigt, wie einfach es

ist, den Raspberry Pi mithilfe von Python und PyGame als Würfel zu

benutzen:

Abb. 8.1: Der Raspberry Pi als Würfel.

Der Würfel soll möglichst einfach und mit nur einer Taste zu be-

dienen sein, und das zufällig gewürfelte Ergebnis soll grafi sch wie ein

»echter« Würfel angezeigt werden. Das folgende Programm wuer-

fel.py simuliert einen solchen Würfel auf dem Bildschirm.

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 7865245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 78 14.03.2014 09:33:3114.03.2014 09:33:31

Page 12: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

99 ANALOGUHR AUF ANALOGUHR AUF DEM BILDSCHIRMDEM BILDSCHIRM

Die digitale Zeitanzeige, wie wir sie heute von Computern ge-

wohnt sind, ist erst in den 70er-Jahren in Mode gekommen. Davor

hat man jahrhundertelang die Uhrzeit analog mit Zeigern auf einem

Ziff erblatt angezeigt. Der Digitaluhrboom ist in den letzten Jahren

wieder etwas zurückgegangen, da man erkannt hat, dass Analoguh-

ren schneller und bei schlechten Wetterbedingungen oder auf große

Entfernungen, wie zum Beispiel auf Bahnhöfen, auch klarer abzulesen

sind. Das menschliche Auge erfasst eine Grafi k schneller als Ziff ern

oder Buchstaben. Das Bild einer Analoguhr prägt sich ins Kurzzeit-

gedächtnis ein, sodass man es, auch wenn man es nur unvollständig

oder verschwommen gesehen hat, dennoch richtig umsetzen kann.

Sieht man dagegen eine Digitaluhr nur ungenau, kann man daraus

keine zuverlässigen Rückschlüsse auf die angezeigte Zeit ziehen.

Abb. 9.1: Analoguhr, mit PyGame programmiert.

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 8665245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 86 14.03.2014 09:33:4014.03.2014 09:33:40

Page 13: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

1010 ERSTES EXPERIMENT ERSTES EXPERIMENT MIT DER 7-SEGMENT-MIT DER 7-SEGMENT-

ANZEIGE ANZEIGE Das Paket enthält eine vierstellige 7-Segment-Anzeige, mit der

sich Ziff ern und einfache Symbole darstellen lassen. Solche 7-Seg-

ment-Anzeigen werden häufi g in Digitaluhren und Taschenrechnern

genutzt. Tankstellen verwenden diese Anzeigetechnologie im gro-

ßen Format. Allerdings sind hier oft statt LEDs mechanische Anzeige-

elemente im Einsatz. Nicht alle Buchstaben des Alphabets lassen sich

auf diesen Anzeigen eindeutig darstellen, die Buchstaben A bis F, die

zur Darstellung von Hexadezimalzahlen notwendig sind, funktionie-

ren aber. Die meisten 7-Segment-Anzeigen verfügen noch über eine

achte LED für den Dezimalpunkt.

Bei einer einstelligen 7-Segment-Anzeige ist jede LED einzeln über

ihre Anode ansteuerbar und alle LEDs verwenden eine gemeinsame

Kathode oder umgekehrt. Dementsprechend werden die Anzeigemo-

dule als »Common-Cathode« oder »Common-Anode« bezeichnet.

Abb. 10.1: Schaltschema der 7-Segment-Anzeige.Schaltschema der 7 Segment Anzeige

Bei der im Paket mitgelieferten vierstelligen 7-Segment-Anzeige

sind nach dem Common-Anode-Schaltschema die Anoden der acht

LEDs einer Ziff er zusammengeschaltet. Zusätzlich sind die vier Ka-

thoden der jeweils gleichen LED-Position in allen vier Ziff ern zusam-

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 9465245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 94 14.03.2014 09:33:4814.03.2014 09:33:48

Page 14: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

1111 ZAHLEN AUF DER ZAHLEN AUF DER 7-SEGMENT-ANZEIGE 7-SEGMENT-ANZEIGE

DARSTELLEN DARSTELLEN Der eigentliche Sinn und Zweck einer 7-Segment-Anzeige ist in den

meisten Fällen keine grafi sche Spielerei, sondern die Darstellung von

Zahlen. Das nächste Experiment zeigt, wie das funktioniert. Die sieben

Segmente einer Anzeige und auch die zugehörigen Anschlusspins der

Kathoden sind mit den Buchstaben a bis g bezeichnet.

Abb. 11.1: Die zehn Ziff ernbilder einer 7-Segment-Anzeige.

Dieses Experiment zeigt einen Zähler, der alle Ziff ern der Reihe nach

auf einer Anzeige durchzählt. Wir verwenden die gleiche Schaltung

wie im letzten Experiment. Drei der vier Ziff ern der Anzeige werden

aber nicht benutzt. Das Programm zahl01.py zählt auf der ersten Zif-

fer der 7-Segment-Anzeige fortlaufend von 0 bis 9.

import RPi.GPIO as GPIOimport time

GPIO.setmode(GPIO.BCM)

seg={'a':11, 'b':7, 'c':15, 'd':21, 'e':22, 'f':8, 'g':10}for s in "abcdefg": GPIO.setup(seg[s], GPIO.OUT, initial=True)

z=25GPIO.setup(z, GPIO.OUT, initial=True)

zahl=[ "abcdef", #0

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 10265245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 102 14.03.2014 09:34:0214.03.2014 09:34:02

Page 15: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

1212 MEHRSTELLIGE MEHRSTELLIGE ZAHLEN AUF DER ZAHLEN AUF DER

7-SEGMENT-ANZEIGE 7-SEGMENT-ANZEIGE Das letzte Experiment nutzt nur eine der vier Ziff ern der 7-Seg-

ment-Anzeige. Wesentlich interessanter ist es, alle vier Ziff ern zu ver-

wenden. Um auch auf den anderen Ziff ern Zahlen anzuzeigen, müs-

sen nur die Anschlüsse 2 bis 4 ebenfalls auf True gesetzt werden.

Das Programm zahl02.py unterscheidet sich vom letzten Pro-

gramm nur in drei Zeilen.

zif=[25, 24, 23, 14]for z in zif: GPIO.setup(z, GPIO.OUT, initial=True)

Statt einer einzigen Variablen z wird jetzt eine Liste mit vier GPIO-

Ports defi niert. Diese werden alle auf True gesetzt. Danach läuft das

Programm wie bekannt weiter.

Abb. 12.1: Viermal die gleiche Ziff er.

Wie zu erwarten, zeigt der Zähler jetzt auf allen vier Anzeigen im-

mer die gleiche Ziff er.

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 10665245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 106 14.03.2014 09:34:0914.03.2014 09:34:09

Page 16: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

1313 WELTZEITUHR MIT WELTZEITUHR MIT 7-SEGMENT -ANZEIGE7-SEGMENT -ANZEIGE

In diesem Experiment bauen wir eine funktionsfähige Digital uhr, r

die die aktuelle Zeit auf der 7-Segment-Anzeige anzeigt. Die Digital-

uhr kann automatisch auf dem Raspberry Pi laufen, ohne dass Moni-

tor und Tastatur angeschlossen sind.

Der Raspberry Pi verfügt im Gegensatz zu einem PC über keine

eingebaute batteriegepuff erte Uhr, sondern holt seine Zeit immer

von einem Zeitserver im Internet, der jederzeit die aktuelle Zeit für

jede Zeitzone der Welt in höchster Präzision liefert.

13.1 | Uhrzeit auf dem Raspberry Pi einrichten

Stellen Sie als Erstes sicher, dass der Raspberry Pi unten rechts auf

dem Bildschirm die richtige Zeit anzeigt. Ist das nicht der Fall, starten

Sie das Konfi gurationstool in einem LXTerminal-Fenster mit dem Be-

fehl:

sudo raspi-config

Dieses Tool kann nicht mit der Maus bedient werden. Verwen-

den Sie die Pfeiltasten und die [Enter]-Taste der Tastatur. Die Bestä-

tigungsschaltfl ächen Select bzw. t OK und K Abbrechen erreicht man mit

der [Tab]-Taste.

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 11665245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 116 14.03.2014 09:34:1814.03.2014 09:34:18

Page 17: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

1414 IP-ADRESSE DES IP-ADRESSE DES RASP BERRY PI ANZEIGENRASP BERRY PI ANZEIGEN

Wer einen Raspberry Pi ohne Tastatur und Monitor nur über das

Netzwerk betreibt, braucht seine IP-Adresse, um die SSH-Verbindung

aufbauen zu können. Diese Adresse kann man mit Netzwerkscanner-

software herausfi nden. Wesentlich interessanter ist es, die IP-Adresse

direkt auf dem Raspberry Pi mit einer 7-Segment-Anzeige anzeigen

zu lassen.

Die 7-Segment-Anzeige im Paket kann vier Ziff ern gleichzeitig

anzeigen. Eine IP-Adresse besteht aber aus vier Blöcken mit je drei

Ziff ern. Um diese darzustellen, lassen wir auf der Anzeige nacheinan-

der jeden Zahlenblock etwa 1 Sekunde anzeigen. Um das Ende der

IP-Adresse und den Beginn der nächsten Anzeigeschleife deutlich

zu kennzeichnen, sollen nach dem vierten Zahlenblock die Dezimal-

punkte der Anzeige kurz aufblinken. Danach startet die Anzeige der

IP-Adresse wieder mit dem ersten Zahlenblock.

Zahlenblöcke, die nur aus einer oder zwei Ziff ern bestehen, wer-

den für ein einheitliches Erscheinungsbild ebenfalls dreistellig ange-

zeigt und am Anfang mit Nullen ergänzt. Diese Schreibweise ist bei

der Angabe von IP-Adressen genauso gültig.

Abb. 14.1: Anzeigefolge einer IP-Adresse auf der 7-Segment-Anzeige.

Dieses Experiment verwendet der Einfachheit halber wieder die

gleiche Schaltung wie die in den letzten Experimenten mit der 7-Seg-

ment-Anzeige, obwohl die Ziff er ganz rechts nicht benutzt wird. Das

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 12465245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 124 14.03.2014 09:34:2614.03.2014 09:34:26

Page 18: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

1515 GRAFISCHE DIALOG- GRAFISCHE DIALOG-FELDER ZUR PRO-FELDER ZUR PRO-

GRAMMSTEUERUNGGRAMMSTEUERUNGKein modernes Programm, das irgendeine Interaktion mit dem

Benutzer erfordert, läuft im reinen Textmodus. Überall gibt es grafi -

sche Oberfl ächen, auf denen man Buttons anklicken kann, anstatt

Eingaben über die Tastatur vornehmen zu müssen.

Python selbst bietet keine grafi schen Oberfl ächen für Programme,

es gibt aber mehrere externe Module, ähnlich dem schon beschrie-

benen PyGame, die speziell dafür da sind, grafi sche Oberfl ächen zu

erstellen. Eines der bekanntesten derartigen Module ist Tkinter, dasr

die grafi sche Oberfl äche Tk, die auch für diverse andere Program-

miersprachen genutzt werden kann, für Python verfügbar macht.

Die Strukturen des grafi schen Toolkits Tk unterscheiden sich et-

was von Python und mögen auf den ersten Blick ungewöhnlich er-

scheinen. Deshalb fangen wir mit einem ganz einfachen Beispiel an:

Eine LED soll über Buttons in einem Dialogfeld ein- und ausgeschal-

tet werden.

Benötigte Bauteile: 1x Steckplatine, 1x LED rot, 1x 220-Ohm-Wi-

derstand, 2x Verbindungskabel

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 13065245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 130 14.03.2014 09:34:3414.03.2014 09:34:34

Page 19: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

1616 VARIABLER VARIABLER SPIELWÜRFEL MIT SPIELWÜRFEL MIT

7-SEGMENT -ANZEIGE7-SEGMENT -ANZEIGEOft braucht man beim Spielen einen oder mehrere Würfel, und

keine sind zur Hand. Besonders bei Rollenspielen, in denen neben

»normalen« sechsseitigen Würfeln auch Würfel mit vier, acht oder

zwölf Seiten benötigt werden, sind häufi g keine passenden Würfel

greifbar. Dieses Experiment stellt bis zu vier Würfel zur Verfügung, de-

ren Ergebnisse auf der 7-Segment-Anzeige dargestellt werden. Vor

jedem Wurf kann man die Anzahl der Würfel und die Art wählen. Da-

bei werden ein Tetraeder (vier Seiten), ein Würfel (sechs Seiten), ein

Oktaeder (acht Seiten) und Dodekaeder (zwölf Seiten) zur Auswahl

angeboten. Spieler bezeichnen diese Würfel aufgrund ihrer Seiten-

zahl als W4, W6, W8 und W12.

Die Ergebnisse des Dodekaeders lassen sich nicht mit neun ver-

schiedenen Ziff ern darstellen. Für die zweistelligen Ergebnisse ver-

wenden wir neue Symbole, eine 0 für die 10, eine aus zwei Strichen

angenäherte 11 sowie ein H für die 12.

Abb. 16.1: Die Symbole für die Würfelergebnisse 9, 10, 11 und 12 des Dodekaeders.

Der Ikosaeder, auch als W20 bezeichnet, fällt weg, da sich das

Würfelergebnis nicht mehr auf einer Ziff er der 7-Segment-Anzeige

darstellen lässt.

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 14865245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 148 14.03.2014 09:34:4614.03.2014 09:34:46

Page 20: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

1717 METRONOM – MIT METRONOM – MIT DEM PIEZO-SUMMER DEM PIEZO-SUMMER

Der im Paket enthaltene Piezo-Summer macht elektrische

Schwingungen hörbar. Legt man eine pulsierende Gleichspannung

zwischen die beiden Pole des Summers, wird dieser in Schwingung

versetzt. Je nach Frequenz sind einzelne Klicks oder ein durchgän-

giger Ton zu hören. Frequenzen von wenigen Hertz (Schwingungen

pro Sekunde) nimmt das menschliche Ohr noch als einzelne Töne

wahr, Frequenzen zwischen etwa 20 Hertz und 16 kHertz werden als

durchgehender Ton unterschiedlicher Tonhöhe wahrgenommen.

Benötigte Bauteile: 1x Steckplatine, 1x LED rot, 1x Piezo-Summer,

1x 220-Ohm-Widerstand, 3x Verbindungskabel

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 16265245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 162 14.03.2014 09:34:5814.03.2014 09:34:58

Page 21: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

1818 EIERUHR MIT EIERUHR MIT 7-SEGMENT-ANZEIGE 7-SEGMENT-ANZEIGE

Kurzzeitwecker braucht man nicht nur, um Eier zu kochen, sondern

auch für vielfältige andere Aufgaben. Zwar hat jeder PC, und auch der

Raspberry Pi, eine Uhr, die die aktuelle Zeit auf dem Bildschirm an-

zeigt – ein Kurzzeitwecker, der als Countdown ein paar Minuten oder

Sekunden bis auf 0 herunterzählt, steht jedoch meist nicht zur Verfü-

gung. Dieses Experiment lässt auf der 7-Segment-Anzeige sehr auf-

fällig einen Kurzzeitwecker laufen. Die Laufzeit des Kurzzeitweckers

wird über ein Dialogfeld auf dem Bildschirm eingestellt.

Das Experiment verwendet die gleiche Schaltung, die schon vor-

her für Experimente mit der 7-Segment-Anzeige verwendet wur-

de. Optional kann noch der Piezo-Summer eingebaut werden, der,

während der Kurzzeitwecker läuft, einen Ton von sich gibt und ver-

stummt, wenn der Wecker abgelaufen ist. Bei dieser Methode benö-

tigt der Piezo-Summer keinen zusätzlichen GPIO-Port und auch keine

einzige Zeile zusätz lichen Programmcode.

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 16665245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 166 14.03.2014 09:35:0614.03.2014 09:35:06

Page 22: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

1919 PIDANCE MIT LEDS PIDANCE MIT LEDS

In den späten 70er-Jahren, noch vor der Zeit echter Computer-

spiele, gab es ein elektronisches Spiel mit vier farbigen Lampen, das

es im Jahr 1979 sogar auf die allererste Auswahlliste zum Spiel des

Jahres brachte. Das Spiel war in Deutschland unter dem Namen Sen-

so auf dem Markt. Atari brachte einen Nachbau unter dem Namen

Touch Me in der Größe eines Taschenrechners heraus. Ein weiterer

Nachbau erschien als Einstein, im englischen Sprachraum wurde Sen-

so als Simon vermarktet.

Raspbian liefert eine grafi sche Version dieses Spiels bei den Python

Games unter dem Namen Simulate mit.

Abb. 19.1: Das Spiel Simulate aus den Python Games.

Unser Spiel PiDance basiert ebenfalls auf diesem Spielprinzip.

LEDs blinken in einer zufälligen Reihenfolge. Der Benutzer muss die

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 17465245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 174 14.03.2014 09:35:1614.03.2014 09:35:16

Page 23: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

2020 PIDANCE MIT LEDS PIDANCE MIT LEDS UND MUSIKUND MUSIK

Das Spiel bietet noch mehr Spielreiz, wenn es auch noch Töne von

sich gibt. Diese erweiterte Version spielt zu jeder LED einen charakte-

ristischen Ton über den Piezo-Summer ab. Dazu wird die Schaltung

um den Summer erweitert.

Benötigte Bauteile: 2x Steckplatine, 1x LED rot, 1x LED gelb, 1x LED

grün, 1x LED blau, 4x 220-Ohm-Widerstand, 4x 1-kOhm-Wider-

stand, 4x 10-kOhm-Widerstand, 4x Taster, 1x Piezo-Summer,

11x Verbindungskabel, 4x kurze Drahtbrücke

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 18265245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 182 14.03.2014 09:35:2614.03.2014 09:35:26

Page 24: Das Franzis Raspberry Pi Lernpaket - elektor.de · 2 DIE ERSTE LED LEUCHTET AM RASPBERRY PIRASPBERRPIY Die 26-polige Stiftleiste in der Ecke des Raspberry Pi bietet die Möglichkeit,

2121 GEHÄUSE FÜR GEHÄUSE FÜR RASPBERRY  PI SELBST RASPBERRY  PI SELBST

GEBAUTGEBAUTMit etwas Kreativität lassen sich aus Lego®-Bausteinen verschie-

denartige Gehäuse für den Raspberry Pi bauen, die bei Bedarf auch

noch Platz für Steckplatinen bieten. Für die Beispiele haben wir nur

einfache Bauteile verwendet, wie man sie häufi g in Kinderzimmern,

Kellern oder auf Flohmärkten fi ndet. Mit Spezialteilen lassen sich

noch elegantere Gehäuse bauen.

Unser einfachstes Gehäusemodell umschließt den Raspberry  Pi

von vier Seiten.

65245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 18865245-2 Experimente mit dem Raspberry Pi_gekürzt_NEU_06.indd 188 14.03.2014 09:35:3514.03.2014 09:35:35