DS18B20 Temperatursensor Detaillierte Erklärung und Anwendungsfälle
Globaler Lieferant elektronischer Komponenten AMPHEO PTY LTD: Umfangreiches Inventar für One-Stop-Shopping. Einfache Anfragen, schnelle, individuelle Lösungen und Angebote.
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.
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
-
Reset-Impuls vom Mikrocontroller (Master).
-
Presence-Puls vom DS18B20 als Antwort.
-
Master sendet ROM-Befehl (z. B.
Match ROM
,Skip ROM
). -
Master sendet Funktionsbefehl (z. B.
Convert T
,Read Scratchpad
). -
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:
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
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
undDallasTemperature
. -
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.
Verwandte Artikel
- ·SoC vs. SoM: Was ist der Unterschied?
- ·Wie erstelle ich einen KI-Agenten mit Raspberry Pi?
- ·Wie implementiert man künstliche Intelligenz-Algorithmen auf STM32?
- ·Der Unterschied zwischen 8-Bit-, 16-Bit-, 32-Bit- und 64-Bit-Mikrocontrollern
- ·Arten und Anwendungen gängiger Sensoren
- ·STM32 PWM Prinzip und Anwendung
- ·ESP32 vs Arduino, Vergleichen Sie ihre Unterschiede und Anwendungsfälle
- ·Wie baut man einen Raspberry Pi Roboter?
- ·Wie benutzt man stm32 als Logikanalysator?