DS18B20 temperatuursensor aansluiten op ESP32 en Home Assistant
De DS18B20 (Dallas sensor) is een populaire digitale temperatuursensor die veel gebruikt wordt in ESP32- en Home Assistant-projecten. Deze sensor staat bekend om zijn
betrouwbare metingen, eenvoudige 1-Wire communicatie en de mogelijkheid om meerdere sensoren op één enkele datalijn aan te sluiten. Daardoor is hij erg geschikt voor toepassingen waarbij je op meerdere plekken
temperatuur wilt meten, zoals in een weerstation, boiler, aquarium, vijver of technische ruimte. Een groot voordeel van de DS18B20 is dat hij nauwkeuriger en stabieler werkt dan veel eenvoudige analoge of budgetsensoren.
In dit artikel lees je wat de DS18B20 precies is, wat de belangrijkste specificaties zijn, hoe je hem correct aansluit op een ESP32 en welke Arduino-basiscode je kunt gebruiken om direct je eerste temperatuurmetingen uit te lezen.
Wil je alleen temperatuur meten en zoek je een stabiele, betrouwbare sensor die ook op grotere kabellengtes goed werkt, dan is de DS18B20 vaak een betere keuze dan een DHT22.
Specificaties van de DS18B20
🧪 Algemene informatie
🏷️ Naam: DS18B20 (waterdichte versie)
🌡️ Type: Digitale temperatuursensor
🏭 Fabrikant: Maxim / Dallas
🌡️ Meetbereik & nauwkeurigheid
Bereik: –55 °C tot +125 °C
Nauwkeurigheid: ±0.5 °C
Resolutie: 9–12 bits
⏱️ Snelheid
Meetinterval: 750 ms
Advies: ~1 Hz
Respons: Enkele seconden in water
🔋 Voeding
Voeding: 3.0–5.5 V
Verbruik: enkele mA
🔗 Communicatie
Protocol: 1-Wire
Bijzonder: 64-bit adres
Draden: 3
🧱 Fysiek
Behuizing: RVS, epoxy
Formaat: ~6×50 mm
Kabel: 1–3 meter
Waterdicht: ja!
🧰 Typische toepassingen
🐠 Aquarium • 🌿 Vijver • ♨️ Boiler • 🏡 Binnen/buiten temperatuur
Aansluitschema (ESP32)
Je hebt de DS18B20, een 4.7 kΩ weerstand en een paar Dupont-kabels nodig. Sluit de sensor als volgt aan:
- GND van de sensor → GND op de ESP32
- VDD van de sensor → 3.3V op de ESP32
- DQ (data) van de sensor → GPIO 4 van de ESP32 via een 4.7 kΩ pull-up naar 3.3V
Arduino basiscode
Installeer eerst de bibliotheken OneWire en DallasTemperature via de Library Manager.
<
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 4 // GPIO 4 op ESP32
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
void setup() {
Serial.begin(115200);
sensors.begin();
}
void loop() {
sensors.requestTemperatures();
float tempC = sensors.getTempCByIndex(0);
Serial.print("Temperatuur: ");
Serial.print(tempC);
Serial.println(" °C");
delay(1000);
}
Tips
- Gebruik altijd een 4.7 kΩ pull-up weerstand op de datalijn.
- Gebruik altijd de 3.3 V voor de voeding en niet alleen de GND en DQ (data)
- Elke sensor heeft een unieke ID — ideaal voor meerdere sensoren op één bus.
Vergelijking met andere sensoren
De DS18B20 is een zeer nauwkeurige temperatuursensor, maar er zijn ook sensoren die naast temperatuur bijvoorbeeld luchtvochtigheid of luchtkwaliteit meten.
Wil je meerdere DS18B20 sensoren op één ESP32 aansluiten? Lees dan ook:Meerdere DS18B20 sensoren aansluiten op een ESP32.
In onze uitgebreide vergelijking van sensoren voor Home Assistant bekijken we de verschillen tussen de DS18B20, DHT22, HTU21D en BME680. We vergelijken onder andere nauwkeurigheid, stabiliteit en de verschillende metingen zoals temperatuur, luchtvochtigheid, luchtdruk en luchtkwaliteit.
Zo kun je eenvoudig bepalen welke sensor het beste past bij jouw project.
☕ Steun deze website met een kop koffie
Op matteman.nl deel ik al mijn projecten, schema’s, uitleg en code gratis — zonder advertenties of sponsordeals. Alles wat je hier vindt, is met zorg gemaakt om hobbyisten, makers en automatiseringsliefhebbers op weg te helpen.Heb je iets gehad aan de informatie op deze site? Dan kun je mij helpen door een eenmalige bijdrage te doen via Buy Me a Coffee. Daarmee steun je niet alleen mijn werk, maar ook de kosten voor hosting, onderdelen en het onderhouden van de 3D-printer (die het altijd begeeft op het verkeerde moment 😉).
Elke bijdrage — groot of klein — wordt enorm gewaardeerd. Dankjewel! 🙌