Arduino UNO Q - Schallsensor
Ein Schallsensor erkennt Geräusche in der Umgebung und gibt ein digitales Signal aus. Er verfügt über ein eingebautes Potentiometer zur Empfindlichkeitsregelung. Verwenden Sie ihn, um Aktionen auszulösen, wenn ein Klatsch, Klopfen oder lautes Geräusch erkannt wird. Mit Bridge und Telegram kann Ihr Arduino UNO Q Sie sofort benachrichtigen, wenn er ein Geräusch hört.
In diesem Tutorial werden Sie lernen:
- Was ein Schallsensor ist und wie er funktioniert
- Wie Sie den Schallsensor mit der Arduino UNO Q MCU verkabeln
- Wie Sie den digitalen Ausgang auslesen, um Geräusche zu erkennen
- Wie Sie Bridge verwenden, um den Schallzustand und Ereignisse der Linux-Seite (Python) bereitzustellen
- Wie Sie Telegram-Benachrichtigungen erhalten, wenn Schall auf Arduino UNO Q erkannt wird
- Wie Sie OpenClaw auf Arduino UNO Q mit dem Schallsensor verwenden

Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Über den Schallsensor
Ein Schallsensormodul verfügt über ein kleines Mikrofon, das Vibrationen in der Luft (Schallwellen) erkennt. Das Modul konvertiert diese in ein digitales Signal:
- HIGH: Still — kein Schall oberhalb des Schwellwerts erkannt
- LOW: Schall erkannt
Das Modul enthält:
- VCC-Anschluss: 3,3V bis 5V Stromversorgung
- GND-Anschluss: Masse
- OUT-Anschluss: Digitaler Ausgang — HIGH = still, LOW = Schall erkannt
- Eingebautes Potentiometer: Regelt die Erkennungsempfindlichkeit
- PWR-LED: Stromversorgungsanzeige
- Sound-LED: Leuchtet auf, wenn Schall erkannt wird

So passen Sie die Empfindlichkeit an
Drehen Sie das Potentiometer am Modul:
- Im Uhrzeigersinn: Empfindlicher (erkennt leisere Geräusche)
- Gegen den Uhrzeigersinn: Weniger empfindlich (nur laute Geräusche lösen es aus)
Stellen Sie es so ein, dass die Sound-LED zuverlässig auf einen Klatsch oder ein Klopfen reagiert, aber bei Umgebungsgeräuschen ausgeschaltet bleibt.
Schaltschema

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
| Schallsensor-Pin | Arduino UNO Q MCU |
|---|---|
| GND | GND |
| VCC | 5V |
| OUT | D8 |
Wie man für den Schallsensor programmiert
- Konfigurieren Sie den Sensorpin als digitalen Eingang:
- Lesen Sie den digitalen Ausgang:
- Erkennen Sie Schallereignisse, indem Sie mit dem vorherigen Zustand vergleichen:
Arduino UNO Q Code
Der Arduino UNO Q hat zwei Prozessoren, die zusammenarbeiten:
- Die STM32 MCU liest den digitalen Ausgang des Schallsensors und erkennt Schallereignisse
- Der Qualcomm MPU führt Debian Linux mit Wi-Fi aus — in diesem Abschnitt wird nur die MCU programmiert. Ein späterer Abschnitt zeigt, wie beide Prozessoren über Bridge zusammenarbeiten.
Schnelle Schritte
Zum ersten Mal mit Arduino UNO Q? Folgen Sie dem Erste Schritte mit Arduino UNO Q Tutorial, bevor Sie fortfahren.
- Verbinden: Verkabeln Sie den Schallsensor mit der Arduino UNO Q MCU wie im Schaltschema dargestellt.
- Öffnen Sie Arduino App Lab: Starten Sie Arduino App Lab und warten Sie, bis es Ihren Arduino UNO Q erkennt.
- Erstellen Sie eine neue App: Klicken Sie auf die Schaltfläche Neue App erstellen.

- Geben Sie der App einen Namen, z.B.: SoundSensor
- Klicken Sie auf Erstellen, um zu bestätigen.

- Fügen Sie den Sketch ein: Kopieren Sie den MCU-Code oben und fügen Sie ihn in sketch/sketch.ino ein.
- Hochladen: Klicken Sie in Arduino App Lab auf die Run-Schaltfläche.

- Klatschen Sie in die Nähe des Sensors oder tippen Sie auf den Tisch — beobachten Sie die Serial Monitor-Ausgabe.
- Stellen Sie das Potentiometer am Modul ein, wenn die Erkennung nicht zuverlässig ist.
App Lab Konsolenausgabe
Bridge: Linux + MCU
Dieser Abschnitt zeigt, wie man beide Prozessoren des Arduino UNO Q programmiert, damit die Linux-Seite den Schallzustand lesen und Schallereignisse über Bridge empfangen kann:
- Der Schallsensor ist mit der MCU verbunden — die MCU überwacht den digitalen Ausgang kontinuierlich und speichert den aktuellen Zustand
- Die MPU kann den Sensorpin nicht direkt auslesen — sie ruft Bridge-Funktionen auf, um den aktuellen Zustand zu ermitteln oder auf neue Schallereignisse zu prüfen
- Die MPU hat Wi-Fi — mit vollständigem Debian Linux kann sie Telegram-Benachrichtigungen im Moment der Schallerkennung senden
- Arduino_RouterBridge aktiviert die RPC-Kommunikation zwischen den beiden Prozessoren
- ⚠️ /dev/ttyHS1 (Linux) und Serial1 (MCU) sind RESERVIERT für den Router — öffnen Sie sie niemals in Benutzercode
Kurz gesagt: MCU erkennt Schall über DO-Pin → setzt Ereignis-Flag → MPU ruft Bridge ab → MPU sendet Telegram-Benachrichtigung.
MCU-Code (Bridge)
Python-Code (Bridge)
Schnelle Schritte
- Verbinden: Verkabeln Sie den Schallsensor mit Arduino UNO Q wie im Schaltschema dargestellt.
- Öffnen Sie Arduino App Lab und erstellen Sie eine neue App namens SoundSensorBridge.
- Fügen Sie den MCU-Sketch in sketch/sketch.ino ein.
- Fügen Sie den Python-Code in die Python-Datei ein.
- Install the library: Click the Add sketch library button (the open book icon with a + sign) in the left sidebar.

- Search for Arduino_RouterBridge created by Arduino and click the Install button.
- Hochladen: Klicken Sie auf die Run-Schaltfläche.

- Klatschen Sie in die Nähe des Sensors — beobachten Sie, wie das Ereignis in beiden Konsolen angezeigt wird.
App Lab Konsolenausgabe
Telegram
Erhalten Sie sofortige Telegram-Benachrichtigungen, wenn Schall vom Arduino UNO Q Schallsensor erkannt wird.
MCU-Sketch: Behalten Sie den gleichen MCU-Sketch aus dem vorherigen Bridge-Abschnitt bei.
Python-Code (Telegram)
Schnelle Schritte
- Ersetzen Sie YOUR_TELEGRAM_BOT_TOKEN durch Ihren tatsächlichen Bot-Token von BotFather.
- Ersetzen Sie YOUR_CHAT_ID durch Ihre Telegram-Chat-ID.
- Fügen Sie diesen Python-Code in die Python-Datei Ihrer App ein (behalten Sie den gleichen MCU-Sketch bei).
- Klicken Sie auf die Run-Schaltfläche — klatschen Sie in die Nähe des Sensors, um eine Telegram-Benachrichtigung auszulösen.
App Lab Konsolenausgabe
ArduinoBot
OpenClaw
You can adapt the OpenClaw to this tutorial by refering the instruction on Arduino Uno Q - OpenClaw Tutorial
Projektideen
Mit dem Schallsensor und Arduino UNO Q können Sie viele nützliche Projekte realisieren:
- Klatsch-Schalter: Erkennen Sie zwei schnelle Klatsche und schalten Sie ein Relais über Bridge um, um ein Licht oder einen Ventilator ein- oder auszuschalten — Python zählt Klatsch-Ereignisse innerhalb eines Zeitfensters von 500 ms und sendet den Umschaltbefehl
- Babyüberwachung: Montieren Sie den Sensor in einem Raum — wenn er kontinuierliches Geräusch erkennt (Weinen), sendet die MPU eine Telegram-Benachrichtigung, damit Sie sofort von überall im Haus Bescheid wissen
- Eindring-Warnung: Kombinieren Sie den Schallsensor mit dem Türsensor — Telegram-Benachrichtigungen für Türöffnung und unerwartete laute Geräusche, mit Zeitstempel und Dauer, die in eine Datei auf Linux protokolliert werden
- Schallpegel-Protokollierungstool: Rufen Sie den Schallzustand jede Sekunde ab und protokollieren Sie die Erkennungshäufigkeit in eine CSV — senden Sie täglich einen Telegram-Bericht, der die Spitzenlautstundenstunden zur Lärmmessung anzeigt
- Intelligente Türklingel: Erkennen Sie einen Klopfer an der Tür über den Schallsensor — die MPU sendet eine Telegram-Nachricht mit einem Foto (falls eine Kamera angeschlossen ist), damit Sie von remote sehen können, wer an der Tür ist
Fordern Sie sich selbst heraus
Bereit, noch weiter mit dem Schallsensor auf Arduino UNO Q zu gehen? Versuchen Sie diese Herausforderungen:
- Einfach: Fügen Sie einen Schallzähler zum Python-Code hinzu — zählen Sie, wie oft Schall pro Minute erkannt wird, und drucken Sie die Summe alle 60 Sekunden in der Konsole aus.
- Mittel: Implementieren Sie die Klatschmuster-Erkennung in Python: Erkennen Sie einen Doppelklatsch (zwei Geräusche innerhalb von 600 ms) versus einen Einzelklatsch — senden Sie für jedes Muster unterschiedliche Telegram-Nachrichten.
- Fortgeschrittene: Erstellen Sie einen Schallzauer-Tracker: Notieren Sie die Start- und Endzeit jedes Schallereignisses auf der MCU-Seite mit millis() — stellen Sie die letzte Dauer über eine get_duration()-Bridge-Funktion bereit und beziehen Sie sie in jede Telegram-Benachrichtigung ein.