Sadržaj:

Alexa Voice Control TV daljinski ESP8266: 9 koraka
Alexa Voice Control TV daljinski ESP8266: 9 koraka

Video: Alexa Voice Control TV daljinski ESP8266: 9 koraka

Video: Alexa Voice Control TV daljinski ESP8266: 9 koraka
Video: WiFi RF DIY Smart Light Switch Module Universal Breaker Timer Support Voice Control by Alexa 2024, Juli
Anonim
Alexa Voice Control TV daljinski ESP8266
Alexa Voice Control TV daljinski ESP8266

Ako neko u vašoj kući izgubi daljinski upravljač, uđete li u praznu sobu i zateknete televizor. Baterije počinju kvariti i nema kontrole iz stražnjeg dijela prostorije. Sada možete upravljati svojim televizorom, DVR -om, bilo čime što ima IC kontrolu za koju možete snimiti IC signal. Napravio sam ovaj sistem za kontrolu svog SKY DVR -a sa jednostavnim glasovnim interfejsom.

Potreban hardver:

  1. Amazon Echo ili Dot
  2. Wi -Fi usmjerivač koji može prenijeti unaprijed (moj davatelj usluga je to učinio umjesto mene)
  3. Arduino NANO pretvoren u 3V3
  4. ESP8266 -01 ili slično
  5. Modul ili sklop IC odašiljača
  6. Modul IC prijemnika ako želite snimiti kodove.

Potreban softver i usluge:

  1. Arduino IDE, koristio sam 1.6.11
  2. Račun za vještine Amazon Alexa (besplatno)
  3. Amazon AWS račun (besplatni nivo, ali za otvaranje računa potrebna je kreditna kartica) ili alternativni server.

Korak 1: Postavljanje Alexa vještina

Postavljanje Alexa vještina
Postavljanje Alexa vještina
Postavljanje Alexa vještina
Postavljanje Alexa vještina
Postavljanje Alexa vještina
Postavljanje Alexa vještina

Komplet vještina Alexas preuzima glasovnu naredbu i filtrira je pomoću liste 'vrijednosti'

Nakon registracije:

Na Amazon Developer konzoli odaberite karticu Alexa> Alexa Skills Kit [Započnite]

[Dodajte novu vještinu]

Vrsta vještine: prilagođeni model interakcije

Jezik: odaberite ispravan, kad bi ovo bilo postavljeno na engleski (SAD), ne bi reagiralo!

Ime: ovo sada nije važno jer ne objavljujemo.

Naziv poziva:, odaberite kratak naziv, riječ koja se koristi za otvaranje aplikacije.

[SLJEDEĆI]

Shema namjere, zalijepite u kôd

Prilagođeni tipovi utora {Add Slot Type], unesite EFFECT_ON_TV

u Vrijednosti mjesta, zalijepite u kôd

Primjeri izjava, postavljeni, TVCommandIntent tv {TVAction}

[SAVE], na sljedećoj stranici sa vještinama moramo dodati vezu do koda koji ćemo pokrenuti kada "namjeru" pokrene ili početna riječ aplikacije "clicker" ili nakon toga "tv {slot value}".

Vratit ćemo se u Alexa nakon što postavimo python skriptu za Lambda server.

Korak 2: AWS Lambda Server Python skripta

Prijavite se za besplatni nivo AWS -a, bio sam zabrinut da bi me ovo moglo koštati pravog novca, ali nakon što sam ga neko vrijeme pročitao i pročitao forume, ograničenja upotrebe su toliko velika za osobnu i razvojnu upotrebu da nikada ne bi trebala doći do točke punjenja. Postoji alternativa za korištenje vašeg vlastitog HTTPS poslužitelja i možda je to nešto što bi esp8266 mogao učiniti, još jedno uputstvo!

Ovo je kôd koji se pokreće kada se izgovori naziv poziva (npr. "Alexa open clicker") i prima čarobnu riječ od Alexa. Jednom kada se aplikacija pokrene, samo trebate reći "tv play, tv jump five" i Alexa će poslati "play", "jump 5" na ovu python skriptu. Aplikacija istječe ako nakon nekog vremena nema odgovora.

U AWS uslugama prvo odaberite svoju lokaciju, u gornjem desnom kutu postoji opcija.

za SAD odaberite N Virginia, za EU odaberite Irsku.

odaberite Lambda iz naslova Računanje.

[Kreirajte lambda funkciju]

[Prazna funkcija]

Konfigurirajte okidač: kliknite na okvir s točkama i odaberite Alexa Skills Kit

[SLJEDEĆI]

Konfigurirajte funkciju

Dajte ime kako god želite

Opis, na vama je

Runtine: Python 2.7

zalijepite u python kod,

u kodu će se URL HTTP adresa kasnije morati promijeniti u vašu vanjsku IP adresu

link = "https://185.255.255.255:777/text?data=" + omiljena_boja

niže na ekranu je ULOGA, kliknite na karticu i odaberite Odabir prilagođene uloge

Ovo će otvoriti novi ekran i kliknuti na dozvoli., Vraća se na ekran Konfiguriraj funkciju s osnovnim izvršenjem Lamda odabranim kao Postojeća uloga.

[SLJEDEĆE] pregled, pritisnite [Kreiraj funkciju] i trebalo bi ga sastaviti i dati vam ARN broj. KOPIRAJTE ovaj kôd i stavit ćemo ga u komplet alexa vještina.

Korak 3:

Korak 4: Postavite vezu Alexa Skills Kit na AWS Lambda

Postavite vezu Alexa Skills Kit na AWS Lambda
Postavite vezu Alexa Skills Kit na AWS Lambda

U Alexa kompletu vještina odaberite stranicu s konfiguracijom, naslovljena Globalna polja, odaberite AWS Lambda i vašu regiju i zalijepite ARN kôd u okvir, [SLJEDEĆE], na testu provjerite je li ENABLED odabrano.

Za sada smo završili ovdje, sada za neki hardver.

Korak 5: Arduino NANO 3V3 konverzija

Arduino NANO 3V3 konverzija
Arduino NANO 3V3 konverzija
Arduino NANO 3V3 konverzija
Arduino NANO 3V3 konverzija

ESP8266 radi od 3v3 pa ga možete pokrenuti s vanjskog regulatora ili pretvoriti nano. Koristio sam klon nano sa CH340 usb čipom. Imam dva različita izgleda PCB -a za koja znam, ali nadam se da će ovo pokriti većinu izgleda.

Moramo zamijeniti 5V regulator s pin-om kompatibilnim 3v3, 1117-3. zatim priključite 5V iz USB utičnice samo na regulator i sve ostalo priključite na njegov izlaz. na sreću to se može postići uklanjanjem ulazne diode zamjenom regulatora i dodavanjem jedne žice sa ulazne strane diode u Vin na nano ploči.

provjerite možete li programirati nano nakon konverzije.

Korak 6: NANO kod

NANO kod
NANO kod
NANO kod
NANO kod

Ovo su korišteni kodovi za moj daljinski upravljač SKY UK, možda su specifični za model i vrijedi provjeriti rade li vaši kodovi na zasebnoj skici koja nije povezana s esp8266.

Koristio sam biblioteku IRremote shirriff verzije 2.0.1

Koristite primjer IRrecord za snimanje daljinskih naredbi za koje je potreban modul IC prijemnika ili biste svoje kodove mogli pronaći na webu? Ovdje ne ulazim u to, ali ovdje možete izabrati šta kontrolišete i kako.

Priključite IC odašiljač dostupan na ebayu ili ga napravite. Trebali biste koristiti 850nm IR LED jer su oni najčešći u prijemnicima. IR biblioteka je koristila D3 kao svoj TX pin

Riječ alexa prenosi se na nano, pa odavde i njegova nano s glasovnom kontrolom.

Korak 7: ESP8266

ESP8266
ESP8266
ESP8266
ESP8266
ESP8266
ESP8266

Postoji mnogo ESP8266 modula, koristio sam jedan koji sam morao spojiti pod mikroskopom, ESP8266-01 ima 2x4 zaglavlje i sve pinove koji su vam potrebni, a jeftin je. Puno primjera na webu,. Usput, GPIO_0 mora biti spojen na gnd za vrijeme uključivanja (može se postaviti) pri programiranju, njegov konfiguracioni pin, interno povučen visoko. Nakon programiranja pustite GPIO_0 da pluta i ponovo uključite napajanje. CHPD se trajno priključuje na V+.

Upravitelj odbora u arduinu 1.6.11 nema vezu esp8622, u Arduino IDE datoteci> postavke> dodatni URL -ovi upravitelja odbora, dodajte:

arduino.esp8266.com/stable/package_esp8266c…

zatim idite na upravitelja odbora i pronađite paket esp8266. ovo bi vam sada trebalo dati veliki popis esp8266 ploča, odaberite Alati> Ploča> ESP8266 Generički modul. Koristeći usb to uart modul sada možete programirati esp dio s esp8266_server_text. Napajte sa 3V3, povežite TX-RX, RX-TX i Gnd.

Morate unijeti mrežni SSID i lozinku u skriptu i port koji ćete postaviti za prosljeđivanje portova, npr. 777.

Kôd možete pokrenuti ponovnim napajanjem esp-a dok ste spojeni na usb to uart pretvarač, a serijski prozor arduino (9600 baud) trebao bi prikazati lokalnu ip adresu esp modula. unesite ovo u kod i ponovo programirajte.

Korak 8: Postavljanje mreže

Podešavanje mreže
Podešavanje mreže
Podešavanje mreže
Podešavanje mreže

Dakle, da bismo omogućili Lambda URL pozivu da se poveže sa ESP HTTP poslužiteljem, moramo postaviti vaš usmjerivač na prosljeđivanje portova. Spoljnu ip adresu sam dobio sa https://www.whatsmyip.org/, na mikrotalasnoj sam vezi tako da moj provajder ima ruter i morao sam da zatražim prosleđivanje portova. Morao sam dati IP adresu ESP8266 na mojoj mreži i port koji sam odabrao, npr. 777. Vanjsku IP adresu je potrebno unijeti u lambda python skriptu, a vaša lokalna esp adresa bit će prikazana kada pokrenete kôd esp8266 kroz link usb na uart.

ESP modul na vezi usb -uart trebao bi na terminalu prikazati dolaznu riječ iz lambda.

Spojite ESP na nano kao što je prikazano 3v3, gnd i TX na nano D2 meku seriju. ako imate nano na usb -u za serijski komunikacijski ekran na epc -u, trebalo bi pokazati što prima od esp -a.

Ako ESP nije spojen na mrežu ili ne reagira na URL poziv od lambda, lambda će isteći, a Alexa prijavljuje neuspješan odgovor vještine

Korak 9: Alexa Open Clicker TV pauza

Alexa Open Clicker Tv Pauza
Alexa Open Clicker Tv Pauza

Stavio sam modul pored prijemnika, ali s IC izlazom veće snage mogao bi biti bilo gdje u prostoriji. Koristim USB adapter za napajanje poznate marke za napajanje putem USB -a.

Sjednite i recite "Alexa open Clicker"

tv vodic

tv go down

tv select

tv play

tv jump 5

za skok unaprijed određeni broj minuta makroi će otići na 30x čekanje na traženo vrijeme, a zatim će se reproducirati.

Oglasi u Velikoj Britaniji traju oko pet minuta.

Da izađete iz aplikacije, recite Alexa da je dao otkaz.

Uživajte.

Preporučuje se: