ESP32 er et avansert mikrokontrollertavle som kan kjøre flere instruksjoner for å generere utganger. Ved hjelp av ESP32 med forskjellige sensorer kan vi kontrollere flere enheter og kan ta sanntidsmålinger av forskjellige parametere som temperatur, trykk, fuktighet eller høyde. I dag vil vi grensesnitt.
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 ESP32 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. 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 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 ESP32 med DHT11 enkelt.
4: Grensesnitt ESP32 med DHT11 -sensor
For grensesnitt ESP32 med DHT11 -sensor trenger vi en digital pinne for lesesensordata og for å drive DHT11 -sensor, vi kan enten bruke 3V3 -pinnen eller VIN -pinnen til ESP32.
1: Skjematisk
I det gitte bildet kan vi se det skjematiske diagrammet til ESP32 med DHT11. Dette bildet representerer 3-pinners sensormodulgrensesnitt med ESP32. 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 ESP32 som vist nedenfor:
3: Kode
Koble til ESP32 med PC og Open Arduino IDE. Last opp den gitte koden til ESP32 -styret.
#include "DHT.h "
#Define DHTPIN 4
#Define DHTType DHT11
Dht dht (dhtpin, dhttype);
void setup ()
Serie.Begin (115200);
Serie.Println (F ("DHTXX Test!"));
dht.begynne();
void loop ()
forsinkelse (2000);
FLOAT H = DHT.readhumidity ();
FLOAT T = DHT.readTemperature (); /*Les standardtemperatur i Celsius*/
FLOAT F = DHT.readTemperature (true); /*Les temperatur i Fahrenheit*/
if (isnan (h) || isnan (t) || isnan (f)) /*hvis tilstand for å sjekke alle lesninger tatt eller ikke* /
Serie.Println (F ("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 ESP32 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 verdien av fuktighet, temperatur i Celsius og Fahrenheit i float -format.
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 ESP32 med DHT11 -sensor.
Konklusjon
ESP32 er en flerdimensjonal enhet som kan forbedre dens arbeid ved å grensesnittende forskjellige sensorer. Her i denne leksjonen har vi konfigurert ESP32 med 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.