Les 2

Temperatuur en vochtigheidssensor (DHT22)

Benodigdheden

Schakeling

Maak deze schakeling na.

dht22
Code

//#define dhtType DHT22      // DHT 22  (AM2302), AM2321
                
DHT dht(dhtPin, dhtType);    // Initialiseer de DHT bibliotheek
                
float humidityVal;           // luchtvochtigheid
float tempValC;              // temperatuur in graden Celcius
float tempValF;              // temperatuur in graden Fahrenheit
float heatIndexC;            // gevoelstemperatuur in graden Celcius
float heatIndexF;            // gevoelstemperatuur in graden Fahrenheit
                
void setup() {
    Serial.begin(9600);        // stel de seriële monitor in
    dht.begin();               // start het DHT sensor uitlezen
}
                
void loop() {
                
    humidityVal = dht.readHumidity();        // vraag de luchtvochtigheid aan de DHT sensor
    tempValC = dht.readTemperature();        // vraag de temperatuur in graden Celcius aan de DHT sensor
    tempValF = dht.readTemperature(true);    // vraag de temperatuur in graden Fahrenheit aan de DHT sensor
                
    // Controleer of alle waarden goed zijn uitgelezen, zo niet probeer het opnieuw
    if (isnan(humidityVal) || isnan(tempValC) || isnan(tempValF)) {
        Serial.println("Uitlezen van DHT sensor mislukt!");     
        // Beëindig de loop() functie
        return;
    }
                
    // Bereken de gevoelstemperatuur in graden Celcius
    heatIndexC = dht.computeHeatIndex(tempValC, humidityVal, false);
                
    // Bereken de gevoelstemperatuur in graden Fahrenheit
    heatIndexF = dht.computeHeatIndex(tempValF, humidityVal);
                
    // Print alle waarden naar de seriële monitor
    // \t print een tab, \n print een nieuwe regel karakter
    Serial.print(humidityVal);
    Serial.print("\t");
    Serial.print(tempValC);
    Serial.print("\n");
                
    delay(2000);
}