Top Secret: Schatztruhe mit RFID-Schloss
Das erwartet euch
Psst, top secret! Mit dieser Anleitung baut ihr eine geheime Schatztruhe, die sich per Funk-Identifikation öffnet. Nur wer den richtigen Code hat, knackt das elektronische RFID-Schloss und findet euren Schatz.
Einfach selber machen!
Die Anleitung zeigt euch, was ihr für das Projekt braucht und führt euch durch alle wichtigen Zwischenschritte.
- Alter: ab der 8. Klasse
- Dauer: 2 – 4 Stunden (je nach Vorkenntnissen)
- Geschätzte Materialkosten: 60 – 70 €
ohne Bastelmaterial und Werkzeuge (Stand: April 2026)
Nach dem Projekt könnt ihr:
- ein elektronisches RFID-System bauen und als Schloss für eine Schatztruhe nutzen.
- eine digitale Zugangskontrolle entwickeln und praktisch umsetzten.
- Mikrocontroller, Servomotor, RFID-Leser und -Transponder miteinander verbinden und programmieren.
- grundlegende Programmierabläufe verstehen und anwenden.
Bevor ihr startet, legt euch folgende Materialien bereit:
Elektronische Bauteile
- 1x Arduino Uno
- 1x Grove Shield für Arduino
- 1x USB-Kabel (A- auf B Stecker)
- 1x Grove RFID-Leser
- 3x RFID-Transponder (125KHz)
(RFID-Chips oder -Karten) - 1x Grove Servomotor
- 1x Powerbank
- Hinweis: Meist sind die benötigten Grove-Verbindungskabel für den Arduino im Lieferumfang der Grove-Bauteile enthalten. Checkt vorab trotzdem, ob überall Verbindungskabel dabei sind.
Ausstattung und Werkzeuge
- PC oder Laptop mit der kostenlosen Software Arduino IDE für die Programmierung
- Cutter mit Schneidunterlage
- Heißklebepistole
- Schere
- doppelseitiges Klebeband, o.ä.
Bastelmaterialien
- 1x Schuhkarton (oder einen anderen Karton mit einer Klappe)
- Optional: Bastelmaterial zum Verschönern der Schatztruhe
1. Schritt: Vorbereiten
Stellt sicher, dass ihr alle benötigten Materialien habt und sucht euch einen gut beleuchteten und ausreichend großen Arbeitsplatz. Falls ihr gerade erst mit dem Programmieren anfangt, erleichtern euch unsere Videotutorials den Einstieg.
2. Schritt: Hardware aufbauen
Damit euer elektronisches RFID-Schloss die Schatztruhe später zuverlässig schützt, benötigt ihr drei wesentliche Bauteile: Einen RFID-Leser, der euch Rückmeldung darüber gibt, ob ein RFID-Transponder in der Nähe ist und welche ID dieser hat. Außerdem braucht ihr einen RFID-Transponder mit 125kHz, der vom RFID-Leser erkannt wird, sowie einen Servomotor, der als Riegel eingesetzt wird. Und ihr benötigt einen Mikrocontroller wie den Arduino Uno, der die Informationen des RFID-Lesers versteht und entscheidet, ob das Schloss geöffnet werden darf oder nicht. Und so baut ihr alle Teile Schritt für Schritt zusammen:
- Nehmt euch den Arduino Uno und ein Grove Shield zur Hand.
- Steckt das Grove Shield auf den Arduino, sodass alle Pins verbunden sind.
- Das Grove Shield erleichtert euch das Anschließen weiterer Sensoren und Aktoren durch vorgegebene Steckplätze.
- Nehmt euch den RFID-Leser und ein Grove-Verbindungskabel.
- Nutzt das Grove-Verbindungskabel um den RFID-Leser mit dem digitalen Port D2 auf dem Grove Shield zu verbinden (D2 ist auf dem Grove Shield markiert).
- Verbindet den Servomotor, der später die Schatztruhe verriegelt, mit dem integrierten Kabel mit dem digitalen Port D4 auf dem Grove Shield.
- Nehmt euch das Zubehör für den Servomotor (siehe Foto) und steckt dieses auf den Servomotor.
- Schraubt es erst fest, nachdem ihr den Code getestet habt.
- Verbindet den Arduino Uno über das USB-Kabel mit eurem Computer. So wird der Arduino mit Strom versorgt und ihr könnt ihn gleichzeitig programmieren.
- Wenn eure Schatztruhe fertig programmiert ist, könnt ihr statt des Laptops eine Powerbank als Stromquelle nutzen.
3. Schritt: Programmieren
Jetzt müsst ihr eurem elektronischen RFID-Schloss noch sagen, was es tun soll. Bei Computern oder Mikrocontrollern wie dem Arduino Uno nennt man das Programmieren. Euer Ziel: Der Arduino soll die ID des Transponders erst einlesen, anschließend mit den IDs der zugelassenen Transponder vergleichen und schließlich entscheiden, ob die Schatztruhe geöffnet wird oder verschlossen bleibt.
- Ladet euch die Arduino IDE von Arduino Webseite herunter und installiert sie auf eurem Computer.
- Öffnet nun das Programm Arduino IDE und erstellt einen neuen “Sketch” über File —> „New Sketch“.
- Verbindet den Arduino Uno mit Hilfe eines USB-Kabels mit eurem Computer.
- Öffnet nun die Arduino IDE und wählt in der oberen grünen Menüleiste unter “Select Board” den Arduino Uno aus.
- Wählt in der oberen Menüleiste unter “Select Port” den USBModem Port aus, bei dem Arduino Uno darübersteht, zum Beispiel: Arduino Uno cu.usbmodem.
- Damit der RFID-Leser und der Servomotor funktionieren, müsst ihr zunächst zwei Bibliotheken (Englisch: Library) installieren.
- Geht dazu im Menü auf „Sketch“ –> „Bibliothek einbinden“ –> „Bibliothek verwalten“ und gebt dort in der Suche „SoftwareSerial” Klickt auf „Installieren“.
- Wiederholt diesen Schritt für die Bibliothek namens „Servo“.
Kopiert den untenstehenden Code und fügt ihn in die Arduino IDE ein.
#include <SoftwareSerial.h>
#include <Servo.h>
SoftwareSerial SoftSerial(2, 3);
Servo meinServo;
char Karten_ID[64];
char Zwischenspeicher;
int Zaehler = 0;
unsigned long sperrZeit = 0; // Verhindert hektisches Hin- und Her-Schalten
char Zugangskarte[13] = "510027AE9149";
int servoPin = 4;
bool istOffen = false;
void setup() {
SoftSerial.begin(9600);
Serial.begin(9600);
meinServo.attach(servoPin);
meinServo.write(10); // Startposition (festgelegt auf 10 Grad für Stabilität)
Serial.println("Bereit. Servo reagiert NUR auf den richtigen Chip.");
}
void loop() {
if (SoftSerial.available()) {
Zwischenspeicher = SoftSerial.read();
if (Zwischenspeicher == 0x02) {
Zaehler = 0;
clear_card_value();
}
else if (Zwischenspeicher == 0x03) {
// PRÜFUNG 1: Ist es der richtige Chip?
if (strcmp(Karten_ID, Zugangskarte) == 0) {
// PRÜFUNG 2: Sind seit der letzten Aktion 2 Sekunden vergangen? (Entprellen)
if (millis() - sperrZeit > 2000) {
if (!istOffen) {
meinServo.write(90);
istOffen = true;
Serial.println("ZUGANG GEWÄHRT: Öffne (90 Grad)");
}
else {
meinServo.write(10);
istOffen = false;
Serial.println("ZUGANG GEWÄHRT: Schließe (10 Grad)");
}
sperrZeit = millis(); // Zeitstempel speichern
}
}
else {
// BEI FALSCHEM CHIP:
// Hier steht KEIN meinServo.write Befehl, daher darf er sich nicht bewegen!
if (strlen(Karten_ID) > 0) {
Serial.print("Falscher Chip erkannt: ");
Serial.println(Karten_ID);
Serial.println("Servo bleibt gesperrt.");
}
}
}
else {
if (Zaehler < 63) {
Karten_ID[Zaehler] = Zwischenspeicher;
Zaehler++;
}
}
}
}
void clear_card_value() {
for (int i = 0; i < 64; i++) { Karten_ID[i] = 0; }
}
- Fügt den Code in den neuen „Sketch“
- Klickt auf den Pfeil-Button, um den Code in der Arduino IDE auf den Arduino Uno zu laden.
4. Schritt: Testen
Jetzt wird’s spannend: Ihr testet, ob alles richtig funktioniert.
Der Serielle Monitor ist ein kleines Nachrichtenfenster in der Arduino IDE, das euch mitteilt was der Mikrocontroller gerade tut, zum Beispiel: „ZUGANG GEWÄHRT“ oder „Falscher Chip erkannt: xxxxx Servo bleibt gesperrt“. So seht ihr ganz genau, ob der RFID-Leser richtig arbeitet.
- Damit die Anzeige funktioniert, muss im Code print() stehen. Das ist der Befehl in der Arduino IDE, der bestimmt, was und wann etwas auf dem Monitor angezeigt wird.
- Achtet darauf, dass die Baudgeschwindigkeit (z. B. 9600) im Seriellen Monitor mit begin(9600) im Code übereinstimmt.
- Stellt sicher, dass alle Steckverbindungen (Grove-Verbindungskabel) richtig eingesteckt sind und festsitzen.
- Haltet einen RFID-Transponder nah an den RFID-Leser, damit ihr testen könnt, ob er erkannt wird.
- Öffnet den Seriellen Monitor in der Arduino IDE (Button mit der kleinen Lupe).
- Beobachtet, was passiert: Der Arduino sollte die ID des RFID-Transponders anzeigen und euch mitteilen, ob dieser Transponder zugelassen oder abgelehnt wird.
5. Schritt: Feineinstellungen
Juhu, euer RFID-Leser erkennt den RFID-Transponder. Jetzt könnt ihr festlegen, wer wirklich Zutritt zu eurer Schatztruhe bekommt. Probiert euch aus und passt den Code so an, wie ihr ihn braucht.
- Wenn euer RFID-Transponder keinen Zugang hat, könnt ihr im Code der Arduino IDE die Variable char Zugangskarte[12] =“020077115F3B“
- Ersetzt die Zahlen- und Buchstabenfolge in den Anführungszeichen durch die ID des Transponders, der Zugang haben soll.
- Wichtig: Die Anführungszeichen müssen an derselben Position bleiben.
- Falls ihr eure Transponder-ID noch nicht kennt, könnt ihr sie ganz leicht herausfinden:
- Ladet den bereitgestellten Test-Code auf euren Arduino.
- Haltet euren RFID-Transponder an den RFID-Leser.
- Öffnet den Seriellen Monitor. Dort wird euch die komplette ID angezeigt.
- Kopiert sie heraus und tragt sie im Code als „Zugangskarte“ ein.
- Danach müsst ihr den Code erneut über den Pfeil-Button auf euren Arduino laden.
6. Schritt: Schatztruhe bauen
Euer elektronisches RFID-Schloss ist startklar. Jetzt baut ihr euch noch eine Schatztruhe, die sich mit dem Schloss öffnen und schließen lässt. Dafür braucht ihr Pappe, Schneide- und Klebwerkzeug und euren Grove Servomotor, der die Truhe öffnet und verschließt.
- Baut eine Schatztruhe mit einer Tür oder Klappe, die sich öffnen und schließen lässt.
- Gestaltet die Schatztruhe nach euren eigenen Vorstellungen.
- Befestigt den Grove Servomotor mit einer Heißklebepistole oder doppelseitigem Klebeband an der Truhe (siehe Foto).
- Steckt das zuvor ausgewählte Zubehör auf den Servomotor.
- Verbindet den Servomotor mit dem Grove Shield und Arduino Uno.
Schließt den Arduino danach an eine Stromquelle an (z. B. Laptop oder Powerbank). - Der Servomotor sucht sich nun seine Ausgangsposition.
Richtet das Zubehör gegebenenfalls neu aus und schraubt es anschließend fest. - Durch die Programmierung bleibt der Servomotor dauerhaft in dem senkrechten Winkel und hält die Tür der Schatztruhe geschlossen. Erkennt der RFID-Leser den richtigen Transponder, dreht sich der Servomotor und gibt die Tür frei. Haltet ihr den gleichen Transponder erneut an den RFID-Leser, dreht sich der Servomotor zurück und schließt die Truhe wieder.
Glückwunsch!
Ihr habt es geschafft: Eure Schatztruhe mit RFID-Schloss ist fertig! Jetzt könnt ihr die Truhe nach Lust und Laune befüllen und weiterentwickeln. Viel Spaß beim Tüfteln und Verstecken eurer geheimen Schätze!
Noch Fragen?
Diese Anleitung ist unter der Creative Commons Lizenz „CC BY-NC-ND 4.0 – Namensnennung – Nicht kommerziell – Keine Bearbeitung 4.0 International“ veröffentlicht. Fotos: Wissenschaft im Dialog
Urhebervermerk: Make Your School – Eure Ideenwerkstatt | Wissenschaft im Dialog gGmbh | CC BY-NC-ND 4.0
Habt ihr Feedback oder Fragen? Dann schreibt uns eine E-Mail an kontakt@makeyourschool.de. Wir freuen uns über eure Rückmeldungen!