- ESP viedais spraudnis mājas automatizācijai
- Nepieciešamie materiāli
- Viedā spraudņa programma priekš ESP8266
- Ķēdes shēma
- 3D iespiests korpuss viedajai kontaktligzdai
Kopš sāku strādāt ar ESP Wi-Fi moduļiem, es vienmēr gribēju izveidot viedo Wi-Fi kontaktligzdu, kas ļauj bezvadu režīmā kontrolēt maiņstrāvas slodzes, izmantojot viedtālruni. Kaut arī šādi produkti jau ir pieejami tirgū, piemēram, populārais Moko WiFi Smart Plug vai Sonoff, tie ir nedaudz dārgi, un papildus tam tas nedod jums prieku veidot savu. Tātad, šajā projektā es jums parādīšu, kā jūs varat izveidot savu viedo spraudni, izmantojot ESP8266 Wi-Fi moduli. Ierīci, kuru mēs uzbūvējām, var viegli pievienot jebkurai izejošai maiņstrāvas kontaktligzdai, un pēc tam otrā galā jūs varat pieslēgt faktisko slodzi, vienkārši pievienojot to šai mūsu ierīces kontaktligzdai. Pēc tam vienkārši vienmēr ieslēdziet kontaktligzdas galveno slēdzi, un jūs varat kontrolēt savu slodzi tieši no viedtālruņa. Jautri, vai ne? Iesimies projektā…
ESP viedais spraudnis mājas automatizācijai
Mēs jau esam izveidojuši dažus mājas automatizācijas projektus, sākot no vienkāršas RF bāzes mājas automatizācijas līdz manai iecienītajai Google asistenta balss kontrolētajai mājas automatizācijai. Bet šodien šī projekta prasības ir nedaudz atšķirīgas.
Šeit mērķis ir ieslēgt / izslēgt manu Wi-Fi maršrutētāju, vienkārši izmantojot viedtālruni tieši no manas darbstacijas. Tā kā reizēm mans interneta savienojums pazeminās un, zvanot uz klientu apkalpošanu, saņemu standarta atbildi: “Kungs, atvainojos par sagādātajām neērtībām. Lūdzu, restartējiet maršrutētāju, izslēdzot to un pēc tam pēc dažām sekundēm atkal ieslēdzot ” Puffff! Apnicis katru reizi iet uz maršrutētāju, es nolēmu izveidot šo wifi viedo spraudni un kontrolēt savu maršrutētāju, izmantojot to.
Bet, pagaidiet minūti! Pēc izslēgšanas maršrutētājā man vairs nebūs piekļuves internetam. Tātad, kā es to atkal ieslēgšu atpakaļ attālināti? Par laimi, mūsu ESP8266 var izmantot kā piekļuves punktu, tas nozīmē, ka tas var darboties arī kā maršrutētājs, nosūtot savu Wi-Fi signālu. Šis Wi-Fi signāls vienmēr būs pieejams, kamēr ESP8266 tiks darbināts. Tādējādi mēs ieprogrammēsim savu ESP8266 kā fiksētu portālu, tādā veidā, kad būsim izveidojuši savienojumu ar ESP Wi-Fi signālu, mēs tiksim novirzīti uz tīmekļa lapu, no kuras varēsim ieslēgt / izslēgt slodzi.
Nepieciešamie materiāli
1. ESP8266 Wi-Fi modulis
2. Hi-Link maiņstrāvas līdz līdzstrāvas pārveidotājs (3,3 V)
3. 3V relejs
4. NPN tranzistors BC547
5. FTDI programmētāja modulis
6. Arduino Wi-Fi vairogs
7. Savienojošie vadi
Piezīme. Mēs izmantojam šo Arduino Wi-Fi Shield, kuru mēs izveidojām agrāk. Dēlis tiek izmantots tikai Arduino koda augšupielādēšanai ESP8266 modulī. Ja jums nav šīs plates, varat to izveidot vai nu, izmantojot saiti, izmantojot šo vienkāršo ESP8266 programmētāja shēmu, lai augšupielādētu kodu.
Viedā spraudņa programma priekš ESP8266
Pirms turpināt darbu, ienirsim tieši programmā, lai saprastu, kā darbosies mūsu DIY WiFi viedais spraudnis. Kā redzat šeit, mēs sākam programmu, iekļaujot dažus galvenes failus un izveidojot DNS tīkla serveri
# iekļaut
Tad mēs inicializējam ESP GPIO tapu 2 kā izvadi, kas tiks izmantota mūsu slodzes kontrolei. Pēc tam mūsu vietnei ir garš HTML kods. Šeit mūsu tīmekļa vietnē ir pilnīgi trīs ekrāni, proti, sākuma ekrāns, ekrāns un izslēgts ekrāns.
String Home_Screen = "" // 1. lapa - sākuma ekrāna HTML kods "" " " + style_detials + "
""Laipni lūdzam - CircuitDigest
"" "; String ON_Screen =" "// 2. lapa - ja ierīce ir ieslēgta" "" "" + style_detials + " ""Viedais spraudnis - ieslēgts
"" "; String OFF_Screen =" "// 3. lappuse - ja ierīce ir izslēgta " " " " + style_detials + " " "Viedais spraudnis - izslēgts
" " ";Šīs trīs Web lapas pēc atvēršanas parādīsies kaut kas līdzīgs šim. Jūs varat pielāgot savu tīmekļa lapu tā, lai tā parādītos tā, kā jums patīk.
Tad mums ir tukšā iestatīšanas funkcija, kurā mēs definējam mūsu ESP darbam kā piekļuves punktam, kā arī norādām tam nosaukumu, šeit “ESP_Smart_Plug”. Kad kāds lietotājs izveidos savienojumu ar šo Wi-Fi, viņš tiks novirzīts uz sākumlapu, kuru mēs definējām iepriekš.
pinMode (LED_BUILTIN, OUTPUT); // LED tapa kā izeja indikācijas pinMode (GPIO_2, OUTPUT); // GPIO tapa kā izeja Releja vadības WiFi.mode (WIFI_AP); // ESP iestatīšana AP režīmā WiFi.softAPConfig (apIP, apIP, IPAddress (255, 255, 255, 0)); WiFi.softAP ("ESP_Smart_Plug"); // Nosauciet savu AP tīklu dnsServer.start (DNS_PORT, "*", apIP); webServer.onNotFound (() { webServer.sendHeader ("Location", String ("http://www.circuitdigest-automation.com/home.html"), true); // pēc noklusējuma atvērt sākuma ekrānu webServer.send (302, "teksts / vienkāršs", ""); });
Mājas lapā, ja lietotājs noklikšķina uz pogas IESLĒGTS, ekrāna lapa tiks parādīta un GPIO 2 tapa tiks iestatīta augstu
// ON_Screen webServer.on ("/ relay_ON", () {// Ja ieslēgšanas poga ir nospiesta digitalwrite (LED_BUILTIN, LOW); // Izslēdziet LED digitalWrite (GPIO_2, HIGH); // Izslēdziet releju webServer.send (200, "text / html", ON_Screen); // Parādīt šo ekrānu });
Līdzīgi, ja lietotājs noklikšķina uz izslēgšanas pogas, tiks parādīta ekrāna izslēgšanas lapa un GPIO 2 tapa tiks iestatīta LOW.
// OF_Screen webServer.on ("/ relay_OFF", () {// Ja tiek izslēgta poga, tiek nospiesta digitalWrite (LED_BUILTIN, HIGH); // Ieslēdziet LED digitalWrite (GPIO_2, LOW); // Ieslēdziet releju webServer.send (200, "text / html", OFF_Screen); // Parādīt šo ekrānu });
Pilnu kodu kopā ar bibliotēkas failiem var lejupielādēt kā ZIP failu no tālāk norādītās saites. Tagad, kad mūsu kods ir gatavs, mēs varam to augšupielādēt mūsu ESP modulī, vienkārši noklikšķinot uz pogas Augšupielādēt un pēc tam gaidīt koda augšupielādi. Visu programmu kopā ar bibliotēkas failiem var lejupielādēt no saites zemāk
ESP8266 viedais spraudnis - Arduino koda lejupielāde
Tie, kuriem ir Wi-Fi vairogs, var vienkārši pievienot moduļus kopā, kā parādīts iepriekš, un savienot to ar datoru, lai sāktu mūsu ESP8266 programmēšanu, izmantojot Arduino IDE. Cilvēki, kuriem nav šī paneļa, var izmantot ķēdes shēmu, kā minēts iepriekš.
Kad kods ir augšupielādēts, tālrunī meklējiet Wi-Fi tīklus, un jums jāatrod signāls ar nosaukumu “ESP_Smart_Plug”. Izveidojiet savienojumu ar to, un jūs tiksiet novirzīts uz tikko izstrādāto vietni. Šeit, nospiežot izslēgšanas pogu, vajadzētu pamanīt, ka mūsu ESP dēlī izslēdzas gaismas diode, un, nospiežot ieslēgšanas pogu, LED atkal jāiedegas.
Pēc koda verifikācijas vēl pāris reizes mums vairs nebūs vajadzīga programmētāja plāksne šim projektam. Tagad mums ir jāveido ķēde, lai mūsu ESP moduli darbinātu tieši no tīkla sprieguma, un, lai pārslēgtu releju, jāizmanto tā GPIO tapa. Lai izveidotu šo ķēdi, es izmantoju maiņstrāvas-līdzstrāvas pārveidotāja moduli no Hi-Link, kas pārveido maiņstrāvas tīkla spriegumu uz 3,3 V līdzstrāvu ar pietiekamu izejas strāvu 900mA, lai ESP moduli ieslēgtu tīklā. Izejas puses relejs ir 3,3 V relejs, kuru var vadīt ar ESP GPIO tapu, izmantojot tādu tranzistoru kā BC547. Mums būs nepieciešams arī 1k rezistors, lai ierobežotu mūsu tranzistora bāzes strāvu.
Ķēdes shēma
Pilnīga Wi-Fi viedā spraudņa shēma izskatās šādi.
Maiņstrāvas elektrotīkls mūsu projekta darbībai tiks iegūts, izmantojot šo kontaktdakšu. Pārējie komponenti ir tie, kas izskaidroja austiņu. Vēl viena svarīga lieta, kas jākoncentrējas, ir GPIO-0 un GPIO-2 uzturēšana augstā stāvoklī, kamēr tiek palaista. Cits ESP modulis ieies programmēšanas režīmā, un izejas kods nedarbosies. Tāpēc esmu izmantojis 10k (var izmantot vērtības no 3.3k līdz 10k) rezistoru, lai pēc noklusējuma GPIO tapu vilktu augstu. Varat arī izmantot PNP tranzistoru BC547 vietā un pārslēgt releju no augstās puses. Kad ķēdes shēma bija gatava, es plānoju, kā lodēt šos komponentus, saglabājot pēc iespējas mazāku dēļu izmēru, lai tas ietilptu mazā korpusā un būtu apstrādāts ar dēļa lodēšanu.
3D iespiests korpuss viedajai kontaktligzdai
Pēc tam es izmērīju tāfeles izmērus, izmantojot savu vernieru, kā arī izmērīju kontaktdakšas un kontaktligzdas izmērus, lai izveidotu sava viedā kontaktdakšas korpusu. Mans dizains izskatījās apmēram šādi zemāk, kad tas tika izdarīts.
Pēc tam, kad es biju apmierināts ar dizainu, es to eksportēju kā STL failu, sagriezu šķēlēs, pamatojoties uz printera iestatījumiem, un beidzot to izdrukāju. Atkal STL fails ir pieejams lejupielādei no thingiverse, un jūs to varat izdrukāt pats.
Pēc izdrukas izdarīšanas es biju diezgan apmierināta ar rezultātu. Tad es turpināju pievienot vadus savai dēlim un arī pieskrūvēju tos strāvas spailēm un kontaktligzdai. Ar visu izveidoto savienojumu es samontēju ķēdi manā apvalkā, un viss bija lieliski piemērots, kā jūs varat redzēt šeit.
Kad viedais spraudnis bija gatavs darbībai, es devos uz savu maršrutētāju un izsekoju tā vadu, lai atrastu tā adapteri. Tad es to noņēmu no kontaktligzdas un viedo spraudni pievienoju tai pašai kontaktligzdai un ieslēdzu. Tagad es pievienoju adapteri atpakaļ mūsu viedajam spraudnim un līdzīgi to varu kontrolēt no sava tālruņa. Tādā pašā veidā jūs varat kontrolēt jebkuru zemas jaudas maiņstrāvas slodzi jūsu mājās un izklaidēties.
Pilnu kodu var lejupielādēt šeit, un šīs DIY viedās kontaktligzdas darba video ir atrodams šīs lapas apakšdaļā. Ceru, ka jums patika projekts, komentāru sadaļā dariet man zināmu, ko jūs automatizētu ar šo ierīci. Ja jums ir kādi jautājumi, atstājiet tos forumā, un es centīšos darīt visu iespējamo, atbildot uz tiem.