One Wire Digital Temperature Sensor – DS18B20+

(3 customer reviews)

£3.96 inc VAT

Availability: 101 in stock (can be backordered)

Brand: MAXIM, SparkFun
Part Number: SEN-00245, DS18B20
SKU: PPSEN-00245
Barcode: 5055421000257
SKU: PPSEN-00245 Categories: , Tags: ,

One Wire Digital Temperature Sensor – DS18B20+

This is the latest DS18B20 1-Wire digital temperature sensor from Maxim IC. Reports degrees C with 9 to 12-bit precision, -55C to 125C (+/-0.5C). Each sensor has a unique 64-Bit Serial number etched into it – allows for a huge number of sensors to be used on one data bus.

This is a wonderful part that is the cornerstone of many data-logging and temperature control projects.

Features:

  • Unique 1-Wire interface requires only one port pin for communication
  • Each device has a unique 64-bit serial code stored in an onboard ROM
  • Multidrop capability simplifies distributed temperature sensing applications
  • Requires no external components
  • Can be powered from the data line. The power supply range is 3.0V to 5.5V
  • Measures temperatures from -55°C to +125°C (-67°F to +257°F)
  • ±0.5°C accuracy from -10°C to +85°C
  • Thermometer resolution is user-selectable from 9 to 12 bits
  • Converts temperature to 12-bit digital word in 750ms (max.)
  • User-definable nonvolatile (NV) alarm settings
  • Alarm search command identifies and addresses devices whose temperature is outside of programmed limits (temperature alarm condition)
  • Applications include thermostatic controls, industrial systems, consumer products, thermometers, or any thermally sensitive system

Specifications:

  • Supply voltage: 3.0 to 5.5 V
  • Standby current: 1 μA
  • Active current: 1.5 mA
  • Measuring range: -55 °C to + 125 °C (-67 °F to +257 °F)
  • Accuracy (Thermometer Error):
    • ±0.5 °C from -10 °C to +85 °C
    • ±1 °C from -30 °C to +100 °C
    • ±2 °C from -55 °C to +125 °C
  • Resolution: 9-bit to 12-bit (programmable)
  • Conversion time: < 750 ms (12-bit resolution)
  • Communication protocol: 1-Wire® bus protocol
  • Package: 3-pin TO-92

DS18B20+ (TO-220) Device Pin Out:

One Wire Digital Temperature Sensor DS18B20 Pin Out

DS18B20+ Block Diagram:

DS18B20 Block Diagram

Connecting DS18B20+ to Arduino:

You’ll need to download the Arduino Librarys “OneWire” and “DallasTemp” which you can find below, and install them to your Arduino Libraries folder.

Connect your Arduino as per this diagram:

Arduino connected to a one wire temperature sensor DS18B20

Notes:

  • You don’t need a Scottish Uno, and Uno will do!
  • You only need one 4.7K resistor per circuit, no matter how many temperature sensors you add in a daisy chain formation

Example Arduino Code for DS18B20+:

/* Example code for the DS18B20+ One-Wire Digital Temperature Sensor */
// Include Arduino libraries:
#include <OneWire.h>
#include <DallasTemperature.h>
// Define the Arduino data pin connected to the 1-Wire bus:
#define ONE_WIRE_BUS 2
// Create a new instance of the oneWire class to communicate with any OneWire device:
OneWire oneWire(ONE_WIRE_BUS);
// Pass the oneWire reference to DallasTemperature library:
DallasTemperature sensors(&oneWire);
void setup() {
  // Begin serial communication at a baud rate of 9600:
	Serial.begin(9600);
  // Start up the library:
	sensors.begin();
}
void loop() {
  // Send the command for all devices on the bus to perform a temperature conversion:
	sensors.requestTemperatures();
  // Fetch the temperature in degrees Celsius for device index:
  	float tempC = sensors.getTempCByIndex(0); // the index 0 refers to the first device
  	float tempF = sensors.getTempFByIndex(0); // Fetch the temperature in degrees Fahrenheit for device index
	Serial.print("Temperature: "); //Output to the serial monitor
	Serial.print(tempC);   // Print the temperature in Celsius
	Serial.print(" \xC2\xB0");
	Serial.print("C  |  ");
	Serial.print(tempF);	// Print the temperature in Fahrenheit
	Serial.print(" \xC2\xB0");
	Serial.println("F");
  // Wait 1 second:
	delay(1000);
}

Documents:

3 reviews for One Wire Digital Temperature Sensor – DS18B20+

  1. Robert Pin

    Very simple to use and apparently reliable…also very cheap. A little small / fiddly. Doesn’t need an A2D converter..works straight away with a Pi.

  2. Adam Coghl

    These are great little sensors. They are easy to connect up, read and manage. They work over a wide range of temperatures and they are accurate and easy to callibrate.

  3. Agung

    How to use the sensor to the arduino ? and the code in arduino, please help 🙁

Add a review
Scroll to Top