Codice Arduino e video per il sensore di temperatura e umidità DHT11

Codice Arduino e video per il sensore di temperatura e umidità DHT11

In questo tutorial esploreremo come usare il sensore di temperatura e umidità DHT11 con un Arduino. Questo sensore è un'opzione a basso costo per misurare sia la temperatura che l'umidità, rendendolo una scelta perfetta per vari progetti. Copriremo i collegamenti, il codice necessario e come i componenti interagiscono per fornire letture accurate.

DHT11 Module

Al termine di questo tutorial sarai in grado di leggere la temperatura in Celsius, Fahrenheit e Kelvin, oltre ai livelli di umidità dal sensore DHT11. Per maggiore chiarezza, assicurati di consultare il video ai timestamp indicati (nel video a 00:00).

Hardware spiegato

Il sensore DHT11 è composto da tre pin: massa, alimentazione e dati. Il pin di massa si collega alla massa dell'Arduino, mentre il pin di alimentazione si collega a un'alimentazione da 5V fornita dall'Arduino. Il pin dati è responsabile della comunicazione tra l'Arduino e il sensore, permettendo all'Arduino di leggere i valori di temperatura e umidità.

Questo sensore utilizza un'uscita digitale, il che significa che invia i dati in formato seriale all'Arduino. Contiene un termistore per la misurazione della temperatura e un sensore di umidità capacitivo. Il DHT11 converte i segnali analogici che riceve in segnali digitali, rendendo più facile per microcontrollori come Arduino elaborare i dati.

Dettagli della scheda tecnica

ProduttoreASAIR
Numero di parteDHT11
Tensione logica/IO3.3-5.5 V
Tensione di alimentazione3.3-5.5 V
Corrente di uscita (per canale)0,5 mA
Corrente di picco (per canale)2,5 mA
Linee guida sulla frequenza PWMNon applicabile
Soglie logiche di ingresso0.3*VDDa 0.7*VDD
Caduta di tensione / RDS(on)/ saturazioneNon applicabile
Limiti termicida 0 a 60 °C
PacchettoDIP a 4 pin
Note / variantiEconomico, facile da usare

  • Tensione di funzionamento tra 3,3 V e 5,5 V.
  • Corrente di uscita massima di 2.5 mA.
  • Intervallo di temperatura da 0 a 60 gradi Celsius.
  • Intervallo di umidità dal 20% al 90%.
  • Usa una resistenza pull-up sul pin dei dati per letture stabili.
  • Assicurarsi di una connessione corretta per evitare ingressi flottanti
  • Prestare attenzione alla polarità invertita quando si collega l'alimentazione.
  • Ritardare le letture di almeno 1 secondo per ottenere risultati accurati.

Istruzioni di cablaggio

Arduino wiring for DHT11 Temperature and humidity sensor
Arduino wiring for DHT11 Temperature and humidity sensor

Per collegare il sensore DHT11 al tuo Arduino, segui questi passaggi:

Per prima cosa, collega il pin di massa (di solito nero o marrone) del DHT11 al ground (GND) dell'Arduino. Successivamente, collega il pin di alimentazione (di solito rosso) del DHT11 all'uscita 5V dell'Arduino. Infine, collega il pin dati (di solito giallo o bianco) al pin digitale 2 dell'Arduino. Assicurati di utilizzare una resistenza di pull-up (circa 10k ohm) tra il pin dati e il pin di alimentazione per garantire una comunicazione stabile.

Esempi di codice e guida passo passo

Nel codice Arduino, iniziamo includendo il file header necessario per il sensore DHT11:

#include 

Questa riga importa la libreria che contiene le funzioni necessarie per interagire con il sensore DHT11. Successivamente, creiamo un'istanza della classe DHT11:

dht11 DHT11; // create object of DHT11

Questa riga inizializza l'oggetto DHT11 che useremo per leggere i dati dal sensore. Il pin collegato al DHT11 è definito come:

#define dhtpin 2 // set the pin to connect to DHT11

Questo imposta il pin dati del sensore sul pin 2 dell'Arduino. Nelloop()funzione, leggiamo i dati del sensore:

DHT11.read(dhtpin);// initialize the reading

Questa riga avvia il processo di lettura e l'umidità può essere ottenuta con:

int humidity = DHT11.humidity;// get humidity

Il valore dell'umidità è memorizzato nella variabilehumidity, che viene quindi stampato sul monitor seriale insieme ai valori di temperatura convertiti in gradi Celsius, Fahrenheit e Kelvin.

Dimostrazione / Cosa aspettarsi

Quando esegui il codice, dovresti vedere le letture di temperatura e umidità visualizzate nel monitor seriale. Le letture della temperatura si aggiorneranno ogni mezzo secondo (nel video a 00:00). Se il sensore viene riscaldato o raffreddato, noterai che i valori cambiano di conseguenza. Fai attenzione, poiché il DHT11 ha un limite massimo di temperatura di 60 gradi Celsius; superarlo può portare a letture imprecise.

Marcatori temporali del video

  • 00:00- Introduzione al sensore DHT11
  • 01:30- Istruzioni di cablaggio
  • 02:15- Panoramica del codice
  • 03:00- Esecuzione del codice e output previsto

Immagini

Arduino wiring for DHT11 Temperature and humidity sensor
Arduino wiring for DHT11 Temperature and humidity sensor
DHT11 Module
DHT11 Module
DHT11 Module
DHT11 Module
53-This is the Arduino code and video for a DHT11 temperature and humidity sensor.
Lingua: C++
Copia!

Risorse e riferimenti

File📁

Librerie Arduino (zip)

File Fritzing

Manuale dell'utente