¡Disponible sólo en Internet!

Sensor Sonda Temperatura Ds18b20 Cable 1m Arduino Itytarg

MLA636744414

Nuevo producto

Cod: GAW / HJG B044

Cables

Rojo: Vcc

Amarillo: Datos

Negro: Gnd

Más detalles

59 artículos

compartir

$ 2.990,00 IVA Inc.

Más

Características técnicas del sensor DS18B20

Si realmente quieres sacar todo el partido a un componente, lo primero que tienes que hacer es dirigirte a la hoja de características técnicas del DS18B20. En este documento vas a encontrar todo lo necesario para conectar y programar el componente.

Lo primero que vemos es que hay diferentes formas del sensor DS18B20. A esto se le llama encapsulado y depende de donde lo utilices (protoboard, PCB, etc…), tendrás que elegir uno u otro.

Lo más importante de esta parte es la disposición de los pines. Para cada encapsulado encontramos una disposición diferente. Existen tres encapsulados: TO-92, SO y μSOPencapsulados ds18b20

Imagen obtenida del Datasheet DS18B20

La única diferencia entre ellos es la forma o encapsulado. Todos tienen tres pines útiles VDD, GND y DQ.

  • VDD: es la tensión de alimentación es decir, que voltaje necesita para que el sensor de temperatura DS18B20 funcione correctamente. Podemos alimentar desde 3V a 5,5V. Ojo con este dato ya que es muy interesante cuando queremos trabajar con placas como Arduino MKR1000 y NodeMCU que trabajan a 3,3V.
  • GND: es la toma de tierra. A este pin conectaremos la referencia 0V de nuestro circuito.
  • DQ: es el pin de datos. Por este pin es por donde se recibirán todos los datos en el protocolo 1-Wire. Este protocolo tiene una ventaja. Como su propio nombre indica (1-Wire significa un cable en español) solo es necesario utilizar un cable para conectar varios sensores de temperatura DS18B20. Por lo tanto, solo utilizaremos 1 pin de Arduino para conectar múltiples sensores.

De momento ya hemos avanzado bastante, ya sabríamos como conectar el sensor de temperatura DS18B20 a un Arduino. Faltaría la programación :). Aún así, es interesante conocer más aspectos técnicos de este sensor.

Es importante fijarse en el consumo eléctrico si queremos utilizar el DS18B20 con alguna placa que requiera de baterías o pilas. Eso lo vemos en la segunda página en los parámetros que se miden en Amperios. Para este artículo no nos hace falta ya que será alimentado a través de la red eléctrica.

Rango de temperaturas del DS18B20

Algo muy importante es saber qué rango de temperaturas es capaz de medir un sensor de este tipo. No es lo mismo medir la temperatura ambiente de una casa situada en Alicante que medir la temperatura de un congelador o frigorífico.

También es importante conocer el error que puede llegar a tener y la resolución del sensor de temperatura DS18B20. Toda esta información la sacamos de la hoja de características técnicas.

Comenzamos con el rango de temperaturas. El DS18B20 puede medir temperaturas entre -55ºC y 125ºC. Es un rango muy amplio sin embargo, no en todo el rango tenemos el mismo error. Ahora te estarás preguntando ¿qué es el error de un sensor de temperatura?

DS18B20 y el error en la medición

Si viviéramos en un mundo ideal donde todos salimos del trabajo a nuestra hora, nuestros hijos nos hacen caso y tenemos pagada la hipoteca desde hace años, un sensor de temperatura nos mediría exactamente la temperatura que hace en un sitio.

Pero no, no vivimos en un mundo idóneo y no salimos a nuestra hora, nuestros hijos no nos hacen caso y nos queda mucho de hipoteca por pagar. En este mundo, el real, un sensor de temperatura como el DS18B20 tiene errores debido a factores externos, al ruido inherente en los circuitos eléctricos y alteraciones en el medio físico.

