Talaan ng mga Nilalaman:

RabbitPi - pinagana ang Alexa, Nakakonekta ang IFTTT, Assistant sa Ear-Wiggling IoT: 12 Hakbang
RabbitPi - pinagana ang Alexa, Nakakonekta ang IFTTT, Assistant sa Ear-Wiggling IoT: 12 Hakbang

Video: RabbitPi - pinagana ang Alexa, Nakakonekta ang IFTTT, Assistant sa Ear-Wiggling IoT: 12 Hakbang

Video: RabbitPi - pinagana ang Alexa, Nakakonekta ang IFTTT, Assistant sa Ear-Wiggling IoT: 12 Hakbang
Video: Echo Glow - How to Setup and Use 2024, Disyembre
Anonim
Image
Image
RabbitPi - pinagana ang Alexa, Nakakonekta ang IFTTT, Assistant sa Ear-Wiggling IoT
RabbitPi - pinagana ang Alexa, Nakakonekta ang IFTTT, Assistant sa Ear-Wiggling IoT
RabbitPi - pinagana ang Alexa, Nakakonekta ang IFTTT, Assistant sa Ear-Wiggling IoT
RabbitPi - pinagana ang Alexa, Nakakonekta ang IFTTT, Assistant sa Ear-Wiggling IoT
RabbitPi - pinagana ang Alexa, Nakakonekta ang IFTTT, Assistant sa Ear-Wiggling IoT
RabbitPi - pinagana ang Alexa, Nakakonekta ang IFTTT, Assistant sa Ear-Wiggling IoT

Ito ay isang lipas na noong 2005 Nabaztag "matalinong kuneho" na itinayong muli sa isang modernong IoT Assistant na gumagamit ng isang Raspberry Pi 3 at isang Adafruit Motor HAT, na may isang mikropono ng webcam at isang nagsasalita ng Philips Soundshooter na nakapaloob sa nakatutuwa na orihinal na kaso. Tumugon ito sa pinasimulan ng pindutan ang mga utos ng boses gamit ang serbisyo ng boses ng Alexa sa Amazon, na binabasa ang mga tugon sa pamamagitan ng pinagsamang speaker. Ginagamit din ang mga utos ng boses upang ma-trigger ang mga recipe ng IFTTT (If This Then That), upang makipag-ugnay sa iba pang mga aparatong nakakonekta sa internet tulad ng mga smart socket at cellphone. Hindi sapat? Pati na rin ang pag-trigger ng mga kaganapan ng IFTTT natatanggap din nila ang mga ito sa pamamagitan ng Gmail, gamit ang Ivona text-to-speech engine upang basahin ang email, mga text message at iba pang mga abiso, halimbawa mga alerto sa polen o mga abiso mula sa isang security camera sa bahay. Nabanggit ko ba na nagbibigay ito ka ba ng visual na feedback sa LEDS at naka-motor na tainga? Oh at mayroon itong V2 Raspberry Pi Camera sa tiyan nito para sa pag-upload ng mga selfie na pinapagana ng boses sa Twitter. Mahirap ilarawan ang kariktan ng RabbitPi sa mga salita, tingnan ang video upang makita ito sa aksyon!

Hakbang 1: Isang Maikling Kasaysayan ng Mga Smart Rabbits

Isang Maikling Kasaysayan ng Mga Smart Rabbits
Isang Maikling Kasaysayan ng Mga Smart Rabbits
Isang Maikling Kasaysayan ng Mga Smart Rabbits
Isang Maikling Kasaysayan ng Mga Smart Rabbits
Isang Maikling Kasaysayan ng Mga Smart Rabbits
Isang Maikling Kasaysayan ng Mga Smart Rabbits
Isang Maikling Kasaysayan ng Mga Smart Rabbits
Isang Maikling Kasaysayan ng Mga Smart Rabbits

Ang orihinal na Nabaztag na "unang matalinong kuneho" ay pinakawalan noong 2005, na siningil bilang isang katulong sa bahay (pamilyar sa Amazon at Google?) - Masasabing ito ang kauna-unahang "Internet of Things" na bagay at maaga pa sa oras nito, Bumili ako kaagad. Umupo ito sa aming mantelpiece na binabasa ang pang-araw-araw na mga pagtataya ng panahon at paminsan-minsang mga abiso ngunit hindi kailanman nagkaroon ng maraming kakayahan, umaasa sa isang koneksyon sa wi-fi ng WEP at pagmamay-ari na software at mga server upang maibigay ang mga serbisyo sa text-to-speech (TTS). Mahirap isipin ngayon ngunit sa oras na walang gaanong makakonekta nito, ang social media ay halos isang bagay, pinasiyahan ng Nokia ang mundo ng smartphone at ang mga LED lightbulbs ay isang mamahaling bago.

Sa mga darating na taon sumunod ang dalawang karagdagang bersyon, ang Nabaztag: Ang Tag at ang Karotz, parehong nag-alok ng pinabuting pagpapaandar ngunit hindi rin natagpuan ang angkop na lugar sa palengke, sa huli ay pinabayaan ng mga limitasyon ng hardware at software. Ang kahihiyan ay sa lalong madaling patayin ang mga sumusuporta sa mga server ang dating matalinong mga rabbits ay naging mas higit pa sa mga burloloy. Sinubukan ng maraming mga proyekto sa pamayanan na palitan ang mga serbisyo ng "opisyal" na mga server, at ginamit namin ang "OpenKarotz" nang ilang sandali, ngunit ito rin ay tila namamatay isang taon o dalawa na ang nakalilipas, naiwan ang aking mga kuneho nang tahimik at hindi kumikibo sa ibabaw ng aking mga speaker.

Gayunpaman aral sa kasaysayan! Ang napakahusay ay na naaalala namin ang pagkakaroon ng Nabaztag sa aming sala, at nais kong ibalik ito, ngunit bilang isang tamang modernong aparato ng IoT.

Hakbang 2: Nabaztag 2.0

Nabaztag 2.0
Nabaztag 2.0

Napasigla ako na sa wakas ay simulan ang RabbitPi nang mabasa ko noong Marso na ang serbisyo sa boses ng Amazon Alexa ay ginawang magagamit sa Raspberry Pi - ang susi na kinakailangan ng isang pindutan upang maisaaktibo ang "pakikinig" - perpektong nilagyan ito sa Nabaztag, dahil mayroon itong push-button flush na may tuktok ng makintab na maliit na ulo nito. Inalis ko ang aking kuneho at agad na tumakbo ang mahusay na code ng AlexaPi ni Sam Machin na tumatakbo sa aking Pi 3, naaktibo sa pamamagitan ng pagpindot sa pindutan ng kuneho. Sa puntong ito ako ay ganap na nagagambala sa pamamagitan ng pagbuo ng AlexaPhone, ngunit tumalon pabalik pabalik sa matalinong rabbithole sa oras na matapos ito. Kailangan ko ang aking bagong pinagbuting Nabaztag upang maging kahit kasing talino ng orihinal, kaya't ginusto ko ito:

Magsagawa ng mga paghahanap sa boses at basahin ang mga resulta

Basahin ang mga abiso

Gawin ang mga tainga nito at flash LEDs

Kumuha ng mga larawan at payagan ang malayuang pagsubaybay

Makipag-ugnay sa matalinong mga socket, lightbulb at iba pa

Hakbang 3: Bunny Chop

Bunny Chop
Bunny Chop
Bunny Chop
Bunny Chop
Bunny Chop
Bunny Chop
Bunny Chop
Bunny Chop

Ang unang trabaho ay upang tanggalin ang Nabaztag at makita kung anong mga bahagi ang maaaring magamit muli. Ang mga tainga ay idinisenyo upang mapalitan at gaganapin lamang sa mga magnet, kaya't madali iyon, at ang pangunahing takip ay hawak lamang ng dalawang (kakaibang tatsulok) na mga tornilyo. Inilantad nito ang lahat ng mga circuit at bahagi, na itinayo sa paligid ng isang gitnang haligi ng plastik. Ang isang gilid ay gaganapin ang pangunahing circuit at LEDs, na may isang speaker sa kabilang panig at mga motor / button na naka-embed sa haligi sa tuktok.

Tulad ng balak ko lamang na panatilihin ang mga motor ay sinilip ko ang karamihan sa mga kable at nagsimulang maglabas ng mga tornilyo. Nakuha ko ang isang tunay na sorpresa sa puntong ito! Sa likod ng circuit ng "utak" ng kuneho ay isang puwang na tumatakbo sa buong taas ng haligi, na naglalaman ng isang buong sukat na PCMCIA wi-fi card, ang uri na gagamitin mo sa mga lumang laptop. Sa palagay ko ito ay isang disenyo o kompromiso sa pagiging magkakatugma sa oras na iyon ngunit ang paghahambing nito sa laki sa isang modernong USB dongle na talagang nagdala sa bahay kung magkano ang teknolohiya na kumubli sa espasyo ng 10 taon.

Ang natitirang bahagi ay madaling natanggal, naiwan lamang ang hubad na plastik na haligi ng suporta na may tiyak na maraming puwang sa paligid nito?

Hakbang 4: Pagsasalita at Pakikinig

Pagsasalita at Pakikinig
Pagsasalita at Pakikinig
Pagsasalita at Pakikinig
Pagsasalita at Pakikinig
Pagsasalita at Pakikinig
Pagsasalita at Pakikinig

Hindi ka maaaring magkaroon ng isang kuneho na nagsasalita ng kuneho nang walang speaker at mikropono, kaya't kasama ito sa mga unang bagay na pinag-ayos ko. Hindi ko talaga kailangang subukan nang husto, ang Pi ay tila napaka nababaluktot tungkol sa mga USB microphone at ginamit ko lang ang isang lumang MSI StarCam Clip webcam para sa pag-input, inaayos ang antas ng tunog kay Max sa mga setting ng audio ng Pi. Upang makatipid ng puwang ay binuwag ko ang webcam, itinapon ang lens ng camera at case. Nag-drill ako ng isang butas sa base para maikusot ng mikropono at ikonekta ito sa USB ng Pi, pinapatakbo ang mga kable nang maayos hangga't maaari.

Ginamit ko ang KitSound MiniBuddy speaker sa AlexaPhone, dahil napatunayan na talagang epektibo ito, ngunit nang bumili ako ng isa para sa proyektong ito nalaman kong nabago ang disenyo at hindi na sila sisingilin gamit ang isang micro-usb konektor! Tumingin ako sa paligid para sa isang katulad na bagay at nakarating sa Philips SoundShooter, isang maliit na tulad ng hand-grenade unit. Inaasahan kong magkakasya ito sa kaso nang hindi nagwawala ngunit napakalaki nito, kaya lumabas ang distornilyador upang buwagin ito. Nagawa kong i-snap ang mga wire ng speaker sa proseso, kaya na-solder sa ilang mga jumper cables upang gawing mas madaling kumonekta muli. Ang bahagi ng speaker na ito ay mainit na nakadikit sa kaso sa parehong lugar tulad ng orihinal na speaker, na ang circuit at baterya ay naayos sa maliit na istante sa ilalim nito.

Sa paggunita muli inaasahan kong ginamit ko lang ang lakas ng loob ng isang dock na pinagagana ng mains o isang bagay sa halip, dahil hindi mainam na singilin ang nagsasalita - tumatagal pa rin ito ng talagang mahabang panahon at mahusay na tunog, at bilang pangunahing takip nakakataas nang madali hindi talaga ito isang problema sa pagpapahinto.

Hakbang 5: Pagbasa Tulad ng Mga Kuneho

Nagbabasa Tulad ng Mga Kuneho
Nagbabasa Tulad ng Mga Kuneho
Nagbabasa Tulad ng Mga Kuneho
Nagbabasa Tulad ng Mga Kuneho

Ngayon na gumagana ang bahagi ng Alexa lumipat ako sa paglutas ng susunod na problema, paano ko makukuha ang kuneho upang mabasa ang mga abiso? Ang text-to-speech ng orihinal na Nabaztag ay nakakagulat na mabuti, kahit na naaalala kong palagi kong binabasa ang aking mga palatandaan sa text message (MM) bilang "Millimeter" at ang aking asawa (CM) bilang "Centimeter" - nais kong gumamit ng isang moderno at natural-sounding engine na magpapakahulugan sa mga bagay tulad ng simbolong "&" nang maayos at maunawaan ang mga simpleng emoticon tulad ng:).

Tulad ng lahat ng bagay sa Raspberry Pi maraming mga iba't ibang mga pagpipilian doon at tiningnan ko ang ilan bago magpasya sa Ivona, na lumilitaw na parehong napapailalim na engine na ginamit ng serbisyo ng Alexa. Ito ang pinakamahusay na pagpipilian para sa akin dahil mayroong isang hanay ng mga magagamit na mga tinig at mga pagpipilian sa pagsasaayos - isang malaking plus din ay ginawang magagamit ng Zachary Bears ang isang maginhawang pambalot ng Python para sa serbisyo, Pyvona.

Upang makapunta sa Ivona kailangan mo munang mag-set up ng isang developer account, pagkatapos ay tulad ng pag-set up ng Alexa pagkatapos ay bibigyan ka ng mga kredensyal upang magamit sa iyong aplikasyon, sa kasong ito isang script upang basahin ang mga abiso. Pinapayagan kang 50, 000 na mga paghahanap sa isang buwan kasama ang isa sa mga account na ito, na tiyak na marami para sa akin.

Ang pag-setup ng Pyvona ay talagang prangka, sa loob ng ilang minuto ay mayroon akong isang script na Python na nilikha mula sa ibinigay na halimbawa na magbasa ng anumang parirala na nai-type ko. Ngunit iyan ay bahagyang solusyon lamang ng kurso - Ayokong mabasa ni Ivona ang hard-code teksto ngunit pabago-bagong papasok na mga abiso.

Hakbang 6: Sabihin Ano?

Ano?
Ano?
Ano?
Ano?

Kaya mayroon akong isang kuneho (sa mga piraso ng buong bench) na maaaring magsalita, ngunit kailangan nito ng isang mekanismo upang makatanggap ng mga abiso at ipasa ang mga ito sa serbisyo ng Ivona upang mabasa. Tiningnan ko ang posibilidad ng pagmemensahe ng teksto sa pamamagitan ng isang online na serbisyo o adaptor ng SIM card, at pati na rin ang Twitter at Dropbox para sa paghahatid ng mga string / file ng teksto, ngunit napagpasyahan kong gumamit ng imaplib, isang paraan na batay sa Python ng pakikipag-ugnay sa mga email account sa IMAP. Napagpasyahan ko ang pagpipiliang ito pangunahin dahil isinama ito nang maayos sa serbisyo ng IFTTT, maaari kang maging malikhain sa pag-format ng mga email ng abiso. Nangangahulugan din ito na direktang makapagpadala ng mga email sa RabbitPi upang mabasa nang malakas.

Tumingin ako sa maraming mga halimbawa ng imaplib python sa online, at pagkatapos ng pagsasama-sama ng mga piraso at piraso at pagtatrabaho sa dokumentasyon ng imaplib ay nagawa kong magtapos sa isang script na nag-check sa Gmail para sa mga hindi nabasang mensahe sa mga regular na agwat at naka-print na magkakaibang teksto sa screen depende sa nilalaman ng ang paksa ng mensahe. Ito ay talagang madaling gamiting, dahil maaari kong iakma ang isang pahayag na "KUNG" sa code na gagana lamang kung ang email ay nagmula sa aking sarili, at pagkatapos ay palitan ang aksyon na "I-print" para sa code na tumatawag sa serbisyo ng Ivona.

Ginugol ko ng ilang sandali habang sinusubukang iakma ang imaplib & Pyvona code upang basahin ang katawan ng mga email ngunit ito ay naging sobrang kumplikado - Napag-alaman ko na ang pangunahing mga patlang ng email (Mula, Sa, Paksa atbp) ay nai-format nang napakasimple, ngunit ang teksto ng katawan ng email na iyon ay maaaring maisaayos sa maraming iba't ibang mga paraan. Sa huli hindi ito mahalaga, nagawa kong makamit ang kailangan ko sa pamamagitan ng paggamit ng Paksa ng Email bilang patlang na babasahin mula sa teksto ng abiso.

Inangkop ko pagkatapos ang halimbawa ng imaplib code upang sa halip na huminto pagkatapos ng bawat tseke para sa email ay umiikot ito nang walang hanggan, suriin para sa mga email ng ilang beses sa isang minuto at basahin ang anumang mga bago nang dumating sila. Ito ay kapaki-pakinabang para sa pagsubok ngunit sa pagsasagawa ay malamang na suriin ko ito nang kaunti nang mas madalas. Gayundin sulit na tandaan na ang script ay nag-iimbak ng password sa payak na teksto kaya kakailanganin ang ilang pag-encrypt na idinagdag sa ilang mga punto.

Natitiyak kong 100% na ito ay maaaring makamit nang higit na elegante at mahusay sa Python ngunit masaya at hamon na gawin itong lahat - hiniram ko ang "Python for Kids" mula sa silid-aklatan sa linggong ito kaya't ang aking code ay sana ay mapabuti sa natutunan ko pa.

Sa pamamagitan ng pangunahing paggana ng script ng get-an-email-at-read-it-out naidagdag ko sa labis na mga piraso ng code na magpapagalaw sa mga tainga ng kuneho at magaan ang mga LED habang binabasa ang mga abiso. Ang ginamit kong code ay nasa GitHub ngunit mangyaring tandaan ang aking kasalukuyang kawalan ng lakas ng sawa!

Hakbang 7: Isang HAT para sa RabbitPi

Isang HAT para sa RabbitPi
Isang HAT para sa RabbitPi
Isang HAT para sa RabbitPi
Isang HAT para sa RabbitPi
Isang HAT para sa RabbitPi
Isang HAT para sa RabbitPi
Isang HAT para sa RabbitPi
Isang HAT para sa RabbitPi

Ang isa sa mga pinaka-iconic na bagay tungkol sa Nabaztag ay ang paraan ng paggalaw nito ng tainga kapag papasok ang isang abiso. Maaari silang maitakda sa isang partikular na oryentasyon alinman sa pamamagitan ng manu-manong paglipat sa kanila o sa pamamagitan ng pagtatakda ng posisyon gamit ang control software - ang aking hangarin ay para lang makagalaw sila.

Hindi ako gumagamit ng mga motor sa Raspberry Pi dati kaya't ito ay isa pang bagong paksa sa pagsasaliksik para sa akin - unang kailangan kong malaman kung anong uri ng mga motor ang aking hinaharap, ang alam ko ay mayroong 2 motor, bawat isa ay may 2 wires. Ang pagbabasa sa online Napagpasyahan ko ang mga ito ay dapat na prangkang DC motors kaysa sa stepper motors, isang katotohanang kinumpirma ng hindi kapani-paniwala na kapaki-pakinabang na maituturo na "Hack the Nabaztag" ni Liana_B, na nais kong mabasa tungkol sa isang buwan na mas maaga.

Ngunit muli salamat sa kakayahang umangkop ng Pi maraming iba't ibang mga paraan na maaaring makontrol ang mga motor, ngunit nagpasya akong gumamit ng isang board ng Adafruit DC & Stepper Motor HAT. Gumamit ako ng mga screen at trinket ng Adafruit dati at gusto ko ang detalyadong mga tagubilin at halimbawa na nagmula bilang pamantayan.

Ang paggamit ng isang board na may pamantayan ng HAT (Hardware Attached on Top) ay nangangahulugang ang motor controller ay magkakasya nang maayos sa tuktok ng Pi na kumukuha ng kaunting puwang, at dahil gumagamit ito ng interface ng I2C iniwan itong walang bayad ang mga GPIO pin na kailangan ko para sa Alexa / Clap pindutan at LEDs.

Tulad ng inaasahan na paghihinang na magkasama ng HAT ay talagang prangka, at sa lalong madaling panahon ay naka-mount ako sa PI at nakakonekta hanggang sa dalawang mga motor sa tainga. Plano kong patakbuhin ang mga motor mula sa isang usb power bank upang kakailanganin ko lamang ng isang solong plug ng kuryente, ngunit hindi ito nagkaroon ng sapat na hinaing, hindi nito masisindi ang "Nagtatrabaho" na humantong sa HAT. Napagpasyahan ko sa halip na gumamit ng isang DC power adapter upang patakbuhin ang HAT at tainga, maginhawang mayroon akong isa sa mga unibersal na iyon na may madaling palitan na mga tip. Ang wala sa akin ay isang DC socket upang ikonekta ang adapter sa HAT. Nasa punto ako ng pag-alis para sa Norwich Maplin (muli) nang maalala ko mula sa luha na ang orihinal na lakas na humantong ng Nabaztag ay isang karaniwang DC plug - samakatuwid maaari ko lamang muling i-wire ang orihinal na socket ng kuryente sa HAT - maayos! Sa huli ginamit ko rin ang orihinal na suplay ng kuryente na Nabaztag, dahil nagbibigay ito ng tamang dami ng lakas.

Sa lahat ng naka-wire at napili ng isang makatuwirang boltahe pansamantala kong pinatakbo ang halimbawa ng sawa na kasama sa DC Motor Hat, sample code na patuloy na binago ang bilis at direksyon ng motor upang ilarawan ang iba't ibang mga pagpipilian sa pagkontrol. Tuwang tuwa ako nang gumana ito, ang aking unang motor na kinokontrol ng Pi! Ngunit pagkatapos ay napansin ko ang isang bagay - isang talagang malakas na mataas na ungol tulad ng isang tao na tumatakbo ang isang basang daliri sa paligid ng isang baso ng alak. Hindi ito maganda, nais kong ilipat ang tainga habang binabasa ang mga abiso at kahit na hindi nakakabingi ang haling ay talagang kapansin-pansin. Sinubukan ko ang iba't ibang mga voltages ngunit walang pagbabago. Paglipat sa Google Nalaman ko na maaaring mangyari ito dahil sa PWM (modulate ng lapad ng pulso) at ang isang lunas ay maaaring maghinang ng maliliit na capacitor sa mga terminal ng motor. Pagtingin sa mga motor na ito ay nasa lugar na. Nag-eksperimento din ako sa pagbabago ng dalas ng PWM ngunit wala pa ring pagbabago. Matapos ang ilang pag-eksperimento natanto ko na ang ungol lamang ang nangyari nang ang bilis ng motor ay binago ng code mula sa mababa patungo sa mataas - kaya't ang pagtatakda nito sa isang pare-parehong mataas na bilis ay tinanggal nang buong buo - phew!

Lumikha ako ng isang pares ng mga script ng python ng pagsubok batay sa mga halimbawa ng Adafruit, isa para sa paggalaw sa panahon ng mga notification at isa pa upang gawin ng mga tainga ang isang buong "circuit" sa pagsisimula, na naglalayong kopyahin ang nagtatrabaho code mula sa mga ito sa pangunahing mga script na ginamit upang hawakan ang Pakikipag-ugnayan ng Alexa at Gmail / Ivona.

Hakbang 8: Camera at Tweaks

Camera at Tweaks
Camera at Tweaks
Camera at Tweaks
Camera at Tweaks
Camera at Tweaks
Camera at Tweaks

Bago simulan ang pagpupulong sinubukan ko ang lahat. Kung saan posible sa pagbuo na ito ay gumamit ako ng mga jumper cables upang ikonekta ang mga indibidwal na sangkap nang magkasama, kung ang mga nakaraang build ay nagturo sa akin ng anumang bagay upang magplano para sa pag-dismantling sa hinaharap! Gumawa rin ako ng isang punto ng pagguhit ng isang diagram ng koneksyon na ipinapakita kung ano ang pinuntahan ng mga cable ng kulay kung saan, ang mga jumper cables ay mahusay ngunit kung minsan ay madaling mawala kapag sumisiksik ng mga sangkap sa masikip na puwang!

Napagpasyahan kong medyo malayo sa pagbuo upang isama rin ang isang module ng Pi Camera, ang bersyon na 8MP na 2 ay inilabas lamang at bilang isang bagay na bago sa akin naisip kong makakagawa ito ng isang mahusay na karagdagan. Ang pinakabagong bersyon ng Karotz rabbit ay nagsama ng isang webcam sa tiyan nito ngunit hindi talaga ito nagtrabaho nang maayos, naisip ko na ang Pi camera ay magiging masaya para sa mga selfie na pinapagana ng boses at marahil kahit na ang malayuang pagsubaybay kung makayanan ng Pi ang pagpapatakbo ng code sa kasabay ng lahat ng iba pa.

Nagtayo ako ng isang bracket para sa camera mula sa plastik na sakop na meccano at nilagay muna ito sa kaso, pagkatapos ay maingat na sinukat kung saan kailangan kong mag-drill ng countersunk hole sa kaso. Ito ay tiyak na isang kaso ng "panukalang dalawang beses na gupitin nang isang beses" bilang isang butas sa maling lugar ay maaaring isang kalamidad. Sa kabutihang palad ay lumabas ito sa patay na sentro at medyo masyadong mataas, kaya nakapagbigay ako ng bayad sa pamamagitan ng pagdaragdag ng mga washer sa pagitan ng bracket ng kamera at ng base.

Nagdagdag din ako sa isang Pimoroni Dual Micro USB Power Cable sa puntong ito - binigyan ako nito ng magandang micro-usb socket sa likuran ng kaso, at nagbigay ng pangalawang power plug. Nilayon kong gamitin ang sobrang plug upang singilin ang baterya ng speaker, at sinira ito upang makakonekta ako sa orihinal na "mute" switch ng Nabaztag upang makontrol ang singilin.

Hakbang 9: Ano ang Cookin 'Doc? Mga Recipe ng IFTTT

Ano ang Cookin 'Doc? Mga Recipe ng IFTTT!
Ano ang Cookin 'Doc? Mga Recipe ng IFTTT!
Ano ang Cookin 'Doc? Mga Recipe ng IFTTT!
Ano ang Cookin 'Doc? Mga Recipe ng IFTTT!

Ang kahanga-hangang bagay tungkol sa pagbuo ng isang aparato ng IoT ngayon ay ang napakaraming mga serbisyo sa web na magagamit, at ang serbisyo ng IFTTT (Kung Ito Noon) ay gumagawa ng isang kamangha-manghang trabaho na tinali ang lahat ng ito sa isang prangka at functional na pakete. Kung hindi mo pa ito nagamit ito ay isang serbisyong online, at kapag naka-sign up ka na maaari mong ikonekta ang lahat ng iyong iba pang mga bagay na batay sa web dito, tulad ng Gmail, Facebook, Twitter at (nahulaan mo ito) Amazon Alexa. Mayroong isang kabuuang smorgasbord ng mga serbisyo upang pumili mula sa, kasama rin ang mga pagpipilian sa pagkontrol para sa mga matalinong kasangkapan tulad ng mga bombilya, termostat at socket.

Ang mga patakaran ng IFTTT ay naka-set up sa "mga recipe" - uri ng tulad ng isang panuntunan sa Outlook o isang pahayag na KUNG sa SQL o Visual Basic, halimbawa mayroon akong isang resipe na nagsasabing "KUNG may nag-tag sa akin sa isang larawan sa Facebook Pagkatapos ay padalhan ako ng isang email. kasama ang Paksa na "Holy guacamole, [na pag-tag sa pangalan ng tao] na-tag ka lang sa isang larawan sa facebook" - sapagkat ipinadala ito sa akin mula sa sarili kong address na binasa ng RabbitPi ang Teksto ng Paksa.

Ang isa pang mahusay na paggamit ng IFTTT ay kasama ang serbisyo sa boses ng Alexa - para sa KUNG bahagi ng isang resipe maaari kang mag-set up ng isang parirala, halimbawa "ang laser" at kung sasabihin mo kay Alexa na "Pag-trigger ng laser" ipasa niya ang kahilingan sa Ang IFTTT, na magpapaputok sa THEN na bahagi ng resipe, sa kasong ito ay pinapagana ang isang remote na socket na konektado sa isang disco laser.

Lumalampas pa ito sa "mga matalinong bagay" - kung mayroon kang naka-install na IFTTT sa iyong telepono (ang akin ang bersyon ng Android) pagkatapos ay maaari kang makipag-ugnay dito sa parehong direksyon, isang resipe na ginamit sa video ay: "KUNG sabihin kong" Trigger Chas & Dave "kay Alexa, TAPOS pinatugtog ang tukoy na kantang" Kuneho "sa aking android phone. Gumagana rin ito sa kabaligtaran - ang AnyMote unibersal na remote control app sa aking telepono ay maaaring ipasadya upang ang isang tukoy na pindutan na nagpapalitaw ng bahagi na" KUNG " ng isang resipe - kaya mayroon akong isang pindutan sa aking screen na nagpapalitaw sa RabbitPi na mag-selfie at i-upload ito sa Twitter.

Ang isa pang pagpapaandar ay nagbibigay-daan sa RabbitPi na basahin ang aking mga text message, sa aking telepono mayroon akong isang resipe na "KUNG makakatanggap ako ng isang bagong mensahe sa SMS KAYA magpadala sa aking sarili ng isang email na may sumusunod na paksa na" Hoy! [text sender] says [text message body]"

Madaling gamitin, maraming kasiyahan at gumagana nang maayos, ang mga abiso ay mabilis na naipapabalik, lalo na sa switch ng WeMo Insight na mayroon ako, na medyo instant. Ang pagkakaroon ng IFTTT at ang RabbitPi ay gumagawa nang direkta sa pagkonekta ng mga bagay at serbisyo.

Hakbang 10: Assembly & Testing

Assembly at Pagsubok
Assembly at Pagsubok
Assembly at Pagsubok
Assembly at Pagsubok
Assembly at Pagsubok
Assembly at Pagsubok

Ngayon ay dumating ang nakakalito bahagi - cramming lahat ng mga bahagi sa kaso! Medyo natitiyak kong magkakasya ang lahat ngunit ang tunay na pagpupulong ay talagang fiddly, gumawa ako ng mahusay na paggamit ng ilang mga instrumento sa pag-opera at sipit upang sundutin ang mga kable sa pamamagitan ng maliliit na puwang.

Kapag ang lahat ay ligtas na nakakabit ay idinagdag ko sa ilang mga self-adhesive cable tie base upang ang maraming mga wire ay maaaring mahila nang maayos - ito ay talagang mahalaga dahil hindi ko nais na aksidenteng i-unplug ang alinman sa kanila kapag pinagsama ang kaso.

Hakbang 11: Handa na Kuneho?

Handa na Kuneho?
Handa na Kuneho?
Handa na Kuneho?
Handa na Kuneho?
Handa na Kuneho?
Handa na Kuneho?
Handa na Kuneho?
Handa na Kuneho?

Ngayon na ang lahat ng pisikal na panig ng pagbuo ay tapos na oras na upang "putulin ang kurdon", inaalis ang RabbitPi mula sa kaginhawaan ng ethernet cable, monitor at keyboard nito sa workshop upang matapos ko ang code sa ibang lugar sa pamamagitan ng SSH (Ang wireless signal ay mahina talaga dyan!)

Nakatayo sa mesa sa aking opisina na-boot ko ang kuneho at - walang koneksyon sa wi-fi, wala. Alam kong dapat magkaroon ng isang senyas habang gumagana ang aking telepono - may problema ba sa adapter ng network sa Pi 3 na hindi ko pa naririnig? Ang isang mabilis na pag-googling ay nagpapaalam sa akin na ang Pi 3 ay makakahanap lamang ng isang signal na wi-fi kung ang router ay nagbo-broadcast sa mga channel 1-11 - ang minahan ay itinakda sa channel 13! Makalipas ang ilang mga pag-aayos at nakakonekta kami, malaking buntong hininga.

Sumunod ay dumating sa pag-uuri ng iba't ibang mga script. Una ay binago ko ang pangunahing.py script ng AlexaPi code, pagdaragdag sa mga karagdagang linya upang pati na rin ang pag-flash ng mga LED nito sa pagsisimula ay gagawa rin ang RabbitPi ng magandang pag-wigg ng tainga. Pinalitan ko rin ang pamantayang mensahe na "Kamusta" ng isang mapaglarong "boing" na sound effects para masaya.

Ang pangalawang script ay tinatawag na rabbit.py (SWIDT?) At naglalaman ng lahat ng code para sa pagkuha ng mga mensahe sa gmail at pagbabasa sa kanila kasama si Pyvona. Nagdagdag din ako sa ilang Twython code na inangkop ko mula sa isang tutorial na "Tweeting Babbage" na Raspberry Pi, na pinapagana ang RabbitPi na kumuha ng litrato at mai-upload ito sa kanyang Twitter account (@NabazPi). Nagdagdag ako ng ilang paggalaw sa tainga at mga flash ng LED upang bigyan ka ng makatarungang babala kung kailan kukuha ang larawan, pati na rin ang ingay ng shutter at pagkumpirma ng tweet na nabasa ni Pyvona.

Panghuli idinagdag ko sa isang pahayag na KUNG sa imaplib gmail code, upang kung ang paksa ng email ay "selfie" pagkatapos ay gagawin ng RabbitPi ang selfie na bagay nito, ngunit kung hindi man ay basahin ang paksa ng email bilang normal.

Ang code na ginamit ko ay magagamit sa GitHub - mangyaring basahin ang ReadMe file!

Bilang isang pagtatapos na pag-print ay nag-print ako ng isang logo ng Raspberry Pi papunta sa transparency paper at nakadikit ito sa loob ng kaso ng RabbitPi, upang ang puting tummy LED ay magpapailaw ng imahe sa pamamagitan ng translucent na balat.

Hakbang 12: Nabaztag Ay Bumalik

Nabaztag Ay Bumalik!
Nabaztag Ay Bumalik!
Nabaztag Ay Bumalik!
Nabaztag Ay Bumalik!
Nabaztag Ay Bumalik!
Nabaztag Ay Bumalik!

Sa lahat ng nagawa ay natira na lang ang video upang magawa. Napakasarap na paglagay ng RabbitPi sa mga bilis nito sa camera, ang tanging downside ay ang pag-edit ng HD footage sa aking may edad na laptop sa paglaon. Para sa ilan sa mga abiso (pangunahin ang mga text message dahil sa aking kahila-hilakbot na signal ng Vodafone) Pinutol ko ang mga pag-pause sa pagitan ng pagkilos at abiso, o maaaring ito ay isang mahaba at nakakainip na video, ngunit ang karamihan sa mga ito ay nagpapakita ng totoong bilis ng tugon.

Nag-eksperimento ako gamit ang isang clap sensor upang ma-trigger ang serbisyo ng Alexa (tulad ng nakikita sa Snap to it Alexa video), ngunit naiwan ito sa huling pagbuo dahil hindi talaga ito maaasahan kapag may ingay sa background. Alam ko ang ibang mga tinker ay nagtatrabaho sa paggamit ng mga IR remote, wii Controller at kahit na aktibong pakikinig sa AlexaPi code kaya maraming mga pagpipilian para sa hinaharap.

Inaasahan kong idagdag sa isang adafruit neopixel ring upang mapalitan ang tummy LED dahil ito ay gagawing mas mahusay na mga visual na abiso, gusto ko ring isailalim sa "pag-mute" ng mga notification sa boses sa gabi. Nagbigay din ang aking mga anak ng ilang magagaling na mungkahi, at ngayon na medyo mas komportable ako sa Python magtutulungan kami upang mapalawak ang hanay ng mga abiso, halimbawa upang ang teksto ng kumpirmasyon ng selfie ay kinuha mula sa isang listahan ng mga halaga nang random, at sa gayon ang kuneho ay maaaring tagubilin na subukang isayaw ang macarena gamit ang mga tainga at LED nito.

Nagkataon lang na mayroon akong isa pang Nabaztag dito, pati na rin sa ibang pagkakataon ng kuneho ng Karotz, kaya maaari akong bumuo ng iba pa sa kanila - nakakaakit na mag-eksperimento sa malayuang pagsubaybay at mga sensor ng lahat ng uri! Ito ay isang perpektong platform ng hardware para sa Pi na may perpektong sukat na kaso, motor at pindutan. Nagtataka ako kung ang mga orihinal na tagagawa ay may isang stockpile ng hindi nabentang Nabaztags sa isang lugar, tulad ng Atari landfill? Tiyak na may ilang kabutihang naka-print na 3d para sa pag-mount ng camera at PI at isang pasadyang HAT upang patakbuhin ang mga motor, LEDs at audio na gagawin nila ang isang perpektong kit ng tagagawa ng Raspberry Pi, ang bawat coding club ay dapat magkaroon ng isa!

Kung gusto mo ang proyektong ito at nais na makita ang higit pa maaari mong suriin ang aking website para sa isinasagawang mga pag-update ng proyekto sa bit.ly/OldTechNewSpec, sumali sa Twitter @OldTechNewSpec o mag-subscribe sa lumalaking channel sa YouTube sa bit.ly/oldtechtube - bigyan ang ilan sa iyong Lumang Tech isang Bagong Pagtukoy!

Internet of Things Contest 2016
Internet of Things Contest 2016
Internet of Things Contest 2016
Internet of Things Contest 2016

Runner Up sa Internet of Things Contest 2016

Inirerekumendang: