DHT11: alles oor die sensor om temperatuur en humiditeit te meet

DHT11

Die meet van temperatuur en humiditeit is baie algemeen in baie elektroniese vervaardigerprojekte. In DIY is dit algemeen om hierdie parameters te meet om sekere stelsels te beheer. Om byvoorbeeld 'n verkoeling-, plantversorgings- of lugversorgingstelsel te kan skep wat begin as die temperatuur of humiditeit 'n sekere waarde bereik. Maar om dit moontlik te maak, benodig u 'n sensor soos die DHT11.

In die mark daar is baie sensors baie verskillende temperatuurreekse, met ondersteunde temperatuurreekse of verskillende presisies. 'N Voorbeeld hiervan is die LM35, een van die gewildste en gebruikste in elektronika. Daar is ook ander humiditeitsensors wat optree deur variasie van geleidingsvermoë, soos die AD22103KTZ van Analog Devices. Maar as u albei parameters wil meet, is die apparaat wat ons vandag in hierdie artikel bespreek, miskien baie meer interessant ...

Wat is DHT11?

El DHT11 is 'n eenvoudige sensor wat temperatuur en humiditeit meet, alles in een. A) Ja u hoef nie twee sensors te koop nie afsonderlik. Die prys is ongeveer € 2, dus dit is redelik goedkoop, hoewel u dit ook op 'n module (gemonteer op 'n PCB vir gemak van gebruik) kan vind, soos gewoonlik in hierdie soort elektroniese komponente vir Arduino gebruik word. In die geval van die bord bevat dit 'n 5 kilo ohm-weerstand en 'n LED wat ons op die hoogte stel van die werking.

DHT11 het hoë betroubaarheid en stabiliteit as gevolg van sy gekalibreerde digitale sein. As u ook na die gegewensblad kyk, sal u sien dat dit interessante funksies het, soos u in toekomstige afdelings sal sien.

Soortgelyke produkte

DHT22

Daar is 'n produk soortgelyk aan DHT11 waarin u dalk belangstel. dit is die DHT22. Dit is ook 'n geïntegreerde temperatuur- en humiditeitsensor, maar in hierdie geval is die prys 'n bietjie hoër, ongeveer € 4. Die akkuraatheid om die temperatuur te meet, is ook 5% soos DHT11, maar anders as dit meet dit buite die humiditeitsbereik tussen 20 en 80%. Daarom sal u dalk belangstel in die DHT22 vir projekte waar u die humiditeit van 0 tot 100% moet meet.

La frekwensie van data-insameling dit is ook twee keer die van DHT11, in DHT22 word 2 monsters per sekonde geneem in plaas van 1 monster per sekonde van DHT11. Wat die temperatuur betref, kan dit van -40 ° C tot + 125 ° C met meer akkuraatheid meet, aangesien dit breuke van grade kan meet, en dit spesifiek die variasies van plus / minus 0,5 ° C kan waardeer.

Pinout, funksies en datablad

DHT11 pen uit

U kan heelwat tegniese inligting oor die DHT11 in u gegewensblaaie. Elke vervaardiger van hierdie toestel kan waardes verskaf wat kan wissel, dus ek beveel altyd aan om die PDF van die spesifieke vervaardiger van die toestel wat u gekoop het, te lees. Alhoewel die meeste waardes vir u dieselfde lyk, kan daar 'n effense afwisseling van die een na die ander wees. Die belangrikste tegniese eienskappe daarvan is:

  • 3,5v tot 5v kragbron
  • 2,5 mA stroomverbruik
  • Digitale uitsetsein
  • Temperatuur wissel van 0 ° C tot 50 ° C
  • Nauwkeurigheid om temperatuur te meet by 25 ° C van ongeveer 2 ° C variasie
  • Die resolusie om die temperatuur te meet, is 8-bit, 1 ° C
  • Humiditeit kan van 20% RH tot 90% RH meet
  • Akkurate humiditeit 5% RH vir temperature tussen 0-50ºC
  • Die resolusie is 1% RH, dit kan nie variasies daaronder opneem nie
  • Mouser-datablad

Wat die gegewens betref, uitgesaai in digitaal. Daarom is dit nie nodig om van analoog na digitaal te gaan soos in ander sensors nie. Dit het die kode ingewikkeld gemaak om in die Arduino IDE te skryf, maar in hierdie geval is dit nie nodig nie en is dit baie makliker. Alhoewel die sensor self analoog is, maar dit bevat 'n stelsel om die omskakeling uit te voer en kan dit direk gekoppel word aan 'n digitale ingang van die Arduino.

Die analoog sein, wat 'n variasie van die spanning is, word vanaf die sensor in digitale formaat omgeskakel om na die Arduino-mikrobeheerder te stuur. Dit word oorgedra in 'n 40-bis raam wat ooreenstem met die inligting oor die humiditeit en temperatuur wat deur die DHT11 vasgelê word. Die eerste twee 8-bis-groepe is vir humiditeit, dit wil sê die belangrikste 16 bisse van hierdie raam. Dan die ander 2 oorblywende 8-bis groepe vir temperatuur. Dit wil sê, dit het twee grepe vir vogtigheid en twee grepe vir temperatuur. Byvoorbeeld:

0011 0101 0000 0010 0001 1000 0000 0000 0011 1001

In hierdie geval is 0011 0101 0000 0010 die humiditeitswaarde en 0001 1000 0000 0000 die temperatuur. 'N Eerste deel is vir die heelgetal en die tweede deel vir desimale. Wat 0011 1001 betref, dit wil sê die laaste 8-bis is pariteit om foute te vermy. Op hierdie manier kan u seker maak dat alles reg is tydens die uitsending. Dit stem ooreen met die som van die vorige stukkies. As die som gelyk is aan pariteit, sal dit dus korrek wees. In die voorbeeld wat ek gestel het, sou dit nie wees nie, want soos u kan sien, stem dit nie ooreen nie ... Dit dui op 'n mislukking.

Sodra dit bekend is, moet die penne op 'n tegniese vlak van die DHT11 opgemerk word. Die kontakte of uitlê van hierdie toestel is eenvoudig, aangesien dit net vier daarvan het. Een van die penne is vir krag of Vcc, die ander vir I / O om data uit te stuur, 'n NC-pen wat nie aansluit nie, en GND vir die grondverbinding.

Integrasie met Arduino

Verbind die DHT11 met Arduino

Sodra u die uitwerking van die DHT11 en ook weet die Arduino-bord, is die verbinding baie eenvoudig. Onthou dat as u 'n DHT11-module gekies het wat in 'n PCB geïntegreer is, die penne drie sal wees, aangesien die NC verwyder word om dit makliker te maak. Die enigste ding wat u hoef te doen is om die grondpen aan te sluit op een van die Arduino se GND-verbindings soos dit in die diagram in die vorige prentjie verskyn.

Aan die ander kant moet die kragpen verbind word die 5v-verbinding vanaf Arduino, Die sensor sal dus volledig aangedryf word met GND en Vcc, maar nou ontbreek die data. Om die data van die DHT11-sensor na die Arduino-bord oor te dra, kan u enige van die digitale insette gebruik, soos die 7 wat op die afbeelding verskyn ... U het nou alles gereed om dit te gebruik sodra u die nodige Arduino IDE geskep het kode ...

As die sensor ver weg is in u projek en u 'n kabel van langer as 20 meter gaan gebruik, gebruik dan 'n 5k-weerstand vir groter kabels, dit moet proporsioneel groter wees. Let daarop dat as u 3,5 v krag gebruik in plaas van 5 v, dan moet die kabel nie langer as 20 cm wees nie as gevolg van spanningsval.

Onthou dat dit wat hulle aanbeveel, is neem elke 5 sekondes metings, hoewel die monsternemingsfrekwensie waarteen die DHT11 kan werk, hoër is, maar as dit meer gereeld gedoen word, is dit miskien nie so akkuraat nie.

Kode in Arduino IDE

Gaan reguit na die kode, sê dit in Arduino IDE u kan 'n aantal bestaande biblioteke gebruik met funksies wat u die lewe met die DHT11 sal vergemaklik. Een daarvan is byvoorbeeld die een wat verskaf Adafruit. Onthou dat ons 'n beginnersgids het wat u met Arduino in PDF begin aflaai gratis vanaf hier en dit kan u help.

Sodra die ooreenstemmende biblioteek geïnstalleer is, kan u kommentaar lewer op voer die kode in om die DHT11 temperatuur- en humiditeitsensor vir u projek met Arduino te beheer. Byvoorbeeld:

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


Die inhoud van die artikel voldoen aan ons beginsels van redaksionele etiek. Klik op om 'n fout te rapporteer hier.

Wees die eerste om te kommentaar lewer

Laat u kommentaar

Jou e-posadres sal nie gepubliseer word nie. Verpligte velde gemerk met *

*

*

  1. Verantwoordelik vir die data: Miguel Ángel Gatón
  2. Doel van die data: Beheer SPAM, bestuur van kommentaar.
  3. Wettiging: U toestemming
  4. Kommunikasie van die data: Die data sal nie aan derde partye oorgedra word nie, behalwe deur wettige verpligtinge.
  5. Datastoor: databasis aangebied deur Occentus Networks (EU)
  6. Regte: U kan u inligting te alle tye beperk, herstel en verwyder.