Cómo Conectar el DHT11 KY-015 a tu Arduino UNO

Cómo Conectar el DHT11 KY-015 a tu Arduino UNO

Si estas armando una estacion meteorologica casera, un sistema de riego automatizado o cualquier proyecto que necesite monitorear el ambiente, el DHT11 (modulo KY-015) es de los sensores mas usados para empezar. Combina en una sola placa un sensor capacitivo de humedad y un termistor, y entrega ambas lecturas por un unico pin digital, lo que simplifica muchisimo el cableado frente a otras soluciones analogicas.

En este Cuaderno Tecnico vamos a repasar su pinout, dimensiones, como conectarlo a un Arduino UNO y un ejemplo de codigo funcional para empezar a leer temperatura y humedad en minutos.


Que es y para que sirve?

El KY-015 es una placa que integra el sensor DHT11, encargado de medir la temperatura ambiente y la humedad relativa del aire, y las transmite en formato digital a traves de una sola linea de datos (protocolo propio tipo "single bus", distinto de I2C, SPI o 1-Wire estandar). Esto lo hace ideal para proyectos educativos y de IoT: invernaderos, control de ventilacion, estaciones climaticas o cualquier sistema que reaccione a las condiciones del ambiente.

Es compatible con Arduino (UNO, Mega, Nano), ESP8266, ESP32 y Raspberry Pi.

Parametro Valor
Voltaje de operacion 3.3 V - 5.5 V
Rango de humedad 20% a 90% RH (+-5% de error)
Rango de temperatura 0C a 50C (+-2 de error)
Resolucion 1% RH / 1C
Frecuencia de muestreo 1 Hz (una lectura por segundo)
Tipo de salida Digital, un solo pin (protocolo propio)

Dimensiones

El modulo es bastante compacto, lo que facilita integrarlo en proyectos con poco espacio disponible.


  • Alto: 19 mm
  • Ancho: 17 mm
  • Profundidad: 19 mm
  • Peso: 3 g

Pinout: identificando los pines

El modulo trae 3 pines ya identificados en la placa. La resistencia pull-up para la linea de datos ya viene integrada, asi que no necesitas agregar una externa.

Pin Nombre Funcion
S Senal / Data Salida digital con los datos de temperatura y humedad
+ VCC Alimentacion, de 3.3V a 5.5V (recomendado 5V)
- GND Tierra

Conexion con Arduino UNO

La conexion es directa, sin componentes adicionales:

DHT11 (KY-015) Arduino UNO
S (Data) Pin Digital 8
+ (VCC) 5V
- (GND) GND

Asi se ve el circuito armado:

Importante: el pin de datos (S) puede conectarse a cualquier pin digital del Arduino, solo hay que actualizar el numero en el codigo. En este ejemplo usamos el pin 8.

Programacion en Arduino IDE

Para leer el sensor se necesita instalar una libreria. Desde el Arduino IDE: Programa - Incluir Libreria - Administrar Bibliotecas, busca DHT sensor library (de Adafruit) e instalala.

Codigo de ejemplo (puedes copiarlo directamente):

#include <DHT.h>
#define DHTPIN    8        // Pin de datos conectado al D8
#define DHTTYPE   DHT11    // Tipo de sensor

DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(9600);
  dht.begin();
  Serial.println(F("=== Monitor DHT11 ==="));
  Serial.println(F("Humedad (%)\tTemperatura (C)"));
}

void loop() {
  float h = dht.readHumidity();
  float t = dht.readTemperature();

  if (isnan(h) || isnan(t)) {
    Serial.println(F("Error al leer el DHT11!"));
  } else {
    Serial.print(h, 1);
    Serial.print(F("\t"));
    Serial.print(t, 1);
    Serial.println(F(" C"));
  }
  delay(2000);
}

Recursos y documentacion


Con estas conexiones y el codigo base ya puedes empezar a leer temperatura y humedad en tu proyecto. Si buscas mayor precision o rangos de medicion mas amplios, recuerda que tambien contamos con el DHT22, su hermano mayor con mejores especificaciones.

Regresar al blog

Deja un comentario