Arduino - DHT11

In deze tutorial leert u:

Hardware Benodigd

1×Arduino Uno R3
1×USB 2.0 kabel type A/B
1×DHT11 Temperatuur- en Vochtigheidssensor Module
1×10 kΩ weerstand
1×Breadboard (experimenteerprint)
1×Jumperdraden
1×(Aanbevolen) Schroefklem Block Shield voor Arduino Uno
1×(Aanbevolen) Breadboard-Shield voor Arduino Uno
1×(Aanbevolen) Behuizing voor Arduino Uno
1×(Aanbevolen) Prototyping Basisplaat & Breadboard Kit voor Arduino Uno

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 de DHT11 Temperatuur- en Vochtigheidssensor

DHT11
Bedrijfsspanning 3 tot 5V
Temperatuurbereik 0°C tot 50°C
Temperatuurnauwkeurigheid ± 2°C
Vochtigheidsbereik 20% tot 80%
Vochtigheidsnauwkeurigheid 5%
Meetfrequentie 1Hz (één keer per seconde)

Pinout

De DHT11 komt in twee vormen: sensor en module.

DHT11 temperatuur- en vochtigheidssensor Pinout

De DHT11 sensor heeft vier pinnen:

  • GND pin: moet verbonden worden met GND (0V)
  • VCC pin: moet verbonden worden met VCC (5V of 3,3V)
  • DATA pin: deze pin wordt gebruikt voor communicatie tussen de sensor en Arduino
  • NC pin: Niet verbonden, deze pin kunt u negeren

De DHT11 module heeft drie pinnen:

  • GND pin: moet verbonden worden met GND (0V)
  • VCC pin: moet verbonden worden met VCC (5V of 3,3V)
  • DATA pin: deze pin wordt gebruikt voor communicatie tussen de sensor en Arduino

Sommige fabrikanten leveren de DHT11 sensor in modulevorm met drie pinnen: GND, VCC en DATA pinnen (of alternatief: -, + en OUT pinnen).

Bedradingsschema

In de sensorvorm is een weerstand van 5 kΩ tot 10 kΩ vereist om de datalijn hoog te houden en om de communicatie tussen de DHT11 sensor en de Arduino mogelijk te maken.

Arduino - DHT11 Sensor Bedrading

Arduino DHT11 Temperatuur- en vochtigheidssensor bedrading schema

This image is created using Fritzing. Click to enlarge image

Arduino - DHT11 Module Bedrading

De meeste DHT11 sensormodules hebben een ingebouwde weerstand, dus u hoeft deze niet extra toe te voegen. Dit bespaart u wat bedrading of soldeerwerk.

Arduino DHT11 Temperatuur- en vochtigheidsmodule bedrading schema

This image is created using Fritzing. Click to enlarge image

Hoe te Programmeren voor DHT11 Temperatuursensor

De programmering voor zowel sensor als module is vergelijkbaar. Er is slechts één regel code verschillend.

  • Voeg de bibliotheek toe:
#include "DHT.h"
  • Definieer de Arduino pin verbonden met de DHT sensor:
#define DHT11_PIN 2
  • Declareer het DHT11 object
DHT dht11(DHT11_PIN, DHT11);
  • Initialiseer de sensor:
dht11.begin();
  • Lees de luchtvochtigheid uit:
float humi = dht11.readHumidity();
  • Lees de temperatuur in Celsius uit:
float tempC = dht11.readTemperature();
  • Lees de temperatuur in Fahrenheit uit:
float tempF = dht11.readTemperature(true);

Arduino Code - DHT11

/* * Deze Arduino code is ontwikkeld door newbiely.nl * Deze Arduino code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/arduino/arduino-dht11 */ #include "DHT.h" #define DHT11_PIN 2 DHT dht11(DHT11_PIN, DHT11); void setup() { Serial.begin(9600); dht11.begin(); // initialize the sensor } void loop() { // wait a few seconds between measurements. delay(2000); // read humidity float humi = dht11.readHumidity(); // read temperature as Celsius float tempC = dht11.readTemperature(); // read temperature as Fahrenheit float tempF = dht11.readTemperature(true); // check if any reads failed if (isnan(humi) || isnan(tempC) || isnan(tempF)) { Serial.println("Failed to read from DHT11 sensor!"); } else { Serial.print("DHT11# Humidity: "); Serial.print(humi); Serial.print("%"); Serial.print(" | "); Serial.print("Temperature: "); Serial.print(tempC); Serial.print("°C ~ "); Serial.print(tempF); Serial.println("°F"); } }

Snelle Stappen

  • Verbind de Arduino met de PC via de USB-kabel
  • Open de Arduino IDE, selecteer het juiste bord en poort
  • Ga naar het Libraries icoon in de linkerzijbalk van de Arduino IDE
  • Zoek op “DHT” en vind de DHT sensor bibliotheek van Adafruit
  • Klik op de Installeren knop om de bibliotheek te installeren
Arduino DHT sensor bibliotheek
  • U wordt gevraagd om enkele andere bibliotheekafhankelijkheden te installeren
  • Klik op de Installeer alles knop om alle afhankelijkheden te installeren
Arduino Adafruit Unified sensor bibliotheek
  • Kopieer de bovenstaande code die correspondeert met uw sensor en open deze met de Arduino IDE
  • Klik op de Upload knop in de Arduino IDE om de code naar de Arduino te uploaden
  • Maak de omgeving rond de sensor warmer of kouder
  • Bekijk het resultaat op de Seriële Monitor
COM6
Send
DHT11# Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F DHT11# Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F DHT11# Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F DHT11# Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F DHT11# Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F DHT11# Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F DHT11# Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F DHT11# Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F DHT11# Humidity: 32.00% | Temperature: 28.00°C ~ 82.40°F DHT11# Humidity: 31.00% | Temperature: 29.00°C ~ 84.20°F DHT11# Humidity: 32.00% | Temperature: 29.00°C ~ 84.20°F DHT11# Humidity: 31.00% | Temperature: 29.00°C ~ 84.20°F
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

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.

※ 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!