Inhoudsopgave:

Propagator-thermostaat met ESP8266/NodeMCU en Blynk - Ajarnpa
Propagator-thermostaat met ESP8266/NodeMCU en Blynk - Ajarnpa

Video: Propagator-thermostaat met ESP8266/NodeMCU en Blynk - Ajarnpa

Video: Propagator-thermostaat met ESP8266/NodeMCU en Blynk - Ajarnpa
Video: Smart Home Devices: Why They Don’t Always Work Correctly | 2021 Faculty Lecture Series 2024, Juli-
Anonim
Propagator-thermostaat met ESP8266 / NodeMCU en Blynk
Propagator-thermostaat met ESP8266 / NodeMCU en Blynk
Propagator-thermostaat met ESP8266 / NodeMCU en Blynk
Propagator-thermostaat met ESP8266 / NodeMCU en Blynk
Propagatorthermostaat met ESP8266/NodeMCU en Blynk
Propagatorthermostaat met ESP8266/NodeMCU en Blynk

Ik heb onlangs een verwarmde kweekbak gekocht, die zou moeten helpen om mijn bloem- en groentezaden eerder in het seizoen te laten ontkiemen. Hij kwam zonder thermostaat. En omdat thermostaten vrij duur zijn, besloot ik er zelf een te maken. Omdat ik van deze gelegenheid gebruik wilde maken om wat met Blynk te spelen, heb ik mijn thermostaat gebaseerd op een ESP8266/NodeMCU-ontwikkelbord dat ik had liggen.

Voor eerdere projecten heb ik sites zoals instructables.com veel gebruikt voor inspiratie en hulp wanneer ik vast kwam te zitten. Niet meer dan eerlijk om zelf een kleine bijdrage te leveren, dus hier is mijn eerste instructable ooit!

Disclaimer: dit project werkt op AC 230V, wat behoorlijk gevaarlijk is en alles wat verkeerd is, kan je doden. Ik kan niet verantwoordelijk worden gehouden voor enige schade, verwondingen of verlies van mensenlevens. Doe dit op eigen risico

Stap 1: Lijst met dingen die ik heb gebruikt

Lijst met dingen die ik heb gebruikt
Lijst met dingen die ik heb gebruikt
Lijst met dingen die ik heb gebruikt
Lijst met dingen die ik heb gebruikt
Lijst met dingen die ik heb gebruikt
Lijst met dingen die ik heb gebruikt

1 NodeMCU V3.0

2 DS18B20 1-draads temperatuursensor

1 relaismodule

1 LCD1602 I2C-display

3 gekleurde drukknoppen

1 158x90x60 koffer met doorzichtig deksel

1 5V USB-telefoonoplader

1 korte USB 2.0 A Male naar B Male Micro 5-pins datakabel

1 4.7kΩ Weerstand

1 waterdicht blok multiplex, ca. 10x5x2cm

1 stuk witte plastic buis, diameter 12 mm, lengte 16 cm

1 230V stroomkabel met stekker

1 230V vrouwelijk stopcontact (2 pinnen)

1 230V vrouwelijk stopcontact (3 pinnen)

1 6 positie 2 rij klemmenblok

1 stereo audiokabel met 3,5 mm stereo jackplug aan het ene uiteinde

1 3,5 mm stereo-aansluiting vrouwelijk

2 M16 kabelwartels

1 stuk wit perspex ongeveer 160x90

En enkele aansluitdraden, krimpkous, lijm, dubbelzijdig plakband, zwarte spuitverf, afstandhouders voor printplaten, M3-bouten en boor van 1,5 mm/6,5 mm/12 mm/16 mm

Stap 2: De thermostaat ontwerpen

De thermostaat ontwerpen
De thermostaat ontwerpen

Zoals gezegd is de thermostaat opgebouwd rond een ESP8266/NodeMCU ontwikkelbord.

De werkelijke temperatuur van zowel de bodem als de lucht in de kweekbak wordt gemeten door 2 temperatuursensoren. Deze sensoren hebben een zogenaamde 1-Wire interface, wat betekent dat ze parallel op één ingangspoort kunnen worden aangesloten. Zoals vermeld in deze uitstekende datasheet vereist de 1-Wire bus een externe pullup-weerstand van ongeveer 5kΩ. Ik gebruik een weerstand van 4,7 kΩ tussen de signaallijn van de sensoren en de 3,3 V van de NodeMCU.

