- Pilnīgs materiāls:
- 1. daļa: Raspberry Pi iestatīšana ar SSH un VNC
- 2. daļa: Iestatiet savu Amazon izstrādātāja kontu un konfigurējiet Alexa balss pakalpojumus Raspberry Pi:
- 3. daļa: PubNub un IFTTT iestatīšana Alexa Pi mājas automatizācijai :
- 3-2. Daļa: IFTTT iestatīšana Amazon Alexa Service:
- 4. daļa: Aparatūras savienojumi un shēmas diagramma:
- 5. daļa: Python kods LED kontrolei:
Vai esat kādreiz domājuši par skaļruni, kuru var vadīt ar balsi !!! Ko darīt, ja mēs šādā veidā varam kontrolēt savu sadzīves tehniku un padarīt šīs ierīces gudrākas? Balss palīgi kļūst arvien populārāki, kad mēs virzāmies uz AI un IoT balstītu sistēmu laikmetu. Jūs esat dzirdējis par Google palīgu, Apple Siri un Amazon Alexa . Tās visas ir uz balsi balstītas AI sistēmas, kas tās atšķir viena no otras, ir to ekosistēmas, un tieši šeit Amazon Alexa izceļas visvairāk. Google, Apple un Amazon, visi šie uzņēmumi jau ir izlaiduši savus viedos skaļruņus, bet Amazon vispirms ieviesa viedos skaļruņus. Amazon atbalss, Echo Dot Spot utt. Ir viedie skaļruņi, kas ir pieejami tirgū.
Amazon nodrošina API sava daudz populārā balss pakalpojuma Alexa izmantošanai. Tas ir atvērtā koda un pieejams vietnē Github. Turklāt jūs varat instalēt vai integrēt Alexa pielāgotās ierīcēs, piemēram, Raspberry Pi, un iegūt pilnu Amazon Echo funkcionalitāti šajā ierīcē.
Izmantojot Alexa balss pakalpojumu, mēs varam atskaņot mūziku, iegūt informāciju par laika apstākļiem, rezervēt biļetes un daudz ko citu. Viss, kas jums jādara, ir "jautāt". Šajā apmācībā mēs redzēsim, kā mēs varam kontrolēt Raspberry Pi GPIO, izmantojot Alexa Voice pakalpojumus, lai spīdētu LED.
Pilnīgs materiāls:
Aparatūras prasības:
- Raspberry Pi 3 vai Raspberry Pi 2 B modelis un SD karte (8GB vai vairāk)
- Ārējais skaļrunis ar 3,5 mm AUX kabeli
- Jebkura tīmekļa kamera vai USB 2.0 mikrofons
- Releja modulis
- LED
Piezīme: Tīmekļa kamerā ir iebūvēts mikrofons, tāpēc mēs to izmantosim USB 2.0 mikrofona vietā.
Programmatūras lietotnes un prasības tīmeklim:
- Reģistrējiet kontu Alexa Voice Services
- Reģistrējiet kontu vietnē PubNub
- Reģistrējiet kontu IFTTT
Mēs arī pieņemam, ka jūsu Raspberry pi jau ir iestatīts ar Raspbian OS un ir savienots ar internetu. Kad tie ir ievietoti, turpināsim apmācību. Ja esat jauns Raspberry Pi lietotājs, vispirms vispirms veiciet darba sākšanu ar Raspberry pi.
Visa apmācība galvenokārt ir sadalīta 5 daļās, kas ir šādas:
- Ja jums nav monitora, mums ir jāiestata Raspberry Pi ar SSH un VNC, pārbaudiet arī USB mikrofona savienojamību.
- Uzstādiet savu Amazon izstrādātāju un instalējiet Alexa vietnē Raspberry Pi
- PubNub un IFTTT iestatīšana Alexa mājas automatizācijai
- Aparatūras savienojums
- Alexa Pi GPIO Control Python kods
Ja jūs vienkārši vēlaties kontrolēt LED ar balsi, pārbaudiet arī mūsu Bluetooth balstīto balss vadīto LED projektu.
1. daļa: Raspberry Pi iestatīšana ar SSH un VNC
Pirmkārt, mēs savienosim Raspberry Pi ar SSH un VNC. Lai sekotu šādām apmācībām oficiālajā Raspberry Pi vietnē, saites ir norādītas zemāk.
SSH: SSh saite
VNC: VNC saite
Ja jums ir Monitor, varat atstāt šo darbību un pāriet tieši uz 2. darbību, kas ir Alexa balss pakalpojuma (Avs) iestatīšana. Pirms tam mums jāpārbauda mikrofona savienojamība.
Tīmekļa kameras mikrofona pārbaude ar Raspberry Pi:
1. Atveriet Raspberry Pi termināli un ierakstiet komandu arecord -l. Tas parādīs aparatūras ierīces, kas ir savienotas ar Raspberry Pi, kā parādīts zemāk:
1. karte ir jūsu tīmekļa kameras mikrofons, kuru mēs izmantosim. Ja tas netiek parādīts, jūsu tīmekļa kamera var būt bojāta.
2. Tagad pārbaudiet, vai mikrofons darbojas, palaižot ierakstu audio kā:
arecord /home/pi/Desktop/test.wav -D sysdefault: KARTE = 1
3. Lai atskaņotu ierakstīto audio, ierakstiet šo komandu:
omxplayer -p -o vietējais /home/pi/Desktop/test.wav
Ja Raspberry Pi esat pievienojis monitoram, izmantojot HDMI kabeli, pēc noklusējuma audio izvade notiek caur monitora skaļruni (ja tajā ir iebūvēts skaļrunis). Tātad, lai mainītu to uz 3,5 mm, jums jāievada šāda komanda:
sudo raspi-config un dodieties uz opciju Iepriekš.
Sarakstā atlasiet Audio -> atlasiet Force 3.5mm -> atlasiet Labi un restartējiet Raspberry Pi.
Tagad jums vajadzētu dzirdēt skaņu no 3,5 mm ligzdas.
PIEZĪME. Ja vēlaties palielināt vai samazināt mikrofona ieejas balss skaļumu, ierakstiet terminālā alsamixer . Izvēlieties skaņas karti no termināla, nospiežot F6.
Nospiediet F4, lai mainītu Mic dB pastiprinājumu un iestatītu to kā vēlaties.
Ja jums ir USB 2.0 mikrofons, veicamās darbības ir vienādas, lai pārbaudītu mikrofonu. Šeit mēs esam izmantojuši Webcam USB mikrofonam.
2. daļa: Iestatiet savu Amazon izstrādātāja kontu un konfigurējiet Alexa balss pakalpojumus Raspberry Pi:
Mēs to jau esam detalizēti izskaidrojuši savā iepriekšējā apmācībā, kur esam izveidojuši viedo skaļruni Amazon Echo. Šeit mēs koncentrējamies uz Raspberry Pi GPIO kontroli ar Alexa, tāpēc mēs vēlreiz nepaskaidrojam visu procesu, tāpēc izlasiet iepriekšējo rakstu un sagatavojiet savu skaļruni, izmantojot Alexa balss pakalpojumus, kas instalēti jūsu Raspberry pi.
Lai pārbaudītu Alexa, vienkārši pamodiniet viņu, sakot viņas vārdu! Pārbaudiet demonstrācijas video, kas sniegts apmācības beigās.
Jūs varat viņai jautāt par savas pilsētas temperatūru, lai pārbaudītu, vai tā darbojas vai ne.
3. daļa: PubNub un IFTTT iestatīšana Alexa Pi mājas automatizācijai :
Lai kontrolētu Raspberry Pi GPIO, izmantojot šo Alexa Pi, mums nepieciešama PubNub python SDK un IFTTT palīdzība. Mēs dosim komandas IFTTT caur Alexa, un PubNub dod signālu RPi, lai ieslēgtu / izslēgtu LED. Tāpēc mēs vispirms instalēsim PubNub uz Raspberry Pi.
3-1. Daļa: PubNub Python SDK instalēšana:
PubNub nodrošina ziņojumapmaiņas API, lai publicētu / abonētu jebkuru ziņojumu savā globālajā tīklā. Šeit mēs izmantojam IFTTT un Alexa, lai publicētu ziņojumu vietnē PubNub, lai Raspberry Pi GPIO padarītu zemu / augstu. Šo ziņojumu saņem Raspberry Pi, un Pi attiecīgi ieslēgs vai izslēgs LED. Veiciet tālāk norādītās darbības, lai iestatītu PubNub vietnē Raspberry Pi:
1. solis: Atveriet termināli savā RPi un izpildiet šādu komandu, lai instalētu SDK:
sudo pip instalēt pubnub == 3.9.0
Instalējiet tikai 3.9.0 versiju, cita versija nedarbosies ar pitona skriptu, kuru mēs palaidīsim pēdējā.
2. solis: Tagad dodieties uz PubNub un pierakstieties, izmantojot savus akreditācijas datus.
Step 3:. Iegūstiet publicēšanas un abonēšanas atslēgas , kuras izmantosim vēlāk.
3-2. Daļa: IFTTT iestatīšana Amazon Alexa Service:
IFTTT ir bezmaksas tīmekļa pakalpojums, kas ļauj lietotājiem izveidot vienkāršu nosacītu paziņojumu ķēdes, sauktas par “receptēm”, kuras tiek aktivizētas, pamatojoties uz izmaiņām citos tīmekļa pakalpojumos, piemēram, Gmail, Facebook, Instagram un. IFTTT ir saīsinājums no “If This Then That”.
Šajā projektā IFTTT tiek izmantots, lai izveidotu Raspberry Pi GPIO LOW / HIGH, pamatojoties uz runas komandu, kuru saņēmis Alexa serviss, kas darbojas ar RPi.
Veiciet šīs darbības, lai izveidotu sīklietotni:
1. solis: - Piesakieties IFTTT, izmantojot savus akreditācijas datus, vai reģistrējieties, ja jums nav konta.
2. solis: - Manās sīklietotnēs noklikšķiniet uz Jauna sīklietotne
3. solis: - noklikšķiniet uz + this
4. solis: - meklējiet Amazon Alexa un noklikšķiniet uz tā, pierakstieties ar savu amazon izstrādātāja konta informāciju.
5. solis: - Izvēlieties aktivizētāju, pasakiet konkrētu frāzi
6. solis: - kā frāzi norādiet “ ieslēgt gaismu” , noklikšķiniet uz Izveidot trigeri.
7. solis: - noklikšķiniet uz + tas
8. solis: - meklējiet Webhooks, noklikšķiniet uz tā un atlasiet Veikt tīmekļa pieprasījumu
9. solis: - Webhooks nodrošina REST WEB pieprasījumu, izmantojiet PubNub iegūtās publicēšanas un abonēšanas atslēgas un modificējiet šo URL.
http://pubsub.pubnub.com//publish/pub_key/sub_key/0/alexaTrigger/0/{"requester":"Alexa","trigger":"light","status":1}
10. darbība: - ielīmējiet modificēto URL URL tekstlodziņā.
11. solis: - iestatiet metodi kā GET, saturu kā lietojumprogrammu / json un noklikšķiniet uz Saglabāt.
12. solis: - veiciet tās pašas darbības, lai izveidotu aktivizētāju “ gaismas izslēgšanai ” un modificētu URL šādi.
pubsub.pubnub.com//publish/pub_key/sub_key/0/alexaTrigger/0/{"requester":"Alexa","trigger":"light","status":0
13. solis: - Tagad mēs esam gatavi ar visiem tīmekļa komponentiem demonstrācijai.
4. daļa: Aparatūras savienojumi un shēmas diagramma:
Šajā projektā testēšanas vajadzībām mums ir nepieciešama vienkārša LED. Zemāk ir shēma un aparatūras savienojumi, lai kontrolētu Raspberry Pi GPIO ar Amazon Alexa.
Mēs izmantosim GPIO18 savā pitona skriptā, tāpēc pieslēdziet releju ar savu LED 18. To var mainīt pitona skriptā.
5. daļa: Python kods LED kontrolei:
Šīs apmācības beigās atrodiet pilnu Python skriptu.
Jums ir jārediģē Pub un Sub atslēga ar pubnub taustiņiem pitona kodā.
# Inicializējiet Pubnub atslēgas pub_key = "****************************" sub_key = "*********** ************* "
Tagad palaidiet skriptu
pitons alexaRpi.py
Tagad mēs visi esam gatavi demonstrācijai. Pirms turpināt, pārliecinieties, ka izmantojat visus trīs pakalpojumus no 1. daļas (trīs termināļus).
Lai dotu jebkuru komandu, jums ir nepieciešams pamodināt Alexa pakalpojumu, katru reizi zvanot uz Alexa, katru reizi, kad vēlaties nosūtīt komandu. Jūs dzirdēsiet pīkstiena skaņu. Kad dzirdat pīkstienu, sakiet: “ Alexa Trigger Turn the Light. "Jūs varat redzēt, kā gaisma ieslēdzas mirkļa laikā. Un tad, ja jūs sakāt “ Alexa Trigger Turn off Light ”, gaismai vajadzētu izslēgties.
Tieši tā…. Varat arī pievienot releju, lai vadītu maiņstrāvas ierīci, pat jūs varat kontrolēt daudzas ierīces, izmantojot vairāk releju un vairāk Raspberry pi GPIO tapu.
Tālāk pārbaudiet pilnu kodu un demonstrācijas video. Šeit pārbaudiet arī visus mūsu mājas automatizācijas projektus.