Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-23 15:03
O HTS221 é um sensor digital capacitivo ultracompacto para umidade relativa e temperatura. Inclui um elemento de detecção e um circuito integrado específico de aplicativo de sinal misto (ASIC) para fornecer as informações de medição por meio de interfaces seriais digitais. Integrado com tantos recursos, este é um dos sensores mais apropriados para medições críticas de umidade e temperatura.
Neste tutorial a interface do módulo sensor HTS221 com raspberry pi é demonstrada e sua programação em linguagem python também foi ilustrada. Para ler os valores de umidade e temperatura, usamos raspberry pi com um adaptador I2C. Este adaptador I2C torna a conexão ao módulo do sensor mais fácil e confiável.
Etapa 1: Hardware necessário:
Os materiais de que precisamos para cumprir nosso objetivo incluem os seguintes componentes de hardware:
1. HTS221
2. Raspberry Pi
3. Cabo I2C
4. Escudo I2C para framboesa pi
5. Cabo Ethernet
Etapa 2: 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 raspberry pi. 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 HTS221 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 para medição de umidade e temperatura:
A vantagem de usar raspberry pi é que oferece a flexibilidade da linguagem de programação em que se deseja programar a placa para fazer a interface do sensor com ela. Aproveitando essa vantagem desta placa, estamos demonstrando aqui sua programação em python. O código python para HTS221 pode ser baixado de nossa comunidade github que é Control Everything Community.
Além da facilidade dos usuários, também explicamos o código aqui:
Como primeira etapa da codificação, você precisa baixar a biblioteca smbus no caso do python, porque esta biblioteca suporta as funções usadas no código. Portanto, para baixar a biblioteca você pode visitar o seguinte link:
pypi.python.org/pypi/smbus-cffi/0.5.1
Você também pode copiar o código python de trabalho para este sensor aqui:
import smbus
tempo de importação
# Pegue o ônibus I2C
bus = smbus. SMBus (1)
# Endereço HTS221, 0x5F (95)
# Selecione o registro de configuração média, 0x10 (16)
# 0x1B (27) Amostras médias de temperatura = 256, Amostras médias de umidade = 512
bus.write_byte_data (0x5F, 0x10, 0x1B)
# Endereço HTS221, 0x5F (95)
# Selecione o registro de controle 1, 0x20 (32)
# 0x85 (133) Ligar, atualização contínua, taxa de saída de dados = 1 Hz
bus.write_byte_data (0x5F, 0x20, 0x85)
tempo.sono (0,5)
# Endereço HTS221, 0x5F (95)
# Leia os valores de calibração da memória não volátil do dispositivo
# Valores de calibração de umidade
# Leia os dados de 0x30 (48), 1 byte
val = bus.read_byte_data (0x5F, 0x30)
H0 = val / 2
# Leia os dados de 0x31 (49), 1 byte
val = bus.read_byte_data (0x5F, 0x31)
H1 = val / 2
# Leia os dados de 0x36 (54), 2 bytes
val0 = bus.read_byte_data (0x5F, 0x36)
val1 = bus.read_byte_data (0x5F, 0x37)
H2 = ((val1 e 0xFF) * 256) + (val0 e 0xFF)
# Leia os dados de 0x3A (58), 2 bytes
val0 = bus.read_byte_data (0x5F, 0x3A)
val1 = bus.read_byte_data (0x5F, 0x3B)
H3 = ((val1 e 0xFF) * 256) + (val0 e 0xFF)
# Valores de calibração de temperatura
# Leia os dados de 0x32 (50), 1 byte
T0 = bus.read_byte_data (0x5F, 0x32)
T0 = (T0 e 0xFF)
# Leia os dados de 0x32 (51), 1 byte
T1 = bus.read_byte_data (0x5F, 0x33)
T1 = (T1 e 0xFF)
# Leia os dados de 0x35 (53), 1 byte
raw = bus.read_byte_data (0x5F, 0x35)
raw = (raw & 0x0F)
# Converta os valores de calibração de temperatura para 10 bits
T0 = ((bruto & 0x03) * 256) + T0
T1 = ((bruto & 0x0C) * 64) + T1
# Leia os dados de 0x3C (60), 2 bytes
val0 = bus.read_byte_data (0x5F, 0x3C)
val1 = bus.read_byte_data (0x5F, 0x3D)
T2 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# Leia os dados de 0x3E (62), 2 bytes
val0 = bus.read_byte_data (0x5F, 0x3E)
val1 = bus.read_byte_data (0x5F, 0x3F)
T3 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# Leia os dados de 0x28 (40) com o registro de comando 0x80 (128), 4 bytes
# umidade msb, umidade lsb, temp msb, temp lsb
data = bus.read_i2c_block_data (0x5F, 0x28 | 0x80, 4)
# Converta os dados
umidade = (dados [1] * 256) + dados [0]
umidade = ((1,0 * H1) - (1,0 * H0)) * (1,0 * umidade - 1,0 * H2) / (1,0 * H3 - 1,0 * H2) + (1,0 * H0)
temp = (dados [3] * 256) + dados [2]
se temp> 32767:
temp - = 65536
cTemp = ((T1 - T0) / 8,0) * (temp - T2) / (T3 - T2) + (T0 / 8,0)
fTemp = (cTemp * 1,8) + 32
# Dados de saída para a tela
imprimir "Umidade relativa:%.2f %%"% umidade
print "Temperatura em Celsius:%.2f C"% cTemp
print "Temperatura em Fahrenheit:%.2f F"% fTemp
A parte do código mencionada abaixo inclui as bibliotecas necessárias para a execução correta dos códigos Python.
import smbus
tempo de importação
O código pode ser executado digitando o comando mencionado abaixo no prompt de comando.
$> python HTS221.py
A saída do sensor também é mostrada na imagem acima para referência do usuário.
Etapa 4: Aplicativos:
O HTS221 pode ser empregado em vários produtos de consumo, como umidificadores de ar e geladeiras, etc. Este sensor também pode ser aplicado em uma área mais ampla, incluindo automação residencial inteligente, automação industrial, equipamentos respiratórios, rastreamento de bens e mercadorias.
Recomendado:
Medição de umidade e temperatura usando HIH6130 e Arduino Nano: 4 etapas
Medição de umidade e temperatura usando HIH6130 e Arduino Nano: HIH6130 é um sensor de umidade e temperatura com saída digital. Esses sensores fornecem um nível de precisão de ± 4% UR. Com estabilidade de longo prazo líder do setor, I2C digital com compensação de temperatura real, confiabilidade líder do setor, eficiência energética
Medição de umidade e temperatura usando HTS221 e Arduino Nano: 4 etapas
Medição de umidade e temperatura usando HTS221 e Arduino Nano: HTS221 é um sensor digital capacitivo ultracompacto para umidade relativa e temperatura. Inclui um elemento de detecção e um circuito integrado específico de aplicação de sinal misto (ASIC) para fornecer as informações de medição por meio do serial digital
Medição de umidade e temperatura usando HIH6130 e Raspberry Pi: 4 etapas
Medição de umidade e temperatura usando HIH6130 e Raspberry Pi: HIH6130 é um sensor de umidade e temperatura com saída digital. Esses sensores fornecem um nível de precisão de ± 4% UR. Com estabilidade de longo prazo líder do setor, I2C digital com compensação de temperatura real, confiabilidade líder do setor, eficiência energética
Medição de temperatura e umidade usando HDC1000 e Raspberry Pi: 4 etapas
Medição de temperatura e umidade usando HDC1000 e Raspberry Pi: O HDC1000 é um sensor de umidade digital com sensor de temperatura integrado que fornece excelente precisão de medição em energia muito baixa. O dispositivo mede a umidade com base em um novo sensor capacitivo. Os sensores de umidade e temperatura são fac
Medição de umidade e temperatura usando HTS221 e partícula de fóton: 4 etapas
Medição de umidade e temperatura usando HTS221 e partícula fotônica: HTS221 é um sensor digital capacitivo ultracompacto para umidade relativa e temperatura. Inclui um elemento de detecção e um circuito integrado específico de aplicação de sinal misto (ASIC) para fornecer as informações de medição por meio do serial digital