Bau einer Sprach- und Soundbox, die bei Bewegung startet

In diesem Bastelprojekt soll bei Bewegungserkennung eine MP3 abgespielt werden. Um zum Beispiel beim Betreten eines Raumes entspannende Geräusche zu hören, das der Briefkasten sich für die Post bedankt oder beim öffnen des Kühlschranks zu nächtlicher Stunde, freundlich an den Diätplan zu erinnern. Oder oder oder…

Benötigt wird neben einem Arduino Nano, einem Bewegungsmelder, auch ein DFPlayer-Mini mit SD-Karte auf dem Sprach-, Geräusch- oder Musikdateien abgelegt sind. Bitte beachten, der DFPlayer-Mini kann SD-Karten bis maximal 32GB ansprechen.
Sollte die Box per Batterie betrieben werden, dann eher mit einem Arduino Pro Mini Nachbau in der 5 Volt Variante, der bei Abwesenheit von Personen zusätzlich in den Power Down Sleep Modus geschickt sollte. Der Microcontroller hat deutlich weniger Verbraucher an Board. Benötigt einmalig zum Flashen aber ein FTDI Adapter oder einen Uno.

Der Bewegungsmelder HC-SR505 ist ein kleiner passiver Infrarot-Sensor der Wärmestrahlung empfängt und auswertet. Er reagiert auf kleine Änderungen der Temperatur, beispielsweise wenn eine Person bis max. 3 Meter am Sensor vorbeigeht, in dem der am mittleren Schaltausgang ein High Level Signal von 3.3V ausgibt. Er selbst muss mit 4,5V bis 20V versorgt werden. Aufgrund der minimalen Größe und der energiesparenden Betriebsart, eignet sich der Sensor ideal für batteriebetriebene Anwendungen. Der Ruhestrom beträgt weniger als 60µA.

Erstellung von Sprachaufnahmen unter Windows:
Unter Windows gibt es integrierte Tools, mit denen du eine Sprachaufnahme als MP3-Datei speichern kannst. Eine Möglichkeit ist die Verwendung von „Voice Recorder“, einer in Windows 10 integrierten App.

Hier in 6 Schritten, wie mit dem Voice Recorder eine Sprachaufnahme als MP3-Datei erzeugt wird:

  1. Öffne die „Voice Recorder“-App, indem du auf das Startmenü klickst und „Voice Recorder“ in das Suchfeld eingibst.
  2. Klicke auf „Neue Aufnahme“, um eine neue Aufnahme zu starten.
  3. Klicke auf die Schaltfläche „Aufnahme starten“, um deine Sprachaufnahme zu starten.
  4. Klicke auf die Schaltfläche „Aufnahme stoppen“, um die Aufnahme zu beenden.
  5. Klicke auf die Schaltfläche „Speichern“, um die Aufnahme zu speichern.
  6. Wähle das gewünschte Ausgabeformat aus (z.B. MP3) und speichere die Datei an einem Ort an dem du diese auch wieder findest 🙂

Hinweis: Die Funktionen und Benutzeroberfläche der integrierten Windows-Tools können je nach Version von Windows variieren. Wenn „Voice Recorder“ nicht auf deinem Computer verfügbar ist, kannst du auch andere integrierte Audioaufnahme-Tools wie „Sound Recorder“ oder „Windows Voice Recorder“ verwenden, die ähnliche Funktionen bieten.

Erstellung von Sprachaufnahmen bei einem Mac:
Unter macOS wäre es mit dem integrierten „QuickTime Player“ möglich eine Sprachaufnahme als MP3-Datei zu speichern:

  1. Öffne „QuickTime Player“, indem du auf das Spotlight-Suchfeld (Lupe in der Menüleiste) klickst und „QuickTime Player“ eingibst.
  2. Klicke auf „Datei“ und wähle „Neue Audioaufnahme“ aus dem Menü.
  3. Stelle sicher, dass dein Mikrofon richtig konfiguriert ist, indem du auf das Dropdown-Menü neben dem Aufnahme-Symbol klickst und das richtige Mikrofon auswählst.
  4. Klicke auf die Schaltfläche „Aufnahme starten“, um deine Sprachaufnahme zu starten.
  5. Klicke auf die Schaltfläche „Aufnahme stoppen“, um die Aufnahme zu beenden.
  6. Klicke auf „Datei“ und wähle „Exportieren“ aus dem Menü.
  7. Wähle das gewünschte Ausgabeformat aus (z.B. MP3) und speichere die Datei an einem Ort auf deinem Mac.

Alternativ gibt es auch andere Drittanbieter-Tools wie „GarageBand“ oder „Audacity“, die auch unter macOS verfügbar sind und die Möglichkeit bieten, eine Sprachaufnahme als MP3-Datei zu speichern.

Download von Sounddateien:
Lizenzfreie Sounddateien
Große Auswahl an lizenzfreier Musik

Hardware:
Arduino Nano oder ProMiniBoard
DFPlayer Mini
SD-Karte (Max 32GB)
Bewegungsmelder HC-SR505
Speaker
Widerstand 1K Ohm
optional für den Testbetrieb:
9V Block Batterie
Batterie-Clip mit der Stecker
Expansion Shield Erweiterung Board für Nano

Verdrahtung:

Bibliothek:
https://github.com/DFRobot/DFRobotDFPlayerMini/ in der auch der Beispiel-Sketch GetStarted.ino liegt, der hier gekürzt und um die Funktion mit dem Bewegungsmelder erweitert wurde.

Quellcode:

#include "Arduino.h"
#include "SoftwareSerial.h"
#include "DFRobotDFPlayerMini.h"

SoftwareSerial mySoftwareSerial(10, 11); // RX, TX
DFRobotDFPlayerMini myDFPlayer;
int ausloeser = 8;  //Bewegungsmelder Pin 8
int daistwer; 

void setup()
{
  mySoftwareSerial.begin(9600);
  Serial.begin(115200);
  pinMode(ausloeser, INPUT);
  Serial.println();
  Serial.println(F("DFRobot DFPlayer Mini"));
  Serial.println(F("Initializing DFPlayer ... (May take 3~5 seconds)"));
  
  if (!myDFPlayer.begin(mySoftwareSerial)) {  //Use softwareSerial to communicate with mp3.
    Serial.println(F("Unable to begin:"));
    Serial.println(F("1.Please recheck the connection!"));
    Serial.println(F("2.Please insert the SD card!"));
    while(true){
      delay(0); // Code to compatible with ESP8266 watch dog.
    }
  }
  Serial.println(F("DFPlayer Mini online."));
  myDFPlayer.volume(16);  //setze lautstaerke von 0 bis 30
}

void loop()
{
  delay(5000);
  daistwer = digitalRead(ausloeser);
  Serial.println(F("wert bewegung: "));
  Serial.println(daistwer);
  if (daistwer == 1){
  myDFPlayer.play(1);  //Play the first mp3
  delay(25000);
  }
}

3D-Druck Gehäuse:
Die im Video zu sehende Box zum ausdrucken auf einem 3D-Drucker ist hier zu finden.
Es liegt inzwischen eine deutlich kleinere zweite Variante in der Größe 110x80x60mm zusätzlich dabei:
STL-Dateien bei thingiverse

Erstellt wurde das Gehäuse online wie im Video zu sehen, mit dem kostenlosen Browser Konstruktion-Programm TinkerCAD von Autodesk.
https://www.tinkercad.com

Video:

Weitere Details zu dem DFPlayer-Mini:


Optional nicht im Video zu sehen:

Bau einer Sprachbox, ganz ohne programmieren
Auch interessant ist das ISD1820-Modul, da es schon mit einem Mikrofon, einem Speicher, einem Vorverstärker sowie REC und Play-Tastenausgestattet ist.

– Aufnahme bei gedrückter REC-Taste. Maximale länge bei mir etwa 8 Sekunden
– Abspielen mit Play-Taste oder wenn Bewegungsmelder über Pin2 Signal an ISD1820-Anschluss P-L oder P-E gibt (Siehe Bild)

Hardware:
ISD1820-Modul mit Lautsprecher
Batteriehalter 3x AA


, , , , , ,