- Componente hardware utilizate:
- Programarea modulului ESP-01 folosind convertorul CP2102 USB-TTL:
- Conectarea ESP-01 cu modulul CP2102:
- Programarea modulului ESP-01 pentru Alexa Home Automation
- Diagrama circuitului
- Configurați aplicația Amazon Alexa pentru automatizare la domiciliu
Difuzoarele inteligente precum Amazon Echo sau Google Home devin populare acum și ambele au capacitatea de a integra abilități sau acțiuni personalizate pentru a controla orice aparat folosind acele difuzoare inteligente. Am construit anterior propriul nostru difuzor inteligent folosind Raspberry Pi și Alexa și, de asemenea, am controlat aparatele electrocasnice folosind acest difuzor inteligent Raspberry Pi.
Domotica a devenit foarte obișnuită acum, iar oamenii folosesc IoT pentru a automatiza totul în casa lor. Aici, în acest tutorial, vom folosi un difuzor cu puncte Amazon Echo Real și vom crea o abilitate personalizată pentru a controla aparatele electrocasnice ca lumini, ventilatoare, televizoare, prize folosind un difuzor Amazon Echo dot. Aici vom folosi Arduino UNO și un modul Wi-Fi ESP8266-01 pentru a conecta difuzorul Echo dot cu aparate de curent alternativ. După acest tutorial, veți putea controla orice aparat, deși Alexa.
Componente hardware utilizate:
- Arduino UNO
- Modulul ESP-01
- Amazon Alexa ecou punct
- CP2102 Convertor USB-TTL
- Breadboard
- Modul releu 5V
- Aparate de curent alternativ
- Jumpers
Programarea modulului ESP-01 folosind convertorul CP2102 USB-TTL:
Aici ESP-01 este programat folosind un convertor USB-TTL CP2102; poate fi, de asemenea, programat folosind o placă Arduino UNO. Aici, în cazul meu, am folosit un modul CP2102 și pașii pentru a face acest lucru sunt explicați mai jos.
Modulul ESP-01
ESP8266 ESP-01 este un modul Wi-Fi care este foarte popular în proiectarea aplicațiilor IoT și este utilizat pentru a permite microcontrolerelor precum Arduino UNO să se conecteze la internet. Acest modul este un sistem autonom pe un cip (SOC) care poate acționa ca un computer mic. Vine cu un firmware AT preinstalat, prin urmare îl putem programa folosind Arduino IDE. Puteți afla mai multe despre transmițătorul Wi-Fi ESP-01 și programarea acestuia folosind Arduino IDE urmând linkul.
Descrierea pinului:
VCC: Pin de alimentare de la ESP-01 care poate fi furnizat cu 3,3V DC
GND: Pin de referință la sol al ESP-01
TXD: folosit ca pin al emițătorului UART
RXD: Folosit ca pin receptor UART
RESET: Este folosit pentru a reseta modulul și este un pin LOW activ.
CH_PD: Este pinul de activare a cipului, care este un pin HIGH activ.
GPIO0: acest pin are două scopuri. Una este ca Intrare / ieșire cu scop general, iar alta este să activezi modul de programare al ESP-01
GPIO2: Acesta este un pin de intrare / ieșire de uz general.
Conectarea ESP-01 cu modulul CP2102:
Figura de mai jos prezintă diagrama pinout a unui convertor USB-TTL CP2102. Conectați modulul ESP-01 la modulul convertor USB-TTL CP2102 conform tabelului de mai jos.
Modulul ESP-01 |
Modul CP2102 |
VCC |
3,3V |
GND |
GND |
RXD |
TXD |
TXD |
RXD |
CH_PD |
3,3V |
RESET |
Nici o conexiune |
GPIO0 |
GND |
GPIO2 |
Nici o conexiune |
După finalizarea cu succes a conexiunii de mai sus, circuitul ar trebui să arate la fel ca mai jos:
Apoi conectați modulul CP2102 la computerul nostru pentru programare. Înainte de a încărca codul în ESP-01, verificați mai întâi portul de comunicație. Pentru aceasta, mergeți la start-> și căutați managerul de dispozitive. Apoi faceți clic pe COM și porturi. În cadrul acestei opțiuni ar trebui să obținem un port COM cu un nume de convertor USB-TTL, cum ar fi „ Silicon labs CP21xx USB-UART Bridge ”, așa cum se arată în imaginea de mai jos:
După finalizarea cu succes a pașilor de mai sus, deschideți Arduino IDE și selectați placa ca „ Modul ESP8266 generic ” din meniul Instrumente și selectați portul COM pe care l-am obținut în etapa anterioară.
Programarea modulului ESP-01 pentru Alexa Home Automation
Codul complet este dat la sfârșitul acestui proiect. Iată explicația pas cu pas a codului care urmează să fie încărcat pe modulul ESP-01. Primul pas este de a include toate bibliotecile necesare. Puteți descărca biblioteca „fauxmoESP.h” de pe linkul de aici.
#include #include
În acest pas, trebuie să definim toate acreditările necesare pentru conectarea ESP-01 la internet. Actualizați datele SSID de rețea și parola din program.
#define SSID "*******" #define pass "*******"
Apoi definiți numele dispozitivelor, pe care trebuie să le controlăm de la Alexa. În cazul meu, am luat numele dispozitivelor mele ca „ lumină dormitor ”, „ ventilator dormitor ” și „ priză inteligentă ” .
#define device1 "light bedroom" #define device2 "ventilator dormitor" #define device3 "soclu inteligent"
Funcția WiFi.mode este utilizată pentru a configura modulul ESP-01 ca mod Station și funcția WiFi.begin este utilizată pentru a conecta modulul ESP-01 la internet, care ia drept argument SSID-ul și parola rețelei.
WiFi.mode (WIFI_STA); WiFi.begin (ssid, pass);
Următoarea parte este să inițializăm toate funcțiile clasei Fauxmo, cum ar fi crearea serverului, activarea numărului de port pentru dispozitivul Alexa, activarea dispozitivului etc. Apoi adăugați toate dispozitivele folosind fauxmo.addDevice pe care le-am creat mai devreme.
fauxmo.createServer (adevărat); fauxmo.setPort (80); fauxmo.enable (adevărat); fauxmo.addDevice (device1); fauxmo.addDevice (dispozitiv2); fauxmo.addDevice (device3);
Apoi, scrieți o funcție pentru a compara comenzile noastre vocale cu numele dispozitivelor predefinite. Dacă comanda se potrivește, trimiteți un caracter către terminalele seriale Arduino folosind Serial.print.
fauxmo.onSetState ((caracter semnat ID dispozitiv, const caracter * nume dispozitiv, stare bool, valoare caracter nesemnat) {if (strcmp (nume dispozitiv, dispozitiv1) == 0) {if (stare) Serial.print ("1"); altfel Serial.print („2”);}}
În funcția void loop () , funcția fauxmo.handle va verifica doar datele primite de la Alexa și va întreprinde acțiuni folosind funcția onSetstate () .
void loop () {fauxmo.handle (); }
Acum încărcați codul complet dat la sfârșit în modulul ESP-01 și asigurați-vă că încărcați cu succes.
Cod Arduino:
După aceea, este timpul să încărcați codul în Arduino. Codul pentru Arduino este foarte simplu. Acesta primește numai caracterele trimise de la modulele ESP-01 prin terminalele sale UART și îl compară pentru a trimite semnalul de pornire / oprire la releu. Programul complet pentru Arduino este prezentat mai jos:
date char; void setup () {Serial.begin (115200); pinMode (7, OUTPUT); pinMode (6, OUTPUT); pinMode (5, OUTPUT); digitalWrite (7, LOW); digitalWrite (6, LOW); digitalWrite (5, LOW); } void loop () {if (Serial.available ()> 0) {data = Serial.read (); Serial.print (date); Serial.print ("\ n"); if (data == '1') digitalWrite (7, HIGH); else if (data == '2') digitalWrite (7, LOW); else if (data == '3') digitalWrite (6, HIGH); else if (data == '4') digitalWrite (6, LOW); else if (data == '5') digitalWrite (5, HIGH); else if (data == '6') digitalWrite (5, LOW); }}
După încărcarea cu succes, codul la Arduino, apoi conectați hardware-ul conform schemelor date mai jos.
Diagrama circuitului
Schema de circuit pentru automatizarea casei utilizând Alexa este prezentată mai jos:
Aici am lipit toate componentele pe un Perfboard, astfel încât să acționeze ca scut Arduino.
În mod similar, am construit și un modul de releu pe un Perfboard:
Configurați aplicația Amazon Alexa pentru automatizare la domiciliu
După finalizarea cu succes a configurării și codificării hardware, acum este timpul să configurați aplicația Alexa Android. În primul rând, trebuie să căutăm orice dispozitiv inteligent din apropiere prin intermediul acestei aplicații. Pentru aceasta, porniți dispozitivul Alexa, apoi deschideți aplicația Alexa și faceți clic pe opțiunea „ Dispozitive ”, apoi faceți clic pe semnul „+” care vă solicită „ Adăugați dispozitiv ”. Apoi faceți clic pe „ Adăugați dispozitiv ”, în tipul de dispozitiv faceți clic pe „ altele ” și apoi selectați descoperiți dispozitivele. Apoi, aplicația dvs. Alexa ar trebui să caute dispozitivul, care poate dura până la 45 de secunde.
Notă: Alternativ, putem descoperi și dispozitivele folosind comanda vocală „ Alexa, descoperă dispozitive ”
După finalizarea descoperirii dispozitivului, ar trebui să primiți 3 dispozitive noi după nume pe care le-am dat în cod. În cazul meu, acestea sunt lumina dormitor , ventilator dormitor, și priza inteligent . Acum, setarea este gata pentru testare, doar testați spunând „ Alexa, Porniți lumina dormitorului ” și ar trebui să vă întoarcă feedback-ul spunând „Bine”, iar lumina ar trebui să se aprindă. În mod similar, putem testa pentru toate celelalte comenzi.
Acesta este modul în care va arăta configurarea completă pentru electrocasnice controlate prin puncte Amazon Echo:
Codul complet pentru ESP-01 cu un videoclip demonstrativ este dat mai jos.