Tabla de contenido:

Medición de humedad usando HYT939 y Arduino Nano: 4 pasos
Medición de humedad usando HYT939 y Arduino Nano: 4 pasos

Video: Medición de humedad usando HYT939 y Arduino Nano: 4 pasos

Video: Medición de humedad usando HYT939 y Arduino Nano: 4 pasos
Video: Arduino Nano HYT939 I2C Humidity and Temperature Sensor Tutorial 2024, Mes de julio
Anonim
Image
Image

HYT939 es un sensor de humedad digital que funciona con el protocolo de comunicación I2C. La humedad es un parámetro fundamental cuando se trata de sistemas médicos y laboratorios, por lo que para lograr estos objetivos, intentamos conectar HYT939 con arduino nano. En este tutorial se demuestra la interfaz del módulo sensor HYT939 con arduino nano.

Para leer los valores de humedad, hemos utilizado arduino con un adaptador I2c. Este adaptador I2C hace que la conexión al módulo sensor sea fácil y más confiable.

El protocolo de comunicación sobre el que trabaja el sensor es I2C. I2C significa circuito interintegrado. Es un protocolo de comunicación en el que la comunicación se realiza a través de líneas SDA (datos en serie) y SCL (reloj en serie). Permite conectar varios dispositivos al mismo tiempo. Es uno de los protocolos de comunicación más simples y eficientes.

Paso 1: Hardware necesario:

Hardware requerido
Hardware requerido
Hardware requerido
Hardware requerido
Hardware requerido
Hardware requerido

Los materiales que necesitamos para lograr nuestro objetivo incluyen los siguientes componentes de hardware:

1. HYT939

2. Arduino Nano

3. Cable I2C

4. Escudo I2C para Arduino nano

Paso 2: Conexión de hardware:

Conexión de hardware
Conexión de hardware
Conexión de hardware
Conexión de hardware

La sección de conexión de hardware básicamente explica las conexiones de cableado necesarias entre el sensor y el arduino nano. Asegurar las conexiones correctas es la necesidad básica al trabajar en cualquier sistema para obtener la salida deseada. Entonces, las conexiones requeridas son las siguientes:

El HYT939 funcionará sobre I2C. Aquí está el diagrama de cableado de ejemplo, que demuestra cómo cablear cada interfaz del sensor.

Fuera de la caja, la placa está configurada para una interfaz I2C, por lo que recomendamos usar esta conexión si, por lo demás, es agnóstico. ¡Todo lo que necesitas son cuatro cables!

Solo se requieren cuatro conexiones Vcc, Gnd, SCL y pines SDA y estos se conectan con la ayuda del cable I2C.

Estas conexiones se muestran en las imágenes de arriba.

Paso 3: Código Arduino para la medición de la humedad:

Código Arduino para medición de humedad
Código Arduino para medición de humedad
Código Arduino para medición de humedad
Código Arduino para medición de humedad

Comencemos ahora con el código Arduinoo.

Mientras usamos el módulo de sensor con Arduino, incluimos la biblioteca Wire.h. La biblioteca "Wire" contiene las funciones que facilitan la comunicación i2c entre el sensor y la placa Arduino.

El código completo de Arduino se proporciona a continuación para la conveniencia del usuario:

#incluir

// La dirección HYT939 I2C es 0x28 (40)

#define Addr 0x28

configuración vacía ()

{

// Inicializar la comunicación I2C como MASTER

Wire.begin ();

// Inicializar la comunicación en serie

Serial.begin (9600);

retraso (300);

}

bucle vacío ()

{

datos int sin firmar [4];

// Iniciar transmisión I2C

Wire.beginTransmission (Addr);

// Enviar comando en modo normal

Wire.write (0x80);

// Detener la transmisión I2C

Wire.endTransmission ();

retraso (300);

// Solicitar 4 bytes de datos

Wire.requestFrom (Addr, 4);

// Leer 4 bytes de datos

// humedad msb, humedad lsb, temp msb, temp lsb

if (Cable disponible () == 4)

{

datos [0] = Wire.read ();

datos [1] = Wire.read ();

datos [2] = Wire.read ();

datos [3] = Wire.read ();

// Convierte los datos a 14 bits

humedad de flotación = (((datos [0] y 0x3F) * 256.0) + datos [1]) * (100.0 / 16383.0);

float cTemp = (((datos [2] * 256.0) + (datos [3] y 0xFC)) / 4) * (165.0 / 16383.0) - 40;

float fTemp = (cTemp * 1.8) + 32;

// Salida de datos al monitor en serie

Serial.print ("Humedad relativa:");

Serial.print (humedad);

Serial.println ("% RH");

Serial.print ("Temperatura en grados Celsius:");

Serial.print (cTemp);

Serial.println ("C");

Serial.print ("Temperatura en Fahrenheit:");

Serial.print (fTemp);

Serial.println ("F");

}

retraso (300);

}

En la biblioteca de cables, Wire.write () y Wire.read () se utilizan para escribir los comandos y leer la salida del sensor. La siguiente parte del código ilustra la lectura de la salida del sensor.

// Leer 4 bytes de datos // humedad msb, humedad lsb, temp msb, temp lsb if (Wire.available () == 4) {data [0] = Wire.read (); datos [1] = Wire.read (); datos [2] = Wire.read (); datos [3] = Wire.read ();

}

La salida del sensor se muestra en la imagen de arriba.

Paso 4: Aplicaciones:

Aplicaciones
Aplicaciones

HYT939 es un sensor de humedad digital eficiente que se emplea en sistemas médicos, autoclaves. La medición del punto de rocío a presión y los sistemas de secado también encuentran el uso de este módulo de sensor. En varios laboratorios donde el nivel de humedad apropiado es un parámetro fundamental para realizar experimentos, este sensor se puede implementar allí para mediciones de humedad.

Recomendado: