DS18B20 Digitaler Temperatursensor – 1-Wire-Thermometer für verteilte Temperaturüberwachung
Der DS18B20 ist ein programmierbarer 1-Wire-Digitaltemperatursensor mit variabler Auflösung für Thermostate, Wetterstationen, industrielle Überwachung, Geräteschutz vor Überhitzung und verteilte Temperaturnetzwerke. Jedes Gerät hat einen einzigartigen 64-Bit-Seriencode, der es mehreren Sensoren ermöglicht, einen Datenbus gemeinsam zu nutzen.
Er passt gut zum ELAB Nano V3, Raspberry Pi Pico W und Breadboard-Prototypen mit dem MB 102 Breadboard Kit. Für Lufttemperatur- und Feuchtigkeitsüberwachung vergleichen Sie ihn mit dem DHT22 AM2302 Sensor.
Laut Maxim/Analog Devices DS18B20-Spezifikation unterstützt der Sensor eine Auflösung von 9 Bit bis 12 Bit, einen Messbereich von -55C bis +125C und eine Genauigkeit von +/-0,5C von -10C bis +85C. Siehe das offizielle DS18B20-Datenblatt für endgültige Designgrenzen.
Technische Spezifikationen
| Parameter | Wert |
|---|---|
| SKU | TB-DS18B20 |
| Sensor-IC | DS18B20 |
| Schnittstelle | 1-Wire-Digitalbus |
| Temperaturbereich | -55C bis +125C |
| Genauigkeit | +/-0,5C von -10C bis +85C |
| Auflösung | Vom Benutzer wählbare 9-Bit bis 12-Bit |
| Versorgungsbereich | 3,0V-5,5V laut DS18B20-Datenblatt |
| Konvertierungszeit | Bis zu 750ms bei 12-Bit-Auflösung |
| Eindeutige ID | 64-Bit-ROM-Code pro Sensor |
| Betriebsmodi | Externe Versorgung oder Parasitenstrom |
Platine Layout & Beschriftungsanleitung
- DQ – 1-Wire-Datenpin; Pull-Up-Widerstand zu VCC verwenden.
- VDD – Externe Stromversorgung bei Nichtverwendung des Parasitenmodus.
- GND – Massebezug.
- Pull-Up-Widerstand – Üblicherweise 4,7k am 1-Wire-Datenleitung.
- Sensorgehäuse – Im Ziel-Thermalbereich platzieren für genaue Messwerte.
- Busverkabelung – Mehrere DS18B20-Sensoren können DQ teilen, wenn jede ID adressiert wird.
- Kabelhinweis – Lange Kabel benötigen sorgfältige Erdung und Pull-up-Auswahl.
- Thermischer Hinweis – Geben Sie dem Gehäuse Zeit, um die Umgebungstemperatur zu erreichen.
Anwendungsszenarien
1. Arduino Temperaturanzeige
Lese DS18B20-Temperatur mit OneWire- und DallasTemperature-Bibliotheken.
#include <OneWire.h> #include <DallasTemperature.h> OneWire oneWire(2); DallasTemperature sensors(&oneWire); void setup() { Serial.begin(115200); sensors.begin(); } void loop() { sensors.requestTemperatures(); Serial.println(sensors.getTempCByIndex(0)); delay(1000); }
2. Mehrfachsensor-Scan
Gibt Adressen für jeden DS18B20 am Bus aus.
#include <OneWire.h> OneWire ds(2); byte addr[8]; void setup() { Serial.begin(115200); } void loop() { if (ds.search(addr)) { for (byte i = 0; i < 8; i++) Serial.print(addr[i], HEX); Serial.println(); } else { ds.reset_search(); delay(3000); } }
3. MicroPython 1-Wire-Lesung
Lese einen DS18B20 von einem MicroPython-Board.
import time import onewire, ds18x20 from machine import Pin bus = onewire.OneWire(Pin(15)) sensor = ds18x20.DS18X20(bus) roms = sensor.scan() while True: sensor.convert_temp() time.sleep_ms(750) for rom in roms: print(sensor.read_temp(rom)) time.sleep(1)
Packliste
- 1 x DS18B20 Digitaler Temperatursensor
FAQ
Q: Welche Schnittstelle verwendet der DS18B20?
A: Er verwendet einen 1-Wire-Digitalbus.
Q: Können mehrere Sensoren einen Pin teilen?
A: Ja, jeder DS18B20 hat einen einzigartigen 64-Bit-ROM-Code.
Q: Welchen Pull-up-Widerstand soll ich verwenden?
A: Ein 4,7k Pull-up ist üblich für kurze 1-Wire-Busse.
Q: Was ist der Temperaturbereich?
A: Der Datenblattbereich liegt bei -55C bis +125C.
Q: Was ist der beste Genauigkeitsbereich?
A: Die Genauigkeit ist mit +/-0,5C von -10C bis +85C spezifiziert.
Q: Kann er mit 3,3V betrieben werden?
A: Ja, der DS18B20 Versorgungsbereich liegt bei 3,0V bis 5,5V.
Q: Was ist Parasitenstromversorgung?
A: Der Sensor kann in unterstützten Schaltungen Strom von der Datenleitung beziehen.
Q: Warum lese ich 85C?
A: 85C ist ein häufiger Power-Up-Wert, wenn die Umwandlungszeit oder Kommunikation fehlerhaft ist.











Rezensionen
Es gibt noch keine Rezensionen.