Arduino er et avansert mikrokontrollertavle som kan kobles sammen med forskjellige sensorer for å måle forskjellige parametere. Ved hjelp av et Arduino -brett med DHT11 -sensor kan vi ta sanntidstemperatur og fuktighetsavlesninger. Denne artikkelen vil dekke trinn som kreves for DHT11 sensorgrensesnitt med Arduino UNO -brett.
Denne opplæringen dekker etter innhold:
1: Introduksjon til DHT11 -sensor
2: DHT11 Sensor Pinout
2.1: 3 -pin DHT11 -sensor
2.2: 4 Pin DHT11 -sensor
3: Installere de nødvendige bibliotekene
4: Grensesnitt Arduino med DHT11 -sensor
4.1: Skjematisk
4.2: Maskinvare
4.3: Kode
4.4: Output
1: Introduksjon til DHT11 -sensor
DHT11 er en av de ofte brukte temperatur- og fuktighetsovervåkningssensorene i elektronikksamfunnet. Det er mer presist i å gi temperatur og relativ fuktighet. Det gir ut et kalibrert digitalt signal som spytter ut i to forskjellige avlesninger av temperatur og fuktighet.
Den bruker den digitale signal-anskaffelsesteknikken som gir pålitelighet og stabilitet. DHT11-sensoren inneholder en målingskomponent av resistiv type og har en målekomponent i NTC-temperatur. Begge disse er integrert i en 8-biters meget effektiv mikrokontroller som tilbyr rask respons, anti-interferensevne og kostnadseffektivitet.
Her er noen viktigste tekniske spesifikasjoner for DHT11:
Som vi har dekket en grunnleggende introduksjon til DHT11 -sensor, la oss nå gå mot pinout av DHT11.
2: DHT11 Sensor Pinout
Det meste av tiden DHT11 -sensoren kommer i to forskjellige pin -konfigurasjoner. DHT11 -sensoren som kommer i 4 pins konfigurasjon har 3 pinner som ikke fungerer eller merket som ingen tilkobling.
3 -Pin DHT11 sensordodulen kommer i tre pinner som inkluderer kraft, GND og datapinne.
1: 3 -pin DHT11 -sensor
Gitt bilde viser 3 -pinners konfigurasjoner av DHT11 -sensoren.
Disse tre pinnene er:
1 | Data | Utgangstemperatur og fuktighet i seriedata |
2 | VCC | Inngangskraft 3.5v til 5.5v |
3 | GND | GND av krets |
2: 4 Pin DHT11 -sensor
Følgende bilde illustrerer 4 -pinners DHT11 sensordodul:
Disse 4 pinnene inkluderer:
1 | VCC | Inngangskraft 3.5v til 5.5v |
2 | Data | Utgangstemperatur og fuktighet i seriedata |
3 | NC | Ingen tilkobling eller ikke brukt |
4 | GND | GND av krets |
3: Installere de nødvendige Arduino -bibliotekene
For å grensesnitt. Uten å bruke disse bibliotekene kan DHT11 ikke vise oss å lese sanntidstemperaturen over seriemonitoren.
Åpne Arduino Ide, gå til: Skisse> Inkluder bibliotek> Administrer biblioteker
Alternativt kan vi også åpne Library Manager fra sideknappen på Arduino IDE -grensesnittet.
Søk etter DHT -biblioteket og installer den siste oppdaterte versjonen. DHT -biblioteket vil bidra til å lese sensordata.
Etter å ha installert DHT -biblioteket neste gang må vi installere en Unified Sensor Library av Adafruit.
Vi har installert nødvendige biblioteker, og nå kan vi grensesnitt Arduino Uno med DHT11 enkelt.
4: Grensesnitt Arduino med DHT11 -sensor
For grensesnitt Arduino med DHT11 -sensor trenger vi en digital pinne for lesesensordata og for å drive DHT11 -sensor vi enten kan bruke 5V -pinnen eller VIN -pinnen til Arduino.
1: Skjematisk
I det gitte bildet kan vi se det skjematiske diagrammet av Arduino med DHT11. Dette bildet representerer 3-pinners sensormodulgrensesnitt med Arduino. Husk å koble en opptreden motstand på 10KΩ.
Tilsvarende kan 4 -pinners DHT11 også kobles til, den eneste forskjellen her er 3 -pinnen som ikke er til nytte eller betegnet som ingen forbindelse. Datapålen er på pinne 2 på sensoren
2: Maskinvare
Etter å ha designet samme krets som i skjematisk, kan vi se maskinvarebildet til Arduino som vist nedenfor:
3: Kode
Koble Arduino med PC og Open Arduino IDE. Last opp den gitte koden til Arduino -styret.
#include "DHT.h "
#Define DHTPIN 4 /*Digital PIN 4 for sensorinngang* /
#Define DHTType DHT11 /*Type DHT -sensor vi bruker* /
Dht dht (dhtpin, dhttype);
void setup ()
Serie.Begynn (9600);
dht.begynne(); /*Initialiser DHT -sensor fungerer*/
void loop ()
forsinkelse (2000);
FLOAT H = DHT.readhumidity (); /*Variabel for å lagre fuktighet*/
FLOAT T = DHT.readTemperature (); /*Variabel for å lagre temperatur i Celsius*/
FLOAT F = DHT.readTemperature (true); /*Variabel for å lagre temperaturen i Fahrenheit*/
if (isnan (h) || isnan (t) || isnan (f))
Serie.Println ("Kunne ikke lese fra DHT -sensor!");
komme tilbake;
Serie.print (f ("fuktighet:")); /*Skriver ut fuktighetsverdi*/
Serie.trykk (h);
Serie.print (f ("% temperatur:"));
Serie.trykk (t);
Serie.print (f ("° c")); /*Skriver ut temperaturen i Celsius*/
Serie.trykk (f);
Serie.println (f ("° f")); /*skriver ut temperatur i Fahrenheit*/
Koden startet med å inkludere DHT -biblioteket. En Arduino Digital Pin 4 er initialisert for å lese temperaturen og fuktigheten. Etter det er DHT11 -sensoren definert. Tre variabler h, t og f opprettes som lagrer dataverdiene for fuktighet, temperatur i Celsius og Fahrenheit i flottørformat.
På slutten av programmet er hver av dem skrevet ut på en seriemonitor.
4: Output
I utgangsterminalen til IDE kan vi se fuktigheten og temperaturavlesningene trykt.
Vi har fullført grensesnitt av Arduino med DHT11 -sensor.
Konklusjon
Arduino er en flerdimensjonal enhet som kan forbedre dens arbeid ved å grensesnittende forskjellige sensorer. Her i denne leksjonen har vi konfigurert et Arduino Uno -brett med en DHT11 -sensor for å måle temperaturen og fuktigheten i et rom. Bruke Arduino -koden forutsatt at noen av DHT11 -sensorene kan konfigureres til å ta avlesninger.