Arduino UNO Q - Temperatursensor - LCD
Möchten Sie Live-Temperaturmessungen auf einem LCD mit Ihrem Arduino UNO Q anzeigen — und Telegram-Benachrichtigungen erhalten, wenn es zu heiß wird? Dieses Tutorial kombiniert den DS18B20-Temperatursensor mit einem I2C-LCD, um eine komplette Temperaturüberwachungsstation zu schaffen.
In diesem Tutorial lernen Sie:
- Wie Sie den DS18B20-Sensor und das LCD I2C-Display mit dem Arduino UNO Q MCU verkabeln
- Wie Sie das MCU (C/C++ Arduino-Code) programmieren, um die Temperatur zu lesen und auf dem LCD anzuzeigen
- Wie Sie sowohl die Linux-Seite (Python) als auch die MCU-Seite (C/C++) programmieren, um die Temperatur über Bridge zu überwachen
- Wie Sie Telegram-Benachrichtigungen erhalten, wenn die Temperatur einen Schwellenwert auf Arduino UNO Q überschreitet
- Wie Sie OpenClaw auf Arduino UNO Q mit dem Temperatursensor und LCD verwenden

Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Kaufhinweis: Viele DS18B20-Sensoren auf dem Markt sind von geringer Qualität. Wir empfehlen dringend den Kauf des Sensors von der Marke DIYables über den obigen Link. Wir haben ihn getestet und er funktionierte gut.
Kaufhinweis: Eine weitere Möglichkeit ist, das LCD I2C-Display zu erstellen, indem Sie LCD 1602 Display und PCF8574 I2C Adapter Module kombinieren.
Über den Temperatursensor und das LCD
Wenn Sie mit dem DS18B20-Sensor oder dem I2C-LCD-Display neu sind, schauen Sie sich zuerst diese Tutorials an:
Schaltplan

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
DS18B20-Verbindungen:
| DS18B20-Pin | Arduino UNO Q MCU |
|---|---|
| GND | GND |
| VCC | 3,3V oder 5V |
| DATA | D4 |
LCD I2C-Verbindungen:
| LCD I2C-Pin | Arduino UNO Q MCU |
|---|---|
| VCC | 5V |
| GND | GND |
| SDA | A4 |
| SCL | A5 |
Arduino UNO Q Code
Der Arduino UNO Q hat zwei Prozessoren, die zusammenarbeiten:
- Der STM32 MCU liest den DS18B20-Sensor und steuert das LCD direkt an
- Der Qualcomm MPU führt Debian Linux aus und verwaltet Wi-Fi, Python und Cloud-Konnektivität
- In diesem Abschnitt wird nur das MCU programmiert — die Linux-Seite bleibt untätig. Ein späterer Abschnitt zeigt, wie beide Prozessoren über Bridge zusammenarbeiten.
Das MCU liest die Temperatur alle Sekunden und aktualisiert sowohl die LCD-Anzeige als auch den seriellen Monitor.
※ Notiz:
Die I2C-Adresse für das LCD kann je nach Hersteller unterschiedlich sein. In diesem Code haben wir 0x27 verwendet, die vom Hersteller DIYables angegeben wird.
Schnelle Schritte
Neuer Benutzer mit Arduino UNO Q? Folgen Sie dem Tutorial Erste Schritte mit Arduino UNO Q, bevor Sie fortfahren.
- Verbinden: Verkabeln Sie den DS18B20-Sensor und das LCD I2C mit dem Arduino UNO Q MCU wie im obigen Schaltplan gezeigt.
- Ö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.: TemperatureSensorLcd
- 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 als Standard.
- Install the library: Click the Add sketch library button (the open book icon with a + sign) in the left sidebar.

- Search for DallasTemperature created by Miles Burton
, Tim Newsome , Guil Barros , Rob Tillaart and click the Install button.
- Search for OneWire created by Jim Studt, Tom Pollard, Robin James, Glenn Trewitt, Jason Dangel, Guillermo Lovato, Paul Stoffregen, Scott Roberts, Bertrik Sikken, Mark Tillotson, Ken Butcher, Roger Clark, Love Nystrom and click the Install button.
- Search for DIYables LCD I2C created by DIYables.io and click the Install button.
- Hochladen: Klicken Sie auf die Schaltfläche Ausführen in Arduino App Lab.

- Halten Sie den Sensor in Ihrer Hand oder legen Sie ihn in heißes/kaltes Wasser — sehen Sie die Temperaturaktualisierung auf dem LCD.
Wenn das LCD nichts anzeigt, überprüfen Sie Fehlerbehebung für LCD I2C für Hilfe.
App Lab-Konsolenausgabe
Bridge: Linux + MCU
Dieser Abschnitt zeigt, wie Sie beide Prozessoren des Arduino UNO Q programmieren, damit die Linux-Seite die Temperatur remote über Bridge überwachen kann:
- Der DS18B20-Sensor und das LCD sind beide mit dem MCU (STM32) verbunden — das MCU liest die Temperatur alle Sekunden und aktualisiert die LCD-Anzeige automatisch
- Der MPU kann nicht direkt auf den Sensor oder das LCD zugreifen — er muss Bridge-Funktionen aufrufen, um Temperaturmessungen zu lesen oder das LCD zu löschen
- Der MPU hat Wi-Fi — mit vollem Debian Linux kann er Messungen protokollieren, auf Dashboards veröffentlichen oder Warnungen über das Internet versenden
- Arduino_RouterBridge aktiviert RPC-Kommunikation zwischen den beiden Prozessoren
- ⚠️ /dev/ttyHS1 (Linux) und Serial1 (MCU) sind RESERVIERT durch den Router — öffnen Sie sie niemals im Benutzercode
Kurz gesagt: MCU liest Sensor alle Sekunden und aktualisiert LCD → MPU liest Temperatur über Bridge → MPU veröffentlicht, protokolliert oder warnt über Wi-Fi.
MCU-Code (Bridge)
Python-Code (Bridge)
Schnelle Schritte
- Verbinden: Verkabeln Sie den DS18B20-Sensor und das LCD I2C mit dem Arduino UNO Q wie im Schaltplan gezeigt.
- Öffnen Sie Arduino App Lab: Starten Sie Arduino App Lab und warten Sie, bis das Board erkannt wird.
- Erstellen Sie eine neue App: Klicken Sie auf Neue App erstellen, benennen Sie sie TemperatureSensorLcdBridge, 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.
- Hochladen: Klicken Sie auf die Schaltfläche Ausführen in Arduino App Lab.

- Sehen Sie, wie die Temperaturmessungen in der Python-Konsole angezeigt werden, während sich das LCD automatisch aktualisiert.
App Lab-Konsolenausgabe
Telegram
Überwachen Sie die Temperatur remote und erhalten Sie automatische Telegram-Benachrichtigungen, wenn die Temperatur über 35°C steigt.
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 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 die gleiche MCU-Skizze).
- Klicken Sie auf die Schaltfläche Ausführen. Senden Sie /temp von Telegram oder halten Sie den Sensor, um eine Hochtemperatur-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
Sie können viele nützliche Projekte kombinieren, die den Temperatursensor und das LCD mit Arduino UNO Q verbinden:
- Intelligentes Thermometer: Ein eigenständiges LCD-Thermometer, das automatisch alle 5 Sekunden zwischen Celsius und Fahrenheit wechselt — perfekt für einen Schreibtisch oder ein Labor
- Temperaturprotokoll mit Anzeige: Das MCU zeigt die Live-Temperatur auf dem LCD an, während die Linux-MPU Messungen jede Minute mit Zeitstempel in eine Datei protokolliert
- Gewächshaus-Regler: Verwenden Sie die Temperaturmessung, um ein Relais-Lüfter zu steuern — das LCD zeigt den aktuellen Status an, und Telegram empfängt Benachrichtigungen, wenn die Temperatur außerhalb des Bereichs liegt
- Remote-Temperaturstation: Die MPU veröffentlicht die Temperatur alle 30 Sekunden an einen MQTT-Broker; das LCD zeigt immer die aktuelle lokale Messung an, während Remote-Dashboards die Historie verfolgen
- Zwei-Zonen-Thermometer: Verbinden Sie zwei DS18B20-Sensoren auf dem gleichen 1-Wire-Bus und zeigen Sie die Messung jedes Sensors in einer separaten LCD-Zeile an, gekennzeichnet mit "Zone A" und "Zone B"
Fordern Sie sich selbst heraus
Bereit, mit dem Temperatursensor und LCD auf Arduino UNO Q noch weiter zu gehen? Versuchen Sie diese Herausforderungen:
- Einfach: Ändern Sie die MCU-Skizze so, dass die zweite LCD-Zeile eine benutzerdefinierte Nachricht anzeigt — "HEISS!" wenn die Temperatur über 35°C liegt, "KALT!" wenn unter 10°C, oder "NORMAL" andernfalls.
- Mittel: Fügen Sie eine set_label(String) Bridge-Funktion hinzu, die es der Python-Seite ermöglicht, eine benutzerdefinierte Beschriftung in der zweiten LCD-Zeile zu schreiben (z. B. den Ortsnamen wie "Büro" oder "Serverraum"), während die erste Zeile weiterhin die Temperatur anzeigt.
- Fortgeschritten: Erstellen Sie ein Temperatur-Verlaufscharte: Die Linux-MPU liest die Temperatur alle 10 Sekunden für 10 Minuten, speichert die Werte und sendet bei /report das Minimum, Maximum und den Durchschnitt an Telegram, zusammen mit einem einfachen ASCII-Diagramm, das den Trend zeigt.