Arduino and DHT11-DHT22

Uit Private Rotor Designs
Naar navigatie springen Naar zoeken springen
Crystal Clear action run.png
Gebruik een LCD metESP32

Release status: Tutorial

DHT front.jpg
Description
Arduino and DHT11-DHT22
License
Author
Contributors
Based-on
[[]]
Categories
CAD Models
External Link


Inleiding

De DHT22 capacitieve vochtigheidsdetecterende digitale temperatuur- en vochtigheidsmodule is er een die de samengestelde en gekalibreerde digitale signaaluitvoer van de temperatuur- en vochtigheidssensoren bevat. Toepassing van een speciale technologie voor het verzamelen van digitale modules en de temperatuur- en vochtigheidsdetectietechnologie, om ervoor te zorgen dat het product een hoge betrouwbaarheid en uitstekende stabiliteit op lange termijn heeft.

De sensor omvat een capacitieve sensor voor natte componenten en uiterst nauwkeurige temperatuurmeetapparatuur, en is verbonden met een krachtige 8-bit microcontroller. Het product heeft een uitstekende kwaliteit, snelle respons, sterk anti-jammingvermogen en hoge kosten.

Standaard single-bus interface, systeemintegratie snel en eenvoudig. Klein formaat, laag stroomverbruik, signaaloverdrachtsafstand tot 20 meter, waardoor het de beste keuze is voor allerlei toepassingen en zelfs de meest veeleisende toepassingen.

DHT22 heeft een hogere precisie en kan de dure geïmporteerde SHT10/11 temperatuur- en vochtigheidssensor vervangen.

Let op: DHT22 digitale temperatuur- en vochtigheidssensor is ontworpen voor analoge sensorinterfaces.

Temperatuur/vochtigheidssensor

Dit is een gekalibreerde digitale temperatuur- en vochtigheidsmodule met een ingebouwde sensor DHT11/22(AM2302). Deze kan worden gebruikt voor het detecteren van de omgevingstemperatuur en vochtigheid, via de standaard enkeldraadinterface.

DHT11-DHT22

DHT11 DHT22
* Werkspanning: 3,3 V-5,5 V
  • Temperatuur
    o Meetbereik: 0°C ~ 50°C
    o Resolutie: 1°C
    o Nauwkeurigheid: ±2℃
  • Vochtigheid
    o Resolutie: 1% RV
    o Nauwkeurigheid: ±5% RV (0~50°C)
    o Meetbereik: 20%RH ~ 90%RH (25°C)
  • Aanbevolen bewaarconditie
    o Temperatuur: 10°C ~40°C
    o Vochtigheid: 60% RH of lager
  • Vaste gatgrootte: 2,0 mm
* Werkspanning: 3,3 V-5,5 V
  • Temperatuur
    o Resolutie: 0,1°C
    o Nauwkeurigheid: ±0,5℃
    o Meetbereik: -40°C ~ 80°C
  • Vochtigheid
    o Resolutie: 0,1% RV
    o Nauwkeurigheid: ±2%RH (25°C)
    o Meetbereik: 0% RV ~ 99,9% RV
  • Aanbevolen bewaarconditie
    o Temperatuur: 10°C ~40°C
    o Vochtigheid: 60% RH of lager
  • Vaste gatgrootte: 2,0 mm

Pin-out

Pin Omschrijving
DOUT Digitale uit
GND 0V
VCC 3.3V-5.5V

DHT11 Module schema

module schema

DHT22 Module schema

module schema

Gebruik met Arduino

Aansluiten

Sensor Arduino beschrijving
VCC 5V Stroomingang
GMD GND Voedingsaarde
DOUT D7 Digitale gegevensuitvoer
Sensor aansluiten op een Arduino

Code

Kopieer onderstaande naar de Arduino IDE en laad deze dan in uw ARDUINO UNO.

// Example testing sketch for various DHT humidity/temperature sensors
#include "DHT.h"

#define DHTPIN 2     // Digital pin connected to the DHT sensor

// Uncomment whatever type you're using!
//#define DHTTYPE DHT11   // DHT 11
#define DHTTYPE DHT22   // DHT 22  (AM2302), AM2321
//#define DHTTYPE DHT21   // DHT 21 (AM2301)

// Connect pin 1 (on the left) of the sensor to +5V
// NOTE: If using a board with 3.3V logic like an Arduino Due connect pin 1
// to 3.3V instead of 5V!
// Connect pin 2 of the sensor to whatever your DHTPIN is
// Connect pin 3 (on the right) of the sensor to GROUND (if your sensor has 3 pins)
// Connect pin 4 (on the right) of the sensor to GROUND and leave the pin 3 EMPTY (if your sensor has 4 pins)
// Connect a 10K resistor from pin 2 (data) to pin 1 (power) of the sensor

// Initialize DHT sensor.
DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(9600);
  Serial.println(F("DHTxx test!"));

  dht.begin();
}

void loop() {
  // Wait a few seconds between measurements.
  delay(2000);

  // Reading temperature or humidity takes about 250 milliseconds!
  float h = dht.readHumidity();
  // Read temperature as Celsius (the default)
  float t = dht.readTemperature();
  // Read temperature as Fahrenheit (isFahrenheit = true)
  float f = dht.readTemperature(true);

  // Check if any reads failed and exit early (to try again).
  if (isnan(h) || isnan(t) || isnan(f)) {
    Serial.println(F("Failed to read from DHT sensor!"));
    return;
  }

  // Compute heat index in Fahrenheit (the default)
  float hif = dht.computeHeatIndex(f, h);
  // Compute heat index in Celsius (isFahreheit = false)
  float hic = dht.computeHeatIndex(t, h, false);

  Serial.print(F("Humidity: "));
  Serial.print(h);
  Serial.print(F("%  Temperature: "));
  Serial.print(t);
  Serial.print(F("°C "));
  Serial.print(f);
  Serial.print(F("°F  Heat index: "));
  Serial.print(hic);
  Serial.print(F("°C "));
  Serial.print(hif);
  Serial.println(F("°F"));
}

Resultaat

Bij een correct aangesloten DHT11 of DHT22 ziet U de data verschijnen in de seriële monitor:

DHT22 Result

In een vervolg project laat ik de data zien op een LCD scherm.