Raspberry Pi - Temperatursensor - LCD

Diese Anleitung zeigt Ihnen, wie Sie mit dem Raspberry Pi die Temperatur von einem DS18B20 One-Wire-Sensor lesen und auf einem LCD I2C anzeigen.

Erforderliche Hardware

1×Raspberry Pi 5
1×LCD I2C
1×DS18B20 Temperatursensor (MIT Adapter)
1×DS18B20 Temperatursensor (OHNE Adapter)
1×4,7 kΩ Widerstand
1×Breadboard (Steckplatine)
1×Jumper-Kabel
1×(Empfohlen) Schraubklemmenblock-Shield für Raspberry Pi
1×(Empfohlen) Raspberry Pi Prototyping-Grundplatte & Breadboard-Kit
1×(Empfohlen) HDMI-Touchscreen-Monitor für Raspberry Pi

Oder Sie können die folgenden Kits kaufen:

1×DIYables Sensor-Kit (30 Sensoren/Displays)
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.

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 Temperatursensor und LCD

Falls Sie mit dem Temperatursensor und LCD nicht vertraut sind (Pinout, Funktionsweise, Programmierung ...), können Ihnen die folgenden Tutorials helfen:

Schaltbild

  • Schaltbild mit Terminal-Adapter (empfohlen).
Raspberry Pi DS18B20 Temperatursensor LCD Schaltbild

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

Um Ihren Verdrahtungsaufbau zu vereinfachen und zu organisieren, empfehlen wir die Verwendung eines Schraubklemmenblock-Shields für Raspberry Pi. Dieses Shield gewährleistet sicherere und besser verwaltbare Verbindungen, wie unten gezeigt:

Raspberry Pi Schraubklemmenblock-Shield

Wir empfehlen den Kauf eines DS18B20 Sensors zusammen mit dem dazugehörigen Verkabelungsadapter für eine reibungslose Installation. Dieser Adapter enthält einen integrierten Widerstand, sodass kein zusätzlicher Widerstand in der Verkabelung benötigt wird.

Raspberry Pi Code

※ Notiz:

Die Adresse des LCD kann je nach Hersteller variieren. In unserem Code haben wir 0x27 verwendet, die vom Hersteller DIYables spezifiziert wird.

Schnellstart-Schritte

  • Stellen Sie sicher, dass Sie Raspbian oder ein anderes Raspberry Pi-kompatibles Betriebssystem auf Ihrem Pi installiert haben.
  • Stellen Sie sicher, dass Ihr Raspberry Pi mit demselben lokalen Netzwerk wie Ihr PC verbunden ist.
  • Stellen Sie sicher, dass Ihr Raspberry Pi mit dem Internet verbunden ist, falls Sie Bibliotheken installieren müssen.
  • Falls Sie den Raspberry Pi zum ersten Mal verwenden, lesen Sie Wie man den Raspberry Pi einrichtet
  • Verbinden Sie Ihren PC über SSH mit dem Raspberry Pi mithilfe des integrierten SSH-Clients unter Linux und macOS oder PuTTY unter Windows. Siehe Wie Sie Ihren PC über SSH mit dem Raspberry Pi verbinden.
  • Stellen Sie sicher, dass Sie die RPi.GPIO Bibliothek installiert haben. Falls nicht, installieren Sie sie mit folgendem Befehl:
sudo apt-get update sudo apt-get install python3-rpi.gpio
pip install w1thermsensor
pip install lcddriver
  • Erstellen Sie eine Python-Skript-Datei temperature_lcd.py und fügen Sie den folgenden Code hinzu:
# Dieser Raspberry Pi Code wurde von newbiely.de entwickelt # Dieser Raspberry Pi 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/raspberry-pi/raspberry-pi-temperature-sensor-lcd import lcddriver import time from w1thermsensor import W1ThermSensor # Initialize the LCD lcd = lcddriver.lcd() # Find the connected DS18B20 sensor def find_ds18b20_sensor(): for sensor in W1ThermSensor.get_available_sensors(): if sensor.type == W1ThermSensor.THERM_SENSOR_DS18B20: return sensor return None # Read temperature from the sensor def read_temperature(sensor): temperature_celsius = sensor.get_temperature() return temperature_celsius # Find DS18B20 sensor ds18b20_sensor = find_ds18b20_sensor() if ds18b20_sensor is not None: print(f"DS18B20 Sensor found: {ds18b20_sensor.id}") try: while True: # Read temperature temperature_c = read_temperature(ds18b20_sensor) # Display temperature on LCD lcd.lcd_display_string(f"Temp: {temperature_c:.2f} C", 1) # Wait for a moment before reading again time.sleep(2) lcd.lcd_clear() except KeyboardInterrupt: pass else: print("DS18B20 Sensor not found.")
  • Speichern Sie die Datei und führen Sie das Python-Skript aus, indem Sie folgenden Befehl im Terminal ausführen:
python3 temperature_lcd.py

Das Skript läuft in einer Endlosschleife kontinuierlich weiter, bis Sie Strg + C im Terminal drücken.

  • Halten Sie den Sensor in heißes und kaltes Wasser oder halten Sie ihn in Ihrer Hand.
  • Überprüfen Sie das LCD für das Ergebnis.

Falls das LCD nichts anzeigt, konsultieren Sie Fehlerbehebung bei LCD I2C für Unterstützung.

Code-Erklärung

Schauen Sie sich die zeilenweise Erklärung in den Kommentaren des Quellcodes an!

Video Tutorial

Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.

※ 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!