DHT11: viss par sensoru temperatūras un mitruma mērīšanai

DHT11

Temperatūras un mitruma mērīšana ir ļoti izplatīta daudzos elektronisko veidotāju projektos. DIY gadījumā parasti ir jāmēra šie parametri, lai kontrolētu noteiktas sistēmas. Piemēram, lai varētu izveidot saldēšanas, augu kopšanas vai gaisa kondicionēšanas sistēmu, kas iedarbojas, ja temperatūra vai mitrums sasniedz noteiktu vērtību. Bet, lai tas būtu iespējams, jums ir nepieciešams tāds sensors kā DHT11.

Tirgū sensoru ir daudz ļoti atšķirīgi temperatūras diapazoni, ar atbalstītiem temperatūras diapazoniem vai atšķirīgu precizitāti. Piemērs tam ir LM35, viens no populārākajiem un elektronikā izmantotajiem. Ir arī citi mitruma sensori, kas darbojas, mainot vadītspēju, piemēram, AD22103KTZ no Analog Devices. Bet, ja vēlaties izmērīt abus parametrus, iespējams, daudz vairāk interesē ierīce, kuru mēs šodien apspriežam šajā rakstā ...

Kas ir DHT11?

El DHT11 ir vienkāršs sensors, kas mēra temperatūru un mitrumu, viss vienā. A) Jā jums nebūs jāpērk divi sensori atsevišķi. Tās cena ir aptuveni 2 eiro, tāpēc tā ir diezgan lēta, lai gan to var atrast arī uzstādītu uz moduļa (uzstādīta uz PCB lietošanas ērtībai), kā parasti šāda veida Arduino elektroniskajos komponentos. Dēļa gadījumā tas ietver 5 kg omu pievilkšanas rezistoru un LED, kas mūs brīdina par darbību.

DHT11 ir augsta uzticamība un stabilitāte tā kalibrētā digitālā signāla dēļ. Turklāt, aplūkojot tā datu lapu, redzēsiet, ka tai ir interesantas funkcijas, kā redzēsit nākamajās sadaļās.

Līdzīgi produkti

DHT22

Ir produkts, kas līdzīgs DHT11, kas jūs varētu interesēt. Tas ir DHT22. Tas ir arī integrēts temperatūras un mitruma sensors, taču šajā gadījumā tā cena ir nedaudz augstāka, aptuveni 4 eiro. Temperatūras mērīšanas precizitāte ir 5% variācija tāpat kā DHT11, bet atšķirībā no tā mēra ārpus mitruma diapazona no 20 līdz 80%. Tāpēc jūs varētu interesēt DHT22 projektiem, kur mitrums jāmēra no 0 līdz 100%.

La datu vākšanas biežums tas ir arī divreiz lielāks nekā DHT11, DHT22 ņem 2 paraugus sekundē, nevis 1 paraugu sekundē DHT11. Kas attiecas uz temperatūru, tas var precīzāk mērīt no -40 ° C līdz + 125 ° C, jo tas var mērīt grādu daļas, konkrēti, tas var novērtēt plus / mīnus 0,5 ° C svārstības.

Pinout, funkcijas un datu lapa

DHT11 piespraude

Jūs varat atrast diezgan daudz tehniskās informācijas par DHT11 jūsu datu lapās. Katrs šīs ierīces ražotājs var norādīt dažas vērtības, kas var atšķirties, tāpēc es vienmēr iesaku izlasīt konkrētā jūsu iegādātās ierīces ražotāja PDF failu. Lai gan lielākā daļa vērtību jums var izskatīties vienādi, tomēr starp tām var būt nelielas atšķirības. Tās vissvarīgākās tehniskās īpašības ir:

  • Strāvas padeve no 3,5v līdz 5v
  • Pašreizējais patēriņš 2,5 mA
  • Digitālais izejas signāls
  • Temperatūras diapazons no 0 ° C līdz 50 ° C
  • Precizitāte temperatūras mērīšanai 25 ° C temperatūrā aptuveni 2 ° C variācijas
  • Temperatūras mērīšanas izšķirtspēja ir 8 biti, 1ºC
  • Mitrums var būt no 20% RH līdz 90% RH
  • Precīzi mitrumam 5% RH temperatūrā no 0-50 ° C
  • Izšķirtspēja ir 1% RH, zemāk esošās variācijas nevar uzņemt
  • Mouser datu lapa

Attiecībā uz datiem apraide ciparu formātā. Tāpēc nav nepieciešams pāriet no analogā uz ciparu kā citos sensoros. Tas sarežģīja koda ierakstīšanu Arduino IDE, taču šajā gadījumā tas nav vajadzīgs, un tas ir daudz vieglāk. Kaut arī pats sensors ir analogs, taču tajā ir iekļauta sistēma pārveidošanas veikšanai, un to var tieši savienot ar Arduino digitālo ieeju.

Analogais signāls, kas ir sprieguma variācija, no sensora tiek pārveidots ciparu formātā, lai to nosūtītu uz Arduino mikrokontrolleru. Tas tiek pārraidīts 40 bitu kadrs kas atbilst DHT fiksētajai mitruma un temperatūras informācijai11. Pirmās divas 8 bitu grupas ir paredzētas mitrumam, tas ir, nozīmīgākajiem 16 šī kadra bitiem. Tad pārējās 2 atlikušās 8 bitu temperatūras grupas. Tas ir, tam ir divi baiti mitrumam un divi baiti temperatūrai. Piemēram:

0011 0101 0000 0010 0001 1000 0000 0000 0011 1001

Šajā gadījumā 0011 0101 0000 0010 ir mitruma vērtība, un 0001 1000 0000 0000 ir temperatūra. Pirmā daļa ir vesela skaitļa daļa, bet otrā daļa - aiz komata. Kas attiecas uz 0011 1001, tas ir, pēdējie 8 biti ir paritāte lai izvairītos no kļūdām. Tādā veidā jūs varat pārbaudīt, vai pārraidīšanas laikā viss ir pareizi. Tas atbilst iepriekšējo bitu summai, tādēļ, ja summa ir vienāda ar paritāti, tā būs pareiza. Piemērā, kuru esmu ievietojis, tā nebūtu, jo, kā redzat, tas neatbilst ... Tas liecinātu par izgāšanos.

Kad tas ir zināms, DHT11 tehniskajā līmenī nākamā lieta, kas jāatzīmē, ir tapas. The kontaktus vai piespraudi šīs ierīces ir vienkārša, jo tajā ir tikai 4 no tām. Viens no tapām ir paredzēts jaudai vai Vcc, otrs I / O datu pārraidei, NC tapa, kas nepieslēdzas, un GND zemes savienojumam.

Integrācija ar Arduino

DHT11 savienošana ar Arduino

Kad esat uzzinājis DHT11 pinout un arī Arduino dēlis, savienojums ir ļoti vienkāršs. Atcerieties, ka, ja esat izvēlējies DHT11 moduli, kas integrēts PCB, tapas būs trīs, jo NC tiek noņemts, lai atvieglotu lietas. Vienīgais, kas jums jādara, ir savienot zemējuma tapu ar vienu no Arduino GND savienojumiem, kā tas parādīts iepriekšējā attēla diagrammā.

No otras puses, strāvas tapai jābūt savienotai ar 5v savienojums no Arduino, šādā veidā sensors tiks pilnībā darbināts ar GND un Vcc, taču tagad trūkst datu. Lai pārsūtītu datus no DHT11 sensora uz Arduino dēli, varat izmantot jebkuru no digitālajām ieejām, piemēram, 7, kas parādās attēlā ... Tagad jums ir viss gatavs to izmantot, kad esat izveidojis nepieciešamo kodu Arduino IDE ...

Ja sensors ir tālu no jūsu projekta un jūs plānojat izmantot kabeli, kas ir garāks par 20 metriem, tad izmantojiet 5k pievilkšanas rezistoru, lielākiem kabeļiem tam jābūt proporcionāli lielākam. Ņemiet vērā, ka, ja 3,5 V vietā izmantojat 5 V strāvu, sprieguma kritumu dēļ kabelis nedrīkst būt garāks par 20 cm.

Atcerieties, ka tas, ko viņi iesaka, ir veikt mērījumus ik pēc 5 sekundēm, lai gan paraugu ņemšanas frekvence, kurā DHT11 var darboties, ir augstāka, bet, ja tas tiek darīts biežāk, tas var nebūt tik precīzs.

Kods Arduino IDE

Dodoties tieši pie koda, sakiet to iekšā Arduino IDE varat izmantot vairākas esošās bibliotēkas ar funkcijām, kas atvieglos jūsu dzīvi ar DHT11. Piemēram, viens no tiem ir tas, kas nodrošina Adafruit. Atcerieties, ka mums ir iesācēju ceļvedis, kas sākas ar Arduino PDF formātā, kuru varat lejupielādēt no šejienes bez maksas un tas var jums palīdzēt.

Kad esat instalējis atbilstošo bibliotēku, varat komentēt ievadiet kodu kontrolēt DHT11 temperatūras un mitruma sensoru savam projektam ar Arduino. Piemēram:

#include "DHT.h"

const int DHTPin = 7;     
 
DHT dht(DHTPin, DHTTYPE);
 
void setup() {
   Serial.begin(9600);
   Serial.println("Midiendo...");
 
   dht.begin();
}
 
void loop() {
   delay(2000);
 
   float h = dht.readHumidity();
   float t = dht.readTemperature();
 
   if (isnan(h) || isnan(t)) {
      Serial.println("Fallo en la lectura del sensor DHT11");
      return;
   }
 
 
   Serial.print("Humedad relativa: ");
   Serial.print(h);
   Serial.print(" %\t");
   Serial.print("Temperatura: ");
   Serial.print(t);
   Serial.print(" ºC ");
}


Esi pirmais, kas komentārus

Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.