Arduino and DHT11-DHT22
Release status: Tutorial
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
|
* Werkspanning: 3,3 V-5,5 V
|
Pin-out
Pin | Omschrijving |
---|---|
DOUT | Digitale uit |
GND | 0V |
VCC | 3.3V-5.5V |
DHT11 Module schema
DHT22 Module schema
Gebruik met Arduino
Aansluiten
Sensor | Arduino | beschrijving |
---|---|---|
VCC | 5V | Stroomingang |
GMD | GND | Voedingsaarde |
DOUT | D7 | Digitale gegevensuitvoer |
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:
In een vervolg project laat ik de data zien op een LCD scherm.