Talaan ng mga Nilalaman:
- Hakbang 1: Ang Disenyo ng ESP8266-01
- Hakbang 2: Ang Power Supply
- Hakbang 3: Pag-iipon ng PC Board
- Hakbang 4: Pagsubok ng PC Board
- Hakbang 5: Ang Enclosure
- Hakbang 6: Pagprogram ng ESP8266-01 / NodeMCU
- Hakbang 7: First Time Setup
- Hakbang 8: Pag-set up ng IoT Timer
Video: ESP8266-01 IoT Smart Timer para sa Home Automation: 9 Mga Hakbang (na may Mga Larawan)
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:14
MGA NAG-UPDATE
2018-09-30: Na-update ang Firmware sa Ver 1.09. Ngayon ay may Sonoff Basic Support
2018-10-01: Magagamit ang Bersyon ng Firmware 1.10 para sa pagsubok sa ESP8266-01 na may mga isyu
Sa mga bagong buzzword na pagiging Internet Of Things (IoT) at Home Automation, napagpasyahan kong tingnan ang kasalukuyang mga item sa loob at paligid ng aking bahay na kinokontrol sa pamamagitan ng ilang uri ng aparato. Ang mga item na tumindig, ay ang mga sumusunod:
- Pump ng swimming pool
- Tagapuno ng tubig sa swimming pool
- Swimming pool at mga ilaw sa paligid
- Mga ilaw sa gabinete ng TV / Entertainment system
Ang karaniwang item na ginagamit upang makontrol ang mga aparatong ito, ay ang mga karaniwang wall plug timer. Ang bawat aparato ay nilagyan ng sarili nitong timer, at lahat ay matatagpuan sa iba't ibang mga lokasyon. Kaya bakit ko pinili ang mga item na ito upang magsimula sa mga proyekto ng Internet of Things o Home Automation, maaari mong tanungin?
Kaya, ang pamumuhay sa South Africa, nangangahulugang ang mga pagkabigo sa kuryente ay isang regular na pangyayari. Sa mga istatistika ng aking tahanan, nagkaroon ako ng 35 pagkabigo sa kuryente sa nakaraang taon, na umabot ng 40 oras. Karaniwan itong hindi isang isyu, dahil ang lahat ng kasalukuyang naka-install na timer ay nilagyan ng isang back-up na baterya para sa pagpapanatili ng oras habang nabigo ang kuryente. Ngunit may ilang mga isyu:
- Ang mga back-up na baterya na ito ay tatagal lamang ng isang taon o dalawa, pagkatapos ang timer ay kailangang mapalitan. Ang mga timer ay itinayo na ang timer ay kailangang sirain upang makakuha ng pag-access sa panloob na baterya ng Ni-Cad.
- Sa tuwing nabibigo ang kuryente, ang mga timer na may sira na baterya ay kailangang muling maprograma, at ang itinakdang oras.
- Ang pisikal na lokasyon ng timer, kapag naka-plug sa wall socket, ginagawang halos imposibleng basahin ang mga lcd na nagpapakita ng pagtingin sa timer mula sa itaas. Nangangahulugan ito na ang timer ay kailangang i-unplug, o kailangan kong humiga sa sahig upang maitakda o ayusin ang mga timer pagkatapos ng isang pagkabigo sa kuryente.
Dahil sa mga kadahilanang nasa itaas, nagpasya akong subukan ang posibilidad na palitan ang mga timer ng isang IoT Smart Timer, na konektado sa aking lokal na network ng bahay.
Ang ideya ay upang magdisenyo ng isang stand-alone na timer, na maaaring:
- Awtomatikong ayusin ang kasalukuyang oras gamit ang internet (IoT)
- Pinapatakbo nang walang anumang mga pagkilos ng gumagamit (Smart)
- I-on / I-off ang isang output alinsunod sa itinakdang oras (Timer)
- Programmable at makokontrol sa pamamagitan ng network (Home Automation)
Hakbang 1: Ang Disenyo ng ESP8266-01
Ang disenyo ay tapos na gamit ang isang module ng WiFi na ESP8266-01, dahil ito ang magagamit ko. Sa pinakasimpleng form na ito, ang ESP8266-01 ay may apat na I / O na pin:
- GPIO0
- GPIO2
- TX
- RX
ESP8266-01 Mga Power -up Mode
Ang estado ng lohika ng mga I / O pin ay ginagamit upang matukoy kung aling mode ang boot ng ESP8266-01. Ang unang hakbang ay upang matukoy kung alin sa mga I / O na pin ang maaaring magamit upang maghimok ng isang output relay.
- Para sa normal na lakas, ang GPIO0 at GPIO2 ay dapat itakda sa LAKI ng lohika. Kaya malinaw na ang dalawang mga pin na ito ay hindi maaaring gamitin bilang isang digital output.
- Ang Tx pin ay itinakda bilang isang output sa power up, at ang output ay itinakda nang mataas. Nagpapadala din ang Tx pin na ito ng ilang serial data habang nag-i-power up. Kaya, ang pin na ito ay hindi maaaring magamit bilang isang output.
Ang natitirang pin lamang ay ang Rx pin. Ang pin na ito ay itinakda bilang isang input sa power up, at hindi kailangang hilahin nang mataas sa panahon ng power up. Ang pin na ito ay kung gayon ang pinaka-angkop upang magamit bilang isang output pin.
Boot-up
Upang matiyak ang tamang mode ng boot-up ng ESP8266-01 sa panahon ng power up, ang mga sumusunod na pin ay mahila nang mataas gamit ang 10K resistors:
- GPIO0
- GPIO2
- RST
- CH_PD
Tinitiyak nito na ang bota ng unit ay tama sa bawat oras.
Relay ng Output
Ang RX ay ang tanging pin na angkop na magamit bilang isang output. Ang pin na ito ay ginagamit upang himukin ang output relay sa pamamagitan ng isang NPN transistor. Ang karaniwang flywheel diode at transistor base resistors ay idinagdag.
MODE / Itakda ang Button
Ang pindutan ay konektado sa GPIO2, at sa pindutan na inilabas, isang 10K risistor ay hilahin ang GPIO2 mataas. Na pinindot ang pindutan, ang GPIO2 ay hinila sa 0V.
Ginagamit ang pindutan na ito para sa dalawang pag-andar:
- Paunang pag-set up upang ikonekta ang yunit sa isang lokal na WiFi network
- Upang manu-manong kontrolin ang output habang normal na operasyon
LED na Indikasyon
Ang LED ay konektado sa GPIO0, at ipinapahiwatig ang sumusunod:
- Sa paunang pag-upo ng lakas, i-flash ang FAST upang ipahiwatig ang WiFi Setup mode
- Mabagal ang pag-flash kapag ang oras ng unit ay hindi nakatakda
- Ipinapahiwatig ang katayuan ng relay na On / Off
Hakbang 2: Ang Power Supply
Gagamitin ko ang IoT Smart Timer sa iba't ibang mga antas ng boltahe, samakatuwid mayroong magagamit na dalawang mga pagpipilian sa supply ng kuryente:
12 - 24V DC
Ang ginamit na DC-DC converter ay angkop para sa mga supply hanggang sa 28V DC. Ang output ng converter ay madaling iakma, at nakatakda sa 5V. Kailangang gawin ito bago kumonekta ang module na ESP8266.
Ang isang diode ay idinagdag upang maprotektahan laban sa reverse polarity sa input ng supply.
220V ACPara sa pagpipiliang ito, nakakuha ako ng isang maliit na 220V / 5V switch mode power supply sa eBay.
Hindi alintana ang input boltahe, ang IoT Smart Timer ay nangangailangan ng dalawang power supply:
5V Rail
Sa parehong mga pagpipilian, ang 5V DC ay nakuha mula sa isang switch mode power supply, at hindi isang linear regulator. Nangangahulugan ito na mayroong kaunting init na nabuo ng power supply. Ginagamit ang 5V upang himukin ang output relay
3.3V Rail
Ang 3.3V para sa ESP8266-01 ay nakuha mula sa isang ASM1117 3.3 regulator. Ang ASM1117 3.3 ay isang linear regulator, at maaaring hawakan hanggang sa 500mA. Gayunpaman, ang nabuo na init ay matutukoy ng input boltahe sa ASM1117. Upang mabawasan ang init, ang ASM1117 ay pinalakas mula sa 5V rail.
Pagsala ng Ingay
Upang mabawasan ang boltahe na ripple sa ESP8266-01, ang 3.3V rail ay nilagyan ng isang 100 - 1000uf capacitor. Ang parehong 5V at 3.3V riles ay protektado rin mula sa mataas na dalas ng pagkagambala ng 0.1uf capacitors.
Hakbang 3: Pag-iipon ng PC Board
Ang PC Board ay dinisenyo gamit ang freeware na bersyon ng Eagle. Ito ay isang solong panig na board, na maaaring madaling gawin sa bahay gamit ang paraan ng paglipat ng toner.
Kapag nagawa ang PC Board, tipunin ang PC Board sa sumusunod na pagkakasunud-sunod:
- Solder ang ASM1117 regulator at tatlong 0.1uf SMD na mga bahagi sa solder na bahagi ng board
- Idagdag ang solong jumper sa bahagi ng board
- Paghinang ang mga resistors at diode sa lugar
- Idagdag ang mga header para sa module na ESP8266-01
- Idagdag ang mga header pin para sa LED at pindutan
- Idagdag ang mga screw terminal
- Gamit ang mga header pin, ikonekta ang DC / DC converter sa board.
- Ihihinang ang relay sa lugar
- Kumpletuhin ang board sa pamamagitan ng paghihinang ng transistor at 100uf capacitor.
Kapag ang lahat ng mga bahagi ay na-solder sa board, i-verify ang lahat ng mga solder point, at tiyaking walang maikling mga circuit sa pagitan ng mga pad.
! ! ! MAHALAGANG PAALAALA ! ! ! Upang matiyak na ang PC Board ay maaaring hawakan ang malalaking alon sa mga contact na output, maglagay ng disenteng halaga ng panghinang sa mga track sa pagitan ng mga contact ng relay at mga terminal ng tornilyo
Hakbang 4: Pagsubok ng PC Board
! ! ! Bago mag-apply ng lakas! ! !
Alisin ang module na ESP8266-01 mula sa unit. Ito ay upang maiwasan ang sobrang pag-init ng ASM1117 regulator bago maiayos ang supply ng 5V.
Walang maraming mga pagsubok na maaaring gawin pagkatapos ng pagpupulong. Ang pinakamahalagang hakbang ay upang matiyak ang tamang mga antas ng boltahe.
- Mag-apply ng 12 - 24V DC sa unit.
- Sukatin ang output boltahe ng DC / DC converter
- Ayusin ang output ng converter sa pagitan ng 5.0 at 5.5V.
- Susunod, sukatin ang supply ng 3.3V.
- Kung OK ang mga supply, alisin ang kuryente mula sa unit
Maaari mo na ngayong ipasok ang module ng ESP8266-01 sa mga ibinigay na header.
! ! ! Tandaan! !
Kapag nasubukan mo na ang IoT Timer at gumagana ito, gumamit ng malinaw na may kakulangan upang masakop ang panig ng panghinang ng PC Board. Pipigilan nito ang oksihenasyon ng mga track, at magbibigay ng labis na pagkakabukod sa pagitan ng mga contact na relay at ang natitirang circuit
Hakbang 5: Ang Enclosure
Ang enclosure ay hindi ganoon kahalaga, basta ang PC board at lahat ng mga kable ay umaangkop nang maayos at ligtas dito.
Upang gawing mas madali ang konstruksyon, gumawa ako ng isang cable na may koneksyon na LED at MODE / SETUP na konektado dito. Binigyan ako nito ng higit na kakayahang umangkop sa pag-mount ng LED at pindutan sa enclosure. Ang cable na ito pagkatapos ay naka-plug sa header sa PC Board.
Ipinapakita ng mga larawan ang isa sa 12V na yunit na ginamit para sa mga LED light.
Hakbang 6: Pagprogram ng ESP8266-01 / NodeMCU
Upang ma-program ang ESP8266-01, kailangan mo munang i-set up ang Arduino IDE. Hindi ako pupunta sa mga detalyeng ito, dahil maraming mga magagaling na Mga Tagubilin na magagamit sa paksang ito. Pinili ko ang mga sumusunod na link sa Mga Instructable para sa sanggunian, nang walang anumang tukoy na pagkakasunud-sunod sa mga may-akda. Salamat sa kani-kanilang mga Tagubilin.
Sundin ang ESP8266 at Arduino IDE na ito upang mai-set up ang Arduino IDE para sa module na ESP8266..
Susunod, kakailanganin mo ng isang programmer upang mai-program ang ESP8266. Narito ang dalawang mga link:
Gamit ang Arduino Uno
Board ng Programming ng DIY
Mga aklatan
Kakailanganin mong mag-install ng mga karagdagang aklatan upang maisaayos ang code. Muli, sumangguni sa Ituturo na ito:
I-install at Gumamit ng Arduino Library
Hindi ko matandaan kung aling mga aklatan ang dapat kong mai-install, ngunit alam ko na ang WiFiManager ay dapat na i-download nang magkahiwalay.. Isinama ko ang mga ito sa file ng Library.zip.
Hakbang 7: First Time Setup
Kapag ginamit sa unang pagkakataon, ang IoT Smart Timer ay kailangang maiugnay sa isang WiFi network. Ang gawaing ito ay tapos na gamit ang WiFiManager library, kaya't walang SSID o mga password ang kailangang mai-type sa code.
Sundin ang ilang mga hakbang na ito:
- Patayin ang yunit
- Ang LED ay magsisimulang mabilis na mag-flash
- Pindutin ang pindutan na MODE / SETUP
- Kapag naka-off ang LED, bitawan ang pindutan
- Maghintay ng ilang segundo, pagkatapos buksan ang iyong mga koneksyon sa smartphone o aparato WiFi
- Ang isang bagong WiFi netword na tinatawag na IoT Timer ay makikita
- Piliin ang access point na ito
- Mag-log papunta sa IoT Timer (walang kinakailangang password)
- Maghintay hanggang ang iyong aparato ay konektado sa IoT Timer network
- Buksan ang anumang browser ng internet
- Sa address bar, i-type ang sumusunod na IP address - 192.168.4.1
- Magbubukas ang WiFiManager console
- Piliin ang I-configure ang WiFi
- Ang isang listahan na may magagamit na mga puntos ng mga network ng WiFi ay ipapakita
- Piliin ang kinakailangang WiFi network, at i-type ang password
- Susunod, ipasok ang IP address na nais mong gamitin upang kumonekta sa IoT Timer
- Ipasok ang Default Gateway IP address, na sinusundan ng mask
- Kapag tapos na ang lahat ng mga setting, mag-click sa pindutang I-save
- Magbubukas ang isang bagong window upang kumpirmahing nai-save ang mga bagong kredensyal
- Isara ang iyong browser
Kapag na-save na, ang network ng IoT Timer ay magsasara, at susubukan ng unit na kumonekta sa iyong WiFi network.
- Ikonekta ang iyong Smartphone o aparato sa parehong WiFi network tulad ng ginagamit para sa IoT Timer.
- Buksan ang iyong browser
- Sa address bar, i-type ang IP address ng iyong IoT Timer
- Ang pahina ng pagsasaayos ng IoT Timer ay magbubukas
Ang iyong IoT Timer ay handa na para magamit
Hakbang 8: Pag-set up ng IoT Timer
Ang built-in na web page ng IoT Timer ay binubuo ng limang mga seksyon:
Katayuan
Ipinapakita nito ang pangalan ng aparato, pati na rin ang kasalukuyang oras at katayuan ng output ng timer
Bilang karagdagan, ang operating mode ng timer ay nakatakda sa seksyong ito. Mayroong tatlong mga mode:
- Auto - Ang output ay makokontrol ng iba't ibang mga programa ng timer
- Bukas - Sapilitang ON ang output, at mananatili hanggang mabago ang mode
- Patay - Pinilit ang OFFput OFF, at mananatili hanggang sa mabago ang mode.
Mga Programa
Ang seksyon na ito ay naglalaman ng mga oras ng Bukas at OFF ng timer. Mayroong pitong mga programa na magagamit, at ang bawat programa ay maaaring itakda nang paisa-isa.
Bago baguhin ang susunod na programa, pindutin ang I-save ang pindutan upang mai-save ang anumang mga pagbabago na ginawa sa kasalukuyang programa.
Pag-andar ng Button
Ang MODE / SETUP na pindutan ay maaaring magamit upang makontrol ang output relay habang normal na operasyon. Dito, piliin kung ano ang dapat gawin ng pindutan kapag pinindot.
Lagyan ng tsek ang kahon na "I-update ang Button Function" bago pindutin ang pindutang I-save upang mai-save ang mga bagong setting.
Pag-configure
Dito, maaari mong baguhin ang pangalan ng IoT Timer. Ginagawa nitong madaling makilala sa pagitan ng maraming mga timer.
Ang oras sa yunit ay nakuha mula sa internet sa pamamagitan ng isang NTP time server. Upang maipakita ang tamang oras, mangyaring i-update ang Time Zone sa iyong rehiyon.
Kung nais mong gamitin ang ibang server ng oras ng NTP, ipasok ang bagong IP address sa ibinigay na puwang.
Lagyan ng tsek ang kahon na "I-update ang Pag-configure" bago pindutin ang pindutang I-save upang mai-save ang mga bagong setting.
TANDAAN
Kapag binabago ang Oras ng Oras, ang bagong oras ay maitatakda lamang na tama sa susunod na query sa oras. Ang yunit ay nakatakda upang i-update ang oras tuwing 5 minuto.
Ayusin ang Oras
Minsan, nangyayari na ang server ng oras ng NTP ay hindi tumutugon sa bawat query sa oras. Kung magtatagal man ito para maitakda ang oras sa pamamagitan ng NTP server, maaari mong ipasok nang manu-mano ang oras at petsa.
Lagyan ng tsek ang kahon na "I-update ang Oras" bago pindutin ang pindutang I-save upang mai-save ang bagong oras at petsa.
Pagsasabay sa Oras
Ang huling bahagi ng pahina ay nagpapahiwatig ng oras at petsa kung kailan ang huling oras ay na-synchronize sa pamamagitan ng NTP time server.
Inirerekumendang:
Internet / cloud Controlled Home Automation Gamit ang Esp8266 (aREST, MQTT, IoT): 7 Hakbang (na may Mga Larawan)
Internet / cloud Controlled Home Automation Gamit ang Esp8266 (aREST, MQTT, IoT): LAHAT ng mga kredito sa http://arest.io/ para sa cloud service !! IoT ang pinaguusapan na paksa sa mundo ngayon !! Ang mga cloud server at serbisyo na ginagawang posible ito ay ang atraksyon ng mundo ngayon … RULING OUT THE DISTANCE BARRIER was and is the
Wall Mount para sa IPad Bilang Home Automation Control Panel, Paggamit ng Controlled na Magnet ng Servo upang Paganahin ang Screen: 4 na Hakbang (na may Mga Larawan)
Wall Mount para sa IPad Bilang Home Automation Control Panel, Paggamit ng Controlled na Magnet ng Servo upang Paganahin ang Screen: Kamakailan lamang ay gumugol ako ng kaunting oras sa pag-automate ng mga bagay sa loob at paligid ng aking bahay. Gumagamit ako ng Domoticz bilang aking aplikasyon sa Home Automation, tingnan ang www.domoticz.com para sa mga detalye. Sa aking paghahanap para sa isang application ng dashboard na ipinapakita ang lahat ng impormasyon ng Domoticz tog
Makapangyarihang Standalone Home Automation System - Pi, Sonoff, ESP8266 at Node-Red: 9 Mga Hakbang (na may Mga Larawan)
Napakahusay na Standalone Home Automation System - Pi, Sonoff, ESP8266 at Node-Red: Ang gabay na ito ay dapat na ihatid ka sa unang base kung saan maaari mong buksan / patayin ang isang ilaw o isang appliance sa pamamagitan ng anumang aparato na maaaring kumonekta sa iyong lokal na network, at may mahusay na napapasadyang web interface. Malawak ang saklaw para sa mga tampok na extension / pagdaragdag, kasama
DIY IoT Lampara para sa Home Automation -- Tutorial sa ESP8266: 13 Mga Hakbang (na may Mga Larawan)
DIY IoT Lampara para sa Home Automation || Tutorial sa ESP8266: Sa tutorial na ito gagawa kami ng isang smart na konektadong lampara sa internet. Mapupunta ito sa internet ng mga bagay at magbubukas ng isang mundo ng pag-aautomat sa bahay! Ang lampara ay konektado sa WiFi at binuo upang magkaroon ng isang bukas na protocol ng mensahe. Nangangahulugan ito na maaari kang pumili
IoT Mains Controller. Bahagi 9: IoT, Home Automation: 10 Hakbang (na may Mga Larawan)
IoT Mains Controller. Bahagi 9: IoT, Pag-aautomat ng Bahay: PagwawaksiBASAHIN ANG UNANG ITO Itinaturo ang detalyeng ito ng isang proyekto na gumagamit ng mains power (sa ganitong pagkakataon UK 240VAC RMS), habang ang bawat pangangalaga ay ginawang gamitin upang ligtas na kasanayan at mahusay na mga prinsipyo sa disenyo ay laging may peligro ng potensyal na nakamamatay hinirang