Om de gewenste bodemtemperatuur te kunnen verhogen of verlagen, zijn 2 drukknoppen toegevoegd, evenals een 16x2 karakters LCD-scherm om wat feedback te geven over de huidige en doeltemperaturen. Dit LCD-scherm heeft een ingebouwde achtergrondverlichting. Om te voorkomen dat de achtergrondverlichting de hele tijd aan is, heb ik besloten om wat code toe te voegen om het scherm na verloop van tijd te dimmen. Om de achtergrondverlichting weer te kunnen activeren heb ik nog een drukknop toegevoegd. Tot slot is er een relaismodule toegevoegd om de stroom naar de warmtekabel in de kweekbak aan en uit te schakelen.

De afbeelding hierboven laat zien hoe deze componenten zijn aangesloten op de hoofdeenheid.

Stap 3: De thermostaat 'Blynk' maken

De thermostaat 'Blynk' maken
De thermostaat 'Blynk' maken
De thermostaat 'Blynk' maken
De thermostaat 'Blynk' maken
De thermostaat 'Blynk' maken
De thermostaat 'Blynk' maken

Omdat we later wat gegevens van de Blynk-app in onze code nodig hebben, laten we eerst de Blynk-business regelen.

Volg de eerste 3 stappen van de Blynk-instructies om aan de slag te gaan.

Maak nu een nieuw project in de Blynk-app. Als projectnaam heb ik gekozen voor 'Propagator'. Selecteer in de apparatenlijst 'NodeMCU', het verbindingstype is 'WiFi'. Ik hou van het donkere thema, dus koos ik voor 'Dark'. Nadat u op OK heeft gedrukt, wordt een pop-up weergegeven waarin staat dat er een authenticatietoken naar uw e-mailadres is verzonden. Controleer je mail en noteer deze token, we hebben deze later in de NodeMCU-code nodig.

Tik op het lege scherm dat nu wordt weergegeven en voeg toe:

  • 2 meters (elk 300 energie, dus 600 in totaal)
  • 1 SuperChart (900 energie)
  • 1 waardeweergave (200 energie)
  • 1 schuifregelaar (200 energie)
  • 1 LED (100 energie)

Dit verbruikt precies je gratis 2000 energiebalans;-)

De afbeeldingen hierboven laten zien hoe u het scherm met deze elementen kunt indelen. Door op elk element te tikken, kunnen de gedetailleerde instellingen worden aangepast (ook weergegeven in de afbeeldingen hierboven).

Als u klaar bent, activeert u uw project door op de 'play'-knop te klikken. De app kan (uiteraard) geen verbinding maken, omdat er nog niets is om verbinding mee te maken. Dus laten we doorgaan naar de volgende stap.

Stap 4: De code die ervoor zorgt dat het allemaal werkt

Nu is het tijd om onze ESP8266/NodeMCU te programmeren. Ik gebruik hiervoor de Arduino IDE applicatie, die hier te downloaden is. Om het in te stellen voor de ESP8266/NodeMCU, bekijk deze geweldige instructable van Magesh Jayakumar.

De code die ik heb gemaakt voor mijn Propagator Thermostat vind je in het Thermostat.ino bestand hieronder.

Als je deze code opnieuw wilt gebruiken, zorg er dan voor dat je je WiFi SSID, wachtwoord en je Blynk Authorization token in de code bijwerkt.

Stap 5: De temperatuursensormodule construeren

De temperatuursensormodule bouwen
De temperatuursensormodule bouwen
De temperatuursensormodule bouwen
De temperatuursensormodule bouwen
De temperatuursensormodule bouwen
De temperatuursensormodule bouwen

De bodem van de kweekbak wordt gevuld met een laag scherp zand of zeer fijne grit van ongeveer 2 cm dik. Hierdoor wordt de onderwarmte gelijkmatiger verdeeld. Om de 'bodem' temperatuur goed te kunnen meten, heb ik gekozen voor de waterdichte DS18B20 temperatuursensor. Hoewel mijn propagator werd geleverd met een analoge thermometer aan boord om de temperatuur van de lucht binnenin te meten, besloot ik een andere temperatuursensor toe te voegen om de luchttemperatuur ook elektronisch te meten.

Om beide sensoren mooi op hun plaats te houden, heb ik een eenvoudige houten structuur gemaakt. Ik nam een stuk waterdicht multiplex en boorde een gat van 6,5 mm van links naar rechts om de bodemtemperatuursensor vast te houden, en leidde de sensordraad door het blok. Daarnaast heb ik een gat van 12 mm geboord in het midden van het triplex blok, tot ongeveer 3/4 van de totale hoogte, en een gat van 6.5 mm vanaf de zijkant, halverwege het blok, eindigend in het gat van 12 mm. Dit gat bevat de luchttemperatuursensor.

De luchttemperatuursensor is bedekt met een plastic witte buis die in het gat van 12 mm past. De lengte van de buis is ongeveer 16 cm. De buis heeft verschillende gaten van 1,5 mm in de onderste helft (waar de sensor zit), de bovenste helft is zwart geverfd. Het idee is dat de lucht in het zwarte deel van de buis een beetje opwarmt, naar boven stijgt en ontsnapt, waardoor er een luchtstroom rond de sensor ontstaat. Hopelijk leidt dit tot een betere aflezing van de luchttemperatuur. Om het binnendringen van zand of gruis te voorkomen, worden de gaten voor de sensorkabels tot slot opgevuld met lijm.

Om de sensoren aan te sluiten, heb ik een oude stereo-audiokabel gebruikt met aan het ene uiteinde een stereo 3,5 mm-jackplug. Ik heb de connectoren aan de andere kant afgeknipt en de 3 draden gesoldeerd (mijn audiokabel heeft een koperen massa, rode en witte draad):

- beide zwarte draden van de sensoren (massa) gaan naar de aardedraad van de audiokabel

- beide rode draden (+) gaan naar de rode draad

- beide gele draden (signaal) gaan naar de witte draad

Ik heb de gesoldeerde delen afzonderlijk geïsoleerd met wat krimpkous. Heb ook wat krimpkous gebruikt om de 2 sensordraden bij elkaar te houden.

De voltooide temperatuursensormodule wordt getoond in de 4e afbeelding hierboven.

Na voltooiing van de temperatuursensormodule wordt deze met dubbelzijdig plakband in het midden van de verwarmde kweekbak geïnstalleerd. De draad wordt door de bestaande opening (die ik een beetje moest vergroten om de draad te laten passen) in de kweekbak geleid.

Stap 6: De thermostaatmodule bouwen

De thermostaatmodule bouwen
De thermostaatmodule bouwen
De thermostaatmodule bouwen
De thermostaatmodule bouwen
De thermostaatmodule bouwen
De thermostaatmodule bouwen
De thermostaatmodule bouwen
De thermostaatmodule bouwen

De ESP8266/NodeMCU, het display, het relais en de 5V voeding passen netjes in de 158x90x60 mm kast met transparant deksel.

Ik had een grondplaat nodig om de NodeMCU, het LCD-scherm en het relais in de behuizing te monteren. Ik dacht erover om een 3D-geprinte grondplaat te bestellen, dus maakte ik een.stl-bestand in SketchUp. Ik ben van gedachten veranderd en heb het gewoon zelf gemaakt van een stuk 4 mm wit perspex. Met SketchUp heb ik een sjabloon gemaakt om de exacte plaats te markeren waar de gaten van 3 mm moeten worden geboord. Zie het.skp-bestand voor een voorbeeld. De componenten worden op de grondplaat gemonteerd met behulp van afstandhouders van de juiste lengte.

Ik boorde de gaten voor de knoppen en connectoren in de zijkanten van de behuizing, installeerde de knoppen en connectoren en bekabelde ze met verschillende gekleurde draden om verkeerde verbindingen te voorkomen. De 230V AC onderdelen heb ik zorgvuldig aangesloten. Nogmaals: 230V AC kan gevaarlijk zijn, zorg ervoor dat je weet wat je doet bij het voorbereiden van dit deel van het project!

De 5V-voeding en het aansluitblok worden aan de onderkant van de behuizing op hun plaats gehouden met wat dubbelzijdig plakband.

Na het aansluiten van de draden op de NodeMCU was het even wat gepruts om de grondplaat met wat m3 bouten vast te zetten in de behuizing.

Laatste actie: het transparante deksel erop en klaar!

Stap 7: Conclusie

Het was heel leuk om deze thermostaat voor mijn propagator te bouwen en om mijn voortgang bij te houden met het bouwen ervan en het schrijven van dit instructable.

De thermostaat werkt als een zonnetje en het bedienen en monitoren met de Blynk-app werkt ook prima.

Maar er is altijd ruimte voor verbetering. Ik denk erover om de temperatuurbeheersing te verbeteren door te veel 'overshooting the target' te vermijden. Waarschijnlijk ga ik eens kijken in de zogenaamde PID-bibliotheek.

Nog een idee: ik zou een 'Over The Air' OTA-optie kunnen toevoegen om de NodeMCU-software bij te werken zonder de behuizing telkens te hoeven openen.

Aanbevolen: