Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Recentemente, trabalhamos em vários projetos que exigiam monitoramento de temperatura e umidade e, então, percebemos que esses dois parâmetros realmente desempenham um papel fundamental em ter uma estimativa da eficiência de funcionamento de um sistema. Tanto no nível industrial como nos sistemas pessoais, um nível ideal de temperatura é o requisito para o desempenho adequado do sistema.
Por isso, neste tutorial vamos explicar o funcionamento do sensor de umidade e temperatura SHT25 com fóton de partícula.
Etapa 1: Visão geral do SHT25:
Em primeiro lugar, vamos começar com o conhecimento básico do sensor e do protocolo no qual ele funciona.
Sensor de umidade e temperatura SHT25 I2C ± 1,8% UR ± 0,2 ° C Minimódulo I2C. É um sensor de umidade e temperatura de alta precisão que se tornou um padrão da indústria em termos de fator de forma e inteligência, fornecendo sinais de sensor linearizados e calibrados em formato digital I2C. Integrado com um circuito analógico e digital especializado, este sensor é um dos dispositivos mais eficientes para medir temperatura e umidade.
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 2: O que você precisa..
Os materiais de que precisamos para cumprir nosso objetivo incluem os seguintes componentes de hardware:
1. Sensor de umidade e temperatura SHT25
2. Partícula de fóton
3. Cabo I2C
4. Escudo I2C para partícula de fóton
Etapa 3: 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 fóton da partícula. 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 SHT25 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 4: Código de monitoramento de temperatura e umidade:
Vamos começar com o código da partícula agora.
Ao usar o módulo sensor com o arduino, incluímos as bibliotecas application.h e spark_wiring_i2c.h. A biblioteca "application.h" e spark_wiring_i2c.h contém as funções que facilitam a comunicação i2c entre o sensor e a partícula.
Todo o código da partícula é fornecido abaixo para a conveniência do usuário:
#incluir
#incluir
// O endereço I2C SHT25 é 0x40 (64)
#define Addr 0x40
umidade flutuante = 0,0, cTemp = 0,0, fTemp = 0,0;
void setup ()
{
// Definir variável
Particle.variable ("i2cdevice", "SHT25");
Partícula.variable ("umidade", umidade);
Particle.variable ("cTemp", cTemp);
// Inicializar a comunicação I2C como MASTER
Wire.begin ();
// Inicialize a comunicação serial, defina a taxa de transmissão = 9600
Serial.begin (9600);
atraso (300);
}
void loop ()
{
dados internos não assinados [2];
// Inicie a comunicação I2C
Wire.beginTransmission (Addr);
// Enviar comando de medição de umidade, mestre NO HOLD
Wire.write (0xF5);
// Pare a transmissão I2C
Wire.endTransmission ();
atraso (500);
// Solicita 2 bytes de dados
Wire.requestFrom (Addr, 2);
// Lê 2 bytes de dados
// umidade msb, umidade lsb
if (Wire.available () == 2)
{
dados [0] = Wire.read ();
dados [1] = Wire.read ();
// Converta os dados
umidade = ((((dados [0] * 256,0) + dados [1]) * 125,0) / 65536,0) - 6;
// Saída de dados para o painel
Particle.publish ("Umidade relativa:", String (umidade));
}
// Iniciar a transmissão I2C
Wire.beginTransmission (Addr);
// Enviar comando de medição de temperatura, mestre NO HOLD
Wire.write (0xF3);
// Pare a transmissão I2C
Wire.endTransmission ();
atraso (500);
// Solicita 2 bytes de dados
Wire.requestFrom (Addr, 2);
// Lê 2 bytes de dados
// temp msb, temp lsb
if (Wire.available () == 2)
{
dados [0] = Wire.read ();
dados [1] = Wire.read ();
// Converta os dados
cTemp = ((((dados [0] * 256,0) + dados [1]) * 175,72) / 65536,0) - 46,85;
fTemp = (cTemp * 1,8) + 32;
// Saída de dados para o painel
Particle.publish ("Temperatura em Celsius:", String (cTemp));
Particle.publish ("Temperatura em Fahrenheit:", String (fTemp));
}
atraso (300);
}
A função Particle.variable () cria as variáveis para armazenar a saída do sensor e a função Particle.publish () exibe a saída no painel do site.
A saída do sensor é mostrada na imagem acima para sua referência.
Etapa 5: Aplicativos:
O sensor de temperatura e umidade relativa SHT25 tem várias aplicações industriais, como monitoramento de temperatura, proteção térmica periférica de computador. Também empregamos esse sensor em aplicações de estações meteorológicas, bem como em sistemas de monitoramento de estufa.