Índice:

Medição de umidade usando HYT939 e Arduino Nano: 4 etapas
Medição de umidade usando HYT939 e Arduino Nano: 4 etapas

Vídeo: Medição de umidade usando HYT939 e Arduino Nano: 4 etapas

Vídeo: Medição de umidade usando HYT939 e Arduino Nano: 4 etapas
Vídeo: Particle Photon HYT939 I2C Humidity and Temperature Sensor Tutorial 2024, Novembro
Anonim
Image
Image

HYT939 é um sensor de umidade digital que funciona no protocolo de comunicação I2C. A umidade é um parâmetro fundamental quando se trata de sistemas médicos e laboratórios. Portanto, para atingir esses objetivos, tentamos fazer a interface do HYT939 com o arduino nano. Neste tutorial, a interface do módulo sensor HYT939 com o arduino nano é demonstrada.

Para ler os valores de umidade, usamos o arduino com um adaptador I2c. Este adaptador I2C torna a conexão ao módulo do sensor mais fácil e confiável.

O protocolo de comunicação no qual o sensor funciona é I2C. I2C significa circuito inter-integrado. É um protocolo de comunicação no qual a comunicação ocorre através das linhas SDA (serial data) e SCL (serial clock). Ele permite conectar vários dispositivos ao mesmo tempo. É um dos protocolos de comunicação mais simples e eficientes.

Etapa 1: Hardware necessário:

Hardware necessário
Hardware necessário
Hardware necessário
Hardware necessário
Hardware necessário
Hardware necessário

Os materiais de que precisamos para cumprir nosso objetivo incluem os seguintes componentes de hardware:

1. HYT939

2. Arduino Nano

3. Cabo I2C

4. Escudo I2C para Arduino nano

Etapa 2: Conexão de Hardware:

Conexão de hardware
Conexão de hardware
Conexão de hardware
Conexão de hardware

A seção de conexão de hardware explica basicamente as conexões de fiação necessárias entre o sensor e o arduino nano. Garantir as conexões corretas é a necessidade básica ao trabalhar em qualquer sistema para a saída desejada. Portanto, as conexões necessárias são as seguintes:

O HYT939 funcionará em I2C. Aqui está o diagrama de fiação de exemplo, demonstrando como conectar cada interface do sensor.

Fora da caixa, a placa é configurada para uma interface I2C, como tal, recomendamos usar esta conexão se você for agnóstico. Você só precisa de quatro fios!

São necessárias apenas quatro conexões dos pinos Vcc, Gnd, SCL e SDA e estes são conectados com a ajuda do cabo I2C.

Essas conexões são demonstradas nas fotos acima.

Etapa 3: Código Arduino para medição de umidade:

Código Arduino para medição de umidade
Código Arduino para medição de umidade
Código Arduino para medição de umidade
Código Arduino para medição de umidade

Vamos começar com o código do Arduinoo agora.

Ao usar o módulo sensor com o Arduino, incluímos a biblioteca Wire.h. A biblioteca "Wire" contém as funções que facilitam a comunicação i2c entre o sensor e a placa Arduino.

Todo o código do Arduino é fornecido abaixo para a conveniência do usuário:

#incluir

// O endereço HYT939 I2C é 0x28 (40)

#define Addr 0x28

void setup ()

{

// Inicializar a comunicação I2C como MASTER

Wire.begin ();

// Inicializar a comunicação serial

Serial.begin (9600);

atraso (300);

}

void loop ()

{

dados internos não assinados [4];

// Iniciar a transmissão I2C

Wire.beginTransmission (Addr);

// Envie o comando do modo normal

Wire.write (0x80);

// Pare a transmissão I2C

Wire.endTransmission ();

atraso (300);

// Solicita 4 bytes de dados

Wire.requestFrom (Addr, 4);

// Lê 4 bytes de dados

// umidade msb, umidade lsb, temp msb, temp lsb

if (Wire.available () == 4)

{

dados [0] = Wire.read ();

dados [1] = Wire.read ();

dados [2] = Wire.read ();

dados [3] = Wire.read ();

// Converta os dados para 14 bits

umidade flutuante = (((dados [0] e 0x3F) * 256,0) + dados [1]) * (100,0 / 16383,0);

float cTemp = (((dados [2] * 256,0) + (dados [3] e 0xFC)) / 4) * (165,0 / 16383,0) - 40;

float fTemp = (cTemp * 1.8) + 32;

// Dados de saída para monitor serial

Serial.print ("Umidade relativa:");

Serial.print (umidade);

Serial.println ("% RH");

Serial.print ("Temperatura em Celsius:");

Serial.print (cTemp);

Serial.println ("C");

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

Serial.print (fTemp);

Serial.println ("F");

}

atraso (300);

}

Na biblioteca de fios, Wire.write () e Wire.read () são usados para escrever os comandos e ler a saída do sensor. A parte seguinte do código ilustra a leitura da saída do sensor.

// Lê 4 bytes de dados // umidade msb, umidade lsb, temp msb, temp lsb if (Wire.available () == 4) {data [0] = Wire.read (); dados [1] = Wire.read (); dados [2] = Wire.read (); dados [3] = Wire.read ();

}

A saída do sensor é mostrada na imagem acima.

Etapa 4: Aplicativos:

Formulários
Formulários

HYT939 sendo um sensor de umidade digital eficiente são empregados em sistemas médicos, Autoclaves. A medição do ponto de orvalho de pressão e os sistemas de secagem também encontram o uso desse módulo de sensor. Em vários laboratórios onde o nível de umidade apropriado é um parâmetro fundamental para a realização de experimentos, este sensor pode ser implantado lá para medições de umidade.

Recomendado: