Gruseliger Halloween PIR-Bewegungs-Speaker: Schreck- & Lichteffekte-Set
Komponenten und Zubehör
| Komponente | Menge | Hinweise |
|---|---|---|
| Arduino UNO | 1 | |
| MP3-Modul (z. B. DFPlayer Mini oder ähnlicher USB/SD-Player) | 1 | Benötigt FAT32-formatierte SD-Karte/USB-Stick |
| 4-Kanal-Relais-Modul (5 V, Low-Active) | 1 | 2 Kanäle für MP3-Buttons (Play, Previous), 2 für LED-Effekte |
| PIR-Bewegungsmelder HC-SR501 | 1 | Empfindlichkeit & Reichweite auf Maximum |
| 3x AA-Batteriehalter (optional, für portablen Betrieb) | 1 | |
| 2-polige wasserdichte Aviation-Steckverbinder | 3 | Für 12 V Eingang & zwei LED-Ausgänge |
| Wasserdichte Lebensmittelbox (ca. 190×60×120 mm) | 1 | Gehäuse |
| Schwarze Sprühfarbe | 1 | Tarnung der Elektronik-LEDs |
| 32 mm Forstnerbohrer (Lautsprecher) | 1 | |
| 16 mm Bohrer (PIR-Sensor) | 1 | |
| USB-Stick (FAT32) mit Soundfiles | 1 |
Projektbeschreibung
Mehrere kleine, versteckte Audio-Boxen für den Vorgarten zu Halloween: Bei Annäherung (PIR) spielt ein gruseliger Sound, begleitet von zwei Lichteffekten (weißes Blitzen, rotes „Blut“-Licht). Kosten < 25 €, wetterfest für einen Abend, batteriebetrieben oder 12 V extern.
Teil 1: Aufbau
Das Arduino UNO steuert über das 4-Kanal-Relais:
- Relais 1 & 2: Simulieren Tastendruck auf MP3-Modul (Previous = Neustart, Play/Pause = Stopp).
- Relais 3 & 4: Schalten 12 V für externe LED-Strips (weiß/rot).
Verkabelung: 30 AWG für Signale (100 mm), 18 AWG für 12 V. Steckverbinder für PIR & Lautsprecher ermöglichen Deckelabnahme. Gehäuse: 32 mm Loch für Speaker (nach außen mit Fahrradschlauch-Flicken wasserdicht gemacht), 16 mm Loch für PIR (epoxydiert). Alles schwarz lackiert.
Hinweis: Bei hoher Lautstärke zog das MP3-Modul zu viel Strom → Arduino-Reset. Lösung: Separate 5 V Versorgung für MP3-Modul (z. B. Powerbank).
Teil 2: Sound
Audio in Audacity zusammengeschnitten (Quellen: Schreie, gruseliges Lachen, „I see you“, Schritte auf Stein). Als voices_audio_dUluBtMyqG.mp3 auf USB-Stick (FAT32).
Teil 3: Timing-Anpassung
Relais-Schaltzeiten im Code sind auf die Audiodatei abgestimmt. Bei anderer Datei Delays anpassen (markierte Stellen).
Teil 4 & 5: Test & Finaler Bau
Funktionstest im Labor, dann im Garten platzieren. Zusatzvariante „Laughing Ghost“ (nur Sound, 6 verschiedene Lacher) im ZIP-Archiv enthalten.
Code
// Halloween PIR Speaker & Light Effects
// Relais sind Low-Active: LOW = AN, HIGH = AUS
int pirSENSOR = 2;
int previousBUTTON = 3; // MP3 Previous
int playBUTTON = 4; // MP3 Play/Pause
int whiteLED = 5; // Weißes Blitzlicht
int redLED = 6; // Rotes Blut-Licht
int statusLED = 10; // Status-LED (zeigt Bereitschaft)
void setup() {
pinMode(pirSENSOR, INPUT);
pinMode(previousBUTTON, OUTPUT);
pinMode(playBUTTON, OUTPUT);
pinMode(whiteLED, OUTPUT);
pinMode(redLED, OUTPUT);
pinMode(statusLED, OUTPUT);
digitalWrite(previousBUTTON, HIGH);
digitalWrite(playBUTTON, HIGH);
digitalWrite(whiteLED, HIGH);
digitalWrite(redLED, HIGH);
}
void loop() {
if (digitalRead(pirSENSOR) == HIGH) { // Bewegung erkannt
// MP3 starten (Previous = Track-Neustart)
digitalWrite(previousBUTTON, LOW); delay(100);
digitalWrite(previousBUTTON, HIGH); delay(100);
// 1. Aufmerksamkeits-Blitz (weiß)
digitalWrite(whiteLED, LOW); delay(1000);
digitalWrite(whiteLED, HIGH); delay(500);
digitalWrite(whiteLED, LOW); delay(500);
digitalWrite(whiteLED, HIGH); delay(9000);
// 2. "I see you" – kurzes Blitzen
for(int i=0;i<6;i++) {
digitalWrite(whiteLED, LOW); delay(500);
digitalWrite(whiteLED, HIGH); delay(300);
}
delay(6000);
// 3. Kinder-Geräusche – unregelmäßiges Blitzen
digitalWrite(whiteLED, LOW); delay(300); digitalWrite(whiteLED, HIGH); delay(1000);
digitalWrite(whiteLED, LOW); delay(100); digitalWrite(whiteLED, HIGH); delay(300);
digitalWrite(whiteLED, LOW); delay(100); digitalWrite(whiteLED, HIGH); delay(300);
digitalWrite(whiteLED, LOW); delay(100); digitalWrite(whiteLED, HIGH); delay(300);
digitalWrite(whiteLED, LOW); delay(100); digitalWrite(whiteLED, HIGH); delay(1000);
digitalWrite(whiteLED, LOW); delay(600); digitalWrite(whiteLED, HIGH); delay(1400);
digitalWrite(whiteLED, LOW); delay(100); digitalWrite(whiteLED, HIGH); delay(7000);
// 4. Schrei / Blut-Sequenz (rot)
digitalWrite(redLED, LOW); delay(3000);
digitalWrite(redLED, HIGH); delay(100);
// MP3 stoppen
digitalWrite(playBUTTON, LOW); delay(100);
digitalWrite(playBUTTON, HIGH);
// 1 Minute Sperre vor nächstem Trigger
delay(60000);
} else {
digitalWrite(statusLED, HIGH); // Status-LED an (verhindert Powerbank-Abschaltung)
}
}
Schaltplan & Dateien
- Schaltplan (Fritzing-Bild im Original)
- Audio:
voices_audio_dUluBtMyqG.mp3(Haupt-Sound),graveyard_ambience_sound_fx_(128_kbps)_nhuprhuJcc.mp3(Alternative) - Varianten:
laughing_ghost_variant_VsB0Y8CTlM.zip(nur Sound, 6 Lacher),archive_IipdobBdHs.zip(gesamtes Projekt)
Herstellungsprozess
- Induktiver Näherungssensor: Schaltungsdesign, Funktionsweise und praktische Anwendungen
- Bluetooth Mesh Design Entscheidungen: Module vs. Diskrete Devices
- Apacer XR-DIMM: DO-160G zertifiziertes rugged DDR4 Memory für Defense und Aviation
- emtrion bringt kompaktes emCON-MX8M Mini Modul mit NXP i.MX 8M Mini
- congatec introduces SMARC 2.0 Module mit NXP i.MX 8M Mini Prozessor
- Robuste Temperatur- & Sensor-API auf Raspberry Pi mit GY-91 Modul bauen
- Smartes Auto-Lock-Türschloss per Smartphone-Bluetooth-Nähe bauen
- Raspberry Pi GPIO meistern: PIR-Bewegungsmelder an B+/Model 2 anschließen
- Raspberry Pi Heimüberwachung: PIR-Bewegungserkennung mit Kamera-E-Mail-Benachrichtigung
- HC-SR501 PIR-Bewegungssensor an Raspberry Pi anschließen, kalibrieren und programmieren