Pular para o conteúdo principal

Grove - Sensor de Temperatura e Umidade (DHT11)

Este sensor de temperatura e umidade fornece uma saída digital pré-calibrada. Um elemento sensor capacitivo exclusivo mede a umidade relativa e a temperatura é medida por um termistor de coeficiente de temperatura negativo (NTC). Ele possui excelente confiabilidade e estabilidade em longo prazo. Observe que este sensor não funciona para temperaturas abaixo de 0 grau.

Atualizável para Sensores Industriais

Com o controlador SenseCAP S2110 controller e o S2100 data logger, você pode facilmente transformar o Grove em um sensor LoRaWAN®. A Seeed não apenas ajuda você com a prototipagem, mas também oferece a possibilidade de expandir seu projeto com a série SenseCAP de sensores industriais robustos.

Os sensores industriais da série SenseCAP S210x fornecem uma experiência pronta para uso para medição ambiental. Consulte o Sensor Sem Fio de Temperatura e Umidade S2101 com maior desempenho e robustez para monitoramento da qualidade do ar. A série inclui sensores para umidade do solo, temperatura e umidade do ar, intensidade de luz, CO2, EC e uma estação meteorológica 8 em 1. Experimente o mais recente SenseCAP S210x em seu próximo projeto industrial bem-sucedido.

Sensor Industrial SenseCAP
S2101 Temperatura & Umidade do Ar

Recursos


  • Medição de umidade relativa e temperatura
  • Compensação de temperatura em toda a faixa, calibrado
  • Sinal digital
  • Estabilidade em longo prazo
  • Longa distância de transmissão(>20m)
  • Baixo consumo de energia
dica

Para mais detalhes sobre os módulos Grove, consulte o Grove System

Ideias de Aplicações


  • Produto de consumo
  • Estação meteorológica
  • Regulador de umidade
  • Ar-condicionado

Especificações


Especificações Principais

ItensMín
Tamanho da PCB2.0cm*4.0cm
InterfaceConector pino passo 2.0mm
Estrutura de IOSIG,VCC,GND,NC
ROHSSIM

Características Elétricas

Itens

Condições

Mín

Norm

Máx

Unidade

VCC

3.3

5

Volts

Corrente de Medição

1.3

2.1

mA

Corrente Média

0.5

1.1

mA

Faixa de Medição

Umidade

20%

90%

UR

Temperatura

0

50

°C

Precisão

Umidade

±5%

UR

Temperatura

±2

°C

 Sensibilidade

Umidade

1%

UR

Temperatura

1

°C

Repetibilidade

Umidade

±1%

UR

Temperatura

±1

°C

Estabilidade em Longo Prazo

±1%

UR/ano

Período de Coleta de Sinal

2

S

Plataformas Suportadas

ArduinoRaspberry Pi
nota

As plataformas mencionadas acima como suportadas são uma indicação da compatibilidade de software ou teórica do módulo. Na maioria dos casos, fornecemos apenas biblioteca de software ou exemplos de código para a plataforma Arduino. Não é possível fornecer biblioteca de software / código de demonstração para todas as possíveis plataformas MCU. Portanto, os usuários precisam escrever sua própria biblioteca de software.

Começando

Quando o MCU envia um sinal de disparo, o sensor muda do modo de baixo consumo de energia para o modo ativo. Após o sinal de disparo, o sensor enviará um sinal de resposta de volta ao MCU, então os 40 bits de dados coletados são enviados e uma nova coleta de sinal é disparada. (Observe que os 40 bits de dados coletados que são enviados do sensor para o MCU já foram coletados antes do sinal de disparo chegar.) Um sinal de disparo recebe uma vez 40 bits de dados de resposta do sensor. O barramento de dados único é usado para comunicação entre o MCU e o sensor. O processo de comunicação é mostrado abaixo:

O custo é de 5ms para uma única comunicação. O bit de ordem mais alta dos dados é enviado primeiro. Os dados do sinal têm 40 bits, compostos por 16 bits de dados de umidade, 16 bits de dados de temperatura e 8 bits de checksum. O formato dos dados é:

8bits parte inteira da umidade+8bits parte decimal da umidade +8bits parte inteira da temperatura+8bits parte decimal da temperatura +8bits checksum.

nota

Se esta é a primeira vez que você trabalha com Arduino, recomendamos fortemente que veja Getting Started with Arduino antes de começar.

Brincar com Arduino

Hardware

  • Passo 1. Prepare os itens abaixo:
