Si predstavljate nekaj vklopite ali izklopite na daljavo? Lahko vklopite ogrevanje ali ga izklopite, če ste ga pomotoma pustili, lahko pa tudi odprete ali zaprete žaluzije, če imate samodejne, ali pa svojo hišo naredite na primerni temperaturi tako, da od koder koli upravljate s klimatsko napravo. No, to je tisto SONOFF.
Na primer, eden od lahko najdete na trgu je Itead Sonoff. Gre za napravo, ki temelji na modulu ESP8266, kar se vam bo zagotovo zdelo znano, če izdelujete in z Arduinom ustvarjate DIY projekte. Gre za zelo priljubljen WiFi modul, ki smo mu že posvetili poseben članek v Hwlibreju. K temu modul so dodali rele da deluje na priključenih napravah in tako lahko stvari izklopi ali vklopi prek WiFi-ja.
Kaj je sonoff?
Un Sonoff je pametno stikalo WiFi za daljinsko vklop in izklop električne naprave. Ta naprava omogoča povezavo z internetom prek usmerjevalnika WiFi v vašem domu ali pisarni. Iz katere koli naprave, povezane z omrežjem in kjer koli, lahko z njo upravljate svoje naprave.
Veliko komercialnih sonofov ima svojo aplikacijo za Android ali iOS ki omogočajo enostaven nadzor. Na primer, Sonoff Basic ima aplikacijo eWeLink. Poleg tega vam v mnogih teh aplikacijah omogočajo tudi nastavitev časovnikov, tako da se aktivirajo ob določenem času. To na primer omogoča, da lahko zdaj na počitnicah, ko vas ni doma, programirate tako, da se radio vklopi in izklopi ali dvignejo žaluzije in videz, da je hiša zasedena, da se izognete kraji ...
Poleg tega nekateri komercialni Sonoffs izvajajo funkcije, tako da jih lahko povežete s senzorji in da so naprave vklopljene ali izklopljene, odvisno od temperature, zvoka, senzorja prisotnosti, vlažnosti itd. To je lahko koristno za namakalni sistem na vrtu, za pravilno klimatizacijo hiše itd. Tudi nekateri modeli, zasnovani za avtomatizacijo doma, so združljivi z Amazon Alexa / Echo, Google Home itd.
Drugi dodatki
Poleg sonofe, obstajajo še druge naprave ki vas lahko zanimajo kot dopolnilo, kot so vtičnice WiFi, vtičnice za žarnice WiFi, stikala WiFi, prehod WiFi-RF, postaja SC-WiFi itd., ki so popolna dopolnila za vaš rele ali sonoff WiFi.
Naredite svoj Sonoff z Arduinom in modulom ESP8266 (enostavno)
Kljub temu, da ste zelo preprosta in poceni naprava, vas nakup morda ne bo vedno zanimal. Če se ukvarjate z izdelovanjem in želite ustvariti lastne DIY projekte, namesto da kupujete komercialno sonoff, lahko ustvarite sami. To bi se zgodilo z uporabo relejnega modula za Arduino in modula WiFi. Na ta način boste imeli svoj projekt povezan in pripravljen za delovanje na releju, ki bo zadolžen za prekinitev ali priključitev visokonapetostne naprave.
Druga možnost je kramp Sonoff že storjeno za uvajanje novih funkcionalnosti. Za to je najboljša možnost, ki jo imate, itead sonoff. Na primer Ni najdenih izdelkov, naprava kitajskega podjetja, usmerjenega v proizvajalce. Naprava je zelo dobro dokumentirana in zato jo je mogoče zlahka vdreti, da jo spremenite in prilagodite svojim projektom. Z uporabo sistema ESP8266 bo vse lažje in vključuje lastno aplikacijo za nadzor mobilnih naprav.
Ustvarite preprost Sonoff z Arduinom
Mogoče vam bo lažje ustvarite svoj Sonoff z Arduinom spremeniti vdelano programsko opremo Itead. Uporaba naprave Itead in drugih že pripravljenih naprav je zelo preprosta, vendar je velika razlika le pri njihovi uporabi in spreminjanju vdelane programske opreme. Torej vas morda zanima preprost način, da Sonoff ustvarite sami.
Kaj potrebuješ
Vsi kar potrebuješ za ta projekt je:
- Arduino UNO, ali pa bi bilo vredno tudi drugega krožnika.
- Breadboard ali PCB, če boste spajkali.
- Modul ESP8266
- Relejni modul
- Ožičenje za povezave
- PC z Arduino IDE in kablom za programiranje
- Električna naprava, ki jo želite upravljati prek WiFi-ja
Gradnja po korakih
Za začetek zgradite svoj domači Sonoff sledite temu vodnik po korakih:
- Ko imate vse elemente, jih morate pravilno priklopite shemo kot je prikazano na sliki. Ne pozabite, da sem tam, kjer sem dal »Naprava«, priključil tisto, kar želite nadzorovati: štedilnik, ventilator, televizor, žarnica, ... in vtič mora napajati omenjeno napravo. Kot lahko vidite, je treba narediti tako, da prekinete eno od prevodnih žic, ki gredo do naprave, in vstavite rele, da deluje kot stikalo. Če imate vprašanja o povezavi, si oglejte naše priročnike:
- Zdaj je naslednje program v Arduino IDE da bo pravilno delovalo. Če ste začetnik, lahko tudi prenesite PDF našega programskega priročnika za Arduino. Preprost primer kode za nadzor releja in rdečih, zelenih in modrih LED bi bil:
#include <SoftwareSerial.h> #define DEBUG true SoftwareSerial esp8266(2,3); void setup() { SSSerial.begin(19200); esp8266.begin(19200); pinMode(10,OUTPUT); digitalWrite(10,LOW); pinMode(11,OUTPUT); digitalWrite(11,LOW); pinMode(12,OUTPUT); digitalWrite(12,LOW); pinMode(13,OUTPUT); digitalWrite(13,LOW); sendData("AT+RSTrn",2000,DEBUG); sendData("AT+CWMODE=2rn",1000,DEBUG); sendData("AT+CIFSRrn",1000,DEBUG); sendData("AT+CIPMUX=1rn",1000,DEBUG); sendData("AT+CIPSERVER=1,80rn",1000,DEBUG); } void loop() { if(esp8266.available()) { if(esp8266.find("+IPD,")) { delay(1000); int connectionId = esp8266.read()-48; esp8266.find("pin="); int pinNumber = (esp8266.read()-48)*10; pinNumber += (esp8266.read()-48); digitalWrite(pinNumber, !digitalRead(pinNumber)); String closeCommand = "AT+CIPCLOSE="; closeCommand+=connectionId; closeCommand+="rn"; sendData(closeCommand,1000,DEBUG); } } } String sendData(String command, const int timeout, boolean debug) { String response = ""; esp8266.print(command); long int time = millis(); while( (time+timeout) > millis()) { while(esp8266.available()) { char c = esp8266.read(); response+=c; } } if(debug) { Serial.print(response); } return response; }
Ko je enkrat priključen na Arduino IDE in programiran skozi serijska vrata, bi moralo vse delovati v redu. Čeprav lahko uporabljate serijski monitor, bi morali ustvariti preprostejši spletni vmesnik ali majhno aplikacijo za iOS ali Android. V primeru HTML koda To je lažje in bilo bi nekaj takega, tako bi lahko iz brskalnika upravljali vklop ali izklop LED in naprave, povezane z relejem:
<html> <head> <title>Control con Sonoff</title> </head> <body> <button id="10" class="led">A</button> <button id="11" class="led">LED AZUL</button> <button id="12" class="led">LED VERDE</button> <button id="13" class="led">LED ROJO</button> <script src="jquery.min.js"> </script> <script type="text/javascript"> $(document).ready(function(){ $(".led").click(function(){ var p = $(this).attr('id'); $.get("http://XXX.XXX.X.X:80/", {pin:p}); }); }); </script> </body> </html>
Zapišete ga lahko v kateri koli urejevalnik besedil in shranite z imenom nadzor.html. Ne pozabite, da morate za dobro delovanje http: //XXX.XXX.XX: 80 nadomestiti z ustrezen IP v vašem primeru, to je tista, dodeljena ESP8266 v vašem omrežju WiFi ... Po drugi strani pa, če želite zamenjati oznako naprave A z imenom naprave, ki jo uporabljate, in jo narediti bolj intuitivno, to storite ...
Zdaj, če odprete to control.html z kateri koli spletni brskalnik lahko upravlja vaš Sonoff. S klikom na gumbe boste videli, kako deluje vaše vezje.
Spreminjanje vdelane programske opreme Sonoff (napredno)
Druga operacija, ki jo lahko izvedete, čeprav za večino uporabnikov zaradi svoje zapletenosti ni priporočljiva, je spreminjanje datoteke Itead sonoff vdelana programska oprema. Možno je, vendar vključuje veliko korakov in je zapleteno, če v resnici ne veste, kaj počnete. Za idejo vam zapuščam tisto, kar bi potrebovali, in bistvene korake, pa tudi povezave do vdelane programske opreme in celotna navodila, če bi si upali po branju bistvenih korakov ...
Uporaba ESPurna
Kaj potrebuješ
Če želite uporabiti Itead Sonoff in ga programirati, potrebovali boste naslednje elemente:
- Itead Sonoff WiFi Basic
- FTDI ali TTL adapter in kabel (USB / serijski zatiči)
- Izvijač
- Drugi elementi, potrebni za vaš projekt
- Računalnik za programiranje
Spreminjanje vdelane programske opreme Itead Sonoff WiFi Basic (osnovni koraki)
Če želite spremeniti Itead Sonoff, ga morate kupiti in sledite naslednjim korakom:
Pred uporabo naprave se prepričajte, da je odklopljena. Ko je povezan z omrežjem, ni priporočljivo manipulirati z relejem ali vezjem, saj boste delali z izmeničnim tokom pri 220v in ni neškodljiv enosmerni tokokrog, ki deluje pri nizkih napetostih ...
- S Sonoffa odstranite plastični pokrovček za dostop do notranjega vezja. Z izvijačem lahko najprej odstranite stranske pokrove, nato pa prilepite spoj, ki povezuje oba dela glavnega ohišja, dokler ga ne odstranite.
- Če pogledate vezje pred seboj, jih je mogoče zelo dobro razlikovati deli modula ESP8266:
- Električni elementi okoli releja so iz pretvornika AC / DC.
- Kvadratna črna komponenta je rele, ki deluje pri 5v (krmilni del) in 220v (izhod).
- V sredini je nekaj zaporednih priključkov. Z njimi lahko programirate mikrokrmilnik ali povežete več elementov. Na GPIO14 lahko priključite pogone ali senzorje.
- Poleg zatičev boste videli tudi gumb. Pritisnite ga, da spremenite nastavljene načine.
- LED, ki označuje delovanje in način ali stanje, v katerem je.
- In dva zelena priključka na vsakem koncu PBC. Eden od njih je vhod, drugi pa izhod. Releju je najbližji AC vhod, torej tam, kjer je naprava priključena na električno omrežje. Druga je vtičnica, kamor lahko priključite napravo, ki jo želite izklopiti ali vklopiti. Ne pozabite, da podpira do 10A, to je porabo 2,2kW za 220v.
- Zdaj boste s programom povezali nožice za nalaganje. Za njo potrebovali boste FTDI ali TTL, ki vam omogoča, da te nožice priključite na USB v računalniku. Toda poleg tega, da ga povežete, ne pozabite, da ima integrirani mikrokrmilnik dva načina delovanja, način UART in način FLASH. Način UART omogoča nalaganje programa in FLASH za njegovo izvajanje. Če želite v način UART napisati program, morate v določena stanja postaviti nožici GPIO0 (LOW) in GPIO2 (HIGH). Program se bo naložil skozi nožici z oznakama RX in TX. Seveda boste morali uporabiti tudi napajalne zatiče 3v3 in GND, pa tudi tipko GPIO0, LED ali GPIO13 in rele na GPIO12.
- Ko pravilno vzpostavite povezavo in imate kabel USB za povezavo z računalnikom, lahko začnete s samim programiranjem. Zapomnite si, kdaj FTDI morate prečkati povezave RX in TX, to je RX od Itead do TX od FTDI in obratno.
- Kasneje bi šlo za uporabo Arduino IDE da ustvarite potrebno kodo za nadzor, ki ga želite narediti (za snemanje morate izbrati ploščo ESP8266 kot mikrokrmilnik). Lahko vam tudi pomaga vdelano programsko opremo, ki jo je razvil Xose Pérez. Imenuje se ESPurna in je specifičen za Sonoff WiFi. Z nadzorno ploščo lahko nadzorujete omrežne in varnostne parametre.
- Na koncu, ko ga imate, lahko vrnete nožice GPIO0 in GPIO2 v stanje High High za vrnitev v način FLASH in zagon programa.
- Ko končate, lahko vzpostavite prave povezave na vašem Sonoffu da povežete želene naprave in jim omogočite napajanje. V aplikaciji lahko nadzorujete vse ...
Več informacij - Enostavno programiranje
Uporaba Tasmote
Če želite to narediti z Tasmoto namesto z ESPurna, splošni koraki če bi to storili, bi bili:
- Najprej morate odpreti primer Itead Sonoff kot v prejšnjem primeru.
- Nato spajkajte ožičenje ali zatiče, da boste lahko vzpostavili napajalne povezave in adapter USB-UART TTL.
- Pojdite na Arduino IDE in v Orodjih morate namesto tega izbrati ploščo ESP8266 Arduino UNO ali tisto, ki jo imate privzeto. Namestite novo ploščo.
- Zdaj prenesi Tasmota in ga pravilno namestite za integracijo z Arduino IDE.
- Zdaj je čas, da svoj program programirate in konfigurirate, kot želite, in ga shranite na matično ploščo ... Ko končate, lahko komponente priključite na sonoff, kot v primeru ESPurna.
Več informacij - Domača avtomatizacija
Spletni strežnik ne deluje in se ne naloži v brskalnik.
Pozdravljeni John,
Mislite, ko vnesete IP v svoj spletni brskalnik? Ste se prepričali, da ste v lokalnem omrežju nastavili pravilen IP? Javni IP ni veljaven. To mora biti tisti, ki je dodeljen sonofi. Poleg tega morate v html kodi tudi zamenjati X z ustreznim IP-jem.
Lep pozdrav!
Pravzaprav sem naredil oboje, toda v trenutku, ko naložim IP v brskalnik, mi to povzroči neuspešno povezavo. Tudi ko zaženem spletni strežnik, se ta ne naloži v obliki gumbov, temveč v besedilu.
Pozdravljeni John,
Zame deluje pravilno, ne razumem, zakaj se ti to zgodi ...
Raziskal bom in če bom našel težavo, vas bom obvestil.
Pozdrav in hvala za branje
Pozdravljeni,
Ne razumem, da pri knjižnicah, ki jih imamo, uporabljate kode AT….
Prav tako ne vidim, da uporabljate način WIFI ESP8266, ki je v središču tega članka.
Dajte čistejši in jasnejši primer in videli boste, da bo projekt razumel.
Pozdrav.
Pozabil sem,
Če je tisto, kar želite, rele, ga ESP8266 nadzoruje sam, če želite naložiti vdelano programsko opremo, uporabite Arduino.
Še en pozdrav.
Sledil sem vsem tvojim korakom in zame ne deluje, kako vedeti, kateri IP je bil dan mojemu ESP8266