Temperatur messen mit dem DS18B20 und dem Arduino UNO

Erstellt am 28. November 2016 von Canoxnet @canoxnet

In diesem Beitrag zeige ich euch wie ihr die Temperatur mit dem DS18B20 und einem Arduino UNO messt.

Benötigt wird:

  • Arduino UNOGenuino UNO, oder Arduino kompatibler
  • DS18B20
  • 4,7 kOhm Widerstand
  • Male > Male Jumper Kabel
  • Mini Breadboard

Zuerst geht es an den Aufbau bzw. die Verkabelung:

5V des Arduno geht an VDD des DS18B20, GND des Arduino an GND des DS18B20 und Pin 4 des Arduino geht an den DQ des DS18B20.

Der DS18B20 besitzt 3 Pins. VDD für die Stromversorgung, DQ für die Daten und GND erklärt sich von selbst.

Zwischen VDD und DQ muss ein 4,7 kOhm Widerstand gesteckt werden.

Startet die Arduino IDE und erstellt einen Sketch mit folgendem Code:

#include <OneWire.h>
#include <DallasTemperature.h>

const unsigned long BAUD_RATE = 9600;
const unsigned char ONE_WIRE_BUS = 4;

OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensor(&oneWire);

void setup() {
 sensor.begin();
 Serial.begin(BAUD_RATE);
 Serial.print("Anzahl Sensoren: ");
 Serial.println(sensor.getDeviceCount());
}

void loop() {
 sensor.requestTemperatures();
 float temperatur = sensor.getTempCByIndex(0);
 Serial.println(temperatur);
 delay(1000);
}

Der Sketch muss dann noch kompiliert und hochgeladen werden. Wenn beides erfolgreich ist müsst ihr die serielle Ausgabe öffnen. Dort seht ihr dann folgendes:

Anzeige