Arduino Weerstation (2 / 6 steg)
Steg 2: Temperatuur/vochtigheid(DHT11) sensor
De volgende onderdelen zijn nodig:
-10 k motstånd
-DHT11 sensor
De sensor wordt op de volgend manier aangesloten:
-5V
-Data
-Niets
-Mark
De motstånd wordt tussen de data sv de 5v pin gezet. (Zie foto)
Kod:
#include "DHT.h"
#define DHTPIN 2 / / vad digital pin vi är ansluten till #define DHTTYPE DHT11 / / DHT 11
DHT dht (DHTPIN, DHTTYPE);
void setup() {Serial.begin(9600); Serial.println ("DHTxx test!");
DHT.BEGIN(); }
void loop() {delay(2000);
Läst temperatur eller fuktighet tar cirka 250 millisekunder! Sensormätningar kan också vara upp till 2 sekunder "gamla" (det är en mycket långsam sensor) flyta h = dht.readHumidity(); Läs temperatur som Celsius (standard) flyta t = dht.readTemperature(); Läs temperatur som Fahrenheit (isFahrenheit = true) flyta f = dht.readTemperature(true);
Kontrollera om någon läser misslyckades och avsluta tidigt (för att försöka igen). om (isnan(h) || isnan(t) || isnan(f)) {Serial.println ("kunde inte läsa från DHT sensorn!"); return;}
Beräkna Värmeindex i Fahrenheit (standard) flyta hif = dht.computeHeatIndex (f, h); Beräkna Värmeindex i Celsius (isFahreheit = false) flyta hic = dht.computeHeatIndex (t, h, false);
Serial.Print ("luftfuktighet:"); Serial.Print(h); Serial.Print ("% \t"); Serial.Print ("temperatur:"); Serial.Print(t); Serial.Print ("* C"); Serial.Print(f); Serial.Print ("* F\t"); Serial.Print ("Värmeindex:"); Serial.Print(HIC); Serial.Print ("* C"); Serial.Print(HIF); Serial.println ("* F"); }