- Requisits previs:
- Concepte de treball:
- Programa IDE Arduino per a ESP8266:
- Diagrama de circuit i maquinari:
- Reenviament de ports del vostre IP ESP8266:
- Instal·lació de l'aplicació Moni Android:
- Creació de miniaplicacions mitjançant el servei IFTTT:
- Proves del projecte:
Benvingut a un altre emocionant projecte en què construirem un sistema domòtic controlat per veu mitjançant el mòdul Wi-Fi ESP8266, on podreu controlar els aparells domèstics de CA mitjançant la vostra aplicació Voice des d’una aplicació per a Android des de qualsevol part del món. Sí, el vostre somni de fer que les vostres càrregues (Light / Fans) s’encenguin o s’apagin simplement amb una ordre de veu es farà realitat al final d’aquest projecte. Aquest projecte és la variació del nostre projecte anterior Smart Junction Box per a domòtica, on hem controlat els electrodomèstics mitjançant el servidor web a través de la xarxa.
Aquest projecte de domòtica controlada per veu basat en IOT és molt fàcil de construir i no us costa molt, ja que no requereix que compreu mòduls de veu costosos. Tot el projecte va trigar uns 500INR (8 USD) a construir-lo. A més, es tracta d’un projecte independent de microcontroladors, és a dir, que no necessiteu cap MCU / MP com Arduino o Raspberry pi. Tot el projecte s'executa al mòdul ESP8266. Obteniu més informació sobre ESP8266 aquí. Comencem, doncs, a parlar….
Anteriorment hem tractat molts tipus de domòtica mitjançant diferents tecnologies com:
- Domòtica basada en DTMF
- Domòtica basada en GSM mitjançant Arduino
- Domòtica controlada per PC mitjançant Arduino
- Domòtica controlada per Bluetooth mitjançant 8051
- Domòtica IR controlada a distància mitjançant Arduino
- projecte domòtic mitjançant MATLAB i Arduino
- LEDs controlats a distància mitjançant RF mitjançant Raspberry Pi
- Domòtica controlada per telèfon intel·ligent mitjançant Arduino
Requisits previs:
Aquest projecte és una continuació del nostre projecte anterior Smart Junction Box per a la domòtica que utilitza ESP8266, de manera que la major part del maquinari ja s'ha tractat en aquest tutorial. Si us plau, llegiu-ho abans de continuar amb aquest, ja que ometré la informació coberta en aquest tutorial. Per fer un petit resum del nostre projecte anterior, vam modificar una caixa de connexions (Extension Board) en aquest tutorial que podia consolar una placa Perf composta de dos relés i el mòdul ESP8266. Els dos relés (càrregues de CA) es poden canviar mitjançant una pàgina web creada per l’ESP8266 (actuant com a servidor web). En aquest tutorial només hi afegiré algunes funcions perquè puguem controlar les càrregues de CA mitjançant l'ordre de veu a través del telèfon intel·ligent.No cobrirem cap part de maquinari en aquest tutorial; el maquinari i el codi seguiran sent els mateixos que el tutorial anterior.
Saber utilitzar www.IFTTT.com també us donarà un avantatge en aquest projecte. Si no esteu familiaritzat amb IFTTT, no us preocupeu, us explicaré com utilitzar-lo per a aquest tutorial en concret perquè pugueu funcionar.
Concepte de treball:
Suposo que heu llegit el tutorial anterior, en aquest cas ara hauríeu de saber com construir aquest quadre de connexió i com canviar les càrregues de manera remota des del navegador web. Per fer-ho possible, hem posat a disposició pública la nostra adreça IP assignada a l’ESP8266. Això es pot fer amb la "tècnica de reenviament de ports". A continuació, instal·leu una aplicació mòbil anomenada "Moni" al dispositiu mòbil Android / IPhone. Aquesta aplicació reconeixerà el nostre discurs i comunicarà la informació als applets IFTT que, al seu torn, controlaran les càrregues mitjançant els ganxos web Maker.
Pot semblar una mica tediós, però totes aquestes coses s’han explicat amb claredat en aquest tutorial i confieu en mi amb pocs clics. Aquest tutorial us ajudarà de la millor manera possible amb l'ajut d'imatges i vídeos. Al final d’aquest tutorial, podreu encendre o apagar els electrodomèstics a través de la vostra veu des de qualsevol part del món. Consulteu el codi complet i el vídeo de demostració al final del tutorial.
Comproveu també els llums controlats per veu mitjançant Raspberry Pi i l’escriptura de veu en pantalla LCD de 16 x 2.
Programa IDE Arduino per a ESP8266:
Igual que en el projecte anterior, programarem el nostre mòdul ESP8266 amb l'ajut de l'IDE Arduino. Hi ha una lleugera modificació al programa. Aquesta modificació es fa perquè el vostre ESP8266 es connecti a una adreça IP constant cada vegada que estableixi una connexió amb el router. El programa és exactament el mateix que el codi anterior, excepte aquestes quatre línies
// Obteniu una IP constant cada vegada que la vostra adreça IP és IP (192, 168, 0, 104); // Aquesta hauria de ser la IP del meu mòdul ESP passarel·la IPAddress (192, 168, 0, 1); // configureu la passarel·la perquè coincideixi amb la vostra xarxa la majoria de la passarel·la serà la mateixa per defecte Serial.print (F ("Configuració de l'IP estàtic a:")); Serial.println (ip); Subxarxa IPAddress (255, 255, 255, 0); // configureu la màscara de subxarxa perquè coincideixi amb la vostra xarxa WiFi.config (ip, passarel·la, subxarxa);
Aquí, al lloc de IPAddress ip (192, 168, 0, 104); introduïu l'adreça IP desitjada. En aquest cas, el meu ESP estarà connectat a 192.168.0.104 tot el temps i simplement puc accedir-hi fent servir aquesta IP al meu navegador. El codi complet que es dóna al final d’aquest tutorial.
Diagrama de circuit i maquinari:
Els esquemes i el maquinari d’aquest electrodomèstic controlat per veu basat en l’IoT són els mateixos que el nostre anterior projecte Smart Junction i he explicat l’esquema allà amb molta amabilitat. Aquí podeu veure l'esquema complet de referència:



Reenviament de ports del vostre IP ESP8266:
El primer pas és habilitar el reenviament de ports al vostre encaminador (mòdem) perquè pugueu accedir al vostre ESP des de qualsevol part del món, només introduint la vostra IP pública. Sempre que el nostre ESP8266 es connecti al nostre encaminador de casa / oficina, se li proporcionarà una adreça IP única i aquesta adreça IP s’utilitzarà per accedir a l’ESP8266 a través del navegador web. Aquesta adreça IP està restringida a la vostra xarxa de casa / oficina, de manera que no hi podeu accedir de forma global; només es pot accedir als dispositius connectats al router. El reenviament de ports és la tècnica a través de la qual podem fer que aquesta pàgina web es carregui a nivell mundial. Després del reenviament de ports, podeu utilitzar la vostra IP pública per accedir a aquesta pàgina web des de qualsevol part del món. Sona molt bé !! Vegem com podem aconseguir-ho. Per fer-ho, ja sabeu el següent prèviament.
1. El nom del fabricant i l'adreça IP del router. Això es pot trobar fàcilment mirant el router. L'adreça IP també s'esmentarà en un adhesiu. Si no, Google coneix la vostra IP de routers.
2. El nom d'usuari i la contrasenya de la pàgina d'inici de sessió dels enrutadors. La majoria d'encaminadors tindran el nom d'usuari com a "administrador" i la contrasenya com a "administrador".
3. L'adreça IP assignada al mòdul ESP8266. Aquesta és l'adreça que utilitzeu per accedir a la pàgina web del mòdul ESP.
4. L'adreça IP del vostre proveïdor de serveis d'Internet (adreça IP pública). Això es pot trobar simplement buscant "quin és el meu IP".
Un cop ho tingueu tot a mà, podeu seguir els passos següents per fer el reenviament de ports, si esteu atrapats a trobar alguna cosa, utilitzeu la secció de comentaris següent. T’ajudaré.
Pas 1: inicieu la sessió a la pàgina de la utilitat d'administració web de routers mitjançant l'adreça IP del router, generalment és 192.168.1.1. La meva pantalla tindrà el següent aspecte

Pas 2: introduïu el nom d'usuari "admin" per defecte i la contrasenya "admin" per defecte i feu clic a Inicia sessió. Se us dirigirà a la pàgina de la utilitat, que tindrà un aspecte semblant a continuació.

La majoria de la informació que veieu aquí és molt confidencial, per tant, no la compartiu amb cap desconegut, ja que podríeu arriscar-vos a la seguretat d'Internet.
Pas 3: tal com es mostra més amunt, la vostra pàgina tindrà totes les opcions que apareixen a la part inferior esquerra. El nostre objectiu és trobar alguna cosa amb el nom de "Servidors virtuals". Tinc la meva llista a l'opció Reenviament. La majoria dels routers de les hauran apareix com el 6, 7 o 8 ª opció (majoritàriament per sota de l'ajust DHCP). Cerqueu-lo i feu-hi clic

Pas 4: ara heu d'introduir l'adreça IP assignada al mòdul ESP i el número de port per reenviar la nostra IP. En el meu cas, he de fer clic a Afegeix un nou i introduir aquestes dades. Pot ser que sigui lleugerament diferent. L'adreça IP és la que utilitzeu per accedir a la pàgina web del vostre mòdul ESP. El número de port pot ser la vostra elecció, però deixeu-nos fer servir "80" per a la simplicitat. La IP assignada al meu mòdul ESP8266 és 192.168.0.104 i, per tant, el meu reenviament es veurà a continuació:

Pas 5: ara hem de conèixer la nostra adreça IP pública. Podeu trobar aquest meu Goggling per a "Quina és la meva IP". La vostra IP d’ISP s’ha de mantenir altament confidencial. En nom d’aquest tutorial, suposem que la meva adreça IP és 987: 654: 321: 123. La faré servir com a IP d’ISP per a la resta del meu tutorial.
Nota: És possible que l'ISP us hagi proporcionat una adreça IP estàtica / dinàmica, si es tracta d'una adreça IP dinàmica, la vostra IP canviarà amb cada reinici del mòdem / enrutador. En aquest cas, heu d'utilitzar alguna cosa com DynDNS. Però això no surt de l’abast d’aquest tutorial. Fins i tot si es tracta d'una IP dinàmica, us funcionarà sempre que no us restableixi el router.
És a dir, el reenviament de ports té èxit. Podem comprovar-ho introduint l’IP de l’ISP: nom del port (987: 654: 321: 123: 80) al nostre navegador i comprovar si es carrega la pàgina web ESP. Si tot va com s’esperava, ara podríeu canviar les càrregues des de qualsevol part del món mitjançant la vostra adreça IP d’ISP.
Instal·lació de l'aplicació Moni Android:
Moni és una aplicació disponible per a Android, Windows, iTunes i fins i tot Skype. Podeu descarregar aquesta aplicació al vostre mòbil. Moni.ai té moltes més funcions que respondre a les vostres ordres de veu, és molt fàcil de desenvolupar i podeu definir ràpidament les converses visualment i connectar-vos als serveis. Moni.ai utilitza una aplicació anomenada Node-Red amb la qual podeu crear fàcilment un canal de veu i crear el vostre propi sistema Chabot (AI) per al vostre negoci / projectes i automatitzar-lo amb el vostre llenguatge natural. El millor és que Moni és totalment gratuït per a usos no comercials.
Estic fent servir un telèfon Android i, per tant, descargo directament Moni de Google Play Store. Després d'instal·lar, creeu el compte gratuït i inicieu-hi la sessió, l'aplicació hauria de tenir un aspecte semblant a continuació:

Podeu utilitzar-ho com qualsevol altre assistent virtual, com ara demanar temps, temps, etc. Però el que és addicional és que pot respondre als vostres applets creats pel vostre servei Ifttt. Vegem ara com es poden crear applets per a la vostra aplicació.
Creació de miniaplicacions mitjançant el servei IFTTT:
Estem a un pas de finalitzar aquest projecte. L’últim pas és crear els applets al lloc web d’IFTTT. Aquí és on indicem al nostre Moni diferents ordres de veu per controlar diferents electrodomèstics a casa.
Estic fent servir aquesta caixa de connexions controlada per veu per canviar les càrregues de l'aquari (llum / filtre) tal com es mostra al vídeo següent. Per tant, estic personalitzant l’applet per a aquest requisit. Podeu personalitzar-lo per al vostre propòsit. Seguiu els passos següents:
Pas 1: visiteu www.IFTTT.com i inicieu la sessió amb el vostre compte. Si és nou, Registra't.
Pas 2: Feu clic a "Cerca" i escriviu Crea webhooks. Seleccioneu-lo i feu clic a "Connecta". Seguiu els passos per connectar-vos-hi.
Pas 3: ara torneu a fer clic a "Cerca" i escriviu Moni. Seleccioneu Moni i feu clic a "Connecta". Inicieu la sessió amb el vostre compte IFTTT per habilitar la connexió.
Pas 4: ens hem connectat als serveis "Maker Webhooks" i "Moni". Ara us permet crear un applet amb aquests serveis. Feu clic a Els meus applets i després a "Nou applet". Hauríeu de veure alguna cosa així:

En aquesta pantalla heu de fer clic a "això" i seleccionar "Moni". A continuació, feu clic a "Demana a Moni que realitzi una acció" a la pantalla següent.

Pas 5: empleneu les dades tal com he emplenat la imatge anterior. Aquí la meva tasca és encendre els llums de l'aquari (càrrega 1) quan dic "Activa els llums de l'aquari". A continuació, feu clic a "Crea activador"
Pas 6: tornareu a la pantalla "SI AIX TH ÉS AIXAT". Ara feu clic a "això" i escriviu "Maker Webhooks" i seleccioneu-lo. A continuació, feu clic a "Fes una sol·licitud web". Se us dirigirà a la pantalla inferior

Aquest és un pas important on és més probable que cometeu errors. En aquesta pàgina només cal que introduïu l'URL que voleu carregar. En el meu cas, vull activar la càrrega connectada al commutador1, per la qual cosa s’utilitza la línia http: // 987: 654: 321: 123 / commutador1, heu de substituir la meva IP per la vostra adreça IP pública. Això només funcionarà si heu utilitzat el meu codi al tutorial anterior. A continuació es mostra la llista completa d’URL per canviar les càrregues.
|
URL |
Paraula clau del programa |
Acció |
|
http: // 987: 654: 321: 123 / switch1On |
Switch1On |
GPIO_0 es posa alt, activant així la càrrega 1 |
|
http: // 987: 654: 321: 123 / switch1Off |
Switch1Off |
GPIO_0 es redueix, de manera que desactiva la càrrega 1 |
|
http: // 987: 654: 321: 123 / switch2On |
Switch2On |
GPIO_2 és elevat, activant així la càrrega 2 |
|
http: // 987: 654: 321: 123 / switch2Off |
Switch2Off |
GPIO_2 es redueix, de manera que desactiva la càrrega 1 |
Un cop hàgiu introduït l'URL desitjat, feu clic a "Crea acció". A continuació, feu clic a Finalitza. De la mateixa manera, podeu crear 4 miniaplicacions per activar / desactivar les càrregues de la nostra caixa de connexions.
És a dir, el vostre applet està preparat per a l'acció i hauria d'aparèixer a "Els meus applets", tal com es mostra a continuació.

És hora de provar el nostre codi…….
Proves del projecte:
Finalment, estem preparats amb el nostre projecte. Anem a provar-ho. Enceneu-lo i obriu l'aplicació Moni al vostre telèfon mòbil. Feu clic a la icona de micròfon i digueu l'ordre. En el meu cas, és "Activa les llums d'aquari" i hauria de respondre amb un "OK" i encendre els llums. Consulteu el codi complet i el vídeo de demostració a continuació.
Espero que el projecte us hagi agradat i el feu funcionar. Si esteu atrapats en algun lloc, utilitzeu la secció de comentaris a continuació i segur que us ajudaré. Ens trobarem amb un altre projecte interessant fins aleshores estigueu atents.
Consulteu també els nostres altres projectes basats en IoT aquí.
