AM2302 (DHT22) Temperatuur en Luchtvochtigheid sensor

Artikelnummer: CMP-123
7 Stuks op voorraad Direct leverbaar
6,95 (€5,74 excl. BTW)

Introductie AM2302 (DHT22) Temperatuur en Luchtvochtigheid sensor

Met deze AM2302 (DHT22) sensor kun je de omgevingstemperatuur en de relatieve luchtvochtigheid meten en uitlezen via een Arduino. Deze heet een groter bereik, en betere nauwkeurigheid, dan de DHT11 sensor.

Technische specificaties

  • Temperatuur bereik: -40 .. 80 °C
  • Temperatuur nauwkeurigheid: ±0.5 °C
  • Luchtvochtigheid bereik: 0% .. 99.9% Relatieve luchtvochtigheid
  • Luchtvochtigheid nauwkeurigheid: ±2.0%
  • Voedingsspanning: 3.3V tot 5.5V

Aansluiten van de AM2302 (DHT22) sensor

  • VCC (pin 1) en GND (pin 4) op de voedingsspanning van 3.3V tot maximaal 5.5V
  • DATA (pin 2) op een digitale IO van de Arduino
  • NC (pin 3) hoeft niet aangesloten te worden
  • 10K pull-up weerstand tussen de VDD en DATA pin plaatsen

Software & Code

Download Arduino Library <DHT22>

#include <ErriezDHT22.h>
#define DHT22_PIN 2 // Connect DATA pin to Arduino PIN 2
DHT22 dht22 = DHT22(DHT22_PIN);

// Function prototypes
void printTemperature(int16_t temperature);
void printHumidity(int16_t humidity);

void setup(){
    Serial.begin(115200); // Initialize serial port
    dht22.begin(); // Initialize DHT22
}

void loop(){
    // Check minimum interval of 2000 ms between sensor reads
    if (dht22.available()) {
        // Read temperature from sensor (blocking)
        int16_t temperature = dht22.readTemperature();

        // Read humidity from sensor (blocking)
        int16_t humidity = dht22.readHumidity();

        printTemperature(temperature);
        printHumidity(humidity);
    }
}

void printTemperature(int16_t temperature){
    // Check valid temperature value
    if (temperature == ~0) {
        // Temperature error (Check hardware connection)
        Serial.println(F("Temperature: Error"));
    } else {
        // Print temperature
        Serial.print(F("Temperature: "));
        Serial.print(temperature / 10);
        Serial.print(F("."));
        Serial.print(temperature % 10);
        Serial.println("C");
    }
}

void printHumidity(int16_t humidity){
    // Check valid humidity value
    if (humidity == ~0) {
        // Humidity error (Check hardware connection)
        Serial.println(F("Humidity: Error"));
    } else {
        // Print humidity
        Serial.print(F("Humidity: "));
        Serial.print(humidity / 10);
        Serial.print(F("."));
        Serial.print(humidity % 10);
        Serial.println(F(" %"));
    }
}
Er zijn nog geen beoordelingen voor dit product geplaatst.

Aanbevolen producten