Innholdsfortegnelse:

Propagatortermostat som bruker ESP8266/NodeMCU og Blynk: 7 trinn (med bilder)
Propagatortermostat som bruker ESP8266/NodeMCU og Blynk: 7 trinn (med bilder)

Video: Propagatortermostat som bruker ESP8266/NodeMCU og Blynk: 7 trinn (med bilder)

Video: Propagatortermostat som bruker ESP8266/NodeMCU og Blynk: 7 trinn (med bilder)
Video: ОБОГРЕВАТЕЛЬ БОЛЬШЕ НЕ НУЖЕН! Адский экокамин! 2024, Juli
Anonim
Propagatortermostat ved bruk av ESP8266/NodeMCU og Blynk
Propagatortermostat ved bruk av ESP8266/NodeMCU og Blynk
Propagatortermostat ved bruk av ESP8266/NodeMCU og Blynk
Propagatortermostat ved bruk av ESP8266/NodeMCU og Blynk
Propagatortermostat ved bruk av ESP8266/NodeMCU og Blynk
Propagatortermostat ved bruk av ESP8266/NodeMCU og Blynk

Jeg har nylig kjøpt en oppvarmet forplantningsanordning, som skal hjelpe til med å spire blomstene mine og grønnsakene tidligere på sesongen. Den kom uten termostat. Og fordi termostater er ganske dyre, bestemte jeg meg for å lage min egen. Siden jeg ønsket å bruke denne muligheten til å leke litt med Blynk, baserte jeg termostaten min på et ESP8266/NodeMCU utviklingsbord som jeg hadde liggende.

For tidligere prosjekter brukte jeg nettsteder som instructables.com mye for inspirasjon og hjelp når jeg ble sittende fast. Ikke mer enn rimelig å gjøre et lite bidrag selv, så her er min første instruerbare noensinne!

Ansvarsfraskrivelse: Dette prosjektet fungerer på AC 230V, noe som er ganske farlig og noe galt kan drepe deg. Jeg kan ikke holdes ansvarlig for skader, skader eller tap av liv. Gjør dette på egen risiko

Trinn 1: Liste over ting jeg brukte

Liste over ting jeg brukte
Liste over ting jeg brukte
Liste over ting jeg brukte
Liste over ting jeg brukte
Liste over ting jeg brukte
Liste over ting jeg brukte

1 NodeMCU V3.0

2 DS18B20 1-leder temperatursensor

1 Relémodul

1 LCD1602 I2C -skjerm

3 fargede trykknapper

1 158x90x60 etui med klart deksel

1 5V USB -telefonlader

1 kort USB 2.0 A hann til B hann mikro 5 -pinners datakabel

1 4,7 kΩ motstand

1 vanntett kryssfinerblokk, ca 10x5x2cm

1 stykke hvitt plastrør, diameter 12 mm, lengde 16 cm

1 230V strømkabel med støpsel

1 230V hunkontakt (2 pinner)

1 230V hunkontakt (3 pinner)

1 6 posisjon 2 rad rekkeklemme

1 stereolydkabel med 3,5 mm stereokontakt i den ene enden

1 3,5 mm stereokontakt hunn

2 M16 kabelgjennomføringer

1 stykke hvit perspex ca 160x90

Og noen tilkoblingskabler, varmekrympeslanger, lim, dobbeltsidig tape, svart spraymaling, avstandsstykker av kretskort, M3 -bolter og 1,5 mm/6,5 mm/12 mm/16 mm bor

Trinn 2: Design av termostaten

Design av termostaten
Design av termostaten

Som sagt er termostaten bygget opp rundt et ESP8266/NodeMCU utviklingsbord.

Den faktiske temperaturen på både jord og luft i forplantningsanlegget måles med 2 temperatursensorer. Disse sensorene har et såkalt 1-Wire-grensesnitt, noe som betyr at de kan kobles parallelt til en inngangsport. Som nevnt i dette utmerkede databladet krever 1-wire bussen en ekstern pullup motstand på omtrent 5kΩ. Jeg bruker en 4,7kΩ motstand mellom sensorenes signallinje og 3,3V på NodeMCU.

For å kunne øke eller redusere ønsket målt jordtemperatur, blir det lagt til 2 trykknapper, samt en 16x2 tegn LCD -skjerm for å gi noen tilbakemeldinger om gjeldende og måltemperaturer. Denne LCD-skjermen har innebygd bakgrunnsbelysning. For å forhindre at bakgrunnslyset var på hele tiden, bestemte jeg meg for å legge til litt kode for å dempe skjermen etter en stund. For å kunne aktivere bakgrunnslyset igjen, la jeg til en annen trykknapp. Til slutt blir det lagt til en relemodul for å slå strømmen til varmekabelen i propagatoren av og på.

Bildet ovenfor viser hvordan disse komponentene er koblet til hovedenheten.

Trinn 3: Gjør termostaten 'Blynk'

Gjør termostaten 'Blynk'
Gjør termostaten 'Blynk'
Gjør termostaten 'Blynk'
Gjør termostaten 'Blynk'
Gjør termostaten 'Blynk'
Gjør termostaten 'Blynk'

Fordi vi trenger noen data fra Blynk -appen i koden vår senere, la oss først ta vare på Blynk -virksomheten.

Følg det første tre trinnet i Blynk -instruksjonene for å komme i gang.

Lag nå et nytt prosjekt i Blynk -appen. Som prosjektnavn valgte jeg 'Propagator'. Velg 'NodeMCU' fra enhetslisten, tilkoblingstypen er 'WiFi'. Jeg liker det mørke temaet, så jeg valgte 'Dark'. Etter at du har trykket på OK, vil en popup vises som sier at et Auth Token ble sendt til e -postadressen din. Sjekk e -posten din og skriv ned dette tokenet, vi trenger det i NodeMCU -koden senere.

Trykk på den tomme skjermen som nå vises, og legg til:

  • 2 målere (300 energi hver, så 600 totalt)
  • 1 SuperChart (900 energi)
  • 1 Verdivisning (200 energi)
  • 1 glidebryter (200 energi)
  • 1 LED (100 energi)

Dette bruker nøyaktig din gratis 2000 energibalanse;-)

Bildene ovenfor viser hvordan du utformer skjermen med disse elementene. Ved å trykke på hvert element kan de detaljerte innstillingene justeres (også vist på bildene ovenfor).

Når du er ferdig, aktiverer du prosjektet ditt ved å velge "spill" -knappen. Appen vil (selvfølgelig) mislykkes i å koble til, fordi det ikke er noe å koble til ennå. Så la oss gå videre til neste trinn.

Trinn 4: Koden som får det til å fungere

Nå er det på tide å programmere ESP8266/NodeMCU. Jeg bruker Arduino IDE -applikasjonen til dette, som kan lastes ned her. For å sette det opp for ESP8266/NodeMCU, ta en titt på denne flotte instruerbare av Magesh Jayakumar.

Koden jeg opprettet for min Propagator -termostat finner du i Thermostat.ino -filen nedenfor.

Hvis du vil bruke denne koden på nytt, må du oppdatere WiFi SSID, passord og Blynk-autorisasjonstoken i koden.

Trinn 5: Konstruere temperatursensormodulen

Konstruksjon av temperatursensormodulen
Konstruksjon av temperatursensormodulen
Konstruere temperatursensormodulen
Konstruere temperatursensormodulen
Konstruksjon av temperatursensormodulen
Konstruksjon av temperatursensormodulen

Basen på utbrederen vil bli fylt med et lag med skarp sand eller veldig fint korn på omtrent 2 cm tykt. Dette vil spre bunnvarmen jevnere. For å måle jordtemperaturen riktig bestemte jeg meg for å gå for den vanntette DS18B20 temperatursensoren. Selv om min propagator kom med et innebygd analogt termometer for å måle temperaturen på luften inne, bestemte jeg meg for å legge til en annen temperatursensor for å måle lufttemperaturen også elektronisk.

For å holde begge sensorene pent på plass, laget jeg en enkel trekonstruksjon. Jeg tok et stykke vanntett kryssfiner og boret et 6,5 mm hull fra side til side for å holde jordtemperaturføleren, og førte sensortråden gjennom blokken. Ved siden av det boret jeg et 12 mm hull i midten av kryssfinerblokken, til omtrent 3/4 av den totale høyden, og et 6,5 mm hull fra siden, halvveis gjennom blokken, og endte i det 12 mm hullet. Dette hullet holder lufttemperaturføleren.

Lufttemperaturføleren er dekket av et hvitt plastrør som passer inne i hullet på 12 mm. Lengden på røret er ca 16 cm. Røret har flere 1,5 mm hull boret i den nedre halvdelen (der sensoren er), den øvre halvdelen er malt svart. Tanken er at luften i den svarte delen av røret varmes opp litt, stiger til toppen og slipper ut, og skaper dermed en luftstrøm rundt sensoren. Forhåpentligvis fører dette til en bedre avlesning av lufttemperaturen. Til slutt, for å unngå at sanden eller gruset kommer inn, er hullene til sensorkablene fylt med lim.

For å koble sensorene brukte jeg en gammel stereolydkabel som har en 3,5 mm stereo plugg i den ene enden. Jeg kuttet av kontaktene på den andre siden og loddet de tre ledningene (lydkabelen min har en kobberjord, rød og hvit ledning):

- begge svarte ledninger fra sensorene (jord) går til jordledningen til lydkabelen

- begge røde ledninger (+) går til den røde ledningen

- begge gule ledninger (signal) går til den hvite ledningen

Jeg isolerte de loddede delene individuelt med litt varmekrympeslange. Brukte også noe varmekrympeslange for å holde de to sensortrådene sammen.

Den ferdige temperatursensormodulen er vist på det fjerde bildet ovenfor.

Etter at temperatursensormodulen er fullført, installeres den i midten av den oppvarmede utbrederen ved hjelp av litt dobbeltsidig tape. Tråden føres gjennom den eksisterende åpningen (som jeg måtte forstørre litt for å få ledningen til å passe) i forplantningsbasen.

Trinn 6: Konstruere termostatmodulen

Konstruksjon av termostatmodulen
Konstruksjon av termostatmodulen
Konstruksjon av termostatmodulen
Konstruksjon av termostatmodulen
Konstruksjon av termostatmodulen
Konstruksjon av termostatmodulen
Konstruksjon av termostatmodulen
Konstruksjon av termostatmodulen

ESP8266/NodeMCU, displayet, reléet og 5V strømforsyningen passer fint inn i etui på 158x90x60 mm med gjennomsiktig deksel.

Jeg trengte en grunnplate for å montere NodeMCU, LCD -skjerm og relé inne i saken. Jeg tenkte på å bestille en 3D -trykt grunnplate, så jeg opprettet en.stl -fil i SketchUp. Jeg ombestemte meg og gjorde det ganske enkelt selv fra et stykke 4 mm hvit perspex. Ved hjelp av SketchUp opprettet jeg en mal for å markere det nøyaktige stedet for 3 mm hullene å bore. Se.skp -filen for et eksempel. Komponentene monteres på bunnplaten ved hjelp av noen avstandsstykker av passende lengde.

Jeg boret hullene til knappene og kontaktene i sidene av saken, installerte knappene og kontaktene og koblet dem til med forskjellige fargede ledninger for å unngå feil tilkoblinger. Jeg koblet forsiktig opp 230V AC -delene. Igjen: 230V AC kan være farlig, sørg for at du vet hva du gjør når du forbereder denne delen av prosjektet!

5V strømforsyning og rekkeklemme holdes på plass på bunnen av saken med litt dobbeltsidig tape.

Etter å ha koblet ledningene til NodeMCU, tok det litt fikling for å fikse bunnplaten i saken med noen m3 bolter.

Siste handling: Sett på plass det gjennomsiktige dekselet, og vi er ferdige!

Trinn 7: Konklusjon

Det har vært veldig morsomt å konstruere denne termostaten for min propagator, og å holde oversikt over fremdriften min med å bygge den, og skrive dette instruerbart.

Termostaten fungerer som en sjarm, og å kontrollere og overvåke den ved hjelp av Blynk -appen fungerer også fint.

Men det er alltid rom for forbedringer. Jeg tenker på å forbedre temperaturkontrollen ved å unngå å "overskride målet" for mye. Sannsynligvis vil jeg se på det såkalte PID-biblioteket.

En annen idé: Jeg kan legge til et 'Over The Air' OTA -alternativ for å oppdatere NodeMCU -programvaren uten å måtte åpne saken hver gang.

Anbefalt: