- Reikalinga medžiaga:
- 1 dalis: „Raspberry Pi“ nustatymas naudojant SSH ir VNC
- 2 dalis: Nustatykite „Amazon“ kūrėjo paskyrą ir konfigūruokite „Alexa“ balso paslaugas „Raspberry Pi“:
- 3 dalis: „PubNub“ ir IFTTT nustatymas „Alexa Pi“ namų automatizavimui :
- 3-2 dalis: IFTTT nustatymas „Amazon Alexa Service“:
- 4 dalis. Techninės įrangos jungtys ir grandinės schema:
- 5 dalis. Šviesos valdymo „Python“ kodas:
Ar kada pagalvojai apie garsiakalbį, kurį galima valdyti balsu !!! Ką daryti, jei mes galime tokiu būdu valdyti savo buitinę techniką ir padaryti ją protingesnę? Padėjėjai balsu tampa vis populiaresni, kai mes einame į AI ir DI pagrįstų sistemų erą. Jūs girdėjote apie „ Google“ padėjėją, „Apple Siri“ ir „Amazon Alexa“ . Tai visos yra „Voice“ pagrįstos dirbtinio intelekto sistemos, kuo jos skiriasi viena nuo kitos, yra jų ekosistemos, ir būtent čia labiausiai išsiskiria „ Amazon Alexa“. „Google“, „Apple“ ir „Amazon“, visos šios bendrovės jau išleido savo išmaniuosius garsiakalbius, tačiau „Amazon“ pirmiausia juos pristatė. „Amazon“ aidas, „Echo Dot Spot“ ir kt. Yra išmanieji garsiakalbiai, kuriuos galima rasti rinkoje.
„Amazon“ teikia API naudodama savo populiarų balso paslaugą „ Alexa“. Jis yra atviro kodo ir pasiekiamas „Github“. Be to, galite įdiegti arba integruoti „Alexa“ pasirinktiniuose įrenginiuose, pvz., „Raspberry Pi“, ir gauti visą „Amazon Echo“ funkciją tame įrenginyje.
Naudodamiesi „ Alexa“ balso paslauga galime groti muziką, gauti informacijos apie orą, užsisakyti bilietus ir dar daugiau. Tereikia paklausti. Ankstesnėje pamokoje mes valdėme „Raspberry Pi GPIO“ naudodami „Amazon Alexa“. Šioje pamokoje pažiūrėkime, kaip sukurti balso valdomą namų automatikos sistemą naudojant „Amazon Alexa“ ir „Raspberry Pi“. Mes pamatysime, kaip mes galime naudoti „Raspberry Pi“ valdyti „Alexa“ balso tarnybą ir valdyti lemputę.
Reikalinga medžiaga:
Aparatinės įrangos reikalavimai:
- „Raspberry Pi 3“ arba „Raspberry Pi 2“ B modelio ir SD kortelė (8 GB ar daugiau)
- Išorinis garsiakalbis su 3,5 mm AUX kabeliu
- Bet kuri interneto kamera arba USB 2.0 mikrofonas
- Relės modulis
- LED / AC lemputė
Pastaba: internetinėje kameroje yra įmontuotas mikrofonas, todėl mes jį naudosime vietoje USB 2.0 mikrofono.
Programinės įrangos programos ir žiniatinklio reikalavimai:
- Užregistruokite „Alexa Voice Services“ paskyrą
- Užregistruokite „PubNub“ paskyrą
- Užregistruokite sąskaitą IFTTT
Mes taip pat manome, kad jūsų „Raspberry pi“ jau yra įdiegta su „Raspbian“ OS ir yra prijungta prie interneto. Turėdami tai vietoje, pradėkime pamoką. Jei esate „Raspberry Pi“ naujokas, pirmiausia pereikite prie „Raspberry pi“ pradžios.
Visa pamoka daugiausia suskirstyta į 5 dalis, kurios yra tokios:
- Jei neturite monitoriaus, turime nustatyti „Raspberry Pi“ su SSH ir VNC, taip pat patikrinkite USB mikrofono ryšį.
- Nustatykite „Amazon“ kūrėją ir įdiekite „Alexa“ į „Raspberry Pi“
- „PubNub“ ir IFTTT nustatymas „Alexa Home Automation“
- Aparatinės įrangos ryšys
- „Alexa Pi“ namų automatikos „Python“ kodas
Taigi leiskite pradėti !!
1 dalis: „Raspberry Pi“ nustatymas naudojant SSH ir VNC
Pirma, mes sujungsime Raspberry Pi su SSH ir VNC. Norėdami sekti instrukcijas oficialioje „Raspberry Pi“ svetainėje, nuorodos pateikiamos žemiau.
SSH: SSh nuoroda
VNC: VNC nuoroda
Jei turite „Monitor“, galite palikti šį veiksmą ir pereiti tiesiai prie 2 žingsnio, kuris yra „Alexa Voice Service“ (AVS) nustatymas. Prieš tai turime patikrinti mikrofono ryšį.
Internetinės kameros mikrofono tikrinimas naudojant „Raspberry Pi“:
1. Atidarykite „Raspberry Pi“ terminalą ir įveskite „ arecord -l“ komandą. Tai parodys aparatūros įrenginius, prijungtus prie „Raspberry Pi“, kaip parodyta žemiau:
1 kortelė yra jūsų internetinės kameros mikrofonas, kurį ketiname naudoti. Jei jis nerodomas, jūsų interneto kamera gali būti sugedusi.
2. Dabar patikrinkite, ar mikrofonas veikia, paleisdami garso įrašo komandą taip:
arecord /home/pi/Desktop/test.wav -D sysdefault: CARD = 1
3. Norėdami paleisti įrašytą garsą, įveskite šią komandą:
omxplayer -p -o vietinis /home/pi/Desktop/test.wav
Jei „Raspberry Pi“ su monitoriumi prijungėte naudodami HDMI kabelį, pagal numatytuosius nustatymus garso išvestis yra per monitoriaus garsiakalbį (jei jame yra įmontuotas garsiakalbis). Taigi, norėdami pakeisti jį į 3,5 mm, turite įvesti šią komandą:
sudo raspi-config ir eikite į Iš anksto parinktį.
Iš sąrašo pasirinkite „Audio“ -> pasirinkite „Force 3.5mm Force“ -> pasirinkite Gerai ir paleiskite iš naujo „Raspberry Pi“.
Dabar turėtumėte išgirsti garsą iš 3,5 mm lizdo.
PASTABA: Jei norite padidinti arba sumažinti mikrofono įvesties balso garsumą, įveskite alsamixer tipą. Pasirinkite garso plokštę iš terminalo paspausdami F6.
Paspauskite F4, kad pakeistumėte „Mic dB“ stiprinimą ir nustatytumėte jį taip, kaip norite.
Jei turite USB 2.0 mikrofoną, atlikite tuos pačius veiksmus, kad patikrintumėte mikrofoną. Čia mes naudojome „Webcam“, skirtą USB mikrofonui.
2 dalis: Nustatykite „Amazon“ kūrėjo paskyrą ir konfigūruokite „Alexa“ balso paslaugas „Raspberry Pi“:
Mes tai jau išsamiai paaiškinome savo ankstesnėje mokymo programoje, kurioje sukūrėme „Amazon Echo“ išmanųjį garsiakalbį. Čia mes sutelkėme dėmesį į buitinės technikos valdymą su „Alexa“, todėl dar kartą nepaaiškiname viso proceso, todėl perskaitykite ankstesnį straipsnį ir pasiruoškite savo garsiakalbį naudodami „Alexa“ balso paslaugas, įdiegtas jūsų „Raspberry pi“.
Norėdami išbandyti Alexą, tiesiog pažadinkite ją sakydami savo vardą! Patikrinkite demonstracinį vaizdo įrašą, pateiktą mokymo programos pabaigoje.
Galite paklausti jos apie jūsų miesto temperatūrą, kad patikrintumėte, ar ji veikia, ar ne.
3 dalis: „PubNub“ ir IFTTT nustatymas „Alexa Pi“ namų automatizavimui :
Norint sukurti namų automatikos sistemą naudojant šią „Alexa Pi“, mums reikia „ PubNub python SDK“ ir IFTTT pagalbos. Mes duosime komandas IFTTT per „Alexa“, o „PubNub“ duos signalą RPi įjungti / išjungti šviesą. Taigi pirmiausia įdiegsime „PubNub“ į „Raspberry Pi“.
3-1 dalis: „PubNub Python SDK“ diegimas:
„PubNub“ teikia susirašinėjimo API, kad būtų galima paskelbti / užsiprenumeruoti bet kokį pranešimą savo pasauliniame tinkle. Čia mes naudojame IFTTT ir „Alexa“, kad paskelbtume pranešimą „PubNub“, kad įjungtume / išjungtume relę. Šį pranešimą gavo „Raspberry Pi“ ir Pi atitinkamai įjungs arba išjungs šviesą. Norėdami nustatyti „PubNub“ „Raspberry Pi“, atlikite toliau nurodytus veiksmus.
1. Atidarykite terminalą savo RPi ir paleiskite šią komandą, kad įdiegtumėte SDK:
sudo pip install pubnub == 3.9.0
Įdiekite tik 3.9.0 versiją, kita versija neveiks su „Python“ scenarijumi, kurį vykdysime paskutiniame.
2. Dabar eikite į „ PubNub“ ir prisijunkite naudodami savo įgaliojimus.
3. Gaukite „ Publish and Subscribe“ raktus, kuriuos naudosime vėliau.
3-2 dalis: IFTTT nustatymas „Amazon Alexa Service“:
IFTTT yra nemokama internetinė paslauga, leidžianti vartotojams sukurti paprastų sąlyginių teiginių, vadinamų „receptais“, grandines, kurios suveikia pakeitus kitas interneto paslaugas, tokias kaip „Gmail“, „Facebook“, „Instagram“ ir. IFTTT yra santrumpa „If This Then That“.
Šiame projekte IFTTT naudojama šviesos įjungimo / išjungimo komandoms suaktyvinti, remiantis kalbos komanda, kurią gavo „Alexa“ tarnyba, veikianti RPi.
Norėdami sukurti programėlę, atlikite šiuos veiksmus:
1 žingsnis: - Prisijunkite prie IFTTT naudodami savo kredencialus arba prisiregistruokite, jei neturite paskyros.
2 žingsnis: - „ Mano programėlėse“ spustelėkite „ Nauja programėlė“
3 žingsnis: - Spustelėkite + tai
4 žingsnis: - Ieškokite „Amazon Alexa“ ir spustelėkite jį, prisijunkite naudodami savo „Amazon“ kūrėjo paskyros informaciją.
5 žingsnis: - Pasirinkite gaiduką, pasakykite konkrečią frazę
6 žingsnis: - kaip frazę nurodykite „ įjungti šviesą“ , spustelėkite „ Sukurti paleidiklį“.
7 žingsnis: - Spustelėkite + tai
8 žingsnis: - Ieškokite „ Webhook“, spustelėkite jį ir pasirinkite Pateikti interneto užklausą
9 žingsnis: - „ Webhooks“ pateikia „REST WEB“ užklausą, naudokite „PubNub“ gautus skelbimo ir prenumeratos raktus ir pakeiskite šį URL.
http://pubsub.pubnub.com//publish/pub_key/sub_key/0/alexaTrigger/0/{"requester":"Alexa","trigger":"light","status":1}
10 žingsnis: - Įklijuokite modifikuotą URL į URL teksto laukelį.
11 žingsnis: - Nustatykite metodą kaip GET, turinį kaip programą / „Json“ ir spustelėkite išsaugoti.
12 žingsnis: - atlikite tuos pačius veiksmus, kad sukurtumėte veiksmą „ užgesinti šviesą “ ir pakeiskite URL taip.
pubsub.pubnub.com//publish/pub_key/sub_key/0/alexaTrigger/0/{"requester":"Alexa","trigger":"light","status":0
13 žingsnis: - Dabar mes pasirengę su visais žiniatinklio komponentais demonstracijai.
4 dalis. Techninės įrangos jungtys ir grandinės schema:
Šiam projektui mums reikia relės modulio ir kintamosios srovės lemputės ar bet kurio kito kintamosios srovės komponento, arba bandymo tikslais galite naudoti paprastą šviesos diodą. Žemiau pateikiama grandinės schema ir aparatūros jungtys, skirtos valdyti kintamosios srovės prietaisą su „Amazon Alexa“.
Savo python scenarijuje naudosime GPIO18, todėl prijunkite relę prie GPIO 18. Tai galite pakeisti python scenarijuje.
5 dalis. Šviesos valdymo „Python“ kodas:
Šios instrukcijos pabaigoje raskite visą „Python“ scenarijų.
Turite redaguoti „Pub“ ir „Sub“ raktus naudodami „pubnub“ raktus pitono kode.
# Inicializuokite „Pubnub“ raktus pub_key = "***************************" " sub_key =" *********** ************* "
Dabar paleiskite scenarijų
python alexaRpi.py
Dabar mes visi pasirengę demonstracijai. Prieš tęsdami įsitikinkite, kad naudojate visas tris 1 dalies paslaugas (tris terminalus).
Norėdami duoti bet kokią komandą, turite pažadinti „Alexa“ paslaugą skambindami „Alexa“ kiekvieną kartą, kai norite išsiųsti komandą. Išgirsite pyptelėjimą. Išgirdę pypsėjimą, pasakykite „ Alexa Trigger“ Įjunkite šviesą. Per akimirką galite pamatyti, kaip šviesa įsijungia. Ir tada, jei sakote „ Alexa Trigger Turn off Light “, šviesa turėtų išsijungti.
Viskas…. Galite pridėti daugiau kintamosios srovės prietaisų į python scenarijų, pridėdami juos su kitais GPIO kaiščiais ir galite valdyti daugelį prietaisų naudodami savo išmaniojo namo automatikos sistemą.
Žemiau patikrinkite visą kodą ir demonstracinį vaizdo įrašą. Čia taip pat patikrinkite visus mūsų namų automatikos projektus.