M15 - Physical Computing mit dem Raspberry Pi I



Ähnliche Dokumente
Rock-Band. Einleitung. Scratch. In diesem Projekt lernst du, wie du deine eigenen Musikinstrumente programmieren kannst! Activity Checklist

Wie halte ich Ordnung auf meiner Festplatte?

Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert

Professionelle Seminare im Bereich MS-Office

AutoCAD Dienstprogramm zur Lizenzübertragung

Facebook erstellen und Einstellungen

Eingeschrieben?

Mediator 9 - Lernprogramm

Schrittweise Anleitung zur Erstellung einer Angebotseite 1. In Ihrem Dashboard klicken Sie auf Neu anlegen, um eine neue Seite zu erstellen.

Anleitung für Autoren auf sv-bofsheim.de

Anleitung zum Einstellen eines Artikels als Autor

Internetauftritt von Lotta Karotta Anleitung zur Pflege. 2 Bearbeiten eines Menüpunktes am Beispiel Test

Laufwerke, Ordner, Dateien: 1. Erklärung der Begriffe

Das Outlook Adressbuch exportieren

Übung - Arbeiten mit CLI-Befehlen in Windows

Einführungskurs MOODLE Themen:

Starten Sie Eclipse: Hier tragen sie Ihr Arbeitsverzeichnis ein. Zu Hause z.b. c:\workspace.

Diese Anleitung zeigt dir, wie du eine Einladung mit Microsoft Word gestalten kannst.

Das Omnikey 8751 e-health BCS...1 Auslesen über die LAN-Schnittstelle...1 Auslesen über die serielle Schnittstelle...4

Erstellen der Barcode-Etiketten:

Teiltransparente Bilder

Einführung in Powerpoint M. Hasler Wie erstelle ich eine Präsentation mit Powerpoint? - Eine Kurzanleitung

AutoTexte und AutoKorrektur unter Outlook verwenden

Internet-Wissen. Browser:

Bedienungsanleitung Albumdesigner. Neues Projekt: Bestehendes Projekt öffnen:

MdtTax Programm. Programm Dokumentation. Datenbank Schnittstelle. Das Hauptmenü. Die Bedienung des Programms geht über das Hauptmenü.

Anleitung zur Erstellung von Serienbriefen (Word 2003) unter Berücksichtigung von Titeln (wie Dr., Dr. med. usw.)

Der Gabelstapler: Wie? Was? Wer? Wo?

Textgestaltung mit dem Editor TinyMCE Schritt für Schritt

EAP. Employee Administration Platform

Minecraft. Starte anschließend die Programmiersprache Python, indem du folgenden Befehl in das Terminalfenster eingibst:

Anzeige von eingescannten Rechnungen

Arbeiten mit UMLed und Delphi

Fernseher Bild Bildschirm Computergeräte. Festplatte CD DVD Eingabegerät. Computertasten Mauszeiger Cursor rechten Maustaste

Visual Basic Express erstes Projekt anlegen


kurze Anleitung zur Nutzung der Kaspersky Rescue Disk 10 Inhalt

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten

Anleitung Stempelerstellung Geocoinshop.de

Bauteilattribute als Sachdaten anzeigen

Wie Sie mit Mastern arbeiten

Der Kalender im ipad

Copyright Sophie Streit / Filzweiber / Fertigung eines Filzringes mit Perlen!

Zahlen auf einen Blick

Anleitung über den Umgang mit Schildern

Forschertagebuch Wasser Die Oberflächenspannung

changenow THE PLAN Die 7 Brillen der Vergangenheit

Liebe oder doch Hass (13)

Was man mit dem Computer alles machen kann

Computeria Rorschach Mit Excel Diagramme erstellen

Der neue persönliche Bereich/die CommSy-Leiste

Mehrere PDF-Dokumente zu einem zusammenfügen

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

Platinen mit dem HP CLJ 1600 direkt bedrucken ohne Tonertransferverfahren

Einführung in TexMaker

Handbuch für Easy Mail in Leicht Lesen

Das Festkomitee hat die Abi-Seite neu konzipiert, die nun auf einem (gemieteten) Share Point Server

Flyer, Sharepics usw. mit LibreOffice oder OpenOffice erstellen

Dokumentenverwaltung im Internet

Anleitungen TYPO 3 Eingaben tätigen

Flash Videos einbinden

Anleitung für Vorlesungsaufzeichnungen mit Lecturnity. (im ZHG und diversen anderen Räumen der Universität Göttingen)

Microsoft Access 2010 Navigationsformular (Musterlösung)

Autor Jutta Pukies. Alle Rechte auf dieser Anleitung Köln

2. Im Admin Bereich drücken Sie bitte auf den Button Mediathek unter der Rubrik Erweiterungen.

Barcodedatei importieren

Animationen erstellen

Mind Mapping am PC. für Präsentationen, Vorträge, Selbstmanagement. von Isolde Kommer, Helmut Reinke. 1. Auflage. Hanser München 1999

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu])

L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016

Dokumentation IBIS Monitor

Bilder zum Upload verkleinern

Zum Konzept dieses Bandes

2. Im Admin Bereich drücken Sie bitte auf den roten Button Webseite bearbeiten, sodass Sie in den Bearbeitungsbereich Ihrer Homepage gelangen.

Die Post hat eine Umfrage gemacht

Erstellen einer GoTalk-Auflage

Gefahr durch Batterien!

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1

Persönliche Zukunftsplanung mit Menschen, denen nicht zugetraut wird, dass sie für sich selbst sprechen können Von Susanne Göbel und Josef Ströbl

Einfache Animation erstellen mit PhotoImpact

Was muss gesichert werden? -Ihre angelegten Listen und Ihre angelegten Schläge.

Übersicht. Wo lebt die Schildkröte? Wie programmiert man die Schildkröte? Wo lebt die Schildkröte? Wie programmiert man die Schildkröte?

Vorgehensweise bei Lastschriftverfahren

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Zwischenablage (Bilder, Texte,...)

ONLINE-AKADEMIE. "Diplomierter NLP Anwender für Schule und Unterricht" Ziele

Zur drittletzten Zeile scrollen

Die besten Excel-Tastenkombinationen im Überblick

Uwes Wiests Training

Datenbanken Kapitel 2

1. Einführung. 2. Alternativen zu eigenen Auswertungen. 3. Erstellen eigener Tabellen-Auswertungen

Wir machen neue Politik für Baden-Württemberg

Bevor Sie mit dem Wechsel Ihres Sicherheitsmediums beginnen können, sollten Sie die folgenden Punkte beachten oder überprüfen:

Der Tag hat 24 Stunden. Bitte schreibt in die linke Spalte alles auf, was ihr gestern getan habt und euch noch einfällt: War es ein stressiger

Internationales Altkatholisches Laienforum

Bau, Eigenheim, Hütte, Bude, Behausung, Heim

Informatik I Tutorial

Transkript:

UNTERRICHTEN MIT DEM RASPBERRY PI 35 M15 - Physical Computing mit dem Raspberry Pi I Heute wollen wir uns etwas genauer mit den Möglichkeiten des Raspberry Pi beschäftigen und ein Programm schreiben, das eine LED zum Leuchten bringt. Die folgenden Ideen zu den Bastel-Projekten stammen von der englischen WeiterbildungsGesellschaft OCR. Das kleine Bastelset, das Du bekommen hast, enthält folgende Teile: Drei LEDs Drei 220 Ω Widerstände 6 Jumper Kabel WARNUNG: Wenn du ein Kabel falsch anschließt, kann es sein, dass der Raspberry Pi kaputt geht. Schau also genau hin und frage lieber noch einmal nach, wenn Du Dir unsicher bist. Zunächst wollen wir nur eine LED an den Raspberry Pi anschließen. Drehe dazu einen der Widerstände um das kürzere Ende der LED. Das sollte dann in etwa so aussehen: Schließe nun die beiden Jumper Kabel an und verbinde das Kabel, das mit dem Widerstand verbunden ist, mit Pin 25 und das andere mit Pin 7. Die folgende Zeichnung 2 4 6 8 10 12 14 16 18 20 22 24 26 1 3 5 7 SD-Karte 9 11 13 15 17 19 21 23 25 TV-Out zeigt, welche Pins das sind:

UNTERRICHTEN MIT DEM RASPBERRY PI 36 M16 - Physical Computing mit dem Raspberry Pi II Hier siehst du noch einmal ein Foto, das dir zeigt, wo die Kabel angeschlossen werden müssen: Und hier ist noch ein Bild der fertigen Bastelarbeit:

UNTERRICHTEN MIT DEM RASPBERRY PI 37 M17 - Physical Computing mit dem Raspberry Pi III Nun muss noch das Programm geschrieben werden, das die LED leuchten lässt. Dafür musst du das Terminal öffnen und ein Programm schreiben. Um den Texteditor zu öffnen und eine Datei namens Leuchte.py zu erstellen, musst du Folgendes eingeben: nano Leuchte.py Anschließend musst du die folgenden Codezeilen abtippen. Alle Codezeilen mit dem Zeichen # am Anfang sagen dir, was die jeweiligen Zeilen Code machen. Du brauchst sie nicht mit abschreiben. # Am Anfang muss man eine so genannte Library, also eine Bibliothek # importieren, damit wir dem Programm Befehle geben können, die nur # eine bestimmte Zeit lang ausgeführt werden sollen. import time # Wir brauchen zudem noch eine weitere Bibliothek, um die GPIO-Schnittstelle # anzusprechen. # Dann löschen wir erst einmal alle Belegungen dieser Schnittstelle, die # eventuell noch vorhanden sind. # Nun müssen wir der Bibliothek sagen, wie wir die Pins nummerieren: # Jetzt geben wir den Befehl, dass Pin 7 ein Output sein soll: GPIO.setup(7,GPIO.OUT) # Nun programmieren wir eine Schleife, in der wir... #... die LED einschalten... GPIO.output(7,GPIO.HIGH) #... eine Sekunde warten... time.sleep(1) #...dann die LED wieder ausschalten... GPIO.output(7,GPIO.LOW) #...und wieder eine Sekunde warten. time.sleep(1) Nun kannst du die Datei speichern (STRG-X, dann y drücken und anschließend mit Enter bestätigen) und mit folgendem Befehl aufrufen:! sudo python Leuchte.py Die Tastenkombination STRG-C bricht das Programm ab.

UNTERRICHTEN MIT DEM RASPBERRY PI 38 M18 - Physical Computing mit dem Raspberry Pi IV Das nächste Projekt besteht darin, eine Ampel zu bauen. Dazu brauchst du alle drei LEDs, die du wieder so vorbereitest wie beim letzten Projekt. Denke daran, dass der Widerstand am kürzeren Ende der LED befestigt werden muss. Stecke anschließend wieder Kabel an beide Enden der LED an und verbinde die Kabel, die an den Widerständen angeschlossen sind, mit den Pins 14,20 und 25. Anschließend kommt das andere Ende der roten LED auf Pin3, das der gelben auf Pin5 und das der grünen auf Pin7. Hier ist zur Sicherheit noch einmal die Nummerierung der Pins: Das Ergebnis sollte in etwa wie folgt aussehen:

UNTERRICHTEN MIT DEM RASPBERRY PI 39 M19 - Physical Computing mit dem Raspberry Pi V Nun schreiben wir wieder ein Programm. Gib dafür folgenden Befehl im Terminal ein: nano Ampel.py Anschließend musst du folgenden Code eingeben: # Import der Bibliothek zur Zeitmessung import time # Import der Bibliothek für die GPIO-Schnittstelle # Löschen aller Belegungen dieser Schnittstelle # Nun müssen wir der Bibliothek sagen, wie wir die Pins nummerieren: # Jetzt geben wir den Befehl, dass Pin 3 ein Output sein soll: GPIO.setup(3,GPIO.OUT) #... ebenso Pin 5... GPIO.setup(5,GPIO.OUT) #... und Pin 7. GPIO.setup(7,GPIO.OUT) # Nun programmieren wir eine Schleife, in der wir... #... die rote LED einschalten... GPIO.output(3,GPIO.HIGH) #... zwei Sekunden warten... time.sleep(2) #... die gelbe LED einschalten... GPIO.output(5,GPIO.HIGH) #... zwei Sekunden warten... time.sleep(2) #... die gelbe und rote LED ausschalten... GPIO.output(5,GPIO.LOW) GPIO.output(3,GPIO.LOW) #... die grüne LED anschalten... GPIO.output(7,GPIO.HIGH) #... zwei Sekunden warten... time.sleep(2) #...dann die grüne LED wieder ausschalten... GPIO.output(7,GPIO.LOW) #... und die gelbe LED einschalten... GPIO.output(5,GPIO.HIGH) #...wieder zwei Sekunden warten... time.sleep(2) #... und die gelbe LED ausschalten... GPIO.output(5,GPIO.OUT) Nun kannst du die Datei speichern (STRG-X, dann y drücken und anschließend mit Enter bestätigen) und mit folgendem Befehl aufrufen: sudo python Ampel.py

UNTERRICHTEN MIT DEM RASPBERRY PI 40 M20 - Einen Taster an den Raspberry Pi anschließen Manche elektronische Bauteile lassen sich nicht einfach direkt an ein Kabel anschließen. Für unser nächstes Projekt benötigen wir daher ein sogenanntes Steckbrett. Stecke zunächst den Taster, den du bekommen hast, wie folgt in das Steckbrett: Anschließend nimmst du ein Jumper-Kabel mit einem männlichen und einem weiblichen Ende und schließt es an den Pin 1 des Raspberry Pi. Nun musst du den Widerstand (10 kohm) in das andere Ende des Kabels stecken. Verbinde das freie Ende des Kabels mit einem weiteren Kabel. Das Ergebnis sollte wie folgt aussehen: 10 kohm Widerstand Hier ist zur Erinnerung noch einmal die Pin-Belegung: Stecke nun das freie Kabelende an folgende Stelle ins Steckbrett: Nun musst du zwei weitere Kabel anschließen. Eins an Pin 6 und eins an Pin 11. Die anderen Enden kommen an folgende Stelle auf dem Steckbrett: zu Pin11 zu Pin1 (mit Widerstand) zu Pin 6

UNTERRICHTEN MIT DEM RASPBERRY PI 41 M21 - Den Taster programmieren Um den Schalter benutzen zu können, musst du wieder ein Programm schreiben. Gib dafür folgenden Befehl im Terminal ein: nano Taster.py Anschließend musst du folgenden Code eingeben: # Import der Bibliothek für die GPIO-Schnittstelle # Löschen aller Belegungen dieser Schnittstelle # Nun müssen wir der Bibliothek sagen, wie wir die Pins nummerieren: # Jetzt geben wir den Befehl, dass Pin 11 ein Input sein soll: GPIO.setup(11,GPIO.IN) # Nun programmieren wir eine Schleife, in der wir... #... alles, was von Pin 11 an Eingaben kommt, Taster nennen. # Wenn die Taste gedrückt ist, dann soll das Programm... if Taster == False: # Drück mich! auf den Bildschirm schreiben. print (`Drück mich!`) # Und wenn die Taste losgelassen wird,... while Taster == False: #...soll nichts passieren. Nun kannst du die Datei speichern (STRG-X, dann y drücken und anschließend mit Enter bestätigen) und mit folgendem Befehl aufrufen: sudo python Taster.py Im nächsten Schritt werden wir mit diesem Programmcode den Taster auch in Minecraft benutzen.

UNTERRICHTEN MIT DEM RASPBERRY PI 42 M22 - Den Taster in Minecraft verwenden I Wir können nun den Programmcode, den wir zum Bedienen des Tasters geschrieben haben, auch dazu verwenden, den Taster in Minecraft zu verwenden. Dazu kopieren wir zunächst das Programm in den Minecraft-Ordner mit folgendem Befehl: mv Taster.py./mcpi/api/python Wechsle nun in das Verzeichnis mit dem Befehl: cd mcpi/api/python Und schaue mit folgendem Befehl, ob die Datei in dem Verzeichnis ist: ls Findest du die Datei Taster.py? Gut, dann editieren wir sie mit dem Befehl: nano Taster.py Und fügen folgenden Programmcode hinzu # Zunächst importieren wir die Minecraft-Bibliothek... import minecraft.minecraft as minecraft # und erstellen eine Variable, die sich mit dem Spiel verbindet: mc = minecraft.minecraft.create() GPIO.setup(11,GPIO.IN) if Taster == False: # Dann löschen wir die folgende Zeile print (`Drück mich!`) # Und ersetzen Sie durch den Befehl: mc.posttochat(`drück mich!`) while Taster == False: Nun kannst du die Datei speichern (STRG-X, dann y drücken und anschließend mit Enter bestätigen). Starte dann Minecraft. Öffne anschließend die Konsole und starte das Programm mit dem Befehl: sudo python Taster.py

UNTERRICHTEN MIT DEM RASPBERRY PI 43 M23 - Den Taster in Minecraft verwenden II Nun können wir die Taste auch dazu verwenden, andere Dinge in Minecraft zu tun, z. B. können wir die Position der Spielfigur verändern. Dazu müssen wir wieder den Texteditor aufrufen, um die Datei Taster.py verändern zu können: nano Taster.py Dann muss der Code wie folgt verändert werden: import minecraft.minecraft as minecraft mc = minecraft.minecraft.create() GPIO.setup(11,GPIO.IN) if Taster == False: # Dann löschen wir die folgende Zeile: mc.posttochat(`drück mich!`) # Erstellen einer Variable, die die Position ermittelt: Pos = mc.player.getpos() # Konvertieren der Zahlen in das integer -Format: Pos = minecraft.vec3(int(pos.x),int(pos.y),int(pos.z)) # Nun können wir die Spielfigur 20 Blöcke hochsetzen: mc.player.setpos(pos.x,pos.y + 20,Pos.z) while Taster == False: Nun kannst du die Datei speichern (STRG-X, dann y drücken und anschließend mit Enter bestätigen). Starte dann Minecraft. Öffne anschließend die Konsole und starte das Programm mit dem Befehl: sudo python Taster.py

UNTERRICHTEN MIT DEM RASPBERRY PI 44 M24 - Den Taster in Minecraft verwenden III Wir können mit einem Tastendruck auch einen Block setzen, dazu müssen wir die Datei Taster.py wie folgt verändern: import minecraft.minecraft as minecraft # Am Anfang müssen wir die Block-Bibliothek importieren import minecraft.block as block mc = minecraft.minecraft.create() GPIO.setup(11,GPIO.IN) if Taster == False: Pos = mc.player.getpos() Pos = minecraft.vec3(int(pos.x),int(pos.y),int(pos.z)) # Dann löschen wir die folgende Zeile: mc.player.setpos(pos.x,pos.y + 20,Pos.z) # Und setzen vor uns einen Steinblock: mc.setblock(pos.x+1,pos.y+1,pos.z,block.stone) while Taster == False: Du kannst mit einem Tastendruck auch mehrere Blöcke gleichzeitig erschaffen, dafür löscht du die Zeile: mc.setblock(pos.x+1,pos.y+1,pos.z,block.stone) Und schreibst stattdessen z.b.: mc.setblocks (Pos.x,Pos.y,Pos.z,Pos.x,Pos.y+10,Pos.z,block.STONE Hier ist zum Abschluss noch eine Liste aller Blöcke, die du setzen kannst: AIR STONE GRASS DIRT COBBLESTONE WOOD_PLANKS SAPLING BEDROCK WATER_FLOWING WATER_STATIONARY LAVA_FLOWING LAVA_STATIONARY SAND GRAVEL GOLD_ORE IRON_ORE COAL_ORE WOOD LEAVES GLASS LAPIS_LAZULI_ORE LAPIS_LAZULI_BLOCK SANDSTONE BED = Block(0) = Block(1) = Block(2) = Block(3) = Block(4) = Block(5) = Block(6) = Block(7) = Block(8) = Block(9) = Block(10) = Block(11) = Block(12) = Block(13) = Block(14) = Block(15) = Block(16) = Block(17) = Block(18) = Block(20) = Block(21) = Block(22) = Block(24) = Block(26) COBWEB GRASS_TALL WOOL FLOWER_YELLOW FLOWER_CYAN MUSHROOM_BROWN MUSHROOM_RED GOLD_BLOCK IRON_BLOCK STONE_SLAB_DOUBLE STONE_SLAB BRICK_BLOCK TNT BOOKSHELF MOSS_STONE OBSIDIAN TORCH FIRE STAIRS_WOOD CHEST DIAMOND_ORE DIAMOND_BLOCK CRAFTING_TABLE FARMLAND = Block(30) = Block(31) = Block(35) = Block(37) = Block(38) = Block(39) = Block(40) = Block(41) = Block(42) = Block(43) = Block(44) = Block(45) = Block(46) = Block(47) = Block(48) = Block(49) = Block(50) = Block(51) = Block(53) = Block(54) = Block(56) = Block(57) = Block(58) = Block(60) FURNACE_INACTIVE FURNACE_ACTIVE DOOR_WOOD LADDER STAIRS_COBBLESTONE DOOR_IRON REDSTONE_ORE SNOW ICE SNOW_BLOCK CACTUS CLAY SUGAR_CANE FENCE GLOWSTONE_BLOCK BEDROCK_INVISIBLE STONE_BRICK GLASS_PANE MELON FENCE_GATE GLOWING_OBSIDIAN NETHER_REACTOR_CORE = Block(61) = Block(62) = Block(64) = Block(65) = Block(67) = Block(71) = Block(73) = Block(78) = Block(79) = Block(80) = Block(81) = Block(82) = Block(83) = Block(85) = Block(89) = Block(95) = Block(98) = Block(102) = Block(103) = Block(107) = Block(246) = Block(247)