Arduino UNO Q - Berührungssensor
Ein Berührungssensor funktioniert wie eine digitale Taste — er gibt HIGH aus, wenn er berührt wird, und LOW, wenn er nicht berührt wird. Auf Arduino UNO Q können Sie Berührungen lokal auf der MCU überwachen oder den Bridge-Modus verwenden, um Berührungsereignisse von der Linux-Seite aus via Telegram zu erkennen und darauf zu reagieren.
In diesem Tutorial lernen Sie:
- Was ein Berührungssensor ist und wie er funktioniert
- Wie Sie den Berührungssensor mit Arduino UNO Q MCU verdrahten
- Wie Sie die MCU (C/C++ Arduino-Code) programmieren, um den Berührungssensor zu lesen
- Wie Sie sowohl die Linux-Seite (Python) als auch die MCU-Seite (C/C++) programmieren, um Berührungsereignisse via Bridge zu erkennen
- Wie Sie Telegram-Benachrichtigungen erhalten, wenn der Berührungssensor auf Arduino UNO Q aktiviert wird
- Wie Sie OpenClaw auf Arduino UNO Q mit dem Berührungssensor verwenden

Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Über den Berührungssensor
Pinbelegung
Der Berührungssensor hat drei Stifte:
- GND: Mit GND (0V) verbinden
- VCC: Mit 3,3V oder 5V verbinden
- SIGNAL: Digitaler Ausgang — gibt LOW aus, wenn nicht berührt, HIGH, wenn berührt. Mit einem digitalen Pin auf Arduino UNO Q MCU verbinden.

Funktionsweise
- Wenn der Sensor nicht berührt ist, ist der SIGNAL-Pin LOW
- Wenn der Sensor berührt wird, ist der SIGNAL-Pin HIGH
Der Berührungssensor verhält sich genau wie eine kurzzeitige Drucktaste — er kann mit digitalRead() ausgelesen und benötigt keine Bibliothek.
Schaltplan

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
| Berührungssensor-Pin | Arduino UNO Q MCU |
|---|---|
| GND | GND |
| VCC | 3.3V |
| SIGNAL | D7 |
Programmierung für Berührungssensor
- Richten Sie den Arduino UNO Q MCU-Pin als digitalen Eingang ein:
- Lesen Sie den Sensorzustand:
- Überprüfen und reagieren Sie:
Arduino UNO Q Code
Der Arduino UNO Q hat zwei Prozessoren, die zusammenarbeiten:
- Die STM32 MCU liest den Berührungssensor direkt via digitalen Pin — alle Sensordaten laufen auf der MCU
- Die Qualcomm MPU führt Debian Linux aus und verwaltet Wi-Fi, Python und Cloud-Konnektivität
- In diesem Abschnitt wird nur die MCU programmiert — die Linux-Seite bleibt untätig. Ein späterer Abschnitt zeigt, wie beide Prozessoren via Bridge zusammenarbeiten.
Die MCU liest den Berührungssensor alle 500ms und gibt den Zustand an den Serial Monitor aus.
Schnelle Schritte
Erstes Mal mit Arduino UNO Q? Folgen Sie dem Tutorial Erste Schritte mit Arduino UNO Q, bevor Sie fortfahren.
- Verdrahten: Verbinden Sie den Berührungssensor wie im Schaltplan dargestellt mit Arduino UNO Q MCU.
- Öffnen Sie Arduino App Lab: Starten Sie Arduino App Lab und warten Sie, bis es Ihre Arduino UNO Q erkennt.
- Erstellen Sie eine neue App: Klicken Sie auf die Schaltfläche Neue App erstellen.

- Geben Sie der App einen Namen, zum Beispiel: TouchSensor
- Klicken Sie auf Erstellen, um zu bestätigen.

- Fügen Sie die Skizze ein: Kopieren Sie den MCU-Code oben und fügen Sie ihn in sketch/sketch.ino ein. Behalten Sie andere Dateien wie in der Standardeinstellung.
- Keine Bibliothek erforderlich — der Berührungssensor verwendet nur die eingebaute digitalRead()-Funktion.
- Upload: Klicken Sie auf die Ausführungsschaltfläche in Arduino App Lab.

- Halten Sie Ihren Finger auf den Sensor und beobachten Sie den Serial Monitor.
App Lab Konsolenausgabe
Bridge: Linux + MCU
Dieser Abschnitt zeigt, wie beide Prozessoren des Arduino UNO Q programmiert werden, damit die Linux-Seite Berührungsereignisse via Bridge erkennen kann:
- Der Berührungssensor ist mit dem MCU-Digitalpin verbunden — die MCU überwacht Zustandsänderungen in loop() und setzt ein Ereignisflag, wenn berührt
- Die MPU kann den Digitalpin nicht direkt lesen — sie ruft Bridge-Funktionen auf, um den aktuellen Zustand abzufragen oder das Berührungsereignis zu verbrauchen
- Die MPU hat Wi-Fi — mit vollständigem Debian Linux kann sie auf Berührungsereignisse reagieren und Telegram-Benachrichtigungen senden
- Arduino_RouterBridge ermöglicht RPC-Kommunikation zwischen den beiden Prozessoren
- ⚠️ /dev/ttyHS1 (Linux) und Serial1 (MCU) sind RESERVIERT für den Router — öffnen Sie sie niemals im Benutzercode
Kurz gesagt: MCU erkennt Berührungsereignisse in loop() → MPU fragt via Bridge ab → MPU löst Aktionen über Wi-Fi aus.
MCU-Code (Bridge)
Python-Code (Bridge)
Schnelle Schritte
- Verdrahten: Verbinden Sie den Berührungssensor wie im Schaltplan dargestellt mit Arduino UNO Q.
- Öffnen Sie Arduino App Lab: Starten Sie Arduino App Lab und warten Sie, bis die Platine erkannt wird.
- Erstellen Sie eine neue App: Klicken Sie auf Neue App erstellen, nennen Sie sie TouchSensorBridge, und klicken Sie auf Erstellen.
- Fügen Sie die MCU-Skizze ein: Kopieren Sie den MCU Bridge-Code oben und fügen Sie ihn in sketch/sketch.ino ein.
- Fügen Sie den Python-Code ein: Kopieren Sie den Python Bridge-Code oben und fügen Sie ihn in die Python-Datei der App 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.
- Upload: Klicken Sie auf die Ausführungsschaltfläche in Arduino App Lab.

- Berühren Sie den Sensor und beobachten Sie, wie die Python-Konsole die Zustandsänderung meldet.
App Lab Konsolenausgabe
Telegram
Erhalten Sie sofortige Telegram-Benachrichtigungen, wenn der Berührungssensor aktiviert wird.
MCU-Skizze: Behalten Sie die gleiche MCU-Skizze aus dem vorherigen Bridge-Abschnitt.
Python-Code (Telegram)
Schnelle Schritte
- Ersetzen Sie YOUR_TELEGRAM_BOT_TOKEN durch Ihr tatsächliches 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 die gleiche MCU-Skizze).
- Klicken Sie auf die Ausführungsschaltfläche. Berühren Sie den Sensor und überprüfen Sie Telegram auf die Benachrichtigung.
App Lab Konsolenausgabe
ArduinoBot
OpenClaw
You can adapt the OpenClaw to this tutorial by refering the instruction on Arduino Uno Q - OpenClaw Tutorial
Projektideen
Sie können viele nützliche Projekte mit dem Berührungssensor und Arduino UNO Q erstellen:
- Berührbare intelligente Lampe: Berühren Sie den Sensor, um eine LED oder ein Relais via Bridge umzuschalten — die MPU verwaltet die Umschaltlogik und protokolliert jede Berührung mit einem Zeitstempel
- Türklingel: Platzieren Sie den Berührungssensor in der Nähe eines Türrahmens — wenn berührt, gibt die MPU eine Sounddatei ab oder sendet eine Telegram-Benachrichtigung, um Sie auf einen Besucher hinzuweisen
- Geheimer Klopf-Zähler: Zählen Sie aufeinanderfolgende Berührungen innerhalb von 3 Sekunden via Python-Logik — wenn die Anzahl einem vordefinierten Muster entspricht, löst Bridge ein Entsperr-Relais aus
- Präsenzaktivierte Anzeige: Berühren Sie den Sensor, um ein OLED-Display zu aktivieren — die MCU schaltet das Display via Bridge beim ersten Berührung ein und nach 10 Sekunden Inaktivität aus
- Laborsicherheitsbestätigung: Erfordern Sie eine Berührungsbestätigung vor einer Bridge-Befehl, um ein High-Power-Relais zu aktivieren — die Python-Seite überprüft get_event(), bevor das Steuersignal gesendet wird
Fordern Sie sich selbst heraus
Möchten Sie mit dem Berührungssensor auf Arduino UNO Q noch weiter gehen? Versuchen Sie diese Herausforderungen:
- Einfach: Zählen Sie die Anzahl der Berührungen seit dem Start und geben Sie die Anzahl via eine get_count(String) Bridge-Funktion frei — die Python-Seite gibt die Anzahl jedes Mal aus, wenn sie sich erhöht.
- Mittel: Implementieren Sie einen Doppeltipp-Detektor: Die MCU zeichnet Berührungszeitstempel auf und setzt ein double_tap-Flag, wenn zwei Berührungen innerhalb von 500ms auftreten — die Python-Seite ruft dies via get_event() auf und sendet eine Telegram-Benachrichtigung.
- Fortgeschritten: Erstellen Sie eine berührungsbasierte Morsecode-Eingabe: Die MCU unterscheidet zwischen kurzen Berührungen (Punkt) und langen Berührungen (>500ms, Strich) — die Python-Seite dekodiert die Sequenz und sendet den dekodierten Buchstaben an Telegram.