Escape Game: Der verschlüsselte Tresor

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Autoren: Mohammed Yassine Houari
Betreuer: Prof. Schneider oder Prof. Göbel oder Marc Ebmeyer


Einleitung

Dieses Projekt orientiert sich am Konzept klassischer Escape-Games, bei denen die Spieler Schritt für Schritt Rätsel lösen müssen, um ein finales Ziel zu erreichen. Ausgangspunkt ist die Handlung eines fiktiven Szenarios: Ein verschlossener Tresor enthält wichtige Informationen. Nur wer die richtige Zahlenkombination findet, kann ihn innerhalb eines vorgegebenen Zeitlimits öffnen. Um an diese Zahlenkombination zu gelangen, müssen die Spieler mehrere logische und sensorbasierte Aufgaben in der richtigen Reihenfolge meistern.

In unserem Projekt erhalten die Spieler nach dem Lösen des ersten Rätsels eine Schlüsselzahl. Diese dient als Ausgangspunkt für die nachfolgenden Level. Mithilfe verschiedener Hinweise, die aus Sensormessungen und MATLAB-Visualisierungen abgeleitet werden, müssen sie die Schlüsselzahl weiterverarbeiten und daraus neue Lösungen erschließen. Jede dieser Lösungen stellt ein notwendiges Passwort für das nächste Level dar. Erst wenn alle Passwörter korrekt kombiniert werden, lässt sich der finale Code bestimmen, mit dem der Servo-Motor den Tresormechanismus freigibt und das Spiel erfolgreich abgeschlossen wird.

Anforderungen

Für die erfolgreiche Umsetzung des Projekts „Der verschlüsselte Tresor“ müssen folgende Anforderungen erfüllt werden:

Zeitlimit: Das gesamte Spiel ist auf eine maximale Dauer von fünf Minuten ausgelegt, um den Escape-Game-Charakter zu wahren.

Mehrstufiges Rätselkonzept:

Das erste Level liefert eine Schlüsselzahl, die Ausgangspunkt für alle weiteren Aufgaben ist.

Jedes weitere Level baut logisch auf dieser Zahl auf und generiert ein Passwort, das für das nächste Level benötigt wird.

Alle Passwörter zusammen ergeben den finalen Code zur Tresoröffnung.

Sensorintegration: Mindestens zwei verschiedene Sensoren (z. B. Ultraschallsensor, Temperatursensor, Taster) werden eingebunden, um interaktive Rätsel physisch erfahrbar zu machen.

Arduino-Einsatz: Steuerung der Sensoren und Aktoren sowie Kommunikation mit MATLAB über die serielle Schnittstelle.

MATLAB-Nutzung:

Visualisierung von Sensordaten (z. B. Temperaturkurve, Abstandsdiagramm).

Unterstützung der Spieler durch Hinweise und Prüfmechanismen.

Mechanische Umsetzung: Ein Servo-Motor übernimmt die Entriegelung des Tresors, sobald der finale Code korrekt eingegeben wurde.

Dokumentation:

Technische Beschreibung (Hardware, Software, Schaltpläne).

Funktionsweise des Spiels mit Ablaufdiagramm.

Veröffentlichung im HSHL-Wiki nach wissenschaftlichen Standards.

Funktionaler Systementwurf

Das funktionale Konzept des Projekts „Der verschlüsselte Tresor“ basiert auf einem mehrstufigen Escape-Game-Mechanismus, bei dem die Spieler innerhalb eines Zeitlimits verschiedene Rätsel lösen müssen. Jede erfolgreich absolvierte Stufe liefert Hinweise oder Passwörter, die in Kombination den finalen Code zur Öffnung des Tresors ergeben.

Das System ist in drei zentrale Funktionsblöcke gegliedert: Eingabe, Verarbeitung und Ausgabe.

Auf der Eingabeebene interagieren die Spieler mit mehreren Sensoren und Bedienelementen. Dazu zählen ein Ultraschallsensor zur Abstandsmessung, ein Temperatursensor für temperaturabhängige Aufgaben sowie Taster oder ein Keypad zur Eingabe von Zahlenkombinationen.

Die Verarbeitungsebene wird durch den Mikrocontroller (Arduino Uno) realisiert. Er nimmt die Sensordaten auf, prüft die Eingaben anhand vordefinierter Spielregeln und übermittelt Zwischenergebnisse an MATLAB. MATLAB fungiert dabei als Auswertungs- und Visualisierungsplattform, auf der die Spieler Rückmeldungen in Form von Anzeigen, Hinweisen oder Fortschrittsanzeigen erhalten.

Auf der Ausgabeeinheit signalisieren LEDs den aktuellen Spielstatus (z. B. Erfolg oder Misserfolg einzelner Aufgaben). Über das Display und die MATLAB-GUI werden zusätzliche Informationen bereitgestellt. Der Abschluss des Spiels erfolgt durch einen Servo-Motor, der den mechanischen Öffnungsmechanismus des Tresors aktiviert, sobald der finale Code korrekt eingegeben wurde.

Durch diese funktionale Architektur entsteht ein durchgängiger Ablauf von der Spielerinteraktion über die Verarbeitung und Visualisierung bis hin zur physischen Rückmeldung. Damit wird eine immersive und zugleich technisch nachvollziehbare Escape-Game-Erfahrung geschaffen.

Technischer Systementwurf

Die technische Systemarchitektur beschreibt ein mikrocontrollergestütztes Rätselsystem, das mehrere Eingabestufen verarbeitet und durch MATLAB-Visualisierung ergänzt wird. Die Energieversorgung erfolgt über die Spannungsversorgung des Mikrocontrollers und stellt die Betriebsfähigkeit aller Sensoren und Aktoren sicher.

Das System gliedert sich in drei funktionale Ebenen: Eingabe, Verarbeitung und Ausgabe.

Auf der Eingabeebene erfassen verschiedene Sensoren (Ultraschallsensor, Temperatursensor, Taster) die Interaktionen der Spieler.

Die Verarbeitungsebene übernimmt der Mikrocontroller (Arduino Uno), der die Eingangssignale sammelt, die Spielregeln überprüft und Zwischenergebnisse an MATLAB überträgt. Dort werden die Daten in Echtzeit visualisiert und die Spieler mit zusätzlichen Hinweisen unterstützt.

Die Ausgabeeinheit umfasst LEDs zur Signalisierung von Erfolg/Misserfolg, ein Display zur Darstellung von Hinweisen sowie einen Servo-Motor, der den Tresormechanismus öffnet, sobald der finale Code korrekt eingegeben wurde.

Der Mikrocontroller fungiert als zentrale Steuereinheit, die sämtliche Eingangsdaten aufnimmt, die Logikprüfung durchführt und Rückmeldungen an MATLAB sowie an die Spieler ausgibt. MATLAB dient dabei nicht nur als Visualisierungstool, sondern auch als Kontrollinstanz, die den Datenfluss transparent macht und zusätzliche Berechnungen für das Spielgeschehen durchführt.

Durch diese Systemarchitektur wird ein durchgängiger Ablauf gewährleistet – von der Erfassung der Sensordaten über die Verarbeitung und Visualisierung bis zur mechanischen Entriegelung des Tresors. Die modulare Struktur ermöglicht eine flexible Erweiterung, sodass bei Bedarf weitere Rätsel-Elemente integriert werden können.

Abb. 01: Technischer Systementwurf

Komponentenspezifikation

Mikrocontroller und Basis

Arduino Uno R3 (ATmega328P)

Steuereinheit für alle Sensoren und Aktoren.

14 digitale I/O-Pins, davon 6 PWM; 6 analoge Eingänge.

Kommunikationsschnittstelle: USB-Serial für MATLAB-Anbindung.

Versorgung: 5 V (USB oder externer Adapter).

Sensoren (für Rätsel-Eingaben)

Ultraschallsensor HC-SR04

Messbereich: 2 cm – 400 cm.

Genauigkeit: ±3 mm.

Aufgabe im Spiel: Spieler müssen die Hand/Objekt auf eine bestimmte Distanz (z. B. 15 cm) positionieren → liefert Teillösung.

Temperatursensor DHT22

Messbereich: –40 °C bis +80 °C.

Genauigkeit: ±0,5 °C.

Aufgabe im Spiel: Ziel ist das Erreichen/Halten einer Temperaturgrenze, die MATLAB überprüft.

4x4 Keypad (Matrix-Tastenfeld)

16 Tasten (Zahlen 0–9, A–D, *, #).

Aufgabe im Spiel: Eingabe von Passwörtern oder des finalen Codes.

Taster (Momentary Push Button, 12 mm)

Schaltspannung: 5 V DC.

Aufgabe: Start/Reset des Spiels oder Bestätigung einer Eingabe.

Ausgabeeinheiten (Feedback an Spieler)

LEDs 5 mm (rot/grün/gelb)

Spannung: 2–2,2 V (rot/gelb), 3,0 V (grün).

Aufgabe: Anzeige von Erfolg/Misserfolg bei Teillösungen.

OLED Display 0.96 I2C (SSD1306 Controller)

Auflösung: 128 × 64 Pixel.

Aufgabe: Darstellung von Hinweisen, Statusmeldungen, Zwischen-Codes.

Servo-Motor SG90 (Micro Servo, 9 g)

Stellbereich: 0–180°.

Betriebsspannung: 4,8 – 6 V.

Aufgabe: Entriegelt den „Tresor“ mechanisch, sobald der finale Code korrekt ist.

Stromversorgung und Zusatz

Arduino USB 5 V (für Entwicklung/PC-Betrieb).

Optional externe 5 V Netzteilversorgung (für stabile Servo-Ansteuerung).

Breadboard + Jumperkabel (Dupont male/female) für flexible Verdrahtung.

Vorwiderstände 220 Ω / 330 Ω für LED-Schaltungen.

Umsetzung (HW/SW)

Komponententest

Ergebnis

Zusammenfassung

Lessons Learned

Projektunterlagen

Projektplan

Projektdurchführung

YouTube Video

Weblinks

Literatur


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