- Korištene hardverske komponente:
- Programiranje modula ESP-01 pomoću CP2102 USB-TTL pretvarača:
- Spajanje ESP-01 s CP2102 modulom:
- Programiranje modula ESP-01 za Alexa kućnu automatizaciju
- Kružni dijagram
- Postavljanje aplikacije Amazon Alexa za automatizaciju kuće
Pametni zvučnici poput Amazon Echo ili Google home danas postaju popularni i obojica imaju sposobnost integriranja prilagođenih vještina ili radnji za upravljanje bilo kojim uređajem pomoću tih pametnih zvučnika. Prethodno smo izradili vlastiti pametni zvučnik koristeći Raspberry Pi i Alexa, a također smo kontrolirali i kućanske uređaje pomoću ovog pametnog zvučnika Raspberry Pi.
Kućna automatizacija postala je vrlo česta danas i ljudi koriste IoT za automatizaciju svega u svom domu. Ovdje ćemo u ovom vodiču koristiti zvučnik sa stvarnim Amazon Echo točkama i stvoriti prilagođenu vještinu za upravljanje kućanskim uređajima kao što su svjetla, ventilatori, televizori i utičnice pomoću Amazon Echo točkastih zvučnika. Ovdje ćemo koristiti Arduino UNO i Wi-Fi modul ESP8266-01 za povezivanje Echo dot zvučnika s izmjeničnim uređajima. Nakon ovog vodiča moći ćete kontrolirati bilo koji uređaj putem Alexa.
Korištene hardverske komponente:
- Arduino UNO
- ESP-01 modul
- Amazon Alexa jeka točka
- CP2102 USB-TTL pretvarač
- Breadboard
- Modul releja 5V
- AC uređaji
- Skakači
Programiranje modula ESP-01 pomoću CP2102 USB-TTL pretvarača:
Ovdje se ESP-01 programira pomoću CP2102 USB-TTL pretvarača; može se programirati i pomoću ploče Arduino UNO. Ovdje sam u svom slučaju koristio CP2102 modul i koraci za to su objašnjeni u nastavku.
ESP-01 modul
 
ESP8266 ESP-01 je Wi-Fi modul koji je vrlo popularan u dizajniranju IoT aplikacija i koristi se za omogućavanje povezivanja mikrokontrolera poput Arduina UNO s internetom. Ovaj je modul samostalni sustav na čipu (SOC) koji može djelovati poput malog računala. Dolazi s unaprijed instaliranim AT firmwareom, stoga ga možemo programirati pomoću Arduino IDE-a. Slijedeći vezu možete saznati više o ESP-01 Wi-Fi primopredajniku i njegovom programiranju pomoću Arduino IDE-a.
Opis pribadače:
 
VCC: Pin za napajanje ESP-01 koji se može napajati s 3,3 V DC
GND: Uzemljeni referentni zatik ESP-01
TXD: Koristi se kao pin UART odašiljača
RXD: Koristi se kao UART prijamni pin
RESET: Koristi se za resetiranje modula i aktivan je LOW pin.
CH_PD: Upravo je pin za omogućavanje čipa aktivan HIGH pin.
GPIO0: Ovaj pin služi u dvije svrhe. Jedan je kao ulaz / izlaz opće namjene, a drugi je omogućavanje načina programiranja ESP-01
GPIO2: Ovo je ulazno / izlazni pin opće namjene.
Spajanje ESP-01 s CP2102 modulom:
Donja slika prikazuje dijagram pinouta CP2102 USB-TTL pretvarača. Povežite ESP-01 modul s CP2102 USB-TTL pretvaračkim modulom prema donjoj tablici.

| ESP-01 modul | CP2102 modul | 
| VCC | 3,3 V | 
| GND | GND | 
| RXD | TXD | 
| TXD | RXD | 
| CH_PD | 3,3 V | 
| PONOVNO PONAŠATI | Nema veze | 
| GPIO0 | GND | 
| GPIO2 | Nema veze | 
Nakon uspješnog dovršenja gornje veze, sklop bi trebao izgledati otprilike dolje:

Zatim spojite CP2102 modul na naše računalo za programiranje. Prije prijenosa koda na ESP-01, prvo provjerite komunikacijski priključak. Za to idite na start-> i potražite upravitelj uređaja. Zatim kliknite COM i luke. U okviru ove opcije trebali bismo dobiti COM priključak s imenom USB-TTL pretvarača poput " Silicon labs CP21xx USB-UART Bridge " kao što je prikazano na donjoj slici:


Nakon uspješnog dovršenja gornjih koraka, otvorite Arduino IDE i odaberite ploču kao " Generički modul ESP8266 " u izborniku Alati i odaberite COM priključak koji smo dobili u prethodnoj fazi.
Programiranje modula ESP-01 za Alexa kućnu automatizaciju
Kompletni kod dan je na kraju ovog projekta. Evo detaljnog objašnjenja koda koji treba učitati na modul ESP-01. Prvi je korak uključiti sve potrebne knjižnice. Knjižnicu "fauxmoESP.h" možete preuzeti s poveznice ovdje.
#include #include
U ovom koraku moramo definirati sve vjerodajnice potrebne za povezivanje ESP-01 s internetom. Ažurirajte svoj mrežni SSID i podatke zaporke u programu.
#define SSID "*******" #define pass "*******"
Zatim definirajte naziv uređaja koji trebamo kontrolirati od Alexa. U mom sam slučaju nazive svojih uređaja uzeo kao " svjetlo u spavaćoj sobi ", " ventilator za spavaću sobu " i " pametna utičnica ".
#define device1 "lampica za spavaću sobu" #define device2 "ventilator za spavaću sobu" #define device3 "smart socket"
Funkcija WiFi.mode koristi se za postavljanje modula ESP-01 kao način rada stanice, a funkcija WiFi.begin koristi se za povezivanje modula ESP-01 s internetom koji uzima SSID i lozinku mreže kao svoje argumente.
WiFi.mode (WIFI_STA); WiFi.begin (ssid, pass);
Sljedeći je dio inicijalizirati sve funkcije klase Fauxmo poput stvaranja poslužitelja, omogućiti broj porta za Alexa uređaj, omogućiti uređaj itd. Zatim dodajte sve uređaje pomoću fauxmo.addDevice koji smo ranije stvorili.
fauxmo.createServer (istina); fauxmo.setPort (80); fauxmo.enable (true); fauxmo.addDevice (uređaj1); fauxmo.addDevice (uređaj2); fauxmo.addDevice (uređaj3);
Zatim napišite funkciju za usporedbu naših glasovnih naredbi s unaprijed definiranim imenima uređaja. Ako se naredba podudara, pošaljite znak serijskim terminalima Arduino pomoću Serial.print.
fauxmo.onSetState ((nepotpisani char uređaj_id, const char * ime_ uređaja, stanje bool, nepotpisana vrijednost znaka) {if (strcmp (ime_ uređaja, uređaj1) == 0) {if (stanje) Serial.print ("1"); else Serial.print ("2");}}
U void loop () funkciji, funkcija fauxmo.handle samo će provjeriti dolazeće podatke iz Alexa i poduzet će radnje pomoću funkcije onSetstate () .
petlja void () {fauxmo.handle (); }
Sada prenesite kompletni kod dat na kraju na modul ESP-01 i osigurajte uspješno slanje.
Arduino kôd:
Nakon toga, vrijeme je za prijenos koda u Arduino. Kôd za Arduino je vrlo jednostavan. Prima samo znakove poslane iz modula ESP-01 preko svojih UART terminala i uspoređuje ga kako bi poslao signal za UKLJUČENJE / ISKLJUČENJE releju. Kompletni program za Arduino prikazan je u nastavku:
podaci char; void setup () {Serial.begin (115200); pinMode (7, IZLAZ); pinMode (6, IZLAZ); pinMode (5, IZLAZ); digitalWrite (7, LOW); digitalWrite (6, LOW); digitalWrite (5, LOW); } void loop () {if (Serial.available ()> 0) {data = Serial.read (); Serial.print (podaci); Serial.print ("\ n"); if (podaci == '1') digitalWrite (7, HIGH); inače if (podaci == '2') digitalWrite (7, LOW); inače if (podaci == '3') digitalWrite (6, HIGH); inače if (podaci == '4') digitalWrite (6, LOW); inače if (podaci == '5') digitalWrite (5, HIGH); inače if (podaci == '6') digitalWrite (5, LOW); }}
Nakon uspješnog prijenosa koda na Arduino, Next povežite hardver prema shemama datim u nastavku.
Kružni dijagram
Dijagram sklopova za automatizaciju kuće pomoću Alexa prikazan je dolje:

Ovdje smo zalijepili sve komponente na Perfboard tako da djeluje kao Arduino štit.

Slično tome, izgradili smo i relejni modul na Perfboardu:

Postavljanje aplikacije Amazon Alexa za automatizaciju kuće
Nakon uspješnog završetka postavljanja i kodiranja hardvera, sada je vrijeme za postavljanje Alexa Alexa aplikacije. Prvo, moramo potražiti bilo koji pametni uređaj u blizini putem ove aplikacije. Da biste to učinili, uključite svoj Alexa uređaj, a zatim otvorite svoju Alexa aplikaciju i kliknite opciju " Uređaji ", a zatim kliknite znak "+" koji traži da " dodate uređaj ". Zatim kliknite " Dodaj uređaj ", u vrsti uređaja kliknite " ostalo ", a zatim odaberite otkrivanje uređaja. Tada bi vaša aplikacija Alexa trebala potražiti uređaj što može potrajati i do 45 sekundi.
Napomena: Uređaje možemo otkriti i pomoću glasovne naredbe " Alexa, otkrij uređaje "


Nakon završetka otkrivanja uređaja trebali biste dobiti 3 nova uređaja s imenom koje smo naveli u kodu. U mom slučaju, to su spavaća soba svjetlo , spavaća soba ventilator, a pametna utičnica . Sada je postavka spremna za testiranje, samo testirajte izgovaranjem " Alexa, Uključi svjetlo spavaće sobe " i trebala bi vratiti vaše povratne informacije govoreći "U redu", a svjetlo bi se trebalo upaliti. Slično tome, možemo testirati i sve ostale naredbe.
Evo kako će izgledati kompletna postavka za kućanske uređaje pod nadzorom Amazon Echo:

Kompletni kod za ESP-01 s demonstracijskim video zapisom dan je u nastavku.

