Tempertuur & vochtigheid sensor

Met deze module kun je de temperatuur en luchtvochtigheid meten. De sensor is door de fabrikant al behoorlijk geijkt, eventuele correcties kunnen softwarematig gedaan worden.

Specificaties DHT11
– Voeding: 3.5 – 5,5V.
– Temperatuur bereik: 0 tot +50 ºC.
– Temperatuur nauwkeurigheid: ±2,0 ºC.
– Vochtigheid bereik: 20 – 95% RH.
– Vochtigheid nauwkeurigheid: ±5,0% RH.
– Response tijd: < 5 sec.

Zowel de DHT11 als de DHT22 kan in dit project gebruikt worden. Het verschil tussen de DHT11 en de DHT22 is dat de DHT22 wat nauwkeuriger is en ook metingen kan doen onder het vriespunt (-40 gr.) De DHT22 is wel iets duurder.

Aansluitingen DHT11 en DHT22

LET OP: Er blijken ook andere versies in omloop te zijn. Controleer altijd de pinout!

Verbinden met de Raspberry Pi
Sluit de DHT sensor aan zoals hieronder aangegeven. De weerstand (4.7 kOhm) tussen de voeding en GPIO4 (pin 7) wordt gebruikt voor de pull-up.

Pin 3 van de sensor wordt niet aangesloten.

Verbindingstabel

Python
Onderstaand script leest eenvoudig een DHT11-sensor uit op GPIO 4, en geeft de waarden weer via de console.

Maak met nano een python-bestand aan, bijvoorbeeld dht.py (evt. onder root, en vergeet dan niet chmod 0750 dht.py te gebruiken om het bestand onder root uit te kunnen voeren).

Het bestand is van AdaFruit. Om Adafruit_DHT te kunnen importeren zal eerst de library geladen moeten worden. Kijk hier hoe dat moet.

Commandolijn parameters
Wil je in de commandolijn parameters gebruiken, bijvoorbeeld als je meerdere DHT sensors hebt aangesloten op verschillende GPIO pinnen, gebruik onderstaande voorbeeldcode.

Start het script met commandolijn: sudo python dht.py 11 of 22 of 2302 [GPIO-poortnr.]
Het commando sudo python dht.py 11 4 leest bijvoorbeeld een DHT11-sensor uit die aangesloten is op GPIO 4 (Broadcom SOC).

Nog even de verschillen

Let op: de DHT11 geeft geen decimalen weer, de DHT22 wel!

Gegevens wegschrijven naar CSV bestand
Je kunt de gegevens ook opslaan in een .CSV bestand, onderstaand script maakt ook gebruik van de commandolijn parameters en slaat (per maand) gegevens op in een bestand. Sla de code op als dht_csv.py.
Naam csv-bestand wordt: DHT_DATA_[YYYYMM].csv
Start de code met: sudo python dht_csv.py 11 4

De inhoud van het CSV bestand ziet er zo uit:

Let op:
Soms krijg je geen uitslag/resultaat van de scripts, dat komt omdat Linux de (precieze) timing van de aanroepen niet kan garanderen!

Geef als eerste een reactie

Laat een reactie achter

Het e-mailadres wordt niet gepubliceerd.


*