Ampelprojekt mit dem Raspberry Pi

Abbildung 1: Im Vordergrund mittig die Ampel für Autofahrer und Fußgänger, etwas rechts davon der Taster zum Anfordern des Signals. Im Hintergrund rechts der Raspberry Pi4 mit dunklem Miuzei-Gehäuse.

Die Ampel ist ein beliebtes Beispiel im Informatikunterricht zur Zustandsmodellierung. In diesem Beitrag wird ausgehend von einem Raspberry Pi ein Ampelmodell entwickelt und programmiert. Das Projekt wird in drei Phasen entwickelt:

Voraussetzungen

Die Basis bildet der Raspberry Pi. Er ist mit Python einfach zu programmieren, verfügt über eine gute Anschlussfähigkeit dank der GPIO-Pins und über einen HDMI-Ausgang, den man beim Einsatz im Unterricht mit einer Dokumentenkamera oder direkt mit einem Beamer verbinden kann. Eine USB-Tastatur und Maus oder eine Bluetooth Multimedia-Tastatur ergänzen die Hardware. Geladen wird als Betriebssystem Rasberry Pi OS (früher Raspian). Das OS lässt sich frei herunterladen und auf eine Micro-SD-Karte schreiben. Kleine Ampeln lassen sich mit dem 3D-Drucker herstellen. Vorlagen gibt es zum Beispiel bei Thingiverse. Alternativ gibt es fertige Ampeln zum Bestellen. LEDs, Taster und Widerstände sind nicht besonders teuer und können bei verschiedenen Anbietern über das Internet bestellt werden.

Ziel

Abbildung 2: Die gesamte Ampelanlage.

Die gesamte Ampelanlage ist auf ein Sperrholzbrett montiert, die Straße aus Tonpapier ausgeschnitten und aufgeklebt. Die Verdrahtung erfolgt auf der Unterseite des Brettes: Die beiden Ampel für die Autofahrer sind parallel geschaltet, ebenso die Ampel für die Fußgänger. Es gibt zwei Taster, die mit einem Pull-Down-Widerstand als Input zur Anforderung des Fußgängersignals funktionieren. Programmierseitig werden sie mit einer ODER-Logik verbunden.

Video 1: Das fertige Ampelmodell

Weiter: Testaufbau am Steckbrett >>

Creative Commons Lizenzvertrag Dieses Werk ist lizenziert unter einer Creative Commons Namensnennung 4.0 International Lizenz.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert