- Perquisite Material:
- Bahagi 1: Pagse-set up ng Raspberry Pi gamit ang SSH at VNC
- Bahagi 2: I-set up ang Iyong Account sa Developer ng Amazon at I-configure ang Mga Serbisyo sa Boses ng Alexa sa Raspberry Pi:
- Bahagi 3: Pagse-set up ng PubNub at IFTTT para sa Alexa Pi Home Automation :
- Bahagi 3-2: Pagse-set up ng IFTTT para sa Amazon Alexa Service:
- Bahagi 4: Mga koneksyon sa hardware at Circuit Diagram:
- Bahagi 5: Python Code para sa Pagkontrol ng LED:
Naisip mo ba ang tungkol sa isang nagsasalita na maaaring makontrol ng iyong boses !!! Paano kung makokontrol natin ang ating mga gamit sa bahay sa ganitong paraan at gawing mas matalino ang mga kagamitang ito? Ang mga tumutulong sa boses ay nagiging mas tanyag habang papunta kami sa isang panahon ng mga system na batay sa AI at IoT. Narinig mo ang tungkol sa Google Assistant, Apple Siri at Amazon Alexa . Ang lahat ng ito ay mga system na batay sa Boses ng AI, kung ano ang pinagkaiba ng bawat isa sa kanilang mga ecosystem, at dito pinaka-standout ang Amazon Alexa. Ang Google, Apple at Amazon, lahat ng mga kumpanyang ito ay naglunsad na ng kanilang mga smart speaker ngunit unang ipinakilala ng Amazon ang mga smart speaker. Ang echo ng Amazon, Echo Dot Spot, atbp. Ay ang matalinong nagsasalita na magagamit sa merkado.
Nagbibigay ang Amazon ng API para sa paggamit ng tanyag na serbisyo sa boses na ito, ang Alexa. Ito ay bukas na mapagkukunan at magagamit sa Github. Dagdag dito maaari mong i-install o isama ang Alexa sa mga pasadyang aparato tulad ng Raspberry Pi at makuha ang buong pag-andar ng Amazon Echo sa aparatong iyon.
Gamit ang serbisyo sa boses ng Alexa, maaari kaming maglaro ng musika, makakuha ng impormasyon tungkol sa panahon, mga tiket sa libro at marami pa. Ang kailangan mo lang gawin ay 'magtanong'. Sa tutorial na ito, makikita natin kung paano namin makokontrol ang Raspberry Pi GPIO gamit ang mga serbisyo ng Alexa Voice upang mag-glow ng isang LED.
Perquisite Material:
Mga Kinakailangan sa Hardware:
- Raspberry Pi 3 o Raspberry Pi 2 Model B at SD Card (8GB o higit pa)
- Panlabas na Speaker na may 3.5mm AUX cable
- Anumang Webcam o USB 2.0 Mikropono
- Relay module
- LED
Tandaan: Ang Webcam ay may nakapaloob na mikropono kaya, gagamitin namin ito bilang kapalit ng USB 2.0 microphone.
Software Apps at Mga Kinakailangan sa Web:
- Magrehistro ng isang account sa Alexa Mga Serbisyo sa Voice
- Magrehistro ng isang account sa PubNub
- Magrehistro ng isang account sa IFTTT
Ipinapalagay din namin na ang iyong Raspberry pi ay na-set up na sa isang Raspbian OS at nakakonekta sa internet. Sa mga ito sa lugar magpatuloy tayo sa tutorial. Kung bago ka sa Raspberry Pi pagkatapos ay dumaan sa Pagsisimula muna sa Raspberry pi.
Ang buong tutorial ay higit sa lahat nahahati sa 5 bahagi, na kung saan ay ang mga sumusunod:
- Kung wala kang monitor pagkatapos ay kailangan naming i-setup ang Raspberry Pi sa SSH at VNC, suriin din ang pagkakakonekta ng USB Microphone.
- I-set up ang Iyong Amazon Developer at i-install ang Alexa sa Raspberry Pi
- Pagse-set up ng PubNub at IFTTT para sa Alexa Home Automation
- Koneksyon sa hardware
- Python code para sa Alexa Pi GPIO Control
Kung nais mo lang kontrolin ang isang LED gamit ang iyong boses, suriin din ang aming proyekto na batay sa Bluetooth na kinokontrol ng Voice.
Bahagi 1: Pagse-set up ng Raspberry Pi gamit ang SSH at VNC
Una, ikonekta namin ang Raspberry Pi sa SSH at VNC. Para sa mga ito sundin ang mga tutorial sa opisyal na website ng Raspberry Pi, ang mga link ay ibinibigay sa ibaba.
Para sa SSH: SSh link
Para sa VNC: VNC link
Kung mayroon kang Monitor pagkatapos ay maaari mong iwanan ang hakbang na ito at direktang pumunta sa hakbang 2 na kung saan ay ang Pagse-set up ng Alexa Voice Service (Avs). Bago ito kailangan nating suriin ang pagkakakonekta ng mic.
Sinusuri ang Webcam Mic gamit ang Raspberry Pi:
1. Buksan ang terminal ng Raspberry Pi at i-type ang arecord -l utos. Ipapakita nito ang mga aparato sa hardware na konektado sa Raspberry Pi tulad ng ipinakita sa ibaba:
Ang Card 1 ay ang mic ng iyong webcam na gagamitin namin. Kung hindi ito ipinakita, maaaring may depekto ang iyong webcam.
2. Ngayon, suriin kung gumagana ang mic sa pamamagitan ng pagpapatakbo ng record audio command bilang:
arecord /home/pi/Desktop/test.wav -D sysdefault: CARD = 1
3. Upang patugtugin ang naitala na audio uri ng utos na ito:
omxplayer -p -o local /home/pi/Desktop/test.wav
Kung nakakonekta ka sa Raspberry Pi sa monitor gamit ang HDMI cable pagkatapos sa pamamagitan ng default na audio output ay sa pamamagitan ng speaker ng iyong monitor (kung mayroong inbuilt speaker dito). Kaya, upang baguhin ito sa 3.5mm kailangan mong i-type ang sumusunod na utos:
sudo raspi-config at pumunta sa Advance na pagpipilian.
Piliin ang Audio mula sa listahan -> piliin ang Force 3.5mm -> piliin ang Ok at I-restart mo ang Raspberry Pi.
Ngayon, dapat mong marinig ang tunog mula sa 3.5mm jack.
TANDAAN: Kung nais mong taasan o bawasan ang lakas ng input ng boses para sa mikropono ang uri ng alsamixer sa terminal. Piliin ang sound card mula sa terminal sa pamamagitan ng pagpindot sa F6.
Pindutin ang F4 upang baguhin ang nakuha ng Mic dB at itakda ito ayon sa gusto mo.
Kung mayroon kang USB 2.0 microphone pagkatapos sundin ang mga hakbang ay pareho upang suriin ang mikropono. Dito nagamit namin ang Webcam para sa USB microcphone.
Bahagi 2: I-set up ang Iyong Account sa Developer ng Amazon at I-configure ang Mga Serbisyo sa Boses ng Alexa sa Raspberry Pi:
Naipaliliwanag na namin ito nang detalyado sa aming nakaraang tutorial kung saan nagtayo kami ng isang matalinong tagapagsalita ng Amazon Echo. Narito kami nakatuon sa pagkontrol sa Raspberry Pi GPIO kay Alexa kaya hindi namin ipinapaliwanag muli ang buong proseso, kaya basahin ang nakaraang artikulo at ihanda ang iyong Tagapagsalita sa mga serbisyo ng boses ng Alexa na naka-install sa iyong Raspberry pi.
Upang masubukan si Alexa, gisingin mo nalang siya sa pagsasabi ng kanyang pangalan! Suriin ang Naibigay na Video ng Demo sa pagtatapos ng tutorial.
Maaari mong tanungin siya tungkol sa temperatura ng iyong lungsod upang suriin na gumagana ito o hindi.
Bahagi 3: Pagse-set up ng PubNub at IFTTT para sa Alexa Pi Home Automation :
Para sa pagkontrol sa Raspberry Pi GPIO gamit ang Alexa Pi na ito, kailangan namin ang tulong ng PubNub python SDK at IFTTT. Magbibigay kami ng mga utos sa IFTTT sa pamamagitan ng Alexa, at ang PubNub ay nagbibigay ng signal sa RPi upang i-on / i-off ang LED. Kaya i-install muna namin ang PubNub sa Raspberry Pi.
Bahagi 3-1: Pag-install ng PubNub Python SDK:
Nagbibigay ang PubNub ng isang messaging API upang mai-publish / mag-subscribe ng anumang mensahe sa kanilang Global network. Narito ginagamit namin ang IFTTT at Alexa upang mai-publish ang mensahe sa PubNub, para sa paggawa ng mababa / mataas ng Raspberry Pi GPIO. Ang mensaheng ito ay natanggap ng Raspberry Pi at i-on o i-OFF ni Pi ang LED nang naaayon. Sundin ang mga hakbang sa ibaba upang mai-setup ang PubNub sa Raspberry Pi:
Hakbang 1: Buksan ang terminal sa iyong RPi at patakbuhin ang sumusunod na utos upang mai-install ang SDK:
sudo pip install pubnub == 3.9.0
I-install lamang ang bersyon na 3.9.0, ang ibang bersyon ay hindi gagana sa script ng sawa na tatakbo kami sa huli.
Hakbang 2: Ngayon, pumunta sa PubNub at mag-sign in gamit ang iyong mga kredensyal.
Hakbang 3:. Kunin ang I-publish at Mag-subscribe ng Mga Susi na gagamitin namin sa paglaon.
Bahagi 3-2: Pagse-set up ng IFTTT para sa Amazon Alexa Service:
Ang IFTTT ay isang libreng serbisyo na batay sa web na nagbibigay-daan sa mga gumagamit na lumikha ng mga kadena ng simpleng mga kondisyon na pahayag, na tinatawag na "mga recipe", na na-trigger batay sa mga pagbabago sa iba pang mga serbisyo sa web tulad ng Gmail, Facebook, Instagram, at. Ang IFTTT ay isang pagpapaikli ng "Kung Ito Pagkatapos Iyon".
Para sa proyektong ito, ang IFTTT ay ginagamit upang gawing Mababa / Mataas ang Raspberry Pi GPIO batay sa utos sa pagsasalita na natanggap ng serbisyo ng Alexa na tumatakbo sa RPi.
Sundin ang mga hakbang na ito upang makagawa ng isang Applet:
Hakbang 1: - Mag-login sa IFTTT gamit ang iyong mga kredensyal o Mag-sign Up kung wala kang account dito.
Hakbang 2: - Sa Aking Mga Applet, Mag-click sa Bagong Applet
Hakbang 3: - Mag - click sa + ito
Hakbang 4: - Maghanap sa Amazon Alexa at mag-click dito, mag-sign in gamit ang iyong mga detalye ng account ng developer ng amazon.
Hakbang 5: - Piliin ang gatilyo, Sabihin ang isang tukoy na parirala
Hakbang 6: - Magbigay ng " i-on ang ilaw" bilang parirala, mag-click sa Lumikha ng Trigger.
Hakbang 7: - Mag - click sa + iyon
Hakbang 8: - Paghahanap para sa Webhooks, mag- click dito at Piliin ang Gumawa ng isang Kahilingan sa Web
Hakbang 9: - Nagbibigay ang Webhooks ng REST WEB Request, Gamitin ang I-publish at Mag-subscribe ng mga key na nakuha mula sa PubNub at baguhin ang sumusunod na URL.
http://pubsub.pubnub.com//publish/pub_key/sub_key/0/alexaTrigger/0/{"requester":"Alexa","trigger":"light","status"reto}
Hakbang 10: - Idikit ang binagong URL sa kahon ng teksto ng URL.
Hakbang 11: - Itakda ang Pamamaraan bilang GET, Nilalaman bilang application / json at mag-click sa save.
Hakbang 12: - Sundin ang parehong mga hakbang upang lumikha ng gatilyo para sa " patayin ang ilaw " at baguhin ang URL sa sumusunod.
pubsub.pubnub.com//publish/pub_key/sub_key/0/alexaTrigger/0/{"requester":"Alexa","trigger":"light","status":0
Hakbang 13: - Handa na kami ngayon sa lahat ng mga bahagi ng web para sa demo.
Bahagi 4: Mga koneksyon sa hardware at Circuit Diagram:
Para sa proyektong ito, kailangan namin ng isang simpleng LED para sa layunin ng pagsubok. Nasa ibaba ang circuit diagram at mga koneksyon sa Hardware sa pagkontrol sa Raspberry Pi GPIO sa Amazon Alexa.
Gagamitin namin ang GPIO18 sa aming python script kaya, ikonekta ang relay ng iyong LED 18. Maaari mo itong palitan sa script ng sawa.
Bahagi 5: Python Code para sa Pagkontrol ng LED:
Hanapin ang kumpletong Python Script sa dulo ng tutorial na ito.
Kailangan mong i- edit ang Pub at Sub key gamit ang iyong mga pubnub key sa python code.
# Ipasimula ang Pubnub Keys pub_key = "*************************" " sub_key =" ********* ************* "
Patakbuhin ngayon ang Script
sawa AlexaRpi.py
Ngayon ay nakaayos na kami para sa demo, Tiyaking pinapatakbo mo ang lahat ng tatlong mga serbisyo mula sa Bahagi 1 (ang tatlong mga terminal) bago magpatuloy.
Upang mabigyan ang anumang utos na kailangan mo upang gisingin ang serbisyo ng Alexa sa pamamagitan ng pagtawag sa "Alexa" sa tuwing nais mong magpadala ng isang utos. Makakarinig ka ng tunog ng beep. Kapag narinig mo ang beep, sabihin ang “ Alexa Trigger Turn on the Light. ”Maaari mong makita ang ilaw na ON sa loob ng isang sandali. At pagkatapos kung sasabihin mong " Alexa Trigger Patayin ang Liwanag ", dapat patayin ang ilaw.
Ayan yun…. Maaari ka pa ring magdagdag ng isang relay upang makontrol ang AC appliance, kahit na makokontrol mo ang maraming mga kagamitan sa pamamagitan ng paggamit ng mas maraming mga relay at higit pang mga GPIO pin ng Raspberry pi.
Suriin ang kumpletong code at Video ng Demonstrasyon sa ibaba. Suriin din dito ang aming lahat ng Mga Proyekto sa Home Automation.