No todo son noticias malas, aunque los componentes eléctricos tengan errores, estos se pueden medir. Por lo tanto sabemos más o menos cuanto oscilará la medición entorno a su valor real. En el caso del DS18B20 el error depende del rango de temperaturas.

Para temperaturas entre -10ºC y 85ºC podemos tener ±0,5ºC. Para el resto de temperaturas entre -55ºC y 125ºC el error es de ±2ºC.

error ds18b20

Esto equivale a decir que si el sensor DS18B20 suministra una temperatura de 23ºC el valor real estará entre 22,5ºC y 23,5ºC. Si por el contrario suministra un valor de 90ºC el valor real estará entre 88ºC y 92ºC.

Esto tampoco te debe preocupar a no ser que quieras «cocer metanfetamina» como Walter White en Breaking Bad :)

Resolución del sensor de temperatura DS18B20

Una de las características más interesantes de este sensor es que podemos trabajar con diferentes resoluciones. Cuando hablo de resoluciones me refiero a cual es la variación mínima que podemos medir entre dos temperaturas.

Es lo mismo que nos sucede con los pines analógicos en Arduino o cualquier otra placa de desarrollo. El DS18B20 admite resoluciones de 9-bit, 10-bit, 11-bit y 12-bit. Por defecto utiliza la resolución de 12-bit.

Las variaciones para cada resolución las puedes consultar en la siguiente tabla.

Elegir una resolución u otra dependerá de la precisión que necesitemos para nuestro proyecto. A través de la programación podremos cambiar dicha resolución pero todo eso lo veremos más adelante.

Otras características del sensor de temperatura DS18B20

Además de medir la temperatura, el DS18B20 incorpora una memoria de 64-bit (equivalente a 8 bytes) para almacenar el identificador o dirección única de cada sensor.

El primer byte identifica el tipo de componente. Por ejemplo para los DS18B20 es el número 28 en hexadecimal.

Esta dirección única es necesaria dentro del bus 1-Wire para identificar cada uno de los sensores de temperatura DS18B20 conectados al bus de comunicación.

Gracias a que utiliza este tipo de comunicaciones, se consiguen dos cosas. Por un lado robustez en la transmisión de los datos ya que trabaja con datos digitales, mucho menos sensibles a los efectos adversos del ruido que las señales analógicas. Por otro lado permite conectar muchos sensores de temperatura con un único pin digital.

Internamente tiene otro tipo de memoria que sirve para diferentes cosas. Utiliza el sistema de verificación de redundancia cíclica CRC para la detección de errores en los datos. El código CRC se almacena en la memoria.

También almacena la temperatura obtenida y dispone de dos alarmas que se disparan si la temperatura es mayor o menor que un umbral de temperatura máxima o temperatura mínima.

Resumen de las características técnicas del DS18B20

CARACTERÍSTICAVALOR
Voltaje de alimentación 3V a 5,5V
VDD voltaje de alimentación
GND Tierra
DQ Datos
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 programable 9-bit, 10-bit, 11-bit o 12-bit (default)

Conexión del DS18B20 con Arduino

Una vez que entendemos cómo funciona el sensor de temperatura DS18B20 y, sobre todo, cuales son sus características técnicas más importantes, vamos a pasar al montaje eléctrico con Arduino. Como supondrás, todo este montaje se hace entorno al protocolo 1-Wire.

Esto no es único del DS18B20, cualquier otro componente que trabaje con el protocolo 1-Wire, utilizará la misma configuración eléctrica.

sonda ds18b20

Ya hemos visto que podemos trabajar con diferentes encapsulados. En este tutorial voy a centrarme en el TO-92 y más concreto el que viene en forma de sonda impermeable. Si tienes otro modelo o incluso el mismo sin sonda los pasos serán prácticamente los mismos.

Nota: La polaridad de los cables se puede testear con un multimetro en la función DIODO

Si: Punta negra a Vcc y punta roja a Dato: medición 1.96

Si: Punta negra a Datos y punta roja a Vcc: medición infinito

Diametro de la sonda: 6mm

12 productos más en la misma categoría: