ESP8266 WiFi Project – Temperatuur- en luchtvochtigheidssensor

ESP8266 chip icon

Project door:
Hannes Beem


ESP-01 - Temperatuur- en luchtvochtigheidssensor schema

FTDI Programmer
De FTDI Programmer gebruiken we om het programma op de ESP-01 te flashen.
Om de FTDI Programmer te kunnen gebruiken met de Arduino IDE is een driver nodig.
Klik hier voor de driver download pagina.

DHT22 (mag ook de DHT11 zijn)
De DHT22 is het grote broertje van de DHT11. De DHT22 heeft een groter bereik in temperatuur en luchtvochtigheid in vergelijking met de DHT11.
Klik hier voor de specificaties. Download hier de library.

ESP-01
De ESP-01 is een draadloze module gebaseerd op de ESP8266.
Denk eraan dat je nooit 5v op de ESP-01 zet! De ESP-01 raakt dan defect.

WiFi module ESP8266 (ESP-01) pinout

Condensatoren
De 470uF Condensator wordt gebruikt om de spanning te stabiliseren en kan foutmeldingen voorkomen. De 100 nF condensator moet zo kort mogelijk bij de ESP-01 zijn voor stabilisatie.

Voedingsspanning
Zelf gebruik ik een universele adapter die 1 ampere kan leveren bij 3 volt.
De ESP verbruikt continu 300mA, maar kan uitschieters hebben naar 500mA. Zorg ervoor dat je voeding altijd voldoende stroom kan leveren.

Knoppen
Drukknop 1 reset de ESP-01. Om de ESP-01 te kunnen flashen moet de GPIO0 Pin aan de min gekoppeld worden. Door drukknop 2 vast te blijven houden blijft de ESP in Flash modus.

Stabiliteit
De afbeelding voor het aansluiten geeft een breadboard weer, maar het is beter voor de stabiliteit dat de esp op een (experimenteer)printje gesoldeerd wordt. Op een breadboard kan het zo zijn dat de connecties niet altijd goed contact maken en de ESP-01 is gevoelig voor storingen door onderbrekingen in spanning.

ESP-01 - Temperatuur- en luchtvochtigheidssensor praktijk

Arduino IDE
Voor het flashen gebruik ik de Arduino IDE versie 1.6.5.
De ESP-01 moet nog wel geïnstalleerd worden als je de ESP8266 afgeleide boards nog niet kunt kiezen.

Webpagina Sketch

Nu kunnen we een webpagina genereren die de temperatuur en de luchtvochtigheid weergeeft.
De ESP-01 zal nadat de sketch ge-upload (knop 2 vasthouden) is en je de ESP-01 ge-herstart hebt (Knop 1) contact met je router maken en om een IP-adres vragen.
De DHCP server van je router zal de ESP-01 een IP-adres toekennen.
Dit IP-adres is te zien in de Seriële monitor van de Arduino IDE.
Dit IP-adres typ je in een browser zoals je zou doen wanneer je een webpagina zou bezoeken. Het poortnummer moet er in de volgende vorm -> :8888 achter komen te staan.

Voorbeeld: http://192.168.1.2:8888

Kopieer en plak de sketch in de Arduino IDE voor de ESP-01:

Koppel de FTDI programmer via USB en stel onder Tools de Port in.
Druk op de Upload knop en houdt knop 2 vast (druk voor de zekerheid ook een keer kort op knop 1 voor een reset) totdat de Arduino IDE “Done saving” aangeeft.

Open de Seriële monitor en bekijk het IP-adres. Vul deze in je webbrowser in met :8888 erachter.

Blynk

Blynk is een app die je kunt downloaden voor je Android of iOS apparaat.

Met de Blynk app kan je de temperatuur en luchtvochtigheid ook live monitoren.

Om toegang te krijgen tot je Blynk project heb een Authentication Token nodig die de Blynk app voor je aanmaakt wanneer je een nieuw project genereert in de app of wanneer je op de Refresh knop drukt in de app.

Deze code moet terug te vinden zijn op de juiste plaats in de sketch anders zal de app niet samen kunnen werken met je ESP-01.

ESP-01 - Temperatuur- en luchtvochtigheidssensor blynk screen 01

Kopieer en plak de sketch in de Arduino IDE:

Koppel de FTDI programmer via USB en stel onder Tools de Port in.

Druk op de Upload knop  en houdt knop 2 vast (druk voor de zekerheid ook een keer kort op knop 1 voor een reset) totdat de Arduino IDE “Done saving” aangeeft.
Open de Seriële monitor en kijk of de ESP-01 contact maakt met de server van Blynk.

De waarden van de temperatuur en luchtvochtigheid zijn in de Blynk app weer te geven op een van de Widgets. Zoals bijvoorbeeld de “Value Display”, de “Gauge”, of de “LCD Display”.
Een overzicht is te verkrijgen met de Widget “Graph” of de Widget “History Graph”.

Deze Widgets stel je in met de Virtuele pins, in dit geval Virtuele pin 1 voor de temperatuur en Virtuele pin 2 voor de luchtvochtigheid.
In de app kan je het bereik ook instellen onder INPUT, waar je ook de Virtuele pin kiest.

ESP-01 - Temperatuur- en luchtvochtigheidssensor blynk screen 02