Seeeduino V4.2Base ShieldSensor de Temperatura e Umidade
Adquira agoraAdquira agoraAdquira agora
  • Passo 2. Conecte o Grove - Sensor de Temperatura e Umidade à porta D2 do Grove-Base Shield.

  • Passo 3. Conecte o Grove - Base Shield ao Seeeduino.

  • Passo 4. Conecte o Seeeduino ao PC por meio de um cabo USB.

nota

Se não tivermos o Grove Base Shield, também podemos conectar diretamente o Grove - Temperature and Humidity Sensor Pro ao Seeeduino como abaixo.

SeeeduinoSensor de Temperatura e Umidade
5VVermelho
GNDPreto
Não ConectadoBranco
D2Amarelo

Software

  • Passo 1. Baixe a biblioteca Seeed DHT do Github.

  • Passo 2. Consulte How to install library para instalar a biblioteca para o Arduino.

  • Passo 3. Reinicie a Arduino IDE. Abra o exemplo “DHTtester” pelo caminho: File --> Examples --> Grove_Humidity_Temperature_Sensor-master --> DHTtester. Através deste demo, podemos ler a temperatura e a umidade relativa do ambiente.

nota

Este Grove - Temperature&Humidity Sensor e nosso outro produto Grove-Temperature&Humidity Sensor pro compartilham esta biblioteca. Não importa qual produto você esteja usando, certifique-se de que você ativou a linha de definição do sensor da sua placa e comentou as linhas de definição das outras especificações. Por exemplo, o sensor que usamos no Grove - Temperature&Humidity Sensor é o DHT 11. Portanto, a parte de definição da especificação do sensor deve ser:

#define DHTTYPE DHT11   // DHT 11
//#define DHTTYPE DHT22 // DHT 22 (AM2302)
//#define DHTTYPE DHT21 // DHT 21 (AM2301)

A configuração padrão da biblioteca é DHT 22, portanto você precisa alterá-la manualmente para DHT 11.

  • Passo 4. Faça o upload do demo. Se você não souber como fazer o upload do código, verifique how to upload code.

  • Passo 5. Abra o Serial Monitor da Arduino IDE clicando em Tool-> Serial Monitor. Ou pressione as teclas ++ctrl+shift+m++ ao mesmo tempo. Se tudo correr bem, você obterá a temperatura.

O resultado deve ser como:

Brinque com o Codecraft

Hardware

Passo 1. Conecte um Grove - Temperature&Humidity Sensor à porta D2 de um Base Shield.

Passo 2. Conecte o Base Shield ao seu Seeeduino/Arduino.

Passo 3. Conecte o Seeeduino/Arduino ao seu PC por meio de um cabo USB.

Software

Passo 1. Abra o Codecraft, adicione o suporte ao Arduino e arraste um procedimento principal para a área de trabalho.

nota

Se este for o seu primeiro uso do Codecraft, veja também o Guide for Codecraft using Arduino.

Passo 2. Arraste os blocos como na imagem abaixo ou abra o arquivo cdc que pode ser baixado no final desta página.

Carregue o programa para o seu Arduino/Seeeduino.

dica

Quando o código terminar de ser carregado, você verá a temperatura e a umidade exibidas no Serial Monitor.

Brinque com Raspberry Pi (Com Grove Base Hat para Raspberry Pi)

Hardware

  • Passo 1. Itens usados neste projeto:
Raspberry piGrove Base Hat para RasPiGrove - Temp & Hum Sensor
Adquira agoraAdquira agoraAdquira agora
  • Passo 2. Conecte o Grove Base Hat ao Raspberry.
  • Passo 3. Conecte o sensor de temperatura e umidade à Porta 12 do Base Hat.
  • Passo 4. Conecte o Raspberry Pi ao PC por meio de um cabo USB.
nota

No passo 3 você pode conectar o sensor de temperatura e umidade a qualquer porta GPIO, mas certifique-se de alterar o comando com o número de porta correspondente.

Software

cuidado

Se você estiver usando Raspberry Pi com Raspberrypi OS >= Bullseye, você deve usar esta linha de comando apenas com Python3.

dica

Um dos passos é adicionar a biblioteca DHT necessária, certifique-se de que ela esteja instalada.

  • Passo 2. Entre no ambiente virtual correspondente.
source ~/grove_env/env/bin/activate
cd ~/grove_env/grove.py/grove
  • Passo 3. Execute os comandos abaixo para rodar o código.
nano ~/grove_env/dht11_demo.py

Copie o código a seguir

import time
import seeed_dht

sensor = seeed_dht.DHT("11", 12)
print("DHT11 reading every second, Ctrl+C to quit")
try:
while True:
humi, temp = sensor.read()
print(f"DHT11 Humidity {humi:.1f}% Temperature {temp:.1f}°C")
time.sleep(1)
except KeyboardInterrupt:
print("\nBye")

dica

Salvar e sair: Ctrl+O → Enter → Ctrl+X

Se tudo correr bem, você será capaz de ver o seguinte resultado


pi@raspberrypi:~/Seeed_Python_DHT/examples $ python ~/grove_env/dht11_demo.py
DHT11, humidity 39.2%, temperature 29.1*
DHT11, humidity 39.2%, temperature 29.1*
DHT11, humidity 39.2%, temperature 29.1*
DHT11, humidity 39.1%, temperature 29.1*
DHT11, humidity 40.0%, temperature 29.1*
DHT11, humidity 39.9%, temperature 29.1*
DHT11, humidity 40.3%, temperature 29.1*
DHT11, humidity 42.0%, temperature 29.1*

Você pode sair deste programa simplesmente pressionando ++ctrl+c++.

Brinque com Raspberry Pi (com GrovePi_Plus)

Hardware

Primeiro, você precisa preparar os itens abaixo:

  • Passo 1. Prepare os itens abaixo:
Raspberry piGrovePi_PlusTemperature&Humidity Sensor
Adquira agoraAdquira agoraAdquira agora
  • Passo 2. Conecte o GrovePi_Plus ao Raspberry.

  • Passo 3. Conecte o Grove - Temperature&Humidity Sensor à porta D4 do GrovePi_Plus.

  • Passo 4. Conecte o Raspberry ao PC por meio de um cabo USB.

Software

dica

Neste wiki usamos o caminho ~/GrovePi/ em vez de /home/pi/Desktop/GrovePi, você precisa garantir que o Passo 2 e o Passo 3 usem o mesmo caminho.

nota

Nós recomendamos fortemente que você atualize o firmware, caso contrário, para alguns sensores você pode obter erros.

cuidado

Se você estiver usando Raspberry Pi com Raspberrypi OS >= Bullseye, você deve usar esta linha de comando apenas com Python3.

  • Passo 3. Dê um git clone no repositório do Github.
cd ~
git clone https://github.com/DexterInd/GrovePi.git

  • Passo 4. Verifique o código.

cd ~/GrovePi/Software/Python
sudo nano grove_dht_pro.py

O código deve ser como:

import grovepi
import math
# Connect the Grove Temperature & Humidity Sensor Pro to digital port D4
# This example uses the blue colored sensor.
# SIG,NC,VCC,GND
sensor = 4 # The Sensor goes on digital port 4.

# temp_humidity_sensor_type
# Grove Base Kit comes with the blue sensor.
blue = 0 # The Blue colored sensor.
white = 1 # The White colored sensor.

while True:
try:
# This example uses the blue colored sensor.
# The first parameter is the port, the second parameter is the type of sensor.
[temp,humidity] = grovepi.dht(sensor,blue)
if math.isnan(temp) == False and math.isnan(humidity) == False:
print("temp = %.02f C humidity =%.02f%%"%(temp, humidity))

except IOError:
print ("Error")

Então pressione ++ctrl+x++ para sair do nano.

nota

O Grove - Temperature&Humidity Sensor e o Grove - Temperature&Humidity Sensor pro compartilham o mesmo código python chamado grove_dht_pro.py. A única diferença é que, para a sentença [temp,humidity] = grovepi.dht(sensor,blue). Usamos o parâmetro blue para o Grove - Temperature&Humidity Sensor enquanto usamos white para o Grove - Temperature&Humidity Sensor pro. O valor padrão é blue, portanto, para este sensor você não precisa alterar o código.

  • Passo 5. Execute os comandos abaixo para obter o valor.
sudo python3 grove_dht_pro.py

O resultado deve ser como:


pi@raspberrypi:~/GrovePi/Software/Python $ sudo python3 grove_dht_pro.py
temp = 26.00 C humidity =40.00%
temp = 26.00 C humidity =40.00%
temp = 26.00 C humidity =40.00%
temp = 26.00 C humidity =40.00%
temp = 26.00 C humidity =40.00%
temp = 26.00 C humidity =40.00%
temp = 26.00 C humidity =40.00%
temp = 26.00 C humidity =40.00%
temp = 26.00 C humidity =40.00%
temp = 26.00 C humidity =40.00%
temp = 26.00 C humidity =40.00%
temp = 26.00 C humidity =40.00%

Brinque com o Wio Terminal (ArduPy)

Hardware

  • Passo 1. Prepare o seguinte:
Wio TerminalGrove - Sensor de Temperatura e Umidade (DHT11)
Adquira agoraAdquira agora
  • Passo 2. Conecte o Grove - Sensor de Temperatura e Umidade à porta D0 do Wio Terminal.

  • Passo 3. Conecte o Wio Terminal ao PC por meio de um cabo USB Type-C.

Software

  • Passo 1. Siga o Guia de Introdução ao ArduPy para configurar o ambiente de desenvolvimento ArduPy no Wio Terminal.

  • Passo 2. Certifique-se de que o firmware ArduPy contenha a biblioteca DHT usando os seguintes comandos. Para mais informações, siga aqui.

aip install Seeed-Studio/seeed-ardupy-dht/archive/main.zip
aip build
aip flash
  • Passo 3. Copie o código a seguir e salve-o como ArduPy-DHT.py:
from arduino import grove_dht
from machine import LCD, Sprite
import time

dht = grove_dht(0,11)
lcd = LCD() # initialize TFT LCD
spr = Sprite(lcd) # initialize buffer

def main(): # main function
spr.createSprite(320, 240) # create buffer
while True: # while loop
spr.fillSprite(spr.color.WHITE) # fill background

# two fill rectangles
spr.fillRect(0,0,160,240,spr.color.DARKGREEN) # fill rectangle in color
spr.fillRect(160,0,160,240,spr.color.BLUE)

# temp and humid text draw
spr.setTextSize(2) # set text size
spr.setTextColor(spr.color.WHITE,spr.color.DARKGREEN) # set text color
spr.drawString("Temperature", 15, 65) # draw string
spr.setTextColor(spr.color.WHITE,spr.color.BLUE)
spr.drawString("Humidity", 190, 65)

# obtain readings
t = dht.temperature # store temperature readings in variable
h = dht.humidity # store humidity readings in variable

# display temp readings
spr.setTextSize(4)
spr.setTextColor(spr.color.WHITE,spr.color.DARKGREEN)
spr.drawNumber(int(t),50,110) # display number
spr.drawString("C", 100, 110)

# display humi readings
spr.setTextColor(spr.color.WHITE,spr.color.BLUE) # set text color
spr.drawNumber(int(h),180,110)
spr.drawString("%RH", 235, 110)

spr.pushSprite(0,0) # push to LCD
time.sleep_ms(100)

print("temperature:",t,"C", end =" ")
print("humidity:",h,"%RH")

if __name__ == "__main__": # check whether this is run from main.py
main() # execute function
  • Passo 4. Salve o ArduPy-DHT.py em um local que você conheça. Execute o comando a seguir e substitua <YourPythonFilePath> pelo local do seu ArduPy-DHT.py.
aip shell -n -c "runfile <YourPythonFilePath>"
# Example:
# aip shell -n -c "runfile /Users/user/Desktop/ArduPy-DHT.py"

Agora, as informações de temperatura e umidade serão exibidas no prompt de comando/janela do terminal e também no LCD do Wio Terminal.

C:\Users\user>aip shell -n -c "runfile /Users/user/Desktop/ArduPy-DHT.py"
Positional argument (COM4) takes precedence over --open.
Connected to ardupy
temperature: 31.0 C humidity: 85.0 %RH
temperature: 31.0 C humidity: 85.0 %RH
temperature: 31.0 C humidity: 85.0 %RH
temperature: 31.0 C humidity: 87.0 %RH
temperature: 31.0 C humidity: 87.0 %RH
temperature: 31.0 C humidity: 87.0 %RH
temperature: 31.0 C humidity: 87.0 %RH
temperature: 31.0 C humidity: 87.0 %RH
temperature: 31.0 C humidity: 87.0 %RH
temperature: 31.0 C humidity: 87.0 %RH

Visualizador Online de Esquemático

Recursos

Projetos

Sistema de Gerenciamento de Banheiro: Usando o sistema, várias pessoas podem compartilhar um único banheiro de forma eficiente.

Suporte Técnico & Discussão de Produto

Obrigado por escolher nossos produtos! Estamos aqui para fornecer diferentes tipos de suporte para garantir que sua experiência com nossos produtos seja a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.

Loading Comments...