Altijd al een temperatuurmeter in je Domotica systeem willen opnemen? Dat kan nu heel gemakkelijk met een ESP8266 WiFi chip en een DHT11/22 temperatuur en humidity sensor!

Keuze module, shield of losse sensor?

Advertenties

De DHT temperatuursensoren zijn verkrijgbaar in vele vormen. Je hebt de DHT11 (blauw) en de DHT22 (wit). De DHT11 is minder nauwkeurig, ongeveer op 2 graden celsius en de DHT22 is op 0,5 graden celcius precies. De sensor is als module, shield of als losse sensor te koop, de keuze is of je een beetje kunt/wilt solderen of niet.

Bij de losse sensor zul je zelf aan de slag moeten met weerstandjes en headers om deze aan de sensor de solderen. Hierdoor heb je wel de keuze waar je ze plaatst. De losse sensor kun je op deze manier wat makkelijker wegwerken mocht dat nodig zijn.

Let op bij onderstaande aanbiedingen hoeveel stuks er geleverd worden!

DHT11 module

DHT22 module

Losse DHT11 sensor

Losse DHT22 sensor

DHT11 Shield voor Wemos D1 mini

DHT22 shield voor Wemos D1 mini

Wat je misschien opvalt is dat de losse sensoren 4 pinnen hebben en de modules 3. Dat komt omdat de 4e pin niet nodig is voor gebruik met Arduino of ESP8266.

Hoe sluit ik de temperatuursensor aan?

Je hebt de keuze uit een Arduino of een ESP8266 bordje. Omdat we de sensor in ons domotica systeem willen opnemen is de keuze voor een ESP8266 logisch omdat die WiFi functionaliteit aan boord heeft en zo verbinding kan leggen met het systeem. Gelukkig zijn de bordjes erg eenvoudig in gebruik en ook nog eens spotgoedkoop!

Advertenties

Wemos D1 mini. Arduino met WiFi en Micro USB

Heb je een Wemos of NodeMCU gekocht en wil je eerst wat oefenen? Lees mijn blogpost over de eerste stappen met een ESP8266 of het flashen van ESPeasy op de Wemos D1 mini.

Het aansluiten van de DHT sensor op een ESP8266 is erg eenvoudig. Je hebt nodig:

  • Wemos D1 mini,
  • 10KΩ weerstand
  • DHT sensor
  • Breadboard en draad

Maak de onderstaande schakeling:

DHT22 aansluiten op een Wemos D1 mini
DHT22 aansluiten op een Wemos D1 mini

Klaar!

De sensor werkt op 5V, wat je op de eerste twee pinnen zet. Op pin2 van de DHT sensor sluit je ook een draad aan naar een GPIO poort. Ik heb gekozen voor D4. Dit is in de Arduino software pin 2. Als je de sensor met een andere pin wilt gebruiken kijk dan hieronder welk pinnummer dat is in de software. De laatste pin van de DHT, de GND, sluit je aan op de GND van de Wemos.

Wemos D1 mini pinout
Wemos D1 mini pinout

Temperaturen uitlezen met Arduino

Sluit de Wemos aan op je PC met een micro USB kabel op een USB poort. We gaan testen of de sensor werkt. Installeer alle benodigde drivers en software zoals je kunt lezen in de startgids ESP8266 in hoofdstukken “Aansluiten en Installeren” en “Arduino IDE”.

Heb je dit gedaan, voeg dan de DHT library toe aan je sketch door Schets -> Bibliotheek gebruiken -> Bibliotheken beheren te kiezen. Zoek op DHT.

DHT library toevoegen
DHT library toevoegen

Installeer de DHT sensor library van Adafruit.

Kies vervolgens uit de voorbeelden “DHT tester”

DHTtester
DHTtester

Pas de volgende waarden aan op jouw situatie:

#define DHTPIN 2 // what digital pin we're connected to

// Uncomment whatever type you're using!
//#define DHTTYPE DHT11 // DHT 11
#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321
//#define DHTTYPE DHT21 // DHT 21 (AM2301)

Geef achter DHTPIN het GPIO poortnummer op. Als je D4 hebt gekozen op een Wemos D1 mini zoals in mijn voorbeeld, kun je dit 2 laten. Heb je een andere pin gekozen, wijzig het dan in het juiste nummer volgens de pinout hierboven.

Als alles juist is aangesloten zul je steeds per regel de temperatuur en luchtvochtigheid zien binnenkomen. Om dit te integreren in Domoticz lees je verder in WiFi Thermometer toevoegen aan Domoticz

 

Advertenties

Doe mee met de conversatie

8 reacties

  1. In het aansluitschema gebruik je D4 in het programma schrijf je pin 2. Hoe zit dat nu ?

    1. Beste Wim,

      In de toelichting onder het schema en boven de pinout staat dit toegelicht:

      Op pin2 van de DHT sensor sluit je ook een draad aan naar een GPIO poort. Ik heb gekozen voor D4. Dit is in de Arduino software pin 2. Als je de sensor met een andere pin wilt gebruiken kijk dan hieronder welk pinnummer dat is in de software.

      De pinnen hebben een ander nummer in de software dan op de pcb gedrukt staan. Beetje verwarrend maar met de pinout erbij kom je er wel uit!

      Groet Wouter

  2. Bedankt, dit werkt bij mijn Wemos D1 mini pro v2.0.0 met DHT22 module (, pinout is nuttig!

    N.B. Bij mij duurde het ±40 seconden voordat de DHT22 module data terug gaf, daarvoor kreeg ik “Failed to read from DHT sensor!” Mochten anderen dit hebben: even geduld 🙂

  3. beste wouter wat gaat er mis

    Arduino:1.8.9 (Windows 10), Board:”WeMos D1 R1, 80 MHz, Flash, Disabled, All SSL ciphers (most compatible), 4M (no SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 921600″

    In file included from C:\Users\Arie Megens\Documents\Arduino\libraries\DHT_sensor_library\DHT_U.cpp:15:0:

    C:\Users\Arie Megens\Documents\Arduino\libraries\DHT_sensor_library\DHT_U.h:36:29: fatal error: Adafruit_Sensor.h: No such file or directory

    #include

    ^

    compilation terminated.

    exit status 1
    Fout bij het compileren voor board WeMos D1 R1

    Dit rapport zou meer informatie bevatten met
    “Uitgebreide uitvoer weergeven tijden compilatie”
    optie aan in Bestand -> Voorkeuren.

    met die blink test gaat alles goed

    1. Dag arie,

      Heb je de library goed geïnstalleerd? Of te wel staat dht_u. cpp op de juiste locatie?

      Voeg de DHT library toe aan je sketch door Schets -> Bibliotheek gebruiken -> Bibliotheken beheren te kiezen. Zoek op DHT.

      Wouter

  4. beste wouter
    heb dht tester sketch er op gezet en de andere aanwijzingen het zelfde gedaan
    maar krijg elke keer het zelfde probleem. weet niet waar ik dht_u. cpp kan vinden.
    B,v.d
    Arie

    1. Hoi Arie,

      Wanneer je de library hebt geïnstalleerd zou die in ‘mijn documenten / arduino / library’ moeten staan. Zie melding vorige post. Staat ie daar niet check dan even waar de ide library’s dan neer zet.

      Wouter

  5. Arduino:1.8.10 (Windows 10), Board:”WeMos D1 R1, 80 MHz, Flash, Disabled, All SSL ciphers (most compatible), 4M (no SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 921600″

    Meerdere bibliotheken gevonden voor “DHT.h”
    Gebruikt: C:\Users\Arie
    In file included from C:\Users\Arie Megens\Documents\Arduino\libraries\DHT_sensor_library\DHT_U.cpp:15:0:

    C:\Users\Arie Megens\Documents\Arduino\libraries\DHT_sensor_library\DHT_U.h:36:29: fatal error: Adafruit_Sensor.h: No such file or directory

    #include

    ^

    compilation terminated.

    exit status 1
    Fout bij het compileren voor board WeMos D1 R1

    Dit rapport zou meer informatie bevatten met
    “Uitgebreide uitvoer weergeven tijden compilatie”
    optie aan in Bestand -> Voorkeuren.
    dit doet ie bij elk bord

Laat een reactie achter

Laat weten wat je van dit artikel vindt!

Deze website gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.

%d bloggers liken dit: