- Endoll intel·ligent ESP per a domòtica
- Materials necessaris
- Programa Smart Plug per a ESP8266
- Esquema de connexions
- Carcassa impresa en 3D per endoll intel·ligent
Des que vaig començar a treballar amb els mòduls Wi-Fi ESP, sempre vaig voler crear un sòcol Wi-Fi intel·ligent que em permetés controlar les càrregues de CA sense fils a través del telèfon intel·ligent. Tot i que productes com aquests ja estan disponibles al mercat, com el popular Moko WiFi Smart Plug o Sonoff, són una mica cars i, a més, no us dóna l’alegria de construir els vostres. Per tant, en aquest projecte us mostraré com podeu construir el vostre propi endoll intel·ligent mitjançant el mòdul Wi-Fi ESP8266. El dispositiu que vam construir es pot connectar fàcilment a qualsevol endoll de CA que surti i, a l’altre extrem, podeu connectar la càrrega real simplement connectant-lo a aquest endoll del nostre dispositiu. Després, només cal que mantingueu l'interruptor principal del sòcol sempre activat i pugueu controlar la càrrega directament des del telèfon intel·ligent. Diversió no? Així que entrem en el projecte…
Endoll intel·ligent ESP per a domòtica
Ja hem construït un grapat de projectes domòtics, des de la domòtica simple basada en RF fins a la meva domòtica controlada per veu basada en el meu assistent de Google preferit. Però avui, el requisit d’aquest projecte és lleugerament diferent.
Aquí, el propòsit és activar / desactivar el meu encaminador Wi-Fi només fent servir el telèfon intel·ligent directament des de la meva estació de treball. Com que de vegades la meva connexió a Internet disminueix i quan truca al meu servei d’atenció al client, la resposta estàndard que obtinc és “Senyor, em sap greu les molèsties causades. Reinicieu el router, apagueu -lo i torneu-lo a engegar al cap de pocs segons ” Puffff! Cansat de caminar cap al router cada vegada, vaig decidir construir aquest endoll intel·ligent wifi i controlar-lo mitjançant el router.
Però, espereu un minut! Ja no tindré accés a Internet un cop apagui el router. Llavors, com ho tornaré a engegar de forma remota? Per sort, el nostre ESP8266 es pot utilitzar com a punt d’accés, és a dir, també pot actuar com un enrutador enviant el seu propi senyal wi-fi. Aquest senyal Wi-Fi sempre estarà disponible sempre que l’ESP8266 estigui alimentat. Per tant, programarem el nostre ESP8266 com a portal captiu, d’aquesta manera, un cop connectats al senyal Wi-Fi de l’ESP, ens dirigiran a una pàgina web des d’on podem activar / apagar la nostra càrrega.
Materials necessaris
1. Mòdul Wi-Fi ESP8266
2. Convertidor de corrent altern a corrent continu (3,3 V)
3. Relleu de 3V
4. Transistor NPN BC547
5. Mòdul de programador FTDI
6. Escut Wi-Fi Arduino
7. Connexió de cables
Nota: Estem utilitzant aquest Arduino Wi-Fi Shield que hem creat anteriorment. La placa només s’utilitza per carregar el codi Arduino al mòdul ESP8266. Si no teniu aquesta placa, podeu construir-ne una mitjançant l’enllaç d’ús d’aquest senzill circuit de programador ESP8266 per carregar el vostre codi.
Programa Smart Plug per a ESP8266
Abans de continuar, bussegem directament al programa per entendre com funcionarà el nostre endoll intel·ligent WiFi DIY. Com podeu veure aquí, comencem el programa incloent pocs fitxers de capçalera i configurant un servidor de xarxa DNS
#incloure
A continuació, inicialitzem el pin 2 GPIO d’ESP com a sortida que s’utilitzarà per controlar la nostra càrrega. Després, tenim un llarg codi HTML per a la nostra pàgina web. Aquí tenim totalment tres pantalles a la nostra pàgina web: la pantalla d’inici, la pantalla en pantalla i la pantalla desactivada.
Cadena Pantalla_inici = "" // Pàgina 1: codi HTML de la pantalla inicial "" " " + style_detials + "
""Benvingut: CircuitDigest
"" "; String ON_Screen =" "// Pàgina 2 - Si el dispositiu està engegat" "" "+ style_detials +" ""Endoll intel·ligent: activat
"" "; String OFF_Screen =" "// Pàgina 3 - Si el dispositiu està APAGAT " " " " + style_detials + " " "Endoll intel·ligent: apagat
" " ";Aquestes tres pàgines web en obrir-se apareixeran així. Podeu personalitzar la vostra pàgina web perquè aparegui com vulgueu.

A continuació, tenim la nostra funció de configuració del buit dins de la qual definim el nostre ESP perquè funcioni com a punt d'accés i també li proporcionem un nom, aquí "ESP_Smart_Plug". Quan qualsevol usuari es connecti a aquesta xarxa Wi-Fi, es dirigirà a la pàgina inicial que hem definit anteriorment.
pinMode (LED_BUILTIN, OUTPUT); // Pin LED com a sortida per a la indicació pinMode (GPIO_2, OUTPUT); // Pin GPIO com a sortida per al control de relés WiFi.mode (WIFI_AP); // Estableix ESP en mode AP WiFi.softAPConfig (apIP, apIP, IPAddress (255, 255, 255, 0)); WiFi.softAP ("ESP_Smart_Plug"); // Poseu un nom a la vostra xarxa AP dnsServer.start (DNS_PORT, "*", apIP); webServer.onNotFound (() { webServer.sendHeader ("Ubicació", cadena ("http://www.circuitdigest-automation.com/home.html"), cert); // Obre la pantalla inicial per defecte webServer.send (302, "text / normal", ""); });
A la pàgina inicial, si l’usuari fa clic al botó ON, es mostrarà la pàgina de la pantalla i el PIN GPIO 2 s’establirà com a alt
// ON_Screen webServer.on ("/ relay_ON", () {// Si es prem activar el botó digitalWrite (LED_BUILTIN, LOW); // Apagueu el LED digitalWrite (GPIO_2, HIGH); // Desactiveu el relé webServer.send (200, "text / html", ON_Screen); // Mostra aquesta pantalla });
De la mateixa manera, si l'usuari fa clic al botó apagat, es mostrarà la pàgina de pantalla desactivada i el pin GPIO 2 es posarà BAIX
// OF_Screen webServer.on ("/ relay_OFF", () {// Si es prem el botó de desactivació digitalWrite (LED_BUILTIN, HIGH); // Activa el LED digitalWrite (GPIO_2, LOW); // Activa el relé webServer.send (200, "text / html", OFF_Screen); // Mostra aquesta pantalla });
El codi complet juntament amb els fitxers de la biblioteca es poden descarregar com a fitxer ZIP des de l’enllaç que es mostra a continuació. Ara que el nostre codi està a punt, podem carregar-lo al nostre mòdul ESP simplement fent clic al botó de càrrega i després esperar que es carregui el codi. El programa complet juntament amb els fitxers de la biblioteca es poden descarregar des de l'enllaç següent
Connector intel·ligent ESP8266: descàrrega de codi Arduino

Aquells que tinguin l’escut Wi-Fi només poden connectar els mòduls junts com es mostra a la part superior i connectar-lo a l’ordinador per començar a programar el nostre ESP8266 mitjançant l’IDE Arduino. Les persones que no tinguin aquesta placa poden fer servir el diagrama del circuit com s’ha esmentat anteriorment.
Un cop carregat el codi, cerqueu xarxes Wi-Fi al telèfon i heu de trobar un senyal anomenat "ESP_Smart_Plug". Connecteu-hi i us dirigirà a la pàgina web que acabem de dissenyar. Aquí quan premeu el botó d’apagat, haureu de notar que el LED de la nostra placa ESP s’apaga i quan premeu el botó d’encesa, el LED s’hauria d’encendre de nou.

Després de verificar el codi unes quantes vegades més, ja no necessitarem la placa de programador per a aquest projecte. Ara, hem de construir un circuit per alimentar el nostre mòdul ESP directament des de la tensió de xarxa i utilitzar el seu pin GPIO per commutar un relé. Per construir aquest circuit he utilitzat un mòdul convertidor AC-DC d’Hi-Link que converteix la tensió de xarxa de CA a 3,3V CC amb un corrent de sortida de 900 mA suficient per encendre el mòdul ESP a través de la xarxa. El relé de sortida és un relé de 3,3 V que es pot controlar mitjançant el pin GPIO de l’ESP mitjançant un transistor com aquest BC547. També necessitarem una resistència de 1 k per limitar el corrent base del nostre transistor.
Esquema de connexions
El diagrama complet del circuit per a un endoll intel·ligent Wi-Fi seria així.

La xarxa elèctrica de corrent altern per alimentar el nostre projecte s’obtindrà mitjançant aquest endoll. Els altres components són els que van explicar eariler. Una altra cosa important a concentrar-se és mantenir el GPIO-0 i el GPIO-2 alts durant l’arrencada. Altrament, el mòdul ESP entrarà en mode de programació i el codi de sortida no funcionarà. Per tant, he utilitzat una resistència de 10k (es poden utilitzar valors entre 3,3k i 10k) per treure el pin GPIO per defecte. Alternativament, també podeu utilitzar un transistor PNP en lloc de BC547 i canviar el relé des del costat alt. Amb el diagrama de circuits preparat, vaig planejar com soldar aquests components mantenint la mida de la placa tan petita com sigui possible perquè s’adapti a una carcassa petita i procedint a soldar la placa.
Carcassa impresa en 3D per endoll intel·ligent
A continuació, vaig mesurar les dimensions de la placa amb el meu vernier i també vaig mesurar les dimensions de l'endoll i el sòcol per dissenyar una carcassa per al meu endoll intel·ligent. Un cop acabat, el meu disseny tenia un aspecte semblant a continuació.

Després d’estar satisfet amb el disseny, el vaig exportar com a fitxer STL, el vaig tallar segons la configuració de la impressora i finalment el vaig imprimir. Una vegada més, el fitxer STL també està disponible per descarregar-lo des de thingiverse i podeu imprimir-ne la vostra pròpia carcassa.

Un cop feta la impressió, vaig quedar força satisfet amb el resultat. Després vaig procedir a afegir els cables a la meva placa i també els vaig cargolar als borns d’alimentació i al sòcol. Amb la connexió completa feta, vaig muntar el circuit a la meva carcassa i tot va anar bé, com podeu veure aquí.

Amb el meu endoll intel·ligent a punt per accionar, vaig anar al router, vaig localitzar el cable per trobar el seu adaptador. Després l’he tret del sòcol i he connectat l’endoll intel·ligent al mateix sòcol i l’he engegat. Ara he tornat a connectar l’adaptador al nostre endoll intel·ligent i, d’aquesta manera, el puc controlar des del meu telèfon. De la mateixa manera, podeu controlar qualsevol càrrega de CA de baixa potència a casa vostra i divertir-vos.

Es pot descarregar el codi complet des d’aquí i es pot trobar el vídeo de treball d’aquest endoll de corrent intel·ligent de bricolatge a la part inferior d’aquesta pàgina. Espero que us hagi agradat el projecte, feu-me saber a la secció de comentaris què automatitzaria amb aquest dispositiu. Si teniu alguna pregunta, deixeu-les al fòrum i faré tot el possible per respondre-les.
