- Použité hardvérové komponenty:
- Programovanie modulu ESP-01 pomocou prevodníka CP2102 USB-TTL:
- Prepojenie ESP-01 s modulom CP2102:
- Programovanie modulu ESP-01 pre domácu automatizáciu Alexa
- Schéma zapojenia
- Nastavte si aplikáciu Amazon Alexa pre domácu automatizáciu
Inteligentné reproduktory ako Amazon Echo alebo Google home sú v dnešnej dobe populárne a oba majú schopnosť integrovať vlastné zručnosti alebo akcie na ovládanie ľubovoľného zariadenia pomocou týchto inteligentných reproduktorov. Predtým sme postavili vlastný inteligentný reproduktor pomocou Raspberry Pi a Alexa a taktiež sme ovládali domáce spotrebiče pomocou tohto inteligentného reproduktora Raspberry Pi.
Domáca automatizácia je v dnešnej dobe veľmi častá a ľudia používajú IoT na automatizáciu všetkého v domácnosti. Tu v tomto výučbe použijeme reproduktor Real Amazon Echo dot a vytvoríme si vlastnú zručnosť na ovládanie domácich domácich spotrebičov, ako sú svetlá, ventilátory, televízory a zásuvky, pomocou reproduktora Amazon Echo dot Speaker. Tu použijeme Arduino UNO a Wi-Fi modul ESP8266-01 na pripojenie Echo dot reproduktora k AC spotrebičom. Po tomto tutoriáli budete môcť ovládať akékoľvek zariadenie, aj keď Alexa.
Použité hardvérové komponenty:
- Arduino UNO
- Modul ESP-01
- Amazon Alexa echo dot
- Prevodník CP2102 USB-TTL
- Nepál
- 5V reléový modul
- AC spotrebiče
- Skokani
Programovanie modulu ESP-01 pomocou prevodníka CP2102 USB-TTL:
Tu je ESP-01 programovaný pomocou prevodníka CP2102 USB-TTL; dá sa programovať aj pomocou dosky Arduino UNO. Tu v mojom prípade som použil modul CP2102 a kroky, ako to urobiť, sú vysvetlené nižšie.
Modul ESP-01
ESP8266 ESP-01 je modul Wi-Fi, ktorý je veľmi populárny pri navrhovaní aplikácií internetu vecí, a umožňuje pripojenie mikrokontrolérov ako Arduino UNO k internetu. Tento modul je samostatný systém na čipe (SOC), ktorý môže fungovať ako malý počítač. Dodáva sa s predinštalovaným AT firmvérom, takže ho môžeme programovať pomocou Arduino IDE. Po kliknutí na nasledujúci odkaz sa dozviete viac o Wi-Fi transceiveri ESP-01 a jeho programovaní pomocou Arduino IDE.
Popis kolíka:
VCC: Napájací kolík ESP-01, ktorý je možné napájať 3,3 V ss
GND: Uzemňovací referenčný kolík ESP-01
TXD: Používa sa ako pin vysielača UART
RXD: Používa sa ako pin prijímača UART
RESET: Používa sa na resetovanie modulu a je to aktívny pin LOW.
CH_PD: Je to pin umožňujúci čip, ktorý je aktívnym HIGH pinom.
GPIO0: Tento pin slúži na dva účely. Jeden slúži ako vstup / výstup na všeobecné účely a druhý slúži na povolenie programovacieho režimu ESP-01
GPIO2: Toto je vstupný / výstupný pin na všeobecné použitie.
Prepojenie ESP-01 s modulom CP2102:
Na obrázku nižšie je znázornená schéma zapojenia prevodníku CP2102 USB-TTL. Pripojte modul ESP-01 k modulu prevodníka CP2102 USB-TTL podľa nasledujúcej tabuľky.
Modul ESP-01 |
Modul CP2102 |
VCC |
3,3 V |
GND |
GND |
RXD |
TXD |
TXD |
RXD |
CH_PD |
3,3 V |
RESETOVAŤ |
Žiadne spojenie |
GPIO0 |
GND |
GPIO2 |
Žiadne spojenie |
Po úspešnom dokončení vyššie uvedeného pripojenia by obvod mal vyzerať asi takto:
Potom pripojte modul CP2102 k nášmu počítaču na programovanie. Pred nahraním kódu na ESP-01 najskôr skontrolujte komunikačný port. Prejdite na štart-> a vyhľadajte správcu zariadení. Potom kliknite na COM a porty. V rámci tejto možnosti by sme mali dostať port COM s názvom prevodníka USB-TTL, ako napríklad „ Silicon labs CP21xx USB-UART Bridge “, ako je to znázornené na obrázku nižšie:
Po úspešnom dokončení vyššie uvedených krokov otvorte Arduino IDE a v ponuke Nástroje vyberte dosku ako „ Generic ESP8266 Module “ a vyberte port COM, ktorý sme dostali v predchádzajúcej fáze.
Programovanie modulu ESP-01 pre domácu automatizáciu Alexa
Celý kód je uvedený na konci tohto projektu. Tu je postupné vysvetlenie kódu, ktorý sa má nahrať na modul ESP-01. Prvým krokom je zahrnutie všetkých potrebných knižníc. Knižnicu „fauxmoESP.h“ si môžete stiahnuť z odkazu tu.
#include #include
V tomto kroku musíme definovať všetky poverenia, ktoré sú potrebné na pripojenie ESP-01 k internetu. Aktualizujte svoje sieťové SSID a údaje o hesle v programe.
#define SSID "*******" #define pass "*******"
Ďalej definujte názov zariadení, ktoré musíme ovládať od Alexy. V mojom prípade som názvy svojich zariadení označil ako „ svetlo do spálne “, „ ventilátor do spálne “ a „ inteligentná zásuvka “.
#define device1 "svetlo do spálne" #define device2 "ventilátor do spálne" #define device3 "inteligentná zásuvka"
Funkcia WiFi.mode sa používa na nastavenie modulu ESP-01 ako režimu Stanica a funkcia WiFi.begin sa používa na pripojenie modulu ESP-01 k internetu, pričom ako argument sa používa identifikátor SSID a heslo siete.
WiFi.mode (WIFI_STA); WiFi.begin (ssid, pass);
Ďalšou časťou je inicializácia všetkých funkcií triedy Fauxmo, ako je vytvorenie servera, povolenie čísla portu pre zariadenie Alexa, povolenie zariadenia atď. Potom pridajte všetky zariadenia pomocou fauxmo.addDevice, ktoré sme vytvorili už skôr.
fauxmo.createServer (true); fauxmo.setPort (80); fauxmo.enable (true); fauxmo.addDevice (zariadenie1); fauxmo.addDevice (zariadenie2); fauxmo.addDevice (zariadenie3);
Ďalej napíšeme funkciu na porovnanie našich hlasových príkazov s preddefinovanými názvami zariadení. Ak sa príkaz zhoduje, potom pošlite znak na sériové terminály Arduino pomocou Serial.print.
fauxmo.onSetState ((unsigned char device_id, const char * device_name, bool state, unsigned char value) {if (strcmp (device_name, device1) == 0) {if (state) Serial.print ("1"); else Serial.print ("2");}}
Vo funkcii void loop () funkcia fauxmo.handle iba skontroluje prichádzajúce údaje od Alexy a vykoná akcie pomocou funkcie onSetstate () .
void loop () {fauxmo.handle (); }
Teraz nahrajte kompletný kód uvedený na konci do modulu ESP-01 a zabezpečte úspešné nahranie.
Arduino kód:
Potom je čas nahrať kód do Arduina. Kód pre Arduino je veľmi jednoduchý. Prijíma iba znaky odosielané z modulov ESP-01 cez svoje terminály UART a porovnáva ich, aby odoslal signál zapnutí / vypnutia na relé. Kompletný program pre Arduino je uvedený nižšie:
char údaje; void setup () {Serial.begin (115200); pinMode (7, VÝSTUP); pinMode (6, VÝSTUP); pinMode (5, VÝSTUP); digitalWrite (7, LOW); digitalWrite (6, LOW); digitalWrite (5, LOW); } void loop () {if (Serial.available ()> 0) {data = Serial.read (); Serial.print (údaje); Serial.print ("\ n"); if (data == '1') digitalWrite (7, HIGH); else if (data == '2') digitalWrite (7, LOW); inak if (data == '3') digitalWrite (6, HIGH); else if (data == '4') digitalWrite (6, LOW); inak if (data == '5') digitalWrite (5, HIGH); else if (data == '6') digitalWrite (5, LOW); }}
Po úspešnom nahraní kód na Arduino, Ďalej pripojte hardvér podľa nižšie uvedených schém.
Schéma zapojenia
Schéma zapojenia pre automatizáciu domácnosti pomocou Alexa je uvedené nižšie:
Tu sme všetky komponenty na Perfboardu spájkovali tak, aby fungoval ako štít Arduino.
Podobne sme na Perfboarde postavili aj reléový modul:
Nastavte si aplikáciu Amazon Alexa pre domácu automatizáciu
Po úspešnom dokončení nastavenia a kódovania hardvéru je teraz čas nastaviť aplikáciu Alexa pre Android. Najskôr pomocou tejto aplikácie musíme vyhľadať všetky inteligentné zariadenia v okolí. Zapnite svoje zariadenie Alexa, potom otvorte aplikáciu Alexa, kliknite na možnosť „ Zariadenia “ a potom kliknite na znamienko „+“, ktoré vás požiadajú o „ Pridať zariadenie “. Potom kliknite na „ Pridať zariadenie “, v type zariadenia kliknite na „ iné “ a potom vyberte možnosť objavovať zariadenia. Potom by mala vaša aplikácia Alexa vyhľadať zariadenie, čo môže trvať až 45 sekúnd.
Poznámka: Prípadne môžeme zariadenia objaviť aj pomocou hlasového príkazu „ Alexa, Discover devices “
Po dokončení zisťovania zariadenia by ste mali dostávať 3 nové zariadenia podľa názvu, ktoré sme uviedli v kóde. V mojom prípade to sú spálne svetlo , spálňa ventilátor, a inteligentný pätice . Teraz je nastavenie pripravené na testovanie. Stačí otestovať vyslovením výrazu „ Alexa, Zapnite svetlo v spálni “ a malo by sa vrátiť vaše hodnotenie „Dobre“ a malo by sa rozsvietiť svetlo. Podobne môžeme testovať všetky ostatné príkazy.
Takto bude vyzerať kompletné nastavenie pre domáce spotrebiče ovládané Amazon Echo dot:
Kompletný kód pre ESP-01 s ukážkovým videom je uvedený nižšie.