Raspberry Pi Pico: Temperatur messen mit mehreren DS18B20
Der DS18B20 ist ein digitaler Temperatursensor mit einem vergleichsweise großen Messbereich bei ziemlich guter Genauigkeit. Außerdem existiert er in verschiedenen Bauweisen. Zum Beispiel zum Messen der Temperatur im Außenbereich oder in Flüssigkeiten.
Dank der Anbindung per One-Wire ist es möglich mehrere DS18B20 an einer Datenleitung zu betreiben und die Temperatur nacheinander auszulesen. Da die DS18B20 über eine ID eindeutig identifizierbar und adressierbar sind, kann man mehrere Sensoren an der gleichen Datenleitung unterscheiden.
Im folgenden Aufbau wollen wir die Temperatur mit mehreren DS18B20 messen und anzeigen.
Aufbau und Bauteile
- DS18B20 - Digitaler Temperatursensor oder KY-001 - DS18B20 Temperature Sensor Module
- GPIO-Belegung (Pinout)
Raspberry Pi Pico | DS18B20 | |
---|---|---|
Pin 36 | 3V3 +3,3V | 3 (VCC) |
Pin 21 | GPIO 16 | 2 (Data) |
Pin 23 | GND | 1 (GND) |
Hinweis: Beim DS18B20 wird normalerweise ein 4,7-kOhm-Widerstand zwischen VCC und Data geschaltet. In diesem Versuchsaufbau verzichten wir darauf. Im praktischen Einsatz sollte der DS18B20 mit dem Widerstand beschaltet sein.
Programmcode
Dank der direkten Unterstützung von One-Wire und des DS18B20 in MicroPython für den Raspberry Pi Pico ist die Integration in einem Programmcode ein Kinderspiel.
# Bibliotheken laden from machine import Pin from onewire import OneWire from ds18x20 import DS18X20 from utime import sleep, sleep_ms # Initialisierung GPIO, OneWire und DS18B20 one_wire_bus = Pin(16) sensor_ds = DS18X20(OneWire(one_wire_bus)) # One-Wire-Geräte ermitteln devices = sensor_ds.scan() #print(devices) while True: # Temperatur messen sensor_ds.convert_temp() # Warten: min. 750 ms sleep_ms(750) # Sensoren abfragen for device in devices: print('Sensor:', device) print('Temperatur:', sensor_ds.read_temp(device), '°C') print() sleep(3)
Weitere verwandte Themen:
- Raspberry Pi Pico: Temperatur messen
- Raspberry Pi Pico: Temperaturregler / Temperaturregelung
- Raspberry Pi Pico: Temperatur messen mit dem DHT11
- Raspberry Pi Pico: Temperatur messen mit dem DHT22/AM2302
Teilen:
Hardware-nahes Programmieren mit dem Raspberry Pi Pico und MicroPython
Das Elektronik-Set Pico Edition ist ein Bauteile-Sortiment mit Anleitung zum Experimentieren und Programmieren mit MicroPython.
- LED: Einschalten, ausschalten, blinken und Helligkeit steuern
- Taster: Entprellen und Zustände anzeigen
- LED mit Taster einschalten und ausschalten
- Ampel- und Lauflicht-Steuerung
- Elektronischer Würfel
- Eigene Steuerungen programmieren
Online-Workshop
Hardware-nahes Programmieren mit dem Raspberry Pi Pico
Gemeinsam mit anderen und unter Anleitung experimentieren? Wir bieten unterschiedliche Online-Workshops zum Raspberry Pi Pico und MicroPython an. Einführung in die Programmierung, Sensoren programmieren und kalibrieren, sowie Internet of Things und Smart Home über WLAN und MQTT.
Für Ihre Fragen zu unseren Online-Workshops mit dem Raspberry Pi Pico besuchen Sie unseren PicoTalk (Online-Meeting). (Headset empfohlen)
Elektronik-Set Pico Edition
Raspberry Pi Pico: Hardware-nahes Programmieren mit MicroPython
Leichter Einstieg mit All-in-one-Set zum sofort Loslegen, um eigene Steuerungen programmieren.
Elektronik-Set Pico WLAN Edition
Raspberry Pi Pico W: IoT und Smart Home mit WLAN und MQTT
Betreibe Deinen Raspberry Pi Pico W als drahtloser Sensor in Deinem WLAN, versende E-Mails mit Daten und kommuniziere per MQTT im Internet of Things oder Smart Home.
Elektronik-Set Sensor Edition
Erweiterung zu den Elektronik-Sets Pico Edition und Pico WLAN Edition
Elektronik-Set mit den beliebtesten Sensoren zum Messen von Temperatur, Helligkeit, Bewegung, Lautstärke und Entfernung.
Elektronik-Set Eingabe Ausgabe Edition
Erweiterung zu den Elektronik-Sets Pico Edition und Pico WLAN Edition
Damit kannst Du MP3-Dateien abspielen, eine Stoppuhr bauen, einen Servo-Motor mit Drehschalter oder Joystick steuern, Lichteffekte mit einem WS2812-LED-Lichtstreifen erzeugen, Schalten mit einem Relais und Signalisieren mit einem Vibrationsmotor.