DHT22: Sensor de humedad/temperatura de precisión para Arduino

9
12090
Se presenta los requisitos para utilizar el sensor DHT22 además de una comparación gráfica del comportamiento de este sensor contra el DHT11.

Antes se ha escrito acerca del sensor DHT11, uno de los más conocidos gadgets para Arduino debido a que un solo dispositivo es capaz de medir dos parámetros, temperatura y humedad.

DHT22

De hecho ya se ha escrito acerca de este sensor en este blog:

El DHT11 y el DHT22, en implementación, son completamente iguales, salvo un parámetro que se debe modificar en el código.

Físicamente, poseen algunas diferencias, entre las cuales se destaca la diferencia de color y el tamaño del encapsulado.

dht

En su funcionamiento también hay algunas diferencias importantes.

DHT11 vs DHT22

Las características eléctricas del sensor DHT11 (Datasheet) y del DHT22 (Datasheet), así como la información mostrada arriba y algunos otros detalles se encuentran disponibles en sus respectivas hojas de datos.

En la imagen se puede observa que el DHT22 es mucho más preciso que el DHT11. Algo que no se muestra en la figura, pero que es un hecho, es la incapacidad del DHT11 para hacer mediciones de temperaturas en fracciones decimales, lo cual es posible con el DHT22.

La programación es idéntica a la del DHT11, aunque se debe establecer en la declaración de variables cuál de los dos sensores se va a usar. Se debe recordar que hay que implementar la librería DHT, la cual se puede encontrar en este enlace.

El código de la parte superior imprimirá la humedad y la temperatura cada 2 segundos el el monitor serial.

Las conexiones son muy sencillas.

Untitled Sketch_bb

Hay algunos diagramas donde se agrega una resistencia pull-up, sin embargo a mi me ha funcionado bien conectándolo directo a Arduino.

¿Cómo luce las mediciones obtenidas con DHT11 comparadas con las del DHT22?

Hagamos una prueba donde pongo los 2 sensores a funcionar al mismo tiempo.

Usaré el siguiente código:

Con este código es posible utilizar el software de recolección de datos para Excel que hemos preparado en Panama Hitek.

Sin título-4

Los datos obtenidos se han graficado. Aquí les presento los resultados.

En ambos gráficos, especialmente el de humedad, se puede observar que el DHT22 es mucho más sensible a estímulos que el DHT11.

De igual forma, una vez alcanzado cierto nivel de humedad, la decadencia hasta los niveles normales en condiciones ambiente se producen más manera más pronunciada en el DHT22 que en el DHT11.

Estas pruebas son evidencia de que el DHT22 es un sensor mucho más estable y confiable que el DHT11. Obviamente esto significa que uno es más caro que el otro. No es necesario decir cual de los dos cuesta más.

Espero que la información suministrada sea de utilidad para ustedes.

Saludos.

  • Humberto Lopez

    Usé el codigo para comparar dos sensores, en mi caso son dos DHT22, pero no me arroja nada en el monitor serie..Me puede ayudar por favor?

    • victor capote

      déjame mira el código.

  • Eduardo Caporale

    Gracias Antony, por compartir imformacion, saludos desde Mar del Plata, Argentina.

  • Juan David Valencia Pineda

    Hola amigos de PanamaHitek, soy novato en esto, ando trabajando en un proyecto y requiero un sensor de temperatura y humedad algo robusto, pues lo debo dejar a la intemperie. Estoy entre dos opciones, uno es el sensor AM2305
    y el otro es un DHT10 de tipo industrial. Me preocupa un poco la comunicación ya que veo que uno funciona con protocolo I2C y el otro al parecer maneja un bus único sin protocolo establecido. Ya tengo un dispositivo trabajando con protocolo SPI (SD SHIELD) y otro con I2C(RTC GROOVE) y he tenido dificultades al tratar de configurar multiples dispositivos con un mismo protocolo de comunicación. En fin, mi pregunta va orientada a si ¿Es verdad que el sensor AM2305 puede ser leido con la librería del sensor DHT22? y si es así ¿Trae alguna consecuencia negativa sobre la medición?, es decir, ¿Pierdo precisión o alguna otra cosa?
    AM2305 (https://drive.google.com/file/d/0BzaKjvCRihgbZjdhMm1VbVVJZTA/view)
    DHT10 (http://www.didacticaselectronicas.com/index.php/sensores/temperatura/sensor-de-temperatura-y-humedad-digital-detail)

  • Hola majo, me gusta este proyecto para ir aprendiendo sobre los arduinos, te doy mi enhorabuena por tu pagina.

    Estoy intentando hacerlo y me da error en las lecturas, me da fallo en la lectura de humedad y de temperatura me da -3276.70

    Podrias ayudarme para solucionarlo?

    • Antony García González

      Parece un error en la conexión del dispositivo

    • Palazuelos Saul III

      ami tmb me da valores grandes,sera que noes compatible con arduino uno R3

    • Palazuelos Saul III

      mira

    • Palazuelos Saul III

      Tienes que cambiar #define DHTTYPE DHT22 por #define DHTTYPE DHT11