Platzhalter

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Autoren: Constantin Bresch, Robin Holle, Grigorij Bonert
Betreuer: Prof. Schneider oder Prof. Göbel oder Marc Ebmeyer


Einleitung

  • Woraus besteht das Rätsel?
  • Bezug zum Studium?

Lernziel: ??

Schwierigkeitsgrad: Einsteiger/Fortgeschrittene/Profi

Anforderungen

Tabelle 1: xxx
ID Inhalt Prio Ersteller Datum Geprüft von Datum
1 Ein Netzteil muss die Betriebsspannung der Eisenbahn von 8,1 V liefern. 1 U. Schneider 03.10.2025 03.10.2025 M. Göbel

Beachten Sie den Artikel: Formulierungsregeln für Anforderungen

Beantworten Sie die Frage: Was soll das System leisten?

Funktionaler Systementwurf

1. Hauptfunktionen des Systems

Das Gesamtsystem lässt sich funktional in folgende Teilfunktionen aufteilen:

  • Spielstart erkennen
  • Countdown starten und überwachen
  • Eingabecode erfassen
  • Code überprüfen
  • Raketenstart-System freischalten
  • Reihenfolge der Startvorbereitungen überwachen
  • Raketenstart freigeben
  • Spieler über den Spielzustand informieren
  • Spielzeit und Highscore erfassen


2. Funktionaler Ablauf

2.1 Spielstart

Das System wartet zunächst auf die Aktivierung durch den Spieler. Durch die Betätigung des grünen Starttasters wird das Spiel gestartet.

Dabei werden gleichzeitig:

  • der Countdown auf X Minuten gesetzt,
  • der Spielzustand auf „Spiel läuft“ gesetzt,
  • die erste Rätselstufe aktiviert.

Während des gesamten Spiels wird die verbleibende Zeit überwacht.

2.2 Ermittlung des Zugangscodes

Die Spieler erhalten einen Hinweiszettel mit Informationen zu:

  • E24-Widerstands-Farbcodes,
  • Dezimal- und Hexadezimalumrechnung,
  • U = R*I,
  • Hinweisen zur Reihenfolge der anzuschließenden Kabel

Sowie drei Kohleschichtwiderstände. Aus diesen Widerständen müssen die Spieler einen 12-stelligen Zugangscode ermitteln.

Der Code basiert auf den drei Widerstandswerten: 220 Ω, 4,7 kΩ, 10 kΩ. Die Widerstände müssen entsprechend der geforderten Reihenfolge (aufsteigend) angeordnet werden. Der ermittelte Code wird anschließend über eine Eingabeeinheit eingegeben.

2.3 Überprüfung des Zugangscodes

Das System vergleicht den eingegebenen Code mit dem vorgegebenen korrekten Code. Bei korrekter Eingabe: → Das Raketenstart-System wird freigeschaltet und die nächste Rätselstufe aktiviert. Bei falscher Eingabe: → Das System bleibt gesperrt und die Spieler müssen den Code erneut ermitteln und eingeben. Der Countdown läuft währenddessen weiter.

2.4 Startvorbereitung der Rakete

Nach erfolgreicher Codeeingabe müssen die Spieler die Rakete für den Start vorbereiten. Hierfür befinden sich am System sechs gekennzeichnete Leitungen bzw. Verbindungselemente. Drei davon müssen in einer bestimmten Reihenfolge verbunden werden. Die korrekte Reihenfolge ergibt sich aus den Hinweisen des Hinweiszettels.

1. Kabel:

„1. max R verHEXt“

fordert die Spieler dazu auf, den größten Widerstand zu bestimmen und dessen Wert in eine Hexadezimalzahl umzuwandeln. Der größte Widerstand ist: 10 kΩ = 10.000 Ω. Die Umrechnung ergibt: 10.000₁₀ = 2710₁₆. Das entsprechende Verbindungselement ist mit 2710 gekennzeichnet. Das System muss erkennen, wenn dieses Element als erste Startvorbereitung korrekt angeschlossen wurde.

2. Kabel:

„I = I Aber Achtung: Strom ist nicht gleich Strom! oder min R verHEXt“

interpretieren. Gesucht wird nun der kleinste Widerstand: 220 Ω Die Umrechnung ergibt: 220₁₀ = DC₁₆ (Direct Current "gleich Strom" als Wortspielhinweis) Das entsprechende Verbindungselement trägt die Kennzeichnung DC. Das System muss überprüfen, ob dieses Element als zweiter Schritt korrekt angeschlossen wurde.

3. Kabel:

Als letzte Aufgabe müssen die Spieler anhand der Angaben

"I sei 14 mA. U = 3 V; R = ?"

den erforderlichen Widerstand für die LED-Schaltung bestimmen. Dabei müssen die Spieler einen passenden Widerstand aus den vorhandenen E24-Werten auswählen. Für die vorgesehene Schaltung wird ein 220-Ω-Widerstand verwendet. Erst nach dem Einsetzen des richtigen Widerstands zeigt eine RGB-LED die korrekte Farbe. Die Spieler müssen anhand der ausgegebenen LED-Farbe das Kabel in der entsprechenden Farbe verbinden. Das System muss überprüfen, ob dieses Element als dritter Schritt korrekt angeschlossen wurde.

2.5 Raketenstart

Sind alle Startvorbereitungen erfolgreich abgeschlossen wird die Startfreigabe der Rakete aktiviert. Das System wechselt in den Zustand:

„Rakete startbereit“

Anschließend kann der eigentliche Raketenstart ausgelöst werden.

Bei erfolgreichem Start:

wird der Countdown gestoppt, die benötigte Zeit wird gespeichert, der Spielzustand wird auf „Erfolgreich“ gesetzt, die erreichte Zeit wird angezeigt, der Highscore wird aktualisiert, sofern eine neue Bestzeit erreicht wurde.

Auf dem Display erscheint beispielsweise:

„RAKETE ERFOLGREICH GESTARTET!“

sowie die benötigte Zeit.

3. Fehlerbehandlung

Das System muss falsche Aktionen erkennen und entsprechend reagieren.

Falscher Zugangscode: Bei einem falschen Code bleibt das Raketenstart-System gesperrt.

Die Spieler können weitere Eingabeversuche durchführen.

Falsche Reihenfolge: Wird eine falsche Startvorbereitung durchgeführt, wird der Spielversuch als gescheitert gewertet. Das System zeigt beispielsweise: „STARTABBRUCH!“ Der aktuelle Spielversuch endet.

Zeitüberschreitung: Erreicht der Countdown 0 Sekunden, bevor die Rakete gestartet wurde, wird der Spielversuch ebenfalls beendet. Das System zeigt beispielsweise: „ZEIT ABGELAUFEN – STARTABBRUCH!“

4. Informations- und Ausgabefunktion

Das System muss den aktuellen Spielzustand für die Spieler verständlich darstellen. Während des Spiels können beispielsweise angezeigt werden:

  • verbleibende Zeit,
  • aktuelle Rätselstufe,
  • Eingabeaufforderungen,
  • Fehlermeldungen,
  • erfolgreiche Zwischenschritte,
  • Startbereitschaft

Am Ende werden abhängig vom Ergebnis unterschiedliche Informationen ausgegeben.

Technischer Systementwurf

Systemübersicht

Zentrale Steuereinheit ist ein Arduino Mega 2560. Er liest alle Eingaben der Spieler ein, steuert den Spielablauf und gibt Rückmeldungen über Display, Soundmodul und LEDs aus. Der Mega wird wegen der benötigten Pinanzahl eingesetzt (Tastatur, sechs Kabelbuchsen, Taster, RGB-LED, Soundmodul).

Das System gliedert sich in drei Ebenen:

  • Eingabe: Starttaster, Tastatur, Kabelbuchsen, Widerstandssteckplatz, Raketenstart-Taster
  • Verarbeitung: Arduino mit Zustandsautomat, Countdown und Highscore-Speicher
  • Ausgabe: Display, Soundmodul mit Lautsprecher, RGB-LED, Taster-LED

Teilsysteme

Tabelle 1: Teilsysteme und technische Umsetzung
Teilsystem Aufgabe Technische Umsetzung
Steuerung Spielablauf, Countdown, Highscore Arduino Mega 2560, Zeitmessung mit millis(), Bestzeit im internen EEPROM
Bedienelemente Spiel starten, Rakete starten Grüner und roter Taster an Digitaleingängen
Codeeingabe 12-stelligen Zugangscode erfassen 4x4-Matrixtastatur
Kabelerkennung Gesteckte Verbindungen und deren Reihenfolge erkennen Sechs Buchsen an Digitaleingängen, Stecker schließt den Kontakt gegen Masse
Widerstandserkennung Eingesetzten Widerstand identifizieren Spannungsteiler mit Referenzwiderstand an einem Analogeingang
Farbhinweis Kabelfarbe für Schritt 3 anzeigen RGB-LED an PWM-Ausgängen, Farbe abhängig vom erkannten Widerstand
Anzeige Restzeit, Rätselstufe, Meldungen I2C-Display (OLED oder LCD 16x2)
Audio Akustische Rückmeldung und Atmosphäre MP3-Soundmodul (z. B. DFPlayer Mini) mit microSD-Karte und Lautsprecher, seriell angesteuert
Versorgung 5 V für alle Komponenten USB-Netzteil oder Powerbank

Display

Beide Varianten werden über denselben I2C-Bus angesteuert, die Verdrahtung bleibt also gleich.

Tabelle 2: Vergleich der Displayvarianten
OLED 0,96" (SSD1306, 128x64) LCD 16x2 mit I2C-Adapter
Vorteil Freie Schriftgrößen, großer Countdown, Grafiken möglich Aus der Entfernung gut lesbar, sehr einfache Ansteuerung
Nachteil Klein, für mehrere Spieler schlecht ablesbar Nur 2 x 16 Zeichen, lange Meldungen müssen gekürzt oder gescrollt werden

Beim LCD 16x2 zeigt Zeile 1 die Restzeit und die Rätselstufe, Zeile 2 die Eingabe oder Meldung. Lange Texte wie „RAKETE ERFOLGREICH GESTARTET!“ werden als Lauftext oder auf zwei Anzeigen verteilt ausgegeben; die ausführliche Rückmeldung übernimmt das Soundmodul.

Audiokonzept

Das Soundmodul spielt Audiodateien von der microSD-Karte ab, die der Arduino per Nummer aufruft. Vorgesehen sind:

  • Spielstart (Ansage oder Sirene)
  • Tastendruck sowie Code richtig/falsch
  • Kabelschritt korrekt
  • Countdown-Warnung in der letzten Minute
  • Startabbruch und Zeit abgelaufen
  • Raketenstart (Triebwerksgeräusch)

Spielablauf in der Software

Die Software ist als Zustandsautomat aufgebaut:

  1. Bereit: Anzeige des Highscores, Warten auf den Starttaster
  2. Codeeingabe: Eingabe und Prüfung des Zugangscodes, beliebig viele Versuche
  3. Startvorbereitung: Drei Kabelschritte in fester Reihenfolge; im dritten Schritt ist die Widerstandserkennung mit RGB-LED aktiv
  4. Startbereit: Raketenstart-Taster ist freigegeben
  5. Erfolg: Zeit anzeigen, Highscore aktualisieren
  6. Abbruch: bei falschem Kabel oder abgelaufenem Countdown

Der Countdown läuft in den Zuständen 2 bis 4 durchgehend weiter. Aus den Endzuständen führt der Starttaster zurück zu „Bereit“.

Komponentenspezifikation

Die Komponentenspezifikation beschreibt anschließend genau, welche Anforderungen eine einzelne Komponente erfüllen muss.

Sie beantwortet die Frage: Welche Eigenschaften muss jede konkrete Komponente erfüllen?

Tabelle 2: Stückliste
ID Anzahl Kosten pro Stück € Summe Bezeichnung / Link Funktion Abbildung
1 1x 23,70€ 23,70€ Arduino UNO R3 Microcontroller
2 1x 15,20€ 15,20€ I2C Display OLED / LCD Informationsausgabe

Umsetzung (HW/SW)

Hier beschreiben Sie, wie Sie Ihr Projekt gebaut haben. Anhand dieser Dokumente und Beschreibung muss es möglich sein, Ihr Projekt 1:1 nachzubauen!

Das sind Dokumente wie z. B.

  • Entwürfe, Skizzen (auch handschriftliche)
  • Schaltplan
  • Verkabelungsplan
  • Pin-Belegungsplan
  • CAD-Ansichten
  • mathematische Berechnungen
  • u.s.w.

Bei allen Dokumenten verlinken Sie dieses mit Ihrem Dokument in SVN!

Komponententest

Ergebnis

Zusammenfassung

Lessons Learned

Projektunterlagen

Projektplan

Projektdurchführung

Tipp 1

Tipp 2

Musterlösung

YouTube Video

Weblinks

Literatur


→ zurück zur Übersicht: WS 26/27: Escape Game