Sisällysluettelo:

Alexa Voice Control TV -kaukosäädin ESP8266: 9 vaihetta
Alexa Voice Control TV -kaukosäädin ESP8266: 9 vaihetta

Video: Alexa Voice Control TV -kaukosäädin ESP8266: 9 vaihetta

Video: Alexa Voice Control TV -kaukosäädin ESP8266: 9 vaihetta
Video: home assistant control so many relay! 2024, Heinäkuu
Anonim
Alexa Voice Control TV -kaukosäädin ESP8266
Alexa Voice Control TV -kaukosäädin ESP8266

Löysikö joku talossasi kaukosäätimen, käveletkö tyhjään huoneeseen löytääksesi TV: n soivan. Paristot alkavat heiketä, eikä niitä voi ohjata huoneen takaa. Nyt voit ohjata televisiota, DVR: ää ja mitä tahansa infrapunasäätimellä, jolle voit kaapata IR -signaalin. Tein tämän järjestelmän ohjaamaan SKY DVR: ää yksinkertaisella ääniliittymällä.

Vaadittu laitteisto:

  1. Amazon Echo tai Dot
  2. Wifi -reititin, joka voi siirtää eteenpäin (palveluntarjoajani teki tämän puolestani)
  3. Arduino NANO muunnettiin 3V3: ksi
  4. ESP8266 -01 tai vastaava
  5. IR -lähettimen moduuli tai piiri
  6. IR -vastaanotinmoduuli, jos haluat kaapata koodeja.

Tarvittavat ohjelmistot ja palvelut:

  1. Arduino IDE, käytin 1.6.11
  2. Amazon Alexa -taitotili (ilmainen)
  3. Amazon AWS -tili (ilmainen taso, mutta vaatii tilin avaamiseen luottokortin) tai vaihtoehtoinen palvelin.

Vaihe 1: Alexa Skills Setup

Alexa Skills Setup
Alexa Skills Setup
Alexa Skills Setup
Alexa Skills Setup
Alexa Skills Setup
Alexa Skills Setup

Alexas -taitopaketti ottaa äänikomennon ja suodattaa sen käyttämällä arvoluetteloa

Rekisteröitymisen jälkeen:

Valitse Amazon -kehittäjäkonsolissa Alexa -välilehti> Alexa Skills Kit [Aloita]

[Lisää uusi taito]

Taitotyyppi: Mukautettu vuorovaikutusmalli

Kieli: valitse oikea kieli, jos se olisi asetettu englanniksi (USA), se ei reagoi!

Nimi: tämä ei ole tärkeää nyt, koska emme julkaise.

Kutsun nimi:, valitse lyhyt nimi, joka on sana, jota käytetään sovelluksen avaamiseen.

[SEURAAVA]

Intent Schema, liitä koodi

Muokatut paikkatyypit {Lisää korttityyppi], kirjoita EFFECT_ON_TV

paikka -arvoihin, liitä koodi

Esimerkkejä lausunnoista, TVCommandIntent TV {TVAction}

[TALLENNA], seuraavalla taitosivulla meidän on lisättävä linkki koodiin, jota aiomme suorittaa, kun "Intent" laukaisee joko sovelluksen aloitussanalla "clicker" tai sen jälkeen "tv {slot value}".

Palaamme Alexaan, kun olemme asentaneet Lambda -palvelimen python -komentosarjan.

Vaihe 2: AWS Lambda Server Python -skripti

Rekisteröidy AWS: n ilmaiseen tasoon, olin huolissani siitä, että tämä voi maksaa minulle oikeaa rahaa, mutta kun olen käyttänyt sitä jonkin aikaa ja lukenut foorumeita, käyttörajat ovat niin korkeat henkilökohtaiseen ja kehityskäyttöön, että sen ei pitäisi koskaan saavuttaa latauspistettä. On vaihtoehto käyttää omaa HTTPS -palvelinta, ja ehkä tämä on jotain, mitä esp8266 voisi tehdä, toinen ohjeellinen!

Tämä koodi toimii, kun kutsun nimi lausutaan (esim. "Alexa open clicker") ja vastaanottaa taikasanan Alexalta. Kun sovellus on käynnistetty, sinun tarvitsee vain sanoa "tv play, tv jump five" ja Alexa lähettää "play", "jump 5" tähän python -skriptiin. Sovellus aikakatkaistaan, jos se ei vastaa jonkin ajan kuluttua.

