Heim Der Blog Blog Details

DS18B20 Temperatursensor Detaillierte Erklärung und Anwendungsfälle

May 28 2025
Ampheo

Anfrage

Globaler Lieferant elektronischer Komponenten AMPHEO PTY LTD: Umfangreiches Inventar für One-Stop-Shopping. Einfache Anfragen, schnelle, individuelle Lösungen und Angebote.

SCHNELLE ANFRAGE
ZUR RFQ-LISTE HINZUFÜGEN
DS18B20 Temperatursensor Detaillierte Erklärung und Anwendungsfälle

DS18B20 Temperatursensor – Übersicht

Der DS18B20 ist ein digitaler Temperatursensor von Maxim Integrated (jetzt Analog Devices), der sich durch hohe Genauigkeit, einfache Ansteuerung und eindeutige Geräte-Identifikation auszeichnet. Er wird häufig in Embedded- und IoT-Anwendungen eingesetzt.

DS18B20 Temperatursensor Detaillierte Erklärung und Anwendungsfälle


Wichtige Merkmale

Merkmal Details
Temperaturbereich -55°C bis +125°C
Genauigkeit ±0.5°C (von -10°C bis +85°C)
Auflösung Programmierbar: 9 bis 12 Bit
Schnittstelle 1-Wire-Digital-Kommunikation
Versorgungsspannung 3,0V bis 5,5V
Betriebsmodi Normalbetrieb (VDD) und parasitäre Stromversorgung
Eindeutige ID 64-Bit-Seriennummer für jedes Gerät
Gehäuseformen TO-92, wasserdicht gekapselt, SMD

1-Wire-Kommunikationsprotokoll

Der DS18B20 nutzt das 1-Wire-Protokoll, das Datenübertragung und sogar Stromversorgung über eine einzige Leitung (plus Masse) ermöglicht.

 Ablauf der Kommunikation

  1. Reset-Impuls vom Mikrocontroller (Master).

  2. Presence-Puls vom DS18B20 als Antwort.

  3. Master sendet ROM-Befehl (z. B. Match ROM, Skip ROM).

  4. Master sendet Funktionsbefehl (z. B. Convert T, Read Scratchpad).

  5. Sensor sendet Temperatur- oder Statusdaten zurück.

 ROM-Befehle

  • Read ROM: Liest die 64-Bit-Geräte-ID.

  • Match ROM: Wählt ein bestimmtes Gerät auf dem Bus aus.

  • Skip ROM: Befehl an alle Geräte auf dem Bus.

  • Search ROM: Erkennt alle Geräte auf dem Bus.


Interner Speicher (Scratchpad)

Der DS18B20 besitzt einen 9-Byte-Scratchpad-Speicher mit folgender Struktur:

Byte Inhalt
0 Temperatur-LSB
1 Temperatur-MSB
2 TH (Alarmgrenze hoch)
3 TL (Alarmgrenze niedrig)
4 Konfigurationsregister
5–7 Reserviert
8 CRC

 Auflösung (im Konfigurationsregister einstellbar)

Auflösung Temperatur-Schrittweite Wandlungszeit (typisch)
9 Bit 0,5°C 93,75 ms
10 Bit 0,25°C 187,5 ms
11 Bit 0,125°C 375 ms
12 Bit 0,0625°C 750 ms

Berechnung der Temperatur

Nach dem Auslesen der Temperatur-Bytes:

c
 
int16_t raw = (msb << 8) | lsb;
float temperatur = raw / 16.0;  // bei 12-Bit-Auflösung

Betriebsarten der Stromversorgung

1. Normalbetrieb

  • VDD wird mit 3,0–5,5 V versorgt.

  • DQ-Leitung benötigt einen Pull-up-Widerstand (4,7 kΩ).

2. Parasitärer Betrieb

  • Nur DQ und GND werden verwendet.

  • Sensor „klaut“ Strom vom Datenbus bei High-Pegel.

  • Wandlungszeit muss beachtet werden.


Typischer Schaltplan

lua
 
MCU (z. B. STM32/Arduino)
   |
   +---[4,7 kΩ]---+ (Pull-up)
   |              |
   |             DQ (Daten)
   |
  DS18B20 ------- GND
     |
    VDD (optional im parasitären Betrieb)

Vorteile

  • Sehr einfache Verdrahtung (nur eine Datenleitung)

  • Unterstützung für mehrere Sensoren an einer Leitung

  • Digitale, genaue Temperaturausgabe

  • Wasserdichte Varianten verfügbar

  • Frei einstellbare Auflösung und Alarmgrenzen


Typische Anwendungsbereiche

Wissenschaft und Industrie

  • Temperaturüberwachung in Laboren

  • Maschinenüberwachung

  • Prozessautomatisierung

Hausautomatisierung

  • Intelligente Thermostate

  • Raumtemperaturregelung

  • Fußbodenheizungssteuerung

Landwirtschaft und Umwelttechnik

  • Gewächshaus-Klimaregelung

  • Boden-Temperaturmessung

  • Wetterstationen

Flüssigkeitsmessung / wasserdichte Anwendungen

  • Aquarien-Temperaturüberwachung

  • Wassertanks

  • Lebensmittellagerung und Kühlketten

Datenerfassung

  • Langzeit-Temperaturaufzeichnung

  • Überwachung von Solaranlagen

  • Kühlraumüberwachung


Entwicklungsplattformen

Der DS18B20 ist mit vielen Plattformen kompatibel:

  • Arduino: Bibliotheken wie OneWire und DallasTemperature.

  • STM32: Eigenes 1-Wire-Protokoll oder GPIO-gesteuert über HAL.

  • Raspberry Pi: Zugriff über GPIO mit Python (z. B. w1thermsensor).

  • ESP32: Ideal für IoT-Anwendungen mit WLAN-Anbindung.

Ampheo