Drücken Sie „Enter“, um den Inhalte zu überspringen

Python | Schülerpraktikum

Was sollte ein Schülerpraktikum in der Softwareentwicklung beinhalten? Und welche Inhalte sind in fünf Tagen vermittelbar? Das primäre Ziel des Praktikums soll laut Schule sein, dem Praktikanten einen Einblick in die Abläufe innerhalb des Betriebs zu geben. Während eines Projektes und so lange alle Aufgaben hinreichend spezifiziert sind, läuft bei uns in der Firma ein typischer Tag mit relativ wenig Kommunikation ab. Ausnahmen sind selbstverständlich die Pausen. Ich habe also für das Praktikum die Aufgabe, den viel spannenderen Teil der Anforderungsaufnahme und der Spezifikation nachzustellen. Ein laufendes Projekt bietet sich dafür nicht unbedingt an und wäre auch viel zu komplex. Ich will es daher mit einem „schülergerechten“, vergleichbaren Projekt versuchen. Damit der Praktikant im Anschluss an das Praktikum auch etwas mit nach Hause nehmen kann, will ich einen Raspberry Pi zum Einsatz bringen. Je nach Level des Praktikanten (das wird sich am ersten Tag relativ schnell herausstellen), habe ich zwei Projektideen:

  1. Morseblinker
  2. Fußgängerampel (lite)

Morseblinker

Aufgabe ist es, auf einem Raspberry Pi einen Text einzulesen und anschließend den Text mittels einer am Raspberry Pi angeschlossenen LED in Morsecodes wieder auszugeben. Die Texteingabe wird über die Tastatur realisiert. Optional kann der Text über eine Datei eingelesen werden.

Fußgängerampel

Aufgabe ist es, mittels einem Raspberry Pi ein Modell einer Fußgängerampel zu realisieren. Die Ampel wird dabei mittels LEDs dargestellt; drei LEDs für „Autos“, zwei LEDs für „Fußgänger“. Die Umschaltung der Ampel wird über einen Taster realisiert. Das Projekt lässt sich in mehreren Teilprojekten realisieren:

  1. Teilprojekt 1: Taster steuert jede Phase der Ampel
  2. Teilprojekt 2: Die Ampel schaltet zeitgesteuert ohne Berücksichtigung des Tasters
  3. Teilprojekt 3: Die Ampel schaltet nur nach Anforderung durch den Taster

Für die Ampelschaltung bietet sich die Realisierung über einen Zustandsautomaten an. Diesen als Teil des Projektes selbst zu entwickeln halte ich für zu umfangreich für den gegebenen Zeitrahmen. Aus diesem Grund habe ich die Basisklasse für einen Zustandsautomaten schon mal vorbereitet.

Share This