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
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
| Itens | Mín |
|---|---|
| Tamanho da PCB | 2.0cm*4.0cm |
| Interface | Conector pino passo 2.0mm |
| Estrutura de IO | SIG,VCC,GND,NC |
| ROHS | SIM |
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
| Arduino | Raspberry Pi | |||
|---|---|---|---|---|
![]() | ![]() | ![]() | ![]() | ![]() |
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.
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.2 | Base Shield | Sensor de Temperatura e Umidade |
|---|---|---|
![]() | ![]() | ![]() |
| Adquira agora | Adquira agora | Adquira 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.

Se não tivermos o Grove Base Shield, também podemos conectar diretamente o Grove - Temperature and Humidity Sensor Pro ao Seeeduino como abaixo.
| Seeeduino | Sensor de Temperatura e Umidade |
|---|---|
| 5V | Vermelho |
| GND | Preto |
| Não Conectado | Branco |
| D2 | Amarelo |
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.

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.
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.
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 pi | Grove Base Hat para RasPi | Grove - Temp & Hum Sensor |
|---|---|---|
![]() | ![]() | |
| Adquira agora | Adquira agora | Adquira 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.

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
Se você estiver usando Raspberry Pi com Raspberrypi OS >= Bullseye, você deve usar esta linha de comando apenas com Python3.
- Passo 1. Siga Setting Software para configurar o ambiente de desenvolvimento.
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")
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 pi | GrovePi_Plus | Temperature&Humidity Sensor |
|---|---|---|
![]() | ![]() | ![]() |
| Adquira agora | Adquira agora | Adquira 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
-
Passo 1. Siga Setting Software para configurar o ambiente de desenvolvimento.
-
Passo 2. Siga Updating the Firmware para atualizar o firmware mais recente do GrovePi.
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.
Nós recomendamos fortemente que você atualize o firmware, caso contrário, para alguns sensores você pode obter erros.
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.
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 Terminal | Grove - Sensor de Temperatura e Umidade (DHT11) |
|---|---|
![]() | |
| Adquira agora | Adquira 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.pyem um local que você conheça. Execute o comando a seguir e substitua<YourPythonFilePath>pelo local do seuArduPy-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
-
[Codecraft] Arquivo CDC
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.












