DHT22 - senzorul de precizie de temperatură și umiditate

Senzor DHT22

Deja într-un articol anterior vă prezentăm DHT11, un alt senzor de temperatură și umiditate pe care îl aveți la dispoziție. Dar în acest nou articol vă vom spune tot ce trebuie să știți despre DHT22. De obicei, la prima vedere, singura diferență dintre DHT11 și DHT22 este că prima vine într-o carcasă albastră, iar cea de-a doua este albă. De fapt, ambii sunt frați ai aceleiași familii de senzori.

El DHT11 este fratele mai mic, adică are unele deficiențe sau beneficii mai mici în comparație cu DHT22 și, prin urmare, un preț mai mare. DHT11 poate fi utilizat pentru proiecte în care nu aveți nevoie de o precizie ridicată a măsurătorilor, în timp ce, dacă doriți ceva mai precis, ar trebui să alegeți DHT22. Nici 22 nu este de mare precizie, dar are caracteristici mai mult decât acceptabile pentru majoritatea proiectelor DIY maker.

Ce este DHT22?

Modul DHT22

El DHT22 este un senzor de temperatură și umiditate cu caracteristici care sunt foarte aproape de precizie ridicată. Îl puteți găsi cu ușurință în magazine specializate sau în magazine, unde Nu au fost găsite produse.. Acest lucru vă permite să nu trebuie să depindeți separat de un senzor de temperatură și un senzor de umiditate, ci să aveți totul integrat în același dispozitiv.

Îl poți găsi slăbit sau în module special concepute pentru Arduinoadică DHT22 montat pe un PCB gata de utilizare, fără a fi nevoie să adăugați rezistențe de tragere etc. Până acum totul seamănă foarte mult cu DHT11. Și veți avea, de asemenea, fiabilitate și stabilitate ridicată în măsurători datorită semnalului digital calibrat pe care îl folosește.

Pinout, caracteristici și foaie de date

Pinout DHT11

În imaginea de mai sus puteți vedea o comparație a Pinout DHT22 și DHT11, și după cum puteți vedea, acestea sunt identice în ceea ce privește perciunile. Prin urmare, ansamblul său ar fi exact același și, cel mai bun lucru, ați putea înlocui DHT11 cu un DHT22 în orice moment, și invers, în proiectul dvs. fără a face prea multe modificări.

Amintiți-vă că au 3 pini pe care trebuie să îi folosiți: GND, Vcc și date. Pinul 3 nu este utilizat și în module este ocolit, adică veți vedea doar trei pini. Dacă doriți să vedeți mai multe detalii despre produsul pe care l-ați achiziționat, puteți căuta fișele tehnice ale modelului și producătorului specific pentru a obține toate informațiile complete. Deși majoritatea valorilor ar putea părea la fel pentru dvs., ar putea exista o ușoară variație de la una la alta. Cele mai importante caracteristici tehnice ale acestuia sunt:

  • Alimentare de la 3,3v la 6v
  • 2,5mA consum curent
  • Semnal de ieșire digitală
  • Intervalul de temperatură de la -40ºC la 125ºC
  • Precizie la măsurarea temperaturii la 25ºC cu o variație de 0.5ºC
  • Rezoluția pentru măsurarea temperaturii este de 8 biți, 0,1ºC
  • Umiditatea poate măsura de la 0% RH la 100% RH
  • Umiditate precisă 2-5% HR pentru temperaturi cuprinse între 0-50ºC
  • Rezoluția este de 0,1% RH, nu poate ridica variații sub aceasta
  • Rata de eșantionare de 2 eșantioane pe secundă: 2Hz
  • Foaie de date Sparkfun

Dacă ați citit manualul nostru de pe DHT11, veți ști asta transmite în digital pentru pinul său de date, prin urmare, un alt avantaj pentru acești senzori. Nu va fi necesar să se genereze cod în ID-ul Arduino pentru a trece de la valori inteligibile la cele analogice, dar semnalul digital poate fi procesat direct pentru a-l trece la grade sau procente de umiditate relativă.

În parte, acesta este și motivul pentru care este atât de precis, deoarece cu Cadru pe 40 de biți transmiterea, precizia este mai mare. Include chiar și câțiva biți de paritate pentru a detecta defecțiunile semnalului. Nu aveți asta cu un semnal analog, în afară de faptul că semnalul analog este foarte sensibil la variațiile de tensiune ...

Integrare cu Arduino

DHT22 conectat la bord Arduino UNO

Ca și în cazul DHT11, instalarea DHT22 cu Arduino este destul de ușoară. Amintiți-vă că, dacă îl utilizați singur, fără ca acesta să fie montat pe un modul și senzorul să fie departe (sau dacă utilizați o tensiune mai mică pentru a-l alimenta), trebuie să utilizați un rezistor de tragere care face o punte între pinul Vcc și pinul de date. Dar dacă utilizați modulul, îl puteți salva și conecta direct așa cum apare în imaginea de mai sus ... De asemenea, amintiți-vă că în modul pinul NC care nu este utilizat nu va fi prezent, deci va fi și mai ușor pentru dvs. să nu se încurce.

Trebuie doar să vă conectați la GND și Vcc conexiunile adecvate ale plăcii Arduino, adică la cele marcate ca GND și 5v în acest caz. Și pentru pinul de date, îl puteți conecta la oricare dintre intrările digitale ale Arduino, în cazul nostru am făcut-o în 7. Dacă utilizați altul, nu uitați să rectificați codul, astfel încât să funcționeze cu modul dvs. de conectare a componentelor ( pare evident, dar este o greșeală foarte obișnuită atunci când copiați și lipiți codurile în Arduino IDE).

Cod în IDE Arduino

Acum că îl aveți conectat, să vedem un exemplu de cod simplu pentru Arduino IDE. . Amintiți-vă că avem un ghid pentru începători care începe cu Arduino în PDF pe care îl puteți descărcați gratuit de aici și te poate ajuta. De asemenea, dacă ați citit articolul nostru despre DHT11, nu uitați acest lucru exista o bibliotecă pentru a utiliza senzorii DHTxxprin urmare, același lucru care a fost utilizat pentru DHT11 poate fi folosit pentru DHT22.

Odata ce ai a instalat biblioteca și totul este gata, acum trebuie să introduceți codul pentru a programa microcontrolerul Arduino pentru ca proiectul dvs. să funcționeze. Un exemplu de bază ar fi:

#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 ");
}

sper ca ghidurile noastre de pe DHTxx au fost ghidul dumneavoastră, deși, în general, proiectele care se fac de obicei sunt oarecum mai complexe, dar aceste coduri pentru a vedea cum funcționează senzorul sunt destul de orientative și apoi modificați codul și adăugați orice doriți ...


Un comentariu, lasă-l pe al tău

Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.

  1.   Roger el a spus

    informații bune postate. Un singur detaliu ar putea include data publicării. uneori avem nevoie de ea ca referință pentru lucrări scrise cu standarde. Mulțumesc.