ESP32 - DHT11 - LCD

Deze tutorial legt uit hoe u de ESP32 kunt programmeren om temperatuur en luchtvochtigheid uit te lezen van de DHT11 sensor en deze weer te geven op een LCD I2C.

Hardware benodigd

1×ESP32 ESP-WROOM-32 Ontwikkelingsmodule
1×USB Type-C-kabel
1×LCD I2C 16x2
1×DHT11 Temperatuur- en Vochtigheidssensor
1×Breadboard (experimenteerprint)
1×Jumper wires
1×(Optioneel) DC Power Jack
1×(Aanbevolen) Schroefklem Uitbreidingsboard voor ESP32
1×(Aanbevolen) Breakout Expansion Board for ESP32
1×(Aanbevolen) Stromsplitter voor ESP32

Of u kunt de volgende kits kopen:

1×DIYables Sensorkit (30 sensoren/displays)
1×DIYables Sensorkit (18 sensoren/displays)
Openbaarmaking: Sommige van de links in deze sectie zijn Amazon-affiliate links. We kunnen een commissie ontvangen voor aankopen die via deze links worden gedaan, zonder extra kosten voor u. We waarderen uw steun.

Over DHT11 en LCD

We hebben specifieke tutorials over de DHT11 sensor en LCD. Elke tutorial bevat gedetailleerde informatie en stap-voor-stap instructies over hardware pinout, werkingsprincipe, bekabeling naar de ESP32, ESP32 code… Lees meer hierover via de volgende links:

Aansluitschema

ESP32 DHT11 sensor LCD Aansluitschema

This image is created using Fritzing. Click to enlarge image

Let op dat de DHT11 sensor werkt met zowel 5V als 3.3V, dus u kunt de VCC-pin van de DHT11 verbinden met 3.3V of 5V pin.

In bovenstaand schema wordt het LCD gevoed vanuit de ESP32 kaart, maar in sommige gevallen kan dit niet voldoende stroom leveren voor het LCD-scherm. Als het LCD niets weergeeft, voed het LCD dan met een externe voedingsbron zoals hieronder:

  • Indien u de ESP32 voedt via de Vin-pin en het LCD met een externe voeding
ESP32 DHT11 module LCD Aansluitschema

This image is created using Fritzing. Click to enlarge image

  • Indien u de ESP32 via de USB-poort voedt en het LCD met een externe voeding
ESP32 DHT11 LCD I2C Aansluitschema

This image is created using Fritzing. Click to enlarge image

ESP32 Code - DHT11 Sensor - LCD I2C

/* * Deze ESP32 code is ontwikkeld door newbiely.nl * Deze ESP32 code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/esp32/esp32-dht11-lcd */ #include <DHT.h> #include <LiquidCrystal_I2C.h> #define DHT11_PIN 23 // ESP32 pin GPIO23 connected to DHT11 sensor LiquidCrystal_I2C lcd(0x27, 16, 2); // I2C address 0x27 (from DIYables LCD), 16 column and 2 rows DHT dht11(DHT11_PIN, DHT11); void setup() { dht11.begin(); // initialize the DHT11 sensor lcd.init(); // initialize the lcd lcd.backlight(); // open the backlight } void loop() { float humi = dht11.readHumidity(); // read humidity float tempC = dht11.readTemperature(); // read temperature lcd.clear(); // check whether the reading is successful or not if (isnan(tempC) || isnan(humi)) { lcd.setCursor(0, 0); lcd.print("Failed"); } else { lcd.setCursor(0, 0); // display position lcd.print("Temp: "); lcd.print(tempC); // display the temperature lcd.print("°C"); lcd.setCursor(0, 1); // display position lcd.print("Humi: "); lcd.print(humi); // display the humidity lcd.print("%"); } // wait a 2 seconds between readings delay(2000); }

※ Notiz:

Het I2C-adres van het LCD kan per fabrikant verschillen. In de code gebruiken we het adres 0x27, zoals gespecificeerd door DIYables.

Snelle stappen

  • Als u ESP32 voor het eerst gebruikt, bekijk dan hoe de omgeving in te stellen voor ESP32 in Arduino IDE.
  • Maak de bekabeling zoals in de afbeelding hierboven.
  • Verbind de ESP32 met uw pc via een micro-USB-kabel.
  • Open Arduino IDE op uw pc.
  • Selecteer de juiste ESP32 board (bijvoorbeeld ESP32 Dev Module) en COM-poort.
  • Klik op het Libraries icoon in de linkerzijbalk van Arduino IDE.
  • Typ “DHT” in het zoekveld en zoek de DHT sensor library van Adafruit.
  • Installeer de library door op de Install knop te klikken.
ESP32 DHT sensor library
  • Er verschijnt een venster waarin u gevraagd wordt om dependencies voor de library te installeren.
  • Installeer alle dependencies door op Install All te klikken.
ESP32 Adafruit Unified sensor library
  • Typ “LiquidCrystal I2C” in het zoekveld en zoek de LiquidCrystal_I2C library van Frank de Brabander.
  • Klik op de Install knop om de LiquidCrystal_I2C library te installeren.
ESP32 LiquidCrystal I2C library
  • Kopieer de bovenstaande code en plak deze in de Arduino IDE.
  • Compileer en upload de code naar de ESP32 door op de Upload knop in Arduino IDE te klikken.
  • Maak de sensor kouder of warmer. Bijvoorbeeld door de sensor dicht bij een warme kop koffie te plaatsen.
  • Bekijk het resultaat op het LCD.

Als het LCD niets weergeeft, bekijk dan Probleemoplossing bij LCD I2C.

Video Tutorial

We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.

Bekijk onze video-tutorial voor een visuele begeleiding bij dit project! De video biedt extra inzichten waarmee u dit project gemakkelijker kunt uitvoeren.

※ ONZE BERICHTEN

  • U bent welkom om de link naar deze tutorial te delen. Gebruik onze inhoud echter niet op andere websites. We hebben veel moeite en tijd gestoken in het maken van de inhoud, respecteer alstublieft ons werk!