Arduino UNO Q - 12V aktiver Summer

Ein 12V-Aktionsummer erzeugt einen lauten Ton — ideal für Alarme und Benachrichtigungen. Da er 12V benötigt, kann er nicht direkt vom Arduino UNO Q betrieben werden. Stattdessen fungiert ein Relais als Schalter, den der Arduino steuert. In diesem Tutorial erfahren Sie, wie Sie einen 12V-Aktionsummer über ein Relais mit Arduino UNO Q verdrahten und ihn lokal und remote über Telegram steuern.

Arduino UNO Q - 12V aktiver Summer

Erforderliche Hardware

1×Arduino UNO Q
1×USB-Kabel für Arduino Uno Q
1×Relais
1×12V aktiver Summer
1×12V Netzteil
1×DC-Stromanschluss
1×Jumper-Drähte
1×(Empfohlen) Schraubklemmenblock-Shield für Arduino Uno
1×(Empfohlen) Sensors/Servo Expansion Shield for Arduino Uno
1×(Empfohlen) Breadboard-Shield für Arduino Uno
1×(Empfohlen) Gehäuse für Arduino Uno
1×(Empfohlen) Prototyping-Grundplatte & Breadboard-Kit für Arduino Uno

Oder Sie können die folgenden Kits kaufen:

1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Über 12V aktiven Summer

Ein 12V-Aktionsummer erzeugt einen lauten, kontinuierlichen Ton, wenn 12V angelegt werden — kein Frequenzsignal erforderlich.

Pinbelegung

12V aktiver Summer Pinbelegung
  • Positiver (+) Pin (rot): Mit 12V Stromversorgung verbinden (über Relais)
  • Negativer (−) Pin (schwarz): Mit GND der 12V Stromversorgung verbinden

Wie man es mit Arduino UNO Q steuert

Da der Summer 12V benötigt und Arduino UNO Q 3,3V ausgibt, ist ein Relais erforderlich:

  • Der Arduino UNO Q steuert die Relaisspule (3,3V-kompatibles Signal)
  • Das Relais schaltet die 12V-Leitung zum Summer EIN oder AUS
  • Wenn Sie nicht mit Relais vertraut sind, siehe zunächst Arduino UNO Q - Relais-Tutorial

Schaltplan

Arduino UNO Q 12V aktiver Summer Schaltplan

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

MCU-Code

Der Arduino UNO Q hat zwei Prozessoren: die STM32 MCU (behandelt die Echtzeit-Hardwaresteuerung) und die Qualcomm MPU (läuft Debian Linux). In diesem Abschnitt wird nur die STM32 MCU programmiert — die Linux-Seite bleibt untätig. Ein späterer Abschnitt zeigt, wie beide Prozessoren zusammenarbeiten.

Der Code schaltet den 12V-Summer 2 Sekunden EIN und 5 Sekunden AUS, wiederholt sich kontinuierlich:

/* * Dieser Arduino UNO Q Code wurde von newbiely.de entwickelt * Dieser Arduino UNO Q Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/arduino-uno-q/arduino-uno-q-buzzer */ #define RELAY_PIN 3 // pin connected to the relay that controls the 12V buzzer void setup() { pinMode(RELAY_PIN, OUTPUT); } void loop() { digitalWrite(RELAY_PIN, HIGH); // turn buzzer ON via relay delay(2000); digitalWrite(RELAY_PIN, LOW); // turn buzzer OFF via relay delay(5000); }

Schnelle Schritte

  • Erste Schritte mit Arduino UNO Q? Folgen Sie dem Getting Started with Arduino UNO Q Tutorial, um Ihre Entwicklungsumgebung vorzubereiten, bevor Sie fortfahren.
  • Komponenten verdrahten: Verbinden Sie den Relais-Signalpin mit Pin 3, verdrahten Sie das Relais mit dem 12V-Summer und der 12V-Stromversorgung wie im Diagramm gezeigt.
  • Verbinden: Stecken Sie den Arduino UNO Q mit einem USB-C-Kabel in Ihren Computer.
  • Arduino App Lab öffnen: Starten Sie Arduino App Lab und warten Sie, bis es Ihren Arduino UNO Q erkennt.
  • Neue App erstellen: Klicken Sie auf die Schaltfläche Neue App erstellen.
Neue App in Arduino App Lab auf Arduino UNO Q erstellen
  • Geben Sie der App einen Namen, z.B.: DIYables_Buzzer12V
  • Klicken Sie auf Erstellen, um zu bestätigen.
  • Sie sehen einen Satz von Ordnern und Dateien, die in Ihrer neuen App generiert wurden.
Arduino App Lab App-Ordner und Dateien auf Arduino UNO Q
  • Finden Sie die Datei sketch/sketch.ino — hier werden Sie die MCU-Skizze einfügen.
  • Skizze einfügen: Kopieren Sie den MCU-Code oben und fügen Sie ihn in die Skizzendatei ein. Behalten Sie andere Dateien als Standard.
    • Install the library: Click the Add sketch library button (the open book icon with a + sign) in the left sidebar.
    Add sketch library in Arduino App Lab on Arduino UNO Q
    • Search for Arduino_RouterBridge created by Arduino and click the Install button.
    My Apps / DIYables Apps
    Run
    Bricks
    No bricks added...
    Sketch Libraries
    No sketch libra...
    Files
    python
    sketch
    .gitignore
    README.md
    app.yaml
    sketch.ino
    Add sketch library
    Arduino_RouterBridge Arduino

    This library provides a simple RPC bridge for Arduino UNO Q boards, allowing communication between the board and other devices using MsgPack serialization.

    0.4.1
    Install
    More Info
    • Hochladen: Klicken Sie die Run-Schaltfläche in Arduino App Lab, um zu kompilieren und auf die STM32 hochzuladen.
    Klicken Sie die Run-Schaltfläche in Arduino App Lab auf Arduino UNO Q
    • Hören: Der Summer schaltet sich 2 Sekunden EIN, dann 5 Sekunden AUS, wiederholt sich kontinuierlich.

    Linux + MCU Bridge-Programmierung

    Der Arduino UNO Q hat zwei Prozessoren, die zusammenarbeiten: die MPU (Qualcomm, läuft Debian Linux) und die MCU (STM32, läuft Zephyr OS mit Ihrer Arduino-Skizze). Sie kommunizieren über RPC über die Arduino_RouterBridge-Bibliothek — niemals über rohe serielle Ports.

    • Das Relais ist mit der MCU (STM32) verbunden — verdrahtet mit einem digitalen Ausgangspin. Die MCU treibt das Relais HIGH/LOW, um den 12V-Summer zu steuern.
    • Die MPU kann das Relais nicht direkt steuern — Sie müssen eine Funktion auf der MCU über Bridge.call() aufrufen, um den Summer EIN oder AUS zu schalten.
    • Die MPU hat Wi-Fi — da die MPU volles Debian Linux mit Wi-Fi ausführt, kann sie Telegram-Befehle empfangen und den Summer aus der Ferne auslösen.
    • Kommunikation: Bridge.call() auf der Linux-Seite ruft Bridge.provide_safe()-Funktionen auf der MCU-Seite auf (da digitalWrite() eine Hardware-API ist)
    • ⚠️ Reserviert: /dev/ttyHS1 (Linux) und Serial1 (MCU) werden vom Arduino Router verwendet — öffnen Sie sie nie direkt

    Kurz gesagt: MPU sendet EIN/AUS-Befehl → MCU treibt Relais → Relais schaltet 12V-Summer.

    MCU-Skizze — relaisgesteuerter Summer mit Bridge und Monitor-Ausgabe:

    /* * Dieser Arduino UNO Q Code wurde von newbiely.de entwickelt * Dieser Arduino UNO Q Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/arduino-uno-q/arduino-uno-q-buzzer */ #include "Arduino_RouterBridge.h" #define RELAY_PIN 3 void buzzer_on() { digitalWrite(RELAY_PIN, HIGH); Monitor.println("Buzzer ON"); } void buzzer_off() { digitalWrite(RELAY_PIN, LOW); Monitor.println("Buzzer OFF"); } void setup() { Bridge.begin(); Monitor.begin(); pinMode(RELAY_PIN, OUTPUT); digitalWrite(RELAY_PIN, LOW); Bridge.provide_safe("buzzer_on", buzzer_on); Bridge.provide_safe("buzzer_off", buzzer_off); Monitor.println("12V Buzzer Bridge ready"); } void loop() {}

    Python-Skript (Arduino App Lab) — Steuern Sie den Summer von Linux aus:

    /* * Dieser Arduino UNO Q Code wurde von newbiely.de entwickelt * Dieser Arduino UNO Q Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/arduino-uno-q/arduino-uno-q-buzzer */ from arduino.app_utils import * import time def loop(): print("Turning buzzer ON") Bridge.call("buzzer_on") time.sleep(2) print("Turning buzzer OFF") Bridge.call("buzzer_off") time.sleep(5) App.run(user_loop=loop)
    • Hinweis: Stellen Sie sicher, dass Bridge.begin() in der MCU-Skizze aufgerufen wird und die Skizze hochgeladen wird, bevor Sie das Python-Skript auf der Linux-Seite ausführen.
    • ⚠️ Warnung: Öffnen Sie nie direkt /dev/ttyHS1 (auf Linux) oder verwenden Sie Serial1 (auf MCU) in Ihrem Code — diese sind durch den Arduino Router reserviert und der Zugriff darauf unterbricht die Bridge.

    Schnelle Schritte

    • MCU-Skizze hochladen: Ö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.
    • Python-Skript hinzufügen: Fügen Sie den Python-Code oben in die Python-Registerkarte derselben App ein.
    • App ausführen: Klicken Sie auf Run — Python schaltet den Summer automatisch 2 Sekunden EIN und 5 Sekunden AUS.
    • Überprüfen Sie die Konsole: Öffnen Sie die Registerkarte Konsole → MCU Monitor Unterregisterkarte, um „Buzzer ON" und „Buzzer OFF" Nachrichten zu sehen.

    App Lab Konsolenausgabe

    DIYables_Apps
    Stop
    sketch.ino
    1#include "Arduino_RouterBridge.h"
    Serial Monitor
    Python
    Message (Enter to send a message to "Newbiely" on usb(2820070321))
    New Line
    9600 baud
    12V Buzzer Bridge ready Buzzer ON Buzzer OFF Buzzer ON

    Telegram-Integration

    Steuern Sie den 12V-Summer von überall aus 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 es bereits auf die STM32 hochgeladen und ausgeführt wird, bevor Sie fortfahren.

    Python-Skript (Arduino App Lab) — Telegram-Bot zur Steuerung des 12V-Summers:

    /* * Dieser Arduino UNO Q Code wurde von newbiely.de entwickelt * Dieser Arduino UNO Q Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/arduino-uno-q/arduino-uno-q-buzzer */ from arduino.app_utils import * import requests import time BOT_TOKEN = "YOUR_BOT_TOKEN" API_URL = f"https://api.telegram.org/bot{BOT_TOKEN}" last_update_id = 0 def send_message(chat_id, text): requests.post(f"{API_URL}/sendMessage", json={"chat_id": chat_id, "text": text}) def get_updates(): global last_update_id resp = requests.get(f"{API_URL}/getUpdates", params={"offset": last_update_id + 1, "timeout": 5}) return resp.json().get("result", []) def loop(): global last_update_id updates = get_updates() for update in updates: last_update_id = update["update_id"] msg = update.get("message", {}) chat_id = msg.get("chat", {}).get("id") text = msg.get("text", "").strip() if text == "/on": Bridge.call("buzzer_on") send_message(chat_id, "Buzzer is ON.") elif text == "/off": Bridge.call("buzzer_off") send_message(chat_id, "Buzzer is OFF.") else: send_message(chat_id, "Commands:\n/on — turn buzzer ON\n/off — turn buzzer OFF") time.sleep(1) App.run(user_loop=loop)
    • Hinweis: Ersetzen Sie YOUR_BOT_TOKEN durch das von @BotFather auf Telegram erhaltene Token.
    • Senden Sie /on, um den Summer EIN zu schalten.
    • Senden Sie /off, um den Summer AUS zu schalten.

    Schnelle Schritte

    • MCU-Skizze hochladen: Verwenden Sie die Bridge MCU-Skizze aus dem vorherigen Abschnitt (laden Sie sie zuerst hoch, falls noch nicht geschehen).
    • Telegram-Skript einfügen: Kopieren Sie den Python-Code oben in die Python-Registerkarte Ihrer App in Arduino App Lab.
    • Ihr Token einstellen: Ersetzen Sie YOUR_BOT_TOKEN im Skript durch Ihr echtes Bot-Token.
    • App ausführen: Klicken Sie auf Run — der Bot startet und wartet auf Telegram-Nachrichten.
    • Testen Sie es: Senden Sie /on — hören Sie den Summer einschalten. Senden Sie /off — bestätigen Sie, dass er stoppt.

    App Lab Python-Konsolenausgabe

    DIYables_Apps
    Stop
    sketch.ino
    1#include "Arduino_RouterBridge.h"
    Serial Monitor
    Python
    [2026-04-29 12:00:01] Telegram: /on [2026-04-29 12:00:01] Buzzer is ON. [2026-04-29 12:02:10] Telegram: /off [2026-04-29 12:02:10] Buzzer is OFF.
    Telegram
    Telegram 12:45
    Welcome to Telegram!
    ArduinoBot 10:19
    Chatting with Arduino...
    telegram-botfather
    BotFather Yesterday
    Your bot has been created.

    ArduinoBot

    bot
    Today
    /on
    10:15 AM ✓✓
    Buzzer is ON.
    10:16 AM
    /off
    10:17 AM ✓✓
    Buzzer is OFF.
    10:18 AM

    OpenClaw-Integration

    Sie können die OpenClaw an dieses Tutorial anpassen, indem Sie die Anleitung auf Arduino Uno Q - OpenClaw Tutorial beachten

    Anwendungs-/Projektideen

    • Ferntüberprüfungsalarm: Lösen Sie einen lauten 12V-Alarm von überall aus über Telegram aus, wenn ein Sicherheitsereignis auftritt
    • Zeitgesteuerter Alarm: Verwenden Sie die Linux-Uhr der MPU, um den Summer zu einem geplanten Zeitpunkt ertönen zu lassen
    • Türsicherheitsalarm: Koppeln Sie mit einem Bewegungsmelder — lassen Sie den Summer ertönen, wenn unerwartet eine Bewegung erkannt wird
    • Prozessabschlussbenachrichtigung: Lassen Sie den Summer ertönen, wenn ein lange laufender Prozess (z.B. 3D-Druck, Backofen-Timer) abgeschlossen ist
    • Umkreiswarnung: Verwenden Sie mehrere Relaiskanäle, um mehrere Summer in verschiedenen Zonen zu steuern

    Fordern Sie sich selbst heraus

    • Einfach: Fügen Sie einen /status-Befehl hinzu, der meldet, ob der Summer derzeit EIN oder AUS ist
    • Mittel: Fügen Sie einen /beep <count> Telegram-Befehl hinzu, der den Summer N-mal mit einem 1-Sekunden-Intervall piepst
    • Fortgeschrittene: Erstellen Sie einen Telegram-gesteuerten Countdown-Alarm — planen Sie eine Summer-Auslösezeit von Telegram und lassen Sie die MPU ihn automatisch ertönen lassen

    Funktionsreferenzen

    Verwandte Tutorials

    ※ UNSERE NACHRICHTEN

    • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!