Indholdsfortegnelse:
- Trin 1: ESP8266-01-designet
- Trin 2: Strømforsyningen
- Trin 3: Samling af PC -kortet
- Trin 4: Test af pc -kortet
- Trin 5: Vedlægget
- Trin 6: Programmering af ESP8266-01/NodeMCU
- Trin 7: Første gangs opsætning
- Trin 8: Opsætning af IoT Timer
Video: ESP8266-01 IoT Smart Timer til hjemmeautomatisering: 9 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
OPDATERINGER
2018-09-30: Firmware opdateret til Ver 1.09. Nu med Sonoff Basic Support
2018-10-01: Firmwareversion 1.10-prøveversion tilgængelig til test på ESP8266-01 med problemer
Da de nye modeord var Internet Of Things (IoT) og Home Automation, besluttede jeg at se på de aktuelle ting i og omkring mit hjem, der styres via en slags enhed. De ting, der skilte sig ud, er følgende:
- Swimmingpool pumpe
- Swimmingpool vandfyldstof
- Swimmingpool og omgivende lys
- TV/underholdningssystem kabinelys
Den almindelige genstand, der bruges til at styre disse enheder, er standard vægstikkontakter. Hver enhed er udstyret med sin egen timer og er alle placeret forskellige steder. Så hvorfor valgte jeg disse elementer til at begynde med Internet of Things eller Home Automation -projekter, kan du spørge?
Vel, at bo i Sydafrika betyder, at strømafbrydelser er en regelmæssig forekomst. Med statistik over mit hjem havde jeg 35 strømsvigt det seneste år, i alt 40 timer. Dette er normalt ikke et problem, da alle de i øjeblikket installerede timere er udstyret med et reservebatteri, der holder tiden under strømafbrydelser. Men der er nogle problemer:
- Disse backup-batterier holder kun et år eller to, så skal timeren udskiftes. Timerne er konstrueret således, at timeren skal ødelægges for at få adgang til det interne Ni-Cad batteri.
- Hver gang strømmen afbrydes, skal timerne med defekte batterier omprogrammeres og tiden indstilles.
- Timerens fysiske placering, når den er tilsluttet stikkontakten, gør det næsten umuligt at aflæse de LCD -skærme, der viser timeren fra toppen. Det betyder, at timeren skal afbrydes, eller jeg skal lægge mig på gulvet for at indstille eller justere timerne efter et strømsvigt.
Af ovenstående årsager besluttede jeg at teste muligheden for at erstatte timerne med en IoT Smart Timer, der er forbundet til mit lokale hjemmenetværk.
Ideen var at designe en selvstændig timer, som kan:
- Juster automatisk den aktuelle tid ved hjælp af internettet (IoT)
- Betjenes uden brugerhandlinger (Smart)
- Slå en udgang til/fra i henhold til indstillede tider (timer)
- Programmerbar og styrbar via netværk (hjemmeautomation)
Trin 1: ESP8266-01-designet
Designet blev udført ved hjælp af et ESP8266-01 WiFi-modul, da det var det, jeg havde til rådighed. I sin enkleste form har ESP8266-01 fire I/O-ben:
- GPIO0
- GPIO2
- TX
- RX
ESP8266-01 opstartstilstande
I/O-benenes logiske tilstand bruges til at bestemme i hvilken tilstand ESP8266-01 vil starte op. Det første trin var at bestemme, hvilken af I/O -benene der kan bruges til at drive et udgangsrelæ.
- For normal opstart skal GPIO0 og GPIO2 indstilles til logik HIGH. Det er således klart, at disse to ben ikke kan bruges som en digital udgang.
- Tx -stiften er indstillet som en output ved opstart, og output er høj. Denne Tx -pin sender også nogle serielle data under opstart. Således kan denne pin heller ikke bruges som output.
Den eneste tilbageværende pin er Rx -stiften. Denne pin er indstillet som input ved opstart og behøver ikke trækkes højt under opstart. Denne pin er således den mest egnede til at blive brugt som output pin.
Starte op
For at sikre korrekt opstartstilstand for ESP8266-01 under opstart trækkes følgende stifter højt ved hjælp af 10K modstande:
- GPIO0
- GPIO2
- RST
- CH_PD
Dette sikrer, at enheden starter korrekt op hver gang.
Udgangsrelæ
RX er den eneste pin, der er egnet til brug som output. Denne pin bruges således til at drive outputrelæet via en NPN -transistor. Standard svinghjulsdiode og transistorbasismodstande blev tilføjet.
MODE/SET -knap
Knappen er forbundet til GPIO2, og med knappen sluppet vil en 10K modstand trække GPIO2 højt. Når knappen trykkes ned, trækkes GPIO2 til 0V.
Denne knap bruges til to funktioner:
- Første opsætning for at forbinde enheden til et lokalt WiFi -netværk
- Til manuel styring af output under normale operationer
Indikation LED
LED'en er tilsluttet GPIO0 og angiver følgende:
- Ved første opstart blinker HURTIGT for at angive WiFi -opsætningstilstand
- Blinker langsomt, når tid for enheden ikke er indstillet
- angiver udgangsrelæets tænd/sluk -status
Trin 2: Strømforsyningen
Jeg bruger IoT Smart Timer på forskellige spændingsniveauer, derfor er der to muligheder for strømforsyning:
12 - 24V DC
Den anvendte DC-DC-omformer er velegnet til forsyninger op til 28V DC. Konverterens output er justerbar og er indstillet til 5V. Dette skal gøres, før ESP8266 -modulet tilsluttes.
En diode blev tilføjet til for at beskytte mod omvendt polaritet på forsyningsindgangen.
220V AC Til denne mulighed kunne jeg få en lille 220V/5V switch mode strømforsyning på eBay.
Uanset indgangsspændingen har IoT Smart Timer brug for to strømforsyninger:
5V skinne
Med begge muligheder opnås 5V DC fra en switchet strømforsyning og ikke en lineær regulator. Det betyder, at der genereres minimal varme fra strømforsyningen. 5V bruges til at drive outputrelæet
3.3V Skinne
3.3V til ESP8266-01 fås fra en ASM1117 3.3 regulator. ASM1117 3.3 er en lineær regulator og kan klare op til 500mA. Den genererede varme bestemmes imidlertid af indgangsspændingen til ASM1117. For at reducere varmen drives ASM1117 fra 5V -skinnen.
Støjfiltrering
For at reducere spændingsippel til ESP8266-01 er 3.3V -skinnen udstyret med en 100 - 1000uf kondensator. Både 5V og 3.3V skinner er også beskyttet mod højfrekvent interferens med 0.1uf kondensatorer.
Trin 3: Samling af PC -kortet
PC -kortet blev designet ved hjælp af freeware -versionen af Eagle. Det er et enkeltsidet bord, der let kan laves derhjemme ved hjælp af toneroverførselsmetoden.
Når PC -kortet er lavet, samles PC -kortet i følgende rækkefølge:
- Lod ASM1117 -regulatoren og tre 0.1uf SMD -komponenter til loddetiden af brættet
- Tilføj den enkelte jumper til komponentsiden af brættet
- Lodde modstande og dioder på plads
- Tilføj headerne til ESP8266-01-modulet
- Tilføj headerstifterne til LED'en og knappen
- Tilføj skrueterminalerne
- Ved hjælp af headerstifter skal du slutte DC/DC -konverteren til kortet.
- Lodde relæet på plads
- Fuldfør kortet ved at lodde transistoren og 100uf kondensatoren.
Når alle komponenter er loddet til brættet, skal du kontrollere alle loddepunkter og sikre, at der ikke er kortslutninger mellem elektroderne.
! ! ! VIGTIG NOTE ! ! ! For at sikre, at PC -kortet kan håndtere store strømme på udgangskontakterne, skal der påføres en anstændig mængde loddemetal på skinnerne mellem relækontakterne og skrueterminalerne
Trin 4: Test af pc -kortet
! ! ! Inden strømtilførsel! ! !
Fjern ESP8266-01-modulet fra enheden. Dette er for at forhindre overophedning af ASM1117 -regulatoren, før 5V -forsyningen justeres.
Der er ikke mange tests, der kan udføres efter montering. Det vigtigste trin er at sikre de korrekte spændingsniveauer.
- Påfør 12 - 24V DC på enheden.
- Mål udgangsspændingen på DC/DC -omformeren
- Juster konverterens output til mellem 5,0 og 5,5V.
- Mål derefter 3,3V forsyningen.
- Hvis forsyningerne er i orden, skal du fjerne strømmen fra enheden
Du kan nu indsætte ESP8266-01-modulet i de medfølgende headere.
! ! ! Bemærk !
Når du har testet IoT -timeren, og den virker, skal du bruge klar lak til at dække loddetiden på pc -kortet. Dette forhindrer oxidation af sporene og giver ekstra isolering mellem relækontakterne og resten af kredsløbet
Trin 5: Vedlægget
Kabinettet er ikke så vigtigt, så længe pc -kortet og alle ledninger passer pænt og sikkert ind i det.
For at gøre konstruktionen lettere har jeg lavet et kabel med LED og MODE/SETUP -knappen tilsluttet. Dette gav mig mere fleksibilitet i montering af LED og knap til kabinettet. Dette kabel sættes derefter i headeren på pc -kortet.
Billederne viser en af de 12V -enheder, der bruges til LED -lys.
Trin 6: Programmering af ESP8266-01/NodeMCU
For at programmere ESP8266-01 skal du først konfigurere Arduino IDE. Jeg går ikke ind på disse detaljer, da der er masser af gode instruktioner tilgængelige om dette emne. Jeg har valgt følgende links på Instructables til reference, uden nogen bestemt rækkefølge til forfatterne. Tak for deres individuelle instruktioner.
Følg denne ESP8266 og Arduino IDE for at konfigurere Arduino IDE til ESP8266 modulet.
Derefter skal du bruge en programmør til at programmere ESP8266. Her er to links:
Brug af Arduino Uno
DIY programmeringstavle
Biblioteker
Du skal installere flere biblioteker for at kunne kompilere koden. Igen, henvises til denne Instructable:
Installer og brug Arduino Libraries
Jeg kan ikke huske, hvilke biblioteker jeg skulle installere, men jeg ved, at WiFiManager skal downloades separat. Jeg har inkluderet disse i Libraries.zip -filen.
Trin 7: Første gangs opsætning
Når den bruges første gang, skal IoT Smart Timer forbindes til et WiFi -netværk. Denne opgave udføres ved hjælp af WiFiManager -biblioteket, så ingen SSID eller adgangskoder skal indtastes i koden.
Følg disse få trin:
- Tænd for enheden
- LED'en begynder at blinke hurtigt
- Tryk på knappen MODE/SETUP
- Når LED'en slukker, skal du slippe knappen
- Vent et par sekunder, og åbn derefter din smartphone eller enhedens WiFi -forbindelser
- Et nyt WiFi -netword kaldet IoT Timer vil være synligt
- Vælg dette adgangspunkt
- Log på IoT -timeren (ingen adgangskode er påkrævet)
- Vent, indtil din enhed er forbundet til IoT Timer -netværket
- Åbn enhver internetbrowser
- Indtast følgende IP -adresse i adresselinjen - 192.168.4.1
- WiFiManager -konsollen åbnes
- Vælg Konfigurer WiFi
- Der vises en liste med tilgængelige WiFi -netværkspunkter
- Vælg det nødvendige WiFi -netværk, og indtast adgangskoden
- Indtast derefter den IP -adresse, du vil bruge til at oprette forbindelse til IoT -timeren
- Indtast standardgatewayens IP -adresse efterfulgt af masken
- Når alle indstillinger er udført, skal du klikke på knappen Gem
- Et nyt vindue åbnes for at bekræfte, at de nye legitimationsoplysninger blev gemt
- Luk din browser
Når det er gemt, lukkes IoT Timer -netværket, og enheden forsøger at oprette forbindelse til dit WiFi -netværk.
- Tilslut din smartphone eller enhed til det samme WiFi -netværk, som bruges til IoT -timeren.
- Åbn din browser
- Indtast IP -adressen på din IoT Timer i adresselinjen
- Konfigurationssiden for IoT -timeren åbnes
Din IoT Timer er nu klar til brug
Trin 8: Opsætning af IoT Timer
Den indbyggede webside i IoT Timer består af fem sektioner:
Status
Dette viser enhedsnavnet samt timers aktuelle tid og outputstatus
Derudover er timerens driftstilstand indstillet i dette afsnit. Der er tre tilstande:
- Auto - Output styres af de forskellige timerprogrammer
- On - Output er tvunget TIL og forbliver tændt, indtil tilstanden ændres
- Off - Output er tvunget til OFF, og forbliver slukket, indtil tilstanden ændres.
Programmer
Dette afsnit indeholder timer til og fra for timeren. Der er syv programmer tilgængelige, og hvert program kan indstilles individuelt.
Inden du ændrer det næste program, skal du trykke på knappen GEM for at gemme eventuelle ændringer i det aktuelle program.
Knapfunktion
MODE/SETUP -knappen kan bruges til at styre udgangsrelæet under normal drift. Vælg her, hvad knappen skal gøre, når der trykkes på den.
Marker feltet "Opdater knapfunktion", før du trykker på knappen Gem for at gemme de nye indstillinger.
Konfiguration
Her kan du ændre navnet på IoT -timeren. Dette gør det let at identificere mellem flere timere.
Tid på enheden hentes fra internettet via en NTP -tidsserver. For at få vist det korrekte klokkeslæt, skal du opdatere tidszonen til dit område.
Hvis du vil gøre brug af en anden NTP -tidsserver, skal du indtaste den nye IP -adresse i det angivne rum.
Marker feltet "Opdater konfiguration", før du trykker på knappen Gem for at gemme de nye indstillinger.
BEMÆRK
Når du ændrer tidszonen, vil den nye tid kun blive indstillet korrekt under den næste tidsforespørgsel. Enheden er indstillet til at opdatere tiden hvert 5. minut.
Tidsjustering
Nogle gange sker det, at NTP -tidsserveren ikke reagerer ved hver forespørgsel. Skulle det tage for lang tid, før tiden blev indstillet via NTP -serveren, kan du indtaste tid og dato manuelt.
Marker feltet "Opdater tid", før du trykker på knappen Gem for at gemme den nye tid og dato.
Tidssynkronisering
Den sidste del af siden angiver klokkeslæt og dato, hvor sidste tidspunkt blev synkroniseret via NTP -tidsserveren.
Anbefalede:
Sådan laver du et smart hjem ved hjælp af Arduino -kontrolrelæmodul - Idéer til hjemmeautomatisering: 15 trin (med billeder)
Sådan laver du et smart hjem ved hjælp af Arduino -kontrolrelæmodul | Idéer til hjemmeautomatisering: I dette hjemmeautomatiseringsprojekt vil vi designe et smart hjemrelæmodul, der kan styre 5 husholdningsapparater. Dette relæmodul kan styres fra mobil eller smartphone, IR -fjernbetjening eller fjernsynsfjernbetjening, manuel switch. Dette smarte relæ kan også mærke r
Internet/skystyret hjemmeautomatisering ved hjælp af Esp8266 (aREST, MQTT, IoT): 7 trin (med billeder)
Internet/skystyret hjemmeautomatisering ved hjælp af Esp8266 (aREST, MQTT, IoT): ALLE kreditter til http://arest.io/ for cloudtjenesten !! IoT det mest diskuterede emne i verden lige nu !! Cloud -servere og -tjenester, der gør dette muligt, er attraktionspunktet i nutidens verden … UDGIVELSE AF DISTANCE BARRIER var og er
Opbygning af Homie -enheder til IoT eller hjemmeautomatisering: 7 trin (med billeder)
Bygning af Homie -enheder til IoT eller hjemmeautomatisering: Denne instruks er en del af min DIY Home Automation -serie, se hovedartiklen "Planlægning af et DIY Home Automation System". Hvis du endnu ikke ved, hvad Homie er, så tag et kig på homie-esp8266 + homie fra Marvin Roger. Der er mange mange sen
DIY IoT -lampe til hjemmeautomatisering -- ESP8266 Tutorial: 13 trin (med billeder)
DIY IoT -lampe til hjemmeautomatisering || ESP8266 Tutorial: I denne vejledning laver vi en internetforbundet smart lampe. Dette vil gå dybt ind i tingenes internet og åbne en verden af hjemmeautomatisering! Lampen er WiFi -tilsluttet og bygget til at have en åben meddelelsesprotokol. Det betyder, at du kan vælge
IoT -hovedkontroller. Del 9: IoT, hjemmeautomatisering: 10 trin (med billeder)
IoT -hovedkontroller. Del 9: IoT, hjemmeautomatisering: Ansvarsfraskrivelse LÆS DETTE FØRST Denne instruktive beskriver et projekt, der bruger netstrøm (i dette tilfælde UK 240VAC RMS), mens der er taget hensyn til sikker praksis og gode designprincipper, er der altid en risiko for potentielt dødelig vælge