Arduino UNO Q - Automatische Lichtsteuerung mit Bewegungssensor und LED-Streifen
In diesem Leitfaden lernen Sie, wie Sie ein automatisches Lichtsteuerungssystem mit einem HC-SR501 Bewegungssensor und einem 12V LED-Streifen mit Arduino UNO Q aufbauen. Der LED-Streifen schaltet sich ein, wenn eine Bewegung erkannt wird, und aus, wenn die Bewegung stoppt. Ideal für:
- Treppenbeleuchtung
- Unter-Bett-Beleuchtung
- Flurlichter in der Nacht
- Weihnachtsbaumlichter

Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Über LED-Streifen und Bewegungssensor
Erfahren Sie mehr über den LED-Streifen und Bewegungssensor in den Tutorials unten:
Anfängliche Sensoreinstellung
| Zeit-Verzögerungseinsteller | Schraube vollständig gegen den Uhrzeigersinn (minimale Verzögerung). |
| Erfassungsbereicheinsteller | Schraube vollständig im Uhrzeigersinn (maximaler Bereich). |
| Wiederholte Auslöser-Auswahl | Jumper im wiederholbaren Triggermodus platzieren. |

Schaltschema

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Das Relais fungiert als Schalter zwischen der 12V-Stromversorgung und dem LED-Streifen. Der Arduino UNO Q MCU steuert den IN-Pin des Relais.
MCU-Code
Der Arduino UNO Q hat zwei Prozessoren: den STM32 MCU (verwaltet die Echtzeitsteuerung der Hardware) und den Qualcomm MPU (läuft Debian Linux). In diesem Abschnitt wird nur der STM32 MCU programmiert – die Linux-Seite bleibt inaktiv. Ein späterer Abschnitt zeigt, wie beide Prozessoren zusammenarbeiten.
Schnellschritte
- Erstes Mal mit Arduino UNO Q? Folgen Sie dem Einstieg in Arduino UNO Q Lernprogramm, um Ihre Entwicklungsumgebung vorzubereiten, bevor Sie fortfahren.
- Verkabeln Sie die Komponenten: Verbinden Sie Sensor OUTPUT → Pin 7, Relais IN → Pin 9. Verbinden Sie den LED-Streifen über das Relais mit der 12V-Stromversorgung.
- Verbinden: Schließen Sie den Arduino UNO Q mit einem USB-C-Kabel an Ihren Computer an.
- Ö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 Create New App (Neue App erstellen).

- Geben Sie der App einen Namen, z.B.: DIYables_AutoLight
- Klicken Sie auf Create (Erstellen), um zu bestätigen.
- Sie werden einen Satz von Ordnern und Dateien sehen, die in Ihrer neuen App generiert wurden.

- Suchen Sie die Datei sketch/sketch.ino – das ist der Ort, an dem Sie die MCU-Skizze einfügen.
- 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 Schaltfläche Run (Ausführen) in Arduino App Lab, um zu kompilieren und auf den STM32 hochzuladen.

- Test: Gehen Sie vor dem Sensor – der LED-Streifen sollte sich einschalten, wenn eine Bewegung erkannt wird, und sich ausschalten, wenn die Bewegung stoppt.
Linux + MCU Bridge-Programmierung
Der Arduino UNO Q hat zwei Prozessoren, die zusammenarbeiten: der MPU (Qualcomm, läuft Debian Linux) und der MCU (STM32, läuft Zephyr OS mit Ihrer Arduino-Skizze). Sie kommunizieren über RPC über die Arduino_RouterBridge Bibliothek – niemals über Raw Serial Ports.
- Der Bewegungssensor und das Relais sind beide mit dem MCU (STM32) verbunden – Sensor auf Pin 7, Relais auf Pin 9.
- Der MPU kann sie nicht direkt steuern – er ruft Bridge.call("check_motion") auf dem MCU auf, der den Sensor liest und das Relais (und den LED-Streifen) entsprechend schaltet.
- Der MPU hat WLAN – da der MPU vollständiges Debian Linux mit WLAN ausführt, kann er den Lichtstatus an Telegram melden.
- Kommunikation: Bridge.call() auf der Linux-Seite ruft Bridge.provide_safe() auf der MCU-Seite auf (da digitalWrite() verwendet wird, um das Relais zu steuern)
- ⚠️ Reserviert: /dev/ttyHS1 (Linux) und Serial1 (MCU) werden vom Arduino Router verwendet – öffnen Sie sie niemals direkt
Kurz gesagt: MPU fragt Sensor ab → MCU liest Pin, schaltet Relais (LED-Streifen) und meldet an Monitor.
MCU-Skizze – automatische Beleuchtung mit Bridge:
Python-Skript (Arduino App Lab) – Bewegungsstatus alle 0,5 Sekunden abfragen:
- Hinweis: Stellen Sie sicher, dass Bridge.begin() in der MCU-Skizze aufgerufen wird und die Skizze hochgeladen ist, bevor Sie das Python-Skript auf der Linux-Seite ausführen.
- ⚠️ Warnung: Öffnen Sie niemals direkt /dev/ttyHS1 (unter Linux) oder verwenden Sie Serial1 (auf MCU) in Ihrem Code – diese sind vom Arduino Router reserviert und der Zugriff darauf zerstört die Bridge.
Schnellschritte
- Laden Sie die MCU-Skizze hoch: Öffnen Sie Arduino App Lab, erstellen Sie eine neue App, fügen Sie die Bridge MCU-Skizze in sketch/sketch.ino ein, installieren Sie die Arduino_RouterBridge Bibliothek und klicken Sie auf Run (Ausführen).
- Fügen Sie das Python-Skript hinzu: Fügen Sie den Python-Code oben auf der Registerkarte Python derselben App ein.
- Führen Sie die App aus: Klicken Sie auf Run (Ausführen) – Python fragt die Bewegung alle 0,5 Sekunden ab; MCU schaltet den LED-Streifen.
- Überprüfen Sie die Konsole: Öffnen Sie die Registerkarte Console (Konsole) → Registerkarte MCU Monitor und gehen Sie vor dem Sensor vorbei.
App Lab-Konsolenausgabe
Telegram-Integration
Überwachen Sie den Status der automatischen Beleuchtung remote über Telegram.
Wenn Sie noch keinen Telegram-Bot haben, lesen Sie Wie man einen Telegram-Bot erstellt, um Ihr Bot-Token zu erhalten, bevor Sie fortfahren.
MCU-Skizze: Behalten Sie die gleiche MCU-Skizze aus dem vorherigen Bridge-Abschnitt – keine Änderungen erforderlich. Stellen Sie sicher, dass sie bereits hochgeladen und auf dem STM32 ausgeführt wird, bevor Sie fortfahren.
Python-Skript (Arduino App Lab) – Telegram-Bot für automatische Beleuchtung:
- Hinweis: Ersetzen Sie YOUR_BOT_TOKEN durch das Token, das Sie von @BotFather auf Telegram erhalten haben.
- Senden Sie /status, um den Bewegungssensor manuell zu überprüfen und den LED-Streifen zu aktualisieren.
Schnellschritte
- Laden Sie die MCU-Skizze hoch: Verwenden Sie die Bridge MCU-Skizze aus dem vorherigen Abschnitt (laden Sie sie zuerst hoch, falls nicht bereits geschehen).
- Fügen Sie das Telegram-Skript ein: Kopieren Sie den Python-Code oben auf die Registerkarte Python Ihrer App in Arduino App Lab.
- Legen Sie Ihr Token fest: Ersetzen Sie YOUR_BOT_TOKEN im Skript durch Ihren tatsächlichen Bot-Token.
- Führen Sie die App aus: Klicken Sie auf Run (Ausführen) – der Bot beginnt, auf Telegram-Nachrichten zu warten.
- Testen Sie es: Senden Sie /status – der Bot antwortet mit dem Bewegungsstatus und LED-Streifenstatus.
App Lab Python-Konsolenausgabe
ArduinoBot
OpenClaw-Integration
Sie können den OpenClaw an dieses Lernprogramm anpassen, indem Sie auf die Anleitung auf der Seite Arduino Uno Q - OpenClaw verweisen.
Ideen für Anwendung/Projekte
- Flurnachtlicht: Beleuchten Sie automatisch den Flur, wenn jemand nachts hindurchgeht
- Treppenbeleuchtung: Erhellen Sie die Treppen, wenn sich jemand nähert, um Sicherheit zu bieten
- Unter-Bett-Licht: Erzeugen Sie einen dramatischen Effekt, der sich einschaltet, wenn Sie aus dem Bett aufstehen
- Schrankbeleuchtung: Schalten Sie den LED-Streifen in einem Schrank ein, wenn Sie ihn öffnen und sich jemand in der Nähe befindet
- Gartenweg-Beleuchtung: Beleuchten Sie Gartenwege, wenn nachts eine Bewegung erkannt wird
Fordern Sie sich selbst heraus
- Einfach: Passen Sie das Zeitverzögerungspotentiometer des Relais an, um das Licht länger nach dem Stoppen der Bewegung zu halten
- Mittel: Kombinieren Sie mit einem LDR – aktivieren Sie den LED-Streifen nur, wenn es dunkel IST UND eine Bewegung erkannt wird
- Fortgeschritten: Senden Sie eine automatische Telegram-Benachrichtigung, wenn sich der LED-Streifen einschaltet