DHT22 - il sensore di temperatura e umidità di precisione

Sensore DHT22

Già in un precedente articolo vi presentiamo il DHT11, un altro dei sensori di temperatura e umidità che hai a tua disposizione. Ma in questo nuovo articolo te lo diremo tutto ciò che devi sapere su DHT22. Di solito, ad occhio nudo, l'unica differenza tra il DHT11 e il DHT22 è che il primo è disponibile in un involucro blu e il secondo è bianco. Entrambi, infatti, sono fratelli della stessa famiglia di sensori.

El DHT11 è il fratello minore, vale a dire, presenta alcune carenze o vantaggi inferiori rispetto al DHT22, e quindi un prezzo più alto. Il DHT11 può essere utilizzato per progetti in cui non è richiesta un'elevata precisione di misura, mentre se si desidera qualcosa di più preciso è consigliabile scegliere il DHT22. Anche il 22 non è molto preciso, ma ha prestazioni più che accettabili per la maggior parte dei progetti di fai-da-te.

Cos'è DHT22?

Modulo DHT22

El DHT22 è un sensore di temperatura e umidità con caratteristiche molto vicine all'alta precisione. Puoi trovarlo facilmente in negozi specializzati o grandi magazzini, dove Nessun prodotto trovato.. Ciò consente di non dover dipendere separatamente da un sensore di temperatura e da un sensore di umidità, ma di avere tutto integrato nello stesso dispositivo.

Puoi trovarlo sciolto o in moduli appositamente progettati per Arduinocioè il DHT22 montato su una scheda PCB pronta per l'uso, senza dover aggiungere resistenze di pull-up, ecc. Finora tutto assomiglia molto a DHT11. E avrai anche un'elevata affidabilità e stabilità nelle misurazioni grazie al segnale digitale calibrato che utilizza.

Pinout, caratteristiche e datasheet

Pinout DHT11

Nell'immagine sopra puoi vedere un confronto dei file Pinout DHT22 e DHT11, e come puoi vedere sono identici in termini di basette. Pertanto, il suo assemblaggio sarebbe esattamente lo stesso e la cosa migliore è che puoi sostituire il DHT11 con un DHT22 in qualsiasi momento e viceversa nel tuo progetto senza apportare troppe modifiche.

Ricorda che hanno 3 pin che devi usare: GND, Vcc e dati. Il pin # 3 non viene utilizzato e nei moduli è bypassato, ovvero vedrai solo tre pin. Se vuoi vedere maggiori dettagli sul prodotto che hai acquistato, puoi cercare le schede tecniche dello specifico modello e produttore per ottenere tutte le informazioni complete. Sebbene la maggior parte dei valori possa sembrare uguale a te, potrebbe esserci qualche leggera variazione dall'uno all'altro. Le sue caratteristiche tecniche più importanti sono:

  • Alimentatore da 3,3 V a 6 V.
  • Consumo di corrente 2,5 mA
  • Segnale di uscita digitale
  • Intervallo di temperatura da -40ºC a 125ºC
  • Precisione per misurare la temperatura a 25ºC con una variazione di 0.5ºC
  • La risoluzione per misurare la temperatura è di 8 bit, 0,1ºC
  • L'umidità può misurare dallo 0% di umidità relativa al 100% di umidità relativa
  • Accuratamente umidità 2-5% RH per temperature comprese tra 0-50ºC
  • La risoluzione è dello 0,1% di umidità relativa, non può rilevare variazioni al di sotto di quella
  • Frequenza di campionamento di 2 campioni al secondo: 2Hz
  • Scheda tecnica Sparkfun

Se hai letto il nostro manuale su DHT11 lo saprai trasmette in digitale per il suo Data pin, quindi, un altro vantaggio per questi sensori. Non sarà necessario generare codice nell'IDE di Arduino per passare dall'analogico a valori comprensibili all'uomo, ma il segnale digitale potrà essere elaborato direttamente per passarlo a gradi o percentuale di umidità relativa.

In parte, questo è anche il motivo per cui è così accurato, poiché con il Frame a 40 bit trasmettendo, la precisione è maggiore. Include anche alcuni bit di parità per rilevare i guasti del segnale. Non ce l'hai con un segnale analogico, a parte il fatto che l'analogico è molto sensibile alle variazioni di tensione ...

Integrazione con Arduino

DHT22 collegato alla scheda Arduino UNO

Come con DHT11, installare il DHT22 con Arduino è abbastanza semplice. Ricorda che se lo usi da solo, senza che sia montato su un modulo e il sensore sia lontano (o se usi una tensione inferiore per alimentarlo), devi utilizzare una resistenza di pull-up che faccia da ponte tra il pin Vcc e il pin Data. Ma se usi il modulo, puoi salvarlo e collegarlo direttamente come appare nell'immagine sopra ... Inoltre, ricorda che nel modulo non sarà presente il pin NC non utilizzato, quindi sarà ancora più semplice per te per non confondersi.

Hai solo bisogno di connettere GND e Vcc a le connessioni corrette della tua scheda Arduino, cioè a quelli contrassegnati come GND e 5v in questo caso. E per il pin Data, puoi collegarlo a uno qualsiasi degli ingressi digitali di Arduino, nel nostro caso l'abbiamo fatto in 7. Se ne usi un altro, ricordati di rettificare il codice in modo che funzioni con il tuo modo di collegare i componenti ( sembra ovvio ma è un errore molto comune quando si copiano e incollano i codici nell'IDE di Arduino).

Codice in Arduino IDE

Ora che lo hai collegato, vediamo un semplice esempio di codice per Arduino IDE. . Ricorda che abbiamo una guida per principianti che inizia con Arduino in PDF che puoi scarica gratuitamente da qui e può aiutarti. Inoltre, se hai letto il nostro articolo su DHT11, ricordalo c'era una libreria per utilizzare i sensori DHTxxpertanto, lo stesso che è stato utilizzato per DHT11 può essere utilizzato per DHT22.

Una volta che hai installata la libreria ed è tutto pronto, ora è quando devi inserire il codice per programmare il microcontrollore Arduino per far funzionare il tuo progetto. Un esempio di base potrebbe essere:

#include "DHT.h"
 
// Ejemplo sencillo de uso para el DHT22
 
const int DHTPin = 7;     
 
DHT dht(DHTPin, DHTTYPE);
 
void setup() {
   Serial.begin(9600);
   Serial.println("Test DHT22");
 
   dht.begin();
}
 
void loop() {
   // Tiempo de espera entre tomas de mediciones de 2 segundos.
   delay(2000);
 
   // Lee temperatura y humedad durante unos 250ms
   float h = dht.readHumidity();
   float t = dht.readTemperature();
 
   if (isnan(h) || isnan(t)) {
      Serial.println("Fallo en la lectura");
      return;
   }
 
 
   Serial.print("Humedad relativa: ");
   Serial.print(h);
   Serial.print(" %\t");
   Serial.print("Temperatura: ");
   Serial.print(t);
   Serial.print(" *C ");
}

lo spero le nostre guide su DHTxx sono servite da guida, anche se in generale i progetti che di solito vengono fatti sono un po 'più complessi, ma questi codici per vedere come funziona il sensore sono abbastanza indicativi e quindi modificare il codice e aggiungere quello che vuoi ...


Un commento, lascia il tuo

Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile dei dati: Miguel Ángel Gatón
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.

  1.   rogger suddetto

    buone informazioni pubblicate. Solo un dettaglio potrebbe includere la data di pubblicazione. a volte ne abbiamo bisogno come riferimento per lavori scritti con standard. Grazie.