A continuación mostraremos el manejo del sensor de temperatura 18b20 con Arduino


RESUMEN DE  CARACTERISTICAS DEL SENSOR

CARACTERÍSTICAVALOR
Voltaje de alimentación3V a 5,5V
VDDvoltaje de alimentación
GNDTierra
DQDatos
Rango de temperaturas-55ºC a 125ºC
Error (-10ºC a 85ºC)±0,5ºC
Error (-55ºC a 125ºC)±2ºC
Resolución programable9-bit, 10-bit, 11-bit o 12-bit (default)

IDENTIFICACION DE LOS PINES DEL SENSOR

a continucaicon muestro una tabla con los colores de los cables que puede haber


  TIPO 1PIN DS18B20
NegroGND
RojoVdd
AmarilloDQ












CONECCION CON ARDUINO.

respecto al valor de la resistencia pull-up dependera de la distancia de nuestro cable, adjunto una ´pequeña tabla a continuacion

RESISTENCIA PULL-UPDISTANCIA DEL CABLE (METROS)
4,7 kΩDe 0 m a 5 m
3,3 kΩDe 5 m a 10 m
2,2 kΩDe 10 m a 20 m
1,2 kΩDe 20 m a 50 m

en nuestro caso la distancia del cable no excede los 5m por lo cual usamos la resistencia de 4.7kΩ 





PREPARANDO EL ARDUINO IDE PARA EL PROGRAMA:

procedemos a descargar las librerias necesarias para lo cual vamos en el IDE ARDUINO a Herramientas/administrar bibliotecas.


una vez instaladas las librerías procedemos a probar el siguiente código.

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

// Pin donde se conecta el bus 1-Wire
const int pinDatosDQ = 9;

// Instancia a las clases OneWire y DallasTemperature
OneWire oneWireObjeto(pinDatosDQ);
DallasTemperature sensorDS18B20(&oneWireObjeto);
 
void setup() {
    // Iniciamos la comunicación serie
    Serial.begin(9600);
    // Iniciamos el bus 1-Wire
    sensorDS18B20.begin(); 
}
 
void loop() {
    // Mandamos comandos para toma de temperatura a los sensores
    Serial.println("comando para recabar las temperaturas");
    sensorDS18B20.requestTemperatures();
 
    // Leemos y mostramos los datos de los sensores DS18B20
    Serial.print("Temperatura sensor 0: ");
    Serial.print(sensorDS18B20.getTempCByIndex(0));
    Serial.println(" C");
   
    delay(1000); 
}

y si abrimos el serial terminal   lo que debería mostrarnos es