Valitse AWS -palveluissa ensin sijaintisi, oikeassa yläkulmassa on vaihtoehto.

USA: lle N Virginia, EU: lle Irlanti.

valitse Laskenta -otsikosta Lambda.

[Luo lambda -toiminto]

[Tyhjä toiminto]

Määritä liipaisin: napsauta katkoviivaa ja valitse Alexa Skills Kit

[SEURAAVA]

Määritä toiminto

Nimeä mitä haluat

Kuvaus, riippuu sinusta

Runtine: Python 2.7

liitä python -koodi,

koodissa URL -osoitteen HTTP -osoite on muutettava omaksi ulkoiseksi IP -osoitteeksesi myöhemmin

link = "https://185.255.255.255:777/text?data=" + suosikkiväri

alempana näytöllä on ROLLA, napsauta välilehteä ja valitse Valitse mukautettu rooli

Tämä avaa uuden näytön ja valitse Salli.

[SEURAAVA] arvostelu, paina [Luo toiminto] ja sen pitäisi koota ja antaa sinulle ARN -numero. KOPIOI tämä koodi ja me lisäämme sen alexa -taitopakettiin.

Vaihe 3:

Vaihe 4: Aseta Alexa Skills Kit -linkiksi AWS Lambda

Aseta Alexa Skills Kit -linkiksi AWS Lambda
Aseta Alexa Skills Kit -linkiksi AWS Lambda

Valitse Alexa -taitopaketissa Määrityssivu, jonka otsikko on Maailmanlaajuiset kentät, ja valitse AWS Lambda ja alueesi ja liitä ARN -koodi ruutuun [SEURAAVA], testaa, valitse KÄYTÖSSÄ on valittu.

Olemme valmiita täällä toistaiseksi, nyt joitakin laitteistoja varten.

Vaihe 5: Arduino NANO 3V3 -muunnos

Arduino NANO 3V3 -muunnos
Arduino NANO 3V3 -muunnos
Arduino NANO 3V3 -muunnos
Arduino NANO 3V3 -muunnos

ESP8266 toimii 3v3: sta, joten joko käytät sitä ulkoisesta säätimestä tai muunnat nanon. Olen käyttänyt kloonin nanoa, jossa on CH340 -usb -siru. Minulla on kaksi erilaista piirilevyasettelua, mutta toivottavasti tämä kattaa useimmat asettelut.

Meidän on vaihdettava 5 V: n säädin nastalla yhteensopivaan 3v3: een, 1117-3. reititä sitten 5V sisään USB -pistorasiasta vain säätimeen ja kytke kaikki muu sen ulostuloon. onneksi tämä voidaan saavuttaa poistamalla tulodiodi, joka korvaa säätimen ja lisäämällä yhden johdon diodin tulopuolelta nano -levyn Viniin.

Tarkista, voitko ohjelmoida nanon muuntamisen jälkeen.

Vaihe 6: NANO -koodi

NANO -koodi
NANO -koodi
NANO -koodi
NANO -koodi

Tämä käytti SKY UK -kaukosäätimen koodeja, se saattaa olla mallikohtainen ja kannattaa tarkistaa, että koodit toimivat erillisessä luonnoksessa, jota ei ole linkitetty esp8266: een.

Käytin IRremote -kirjastoa shirriff -version 2.0.1 avulla

Käytä IRrecord -esimerkkiä kaapataksesi etäkomentoja, jotka vaativat infrapunavastaanotinmoduulin, tai saatat löytää koodisi verkosta? En mene tähän, mutta tässä voit valita, mitä hallitset ja miten.

Liitä ebaystä saatavana oleva IR -lähetin tai rakenna se. Sinun tulisi käyttää 850nm IR -lediä, koska ne ovat yleisimpiä vastaanottimissa. IR -kirjasto käytti D3: tä TX -nastana

Alexa -sana välitetään nanolle, joten täältä sen nano ääniohjauksella.

Vaihe 7: ESP8266

ESP8266
ESP8266
ESP8266
ESP8266
ESP8266
ESP8266

ESP8266-moduuleja on monia, käytin yhtä, jonka jouduin johtamaan mikroskoopilla, ESP8266-01: ssä on 2x4-otsikko ja kaikki tarvitsemasi nastat ja se on halpaa. Paljon esimerkkejä verkossa,. Matkani, GPIO_0 on yhdistettävä gnd: ään käynnistyksen aikana (voidaan sitten kellua) ohjelmoitaessa, sen konfiguraatiotappi, vedetty korkealle sisäisesti. Kun GPIO_0 on ohjelmoitu, anna sen kellua ja käynnistää se uudelleen. CHPD muodostaa yhteyden V+: een pysyvästi.

Arduino 1.6.11: n hallituksen johtajalla ei ole esp8622 -linkkiä, lisää Arduino IDEfile> -asetukset> Hallituksen ylimääräiset URL -osoitteet:

arduino.esp8266.com/stable/package_esp8266c…

siirry sitten hallituksen hallintaan ja etsi esp8266 -paketti. Tämän pitäisi nyt antaa sinulle suuri luettelo esp8266 -korteista, valitse Työkalut> Levy> ESP8266 -yleinen moduuli. Käyttämällä usb -uart -moduulia voit nyt ohjelmoida esp -osan esp8266_server_text -ohjelmalla. Virta 3 V3: lla, yhdistä TX-RX, RX-TX ja Gnd.

Sinun on syötettävä verkon SSID ja salasana komentosarjaan ja porttiin, jonka asetat portin edelleenlähetykselle, esim. 777.

Voit suorittaa koodin kytkemällä uudelleen virran esp-laitteeseen, kun se on liitetty usb-uart-muuntimeen, ja arduino-sarjaikkunan (9600 baud) pitäisi näyttää esp-moduulin paikallinen IP-osoite. kirjoita tämä koodiin ja ohjelmoi uudelleen.

Vaihe 8: Verkkoasetukset

Verkkoasetukset
Verkkoasetukset
Verkkoasetukset
Verkkoasetukset

Jotta Lambda -URL -puhelu voi muodostaa yhteyden ESP HTTP -palvelimeen, meidän on asetettava reititin porttisiirtoon. Sain ulkoisen ip -osoitteeni osoitteesta https://www.whatsmyip.org/, olen mikroaaltoyhteydellä, joten palveluntarjoajallani on reititin ja minun oli pyydettävä portin edelleenlähetys heiltä. Minun oli annettava verkossa olevan ESP8266: n IP -osoite ja valitsemani portti, esim. 777. Ulkoinen IP -osoite on syötettävä lambda python -skriptiin ja paikallinen esp -osoitteesi näkyy, kun suoritat esp8266 -koodin usb -uart -linkki.

USB -uart -liitännän ESP -moduulin pitäisi näyttää päätelaitteessa lambdasta tuleva sana.

Liitä ESP nanoon kuvan 3v3, gnd ja TX mukaan nano D2 soft -sarjaan. jos sinulla on nano usb: llä sarjakommenttinäyttöön th epc: ssä, sen pitäisi näyttää mitä se vastaanottaa esp: ltä.

Jos ESP ei ole yhteydessä verkkoon tai ei vastaa lambdan URL -puheluun, lambda aikakatkaistaan ja Alexa ilmoittaa epäonnistuneesta taitovastauksesta

Vaihe 9: Alexa Avaa Clicker Tv Pause

Alexa Avaa Clicker -TV -tauko
Alexa Avaa Clicker -TV -tauko

Laitoin moduulin vastaanottimen viereen, mutta suuremman tehon IR -lähdöllä se voisi olla missä tahansa huoneessa. Käytän tunnetun merkkistä usb -virtalähdettä syöttämään virtaa usb: n kautta.

Istu alas ja sano "Alexa avaa Clicker"

tv-opas

tv kaatuu

tv valitse

tv pelata

tv hyppy viisi

hypätäksesi eteenpäin tietty määrä minuutteja, makrot siirtyvät 30 kertaa odottamaan pyydettyä aikaa ja pelaavat sitten.

Ison -Britannian mainokset ovat noin viisi minuuttia.

Poistu sovelluksesta sanomalla Alexa quit.

Nauttia.

Suositeltava: