Përmbajtje:

RabbitPi - Alexa Enabled, IFTTT Connected, Ear -Wiggling IoT Assistant: 12 hapa
RabbitPi - Alexa Enabled, IFTTT Connected, Ear -Wiggling IoT Assistant: 12 hapa

Video: RabbitPi - Alexa Enabled, IFTTT Connected, Ear -Wiggling IoT Assistant: 12 hapa

Video: RabbitPi - Alexa Enabled, IFTTT Connected, Ear -Wiggling IoT Assistant: 12 hapa
Video: RabbitPi - The Raspberry Pi Digital Assistant 2024, Nëntor
Anonim
Image
Image
RabbitPi - Alexa Enabled, IFTTT Connected, Ear -Wiggling IoT Assistant
RabbitPi - Alexa Enabled, IFTTT Connected, Ear -Wiggling IoT Assistant
RabbitPi - Alexa Enabled, IFTTT Connected, Ear -Wiggling IoT Assistant
RabbitPi - Alexa Enabled, IFTTT Connected, Ear -Wiggling IoT Assistant
RabbitPi - Alexa Enabled, IFTTT Connected, Ear -Wiggling IoT Assistant
RabbitPi - Alexa Enabled, IFTTT Connected, Ear -Wiggling IoT Assistant

Ky është një lepur i zgjuar i Nabaztag i vitit 2005, të cilin e kam rindërtuar në një Asistent modern IoT duke përdorur një Raspberry Pi 3 dhe një Adafruit Motor HAT, me një mikrofon të kamerës në internet dhe një altoparlant Philips Soundshooter që gjendet në kutinë e bukur origjinale. Ai i përgjigjet butoni filloi komandat zanore duke përdorur shërbimin zëri Alexa të Amazon, duke lexuar përgjigjet përmes altoparlantit të integruar. Komandat zanore përdoren gjithashtu për të shkaktuar recetat IFTTT (If This Then That), për të bashkëvepruar me pajisje të tjera të lidhura me internetin, si prizat inteligjente dhe celularët. Jo mjaftueshem? Përveç nxitjes së ngjarjeve të IFTTT, ajo gjithashtu i merr ato përmes Gmail, duke përdorur motorin e tekstit në të folur të Ivona për të lexuar email, mesazhe me tekst dhe njoftime të tjera, për shembull alarmet e polenit ose njoftimet nga një kamerë e sigurisë në shtëpi. A e përmenda që jep keni reagime vizuale me LEDS dhe veshë të motorizuar? Oh dhe ka një Kamera Raspberry Pi V2 në barkun e saj për të ngarkuar selfie të aktivizuara me zë në Twitter.'Sshtë e vështirë të përshkruash bukurinë e RabbitPi me fjalë, shiko videon për ta parë atë në veprim!

Hapi 1: Një histori e shkurtër e lepujve të zgjuar

Një histori e shkurtër e lepujve të zgjuar
Një histori e shkurtër e lepujve të zgjuar
Një histori e shkurtër e lepujve të zgjuar
Një histori e shkurtër e lepujve të zgjuar
Një histori e shkurtër e lepujve të zgjuar
Një histori e shkurtër e lepujve të zgjuar
Një histori e shkurtër e lepujve të zgjuar
Një histori e shkurtër e lepujve të zgjuar

Nabaztag "lepuri i parë i zgjuar" u lëshua në 2005, i faturuar si një asistent i ambientit në shtëpi (tingëllon i njohur Amazon & Google?) - ndoshta ishte gjëja e parë "Internet of Things" dhe ishte në shumë mënyra përpara kohës së tij, Bleva një menjëherë. Ai u ul në pjesën e mantelit tonë duke lexuar parashikimet ditore të motit dhe njoftimet e rastit, por kurrë nuk kishte shumë aftësi, duke u mbështetur në një lidhje WEP wi-fi dhe softuerë dhe serverë të pronarit për të ofruar shërbimet e tij të tekstit në të folur (TTS). It'sshtë e vështirë të imagjinohet tani, por në atë kohë nuk kishte aq shumë me të cilën mund të lidhej, mediat sociale nuk ishin asgjë, Nokia sundoi botën e smartphone -ve dhe llambat LED ishin një risi e shtrenjtë.

Në vitet e ardhshme u ndoqën dy versione të tjera, Nabaztag: Tag dhe Karotz, të dyja ofruan funksionalitet të përmirësuar, por asnjëri nuk gjeti vendndodhjen e tij në treg, në fund të fundit hoqi dorë nga kufizimet e harduerit dhe softuerit. Turpi ishte se sapo serverët mbështetës u fikën lepujt e mëparshëm të zgjuar u bënë pak më shumë se zbukurime. Disa projekte të komunitetit u përpoqën të zëvendësonin shërbimet e serverëve "zyrtarë", dhe ne e përdorëm "OpenKarotz" për njëfarë kohe, por edhe kjo dukej se u shua një ose dy vjet më parë, duke i lënë lepujt e mi të heshtur dhe të palëvizshëm mbi altoparlantët e mi.

Gjithsesi mësimi i historisë përfundoi! Rezultati është se ne e kujtojmë me dashuri praninë e Nabaztag në dhomën tonë të jetesës, dhe unë e doja atë përsëri, por si një pajisje e përshtatshme moderne IoT.

Hapi 2: Nabaztag 2.0

Nabaztag 2.0
Nabaztag 2.0

Unë u frymëzova që më në fund të filloja RabbitPi kur lexova në mars se shërbimi i zërit Amazon Alexa ishte vënë në dispozicion të Raspberry Pi - çelësi është se kërkohej një buton për të aktivizuar "dëgjimin" - kjo ishte e përsosur me Nabaztag, pasi ka një buton të butë të skuqur me pjesën e sipërme të kokës së tij të vogël me shkëlqim. Unë e çmontova lepurin tim dhe së shpejti kisha kodin e shkëlqyer të Alex Machine të Alex Machin në Pi 3 tim, i aktivizuar duke shtypur butonin e lepurit. Në këtë pikë unë u hutova plotësisht duke ndërtuar AlexaPhone, por u hodha menjëherë poshtë rabbitolit të zgjuar sapo të përfundonte. Kisha nevojë për Nabaztagun tim të ri të përmirësuar që të ishte të paktën aq i zgjuar sa origjinali, kështu që doja që:

Kryeni kërkime zanore dhe lexoni rezultatet

Lexoni njoftimet

Lëvizni veshët dhe ndezni LED -të

Bëni fotografi dhe lejoni monitorimin në distancë

Ndërveproni me bazat e zgjuara, llambat e dritës dhe kështu me radhë

Hapi 3: Bunny Chop

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

Puna e parë ishte çmontimi i Nabaztag dhe shikimi i pjesëve që mund të ripërdoren. Veshët janë projektuar të jenë të këmbyeshëm dhe mbahen vetëm me magnet, kështu që ishte e lehtë, dhe mbulesa kryesore mbahej vetëm nga dy vida (trekëndore të çuditshme). Kjo ekspozoi të gjitha qarqet dhe përbërësit, të ndërtuar rreth një shtylle plastike qendrore. Njëra anë mbante qarkun kryesor dhe LED, me një altoparlant në anën tjetër dhe motorët/butonin të ngulitur në shtyllën në krye.

Meqenëse kam planifikuar të mbaj motorët, unë kalova nëpër shumicën e kabllove dhe fillova të heq vida. Kam një surprizë të vërtetë në këtë pikë! Pas qarkut të "trurit" të lepurit ishte një çarë që drejtonte të gjithë lartësinë e shtyllës, që përmbante një kartë wi-fi PCMCIA me madhësi të plotë, llojin që do të përdornit në laptopët e vjetër. Unë mendoj se ishte një kompromis i dizajnit ose pajtueshmërisë në atë kohë, por krahasimi i tij në madhësi me një dongle moderne USB me të vërtetë solli në shtëpi se sa teknologjia është zvogëluar në hapësirën e 10 viteve.

Pjesa tjetër e pjesëve u hoqën lehtësisht, duke lënë vetëm shtyllën plastike mbështetëse të zhveshur me siguri shumë hapësirë rreth saj?

Hapi 4: Të folurit dhe të dëgjuarit

Të folurit dhe të dëgjuarit
Të folurit dhe të dëgjuarit
Të folurit dhe të dëgjuarit
Të folurit dhe të dëgjuarit
Të folurit dhe të dëgjuarit
Të folurit dhe të dëgjuarit

Nuk mund të kesh një lepur që kontrollon zërin duke folur pa altoparlant dhe mikrofon, kështu që këto ishin ndër gjërat e para që zgjidha. Nuk më duhej të përpiqesha shumë, Pi duket të jetë shumë fleksibël në lidhje me mikrofonat USB dhe unë thjesht përdor një kamerë të vjetër MSI StarCam Clip për hyrje, duke rregulluar nivelin e zërit në Max në cilësimet audio Pi. Për të kursyer hapësirë, çmontova kamerën në internet, duke hedhur lentet e kamerës dhe kutinë. Unë shpova një vrimë në bazë që mikrofoni të depërtonte dhe e lidha me USB -në e Pi -së, duke i kablluar sa më mirë që të ishte e mundur.

Kam përdorur altoparlantin KitSound MiniBuddy në AlexaPhone, pasi rezultoi vërtet efektiv, por kur shkova për të blerë një për këtë projekt zbulova se dizajni ishte ndryshuar dhe ata nuk ngarkonin më duke përdorur një lidhës mikro-usb! Shikova përreth për diçka të ngjashme dhe erdha me Philips SoundShooter, një njësi e vogël si granatë dore. Shpresoja se do të përshtatet në kuti pa u çmontuar, por ishte shumë e madhe, kështu që doli kaçavida për ta çmontuar. Unë arrita të kap telat e altoparlantit në proces, kështu që u ngjit në disa kabllo kërcyes për ta bërë më të lehtë rilidhjen. Kjo pjesë e altoparlantit ishte ngjitur nxehtësisht në kasë në të njëjtin vend si altoparlanti origjinal, me qarkun dhe baterinë të fiksuar në raftin e vogël nën të.

Në retrospektivë do të doja që sapo të kisha përdorur zorrët e një stende të altoparlantëve me energji elektrike ose diçka tjetër, pasi nuk është ideale të ngarkosh altoparlantin - megjithatë ai zgjat shumë kohë dhe tingëllon shkëlqyeshëm, dhe si mbulesa kryesore ngrihet lehtë nuk është me të vërtetë një problem që ndalon shfaqjen.

Hapi 5: Leximi si lepuj

Leximi si lepuj
Leximi si lepuj
Leximi si lepuj
Leximi si lepuj

Tani që pjesa Alexa ishte duke punuar, kalova në zgjidhjen e problemit tjetër, si do ta bëja lepurin të lexonte njoftimet? Teksti në fjalim i Nabaztag origjinal ishte çuditërisht i mirë, megjithëse mbaj mend që gjithmonë lexonte nënshkrimet e mia të mesazheve me tekst (MM) si "Milimetra" dhe të gruas sime (CM) si "Centimetra"-doja të përdorja një moderne dhe motor me tingull natyral që do të interpretonte siç duhet gjërat si simboli "&" dhe do të kuptonte emoticons të thjeshtë si:).

Ashtu si me gjithçka në Raspberry Pi ka shumë opsione të ndryshme atje dhe unë shikova disa para se të vendosja për Ivona, e cila duket se është i njëjti motor themelor i përdorur nga shërbimi Alexa. Ishte opsioni më i mirë për mua pasi ka një sërë zërash të disponueshëm dhe opsione konfigurimi - gjithashtu një plus i madh ishte se Zachary Bears kishte vënë në dispozicion një mbështjellës të përshtatshëm Python për shërbimin, Pyvona.

Për të vazhduar me Ivona, së pari duhet të krijoni një llogari zhvilluesi, pastaj ashtu si me konfigurimin Alexa, më pas ju pajisen me kredencialet për t'u përdorur në aplikacionin tuaj, në këtë rast një skenar për të lexuar njoftimet. Ju lejohen 50, 000 kërkime në muaj me një nga këto llogari, që sigurisht që janë të mjaftueshme për mua.

Konfigurimi i Pyvona ishte vërtet i drejtpërdrejtë, brenda pak minutash kisha një shkrim Python të krijuar nga shembulli i dhënë që do të lexonte çdo frazë që shkruaja. Por kjo ishte vetëm pjesërisht zgjidhja natyrisht - nuk doja që Ivona të lexonte të koduara tekst por njoftime dinamike në hyrje.

Hapi 6: Thuaj Çfarë?

Thuaj çfarë?
Thuaj çfarë?
Thuaj çfarë?
Thuaj çfarë?

Kështu që tani kisha një lepur (copë -copë në të gjithë stolin) që mund të fliste, por i duhej një mekanizëm për të marrë njoftimet dhe për t'i kaluar ato në shërbimin e Ivona për t'u lexuar. Shikova mundësinë e mesazheve me tekst përmes një shërbimi online ose përshtatës të kartës SIM, dhe gjithashtu Twitter dhe Dropbox për dërgimin e vargjeve/skedarëve të tekstit, por më në fund vendosa të përdor imaplib, një mjet i bazuar në Python për të bashkëvepruar me llogaritë e postës elektronike IMAP. Vendosa për këtë opsion kryesisht sepse u integrua mirë me shërbimin IFTTT, ju mund të jeni vërtet krijues me formatimin e email -eve të njoftimit. Gjithashtu do të thoshte se do të isha në gjendje të dërgoja email drejtpërdrejt te RabbitPi për t'u lexuar me zë të lartë.

Shikova shumë shembuj të imaplib python në internet, dhe pasi kombinova pjesë dhe punova me dokumentacionin imaplib arrita të përfundoja me një skenar që kontrollonte Gmail për mesazhe të palexuar në intervale të rregullta dhe printonte tekste të ndryshme në ekran në varësi të përmbajtjes së subjekti i mesazhit. Kjo ishte me të vërtetë e dobishme, pasi unë mund të përshtatja një deklaratë "IF" në kod për të funksionuar vetëm nëse email -i vinte nga unë, dhe pastaj ndërroja veprimin "Print" për kodin që thërriste shërbimin Ivona.

Kam kaluar një kohë të gjatë duke u përpjekur për të përshtatur kodin imaplib & Pyvona për të lexuar trupin e postave elektronike, por kjo doli të ishte jashtëzakonisht e komplikuar - shpejt mësova se fushat kryesore të postës elektronike (Nga, Për, Subjekt, etj) janë formatuar shumë thjesht, por ai tekst i trupit të postës elektronike mund të strukturohet në shumë mënyra të ndryshme. Në fund nuk kishte shumë rëndësi, unë isha në gjendje të arrija atë që më duhej duke përdorur Subjektin e Email -it si fushë nga e cila do të lexohej teksti i njoftimit.

Unë pastaj përshtata shembullin e kodit imaplib në mënyrë që në vend që të ndaloja pas çdo kontrolli për email -in, ai do të rrotullohej pafundësisht, duke kontrolluar emailet disa herë në minutë dhe duke lexuar ndonjë të re pothuajse sa mbërritën. Kjo ishte e dobishme për testimin, por në praktikë unë ndoshta do ta bëja atë të kontrollonte pak më rrallë. Gjithashtu vlen të përmendet se skripti ruan fjalëkalimin në tekst të thjeshtë, kështu që do të ketë nevojë për një kriptim të shtuar në një moment.

Unë jam 100% i sigurt se kjo mund të arrihet në mënyrë shumë më elegante dhe me efikasitet në Python, por ishte argëtuese dhe sfiduese që të funksiononte fare - unë huazova "Python for Kids" nga biblioteka këtë javë, kështu që kodi im shpresoj se do të përmirësohet ndërsa mësoj më shumë.

Me funksionimin e shkrimit bazë të marrjes së një emaili dhe leximi të tij, shtova pjesë shtesë të kodit që do të bënin që veshët e lepurit të lëviznin dhe dritat LED të ndizeshin gjatë leximit të njoftimeve. Kodi që kam përdorur është në GitHub, por ju lutemi mbani në mend mungesën time aktuale të aftësisë python!

Hapi 7: NJ H HAT për RabbitPi

NJ H SHPAT për RabbitPi
NJ H SHPAT për RabbitPi
NJ H SHPAT për RabbitPi
NJ H SHPAT për RabbitPi
NJ H SHPAT për RabbitPi
NJ H SHPAT për RabbitPi
NJ H SHPAT për RabbitPi
NJ H SHPAT për RabbitPi

Një nga gjërat më ikonike në lidhje me Nabaztag ishte mënyra se si lëvizte veshët kur vinte një njoftim. Ato mund të vendosen në një orientim të veçantë ose duke i lëvizur me dorë ose duke vendosur një pozicion duke përdorur softuerin e kontrollit - objektivi im ishte vetëm për t’i bërë ata të lëvizin.

Unë nuk kisha përdorur motorë me Raspberry Pi më parë, kështu që kjo ishte një temë tjetër e re kërkimore për mua - së pari më duhej të zbuloja se me çfarë motorësh po merresha, gjithçka që dija ishte se kishte 2 motorë, secili me 2 tela. Duke lexuar në internet, arrita në përfundimin se këta duhet të jenë motorë të drejtpërdrejtë DC sesa motorë stepper, një fakt i konfirmuar nga ky udhëzues fantastik i dobishëm "Hack the Nabaztag" nga Liana_B, të cilin do të doja ta kisha lexuar rreth një muaj më parë.

Përsëri falë fleksibilitetit të Pi ka shumë mënyra të ndryshme për të kontrolluar motorët, por unë vendosa të përdor një bord të Adafruit DC & Stepper Motor HAT. Unë kam përdorur ekrane dhe xhingla Adafruit më parë dhe më pëlqejnë udhëzimet dhe shembujt e hollësishëm që vijnë si standard.

Përdorimi i një pllake me standardin HAT (Pajisja e bashkangjitur në krye) nënkuptonte që kontrolluesi i motorit do të vendoset rregullisht në majë të Pi duke marrë hapësirë minimale, dhe për shkak se përdor ndërfaqen I2C, ai la të lirë kunjat GPIO që më duheshin për Alexa/Clap butoni dhe LED.

Siç pritej bashkimi i HAT së bashku ishte vërtet i drejtpërdrejtë, dhe unë së shpejti e vendosa atë në PI dhe u lidha me dy motorët e veshit. Unë kisha planifikuar të drejtoja motorët nga një bankë e fuqisë usb në mënyrë që të kisha nevojë vetëm për një prizë të vetme të energjisë, por kjo doli të mos ketë zhurmë të mjaftueshme, as që do të ndriçojë drejtimin "Punë" në HAT. Në vend të kësaj, vendosa të përdor një përshtatës DC për të drejtuar HAT dhe veshët, me lehtësi kisha në dispozicion një nga ato universale me këshilla të këmbyeshme. Ajo që nuk kisha ishte një prizë DC për të lidhur përshtatësin me HAT. Isha në pikën e nisjes për në Norwich Maplin (përsëri) kur nga kujtimi i lotëve u kujtova se priza fillestare e Nabaztag ishte një prizë standarde DC - prandaj thjesht mund ta lidhja prizën e energjisë origjinale në HAT - e pastër! Në fund, unë gjithashtu ripërdori furnizimin me energji origjinale Nabaztag, pasi siguroi sasinë e duhur të energjisë.

Me gjithçka të lidhur dhe një tension të arsyeshëm të zgjedhur, unë paraprakisht drejtova shembullin e pitonit të përfshirë me DC Motor Hat, kodi i mostrës që ndryshonte vazhdimisht shpejtësinë dhe drejtimin e motorit për të ilustruar opsionet e ndryshme të kontrollit. Isha shumë i emocionuar kur funksionoi, motori im i parë i kontrolluar nga Pi! Por pastaj vura re diçka - një ulërimë me të vërtetë me zë të lartë, si dikush që vrapon me gisht të lagur rreth gotës së verës. Kjo nuk ishte aspak e mirë, doja që veshët të lëviznin ndërsa lexoheshin njoftimet dhe megjithëse mos shurdhimi i zhurmës ishte vërtet i dukshëm. Provova tensione të ndryshme, por pa ndryshim. Duke iu drejtuar Google zbulova se kjo mund të ndodhë për shkak të PWM (modulimi i gjerësisë së pulsit) dhe se një ilaç mund të jetë lidhja e kondensatorëve të vegjël nëpër terminalet e motorit. Duke parë motorët, këto ishin tashmë në vend. Unë gjithashtu eksperimentova me ndryshimin e frekuencës PWM, por ende asnjë ndryshim. Pas disa eksperimenteve kuptova se ankesa ndodhi vetëm kur shpejtësia e motorit po ndryshohej nga kodi nga e ulët në e lartë - kështu vendosja e tij në një shpejtësi konstante të lartë eliminoi rënkimin krejtësisht - ua!

Unë krijova disa skripte testuese python bazuar në shembujt Adafruit, një për lëvizje gjatë njoftimeve dhe një tjetër për t'i bërë veshët të kryejnë një "qark" të plotë gjatë fillimit, duke synuar të kopjoni kodin e punës nga këto në skriptet kryesore të përdorura për të trajtuar Ndërveprimet Alexa dhe Gmail/Ivona.

Hapi 8: Kamera dhe rregullime

Kamera dhe rregullime
Kamera dhe rregullime
Kamera dhe rregullime
Kamera dhe rregullime
Kamera dhe rregullime
Kamera dhe rregullime

Para fillimit të montimit, unë testova gjithçka. Kudo që të jetë e mundur në këtë ndërtesë kam përdorur kabllo kërcyes për të lidhur përbërësit individualë së bashku, nëse ndërtimet e mëparshme më kanë mësuar diçka është të planifikoj për çmontimin e ardhshëm! Unë gjithashtu theksova një diagram të lidhjes që tregon se çfarë ngjyre shkuan kabllot, kabllot kërcyes janë të shkëlqyeshëm, por nganjëherë zhvendosen lehtësisht kur grumbullohen komponentët në hapësira të ngushta!

Vendosa shumë larg në ndërtim për të përfshirë edhe një modul Pi Camera, versioni 8MP 2 sapo ishte lëshuar dhe si diçka tjetër e re për mua mendova se do të bënte një shtesë të mirë. Versioni i fundit i lepurit Karotz kishte përfshirë një kamerë në bark, por kjo kurrë nuk funksionoi aq mirë, mendova se kamera Pi do të ishte argëtuese për selfie të aktivizuara me zë dhe ndoshta edhe monitorim në distancë nëse Pi mund të merrej me drejtimin e kodit në në të njëjtën kohë me gjithçka tjetër.

Ndërtova një kllapa për kamerën nga mekano e mbuluar me plastikë dhe e vendosa atë në kasë së pari, pastaj e mata me shumë kujdes aty ku duhej të bëja vrimën e zhytur në kasë. Ky ishte padyshim një rast i "masës së prerë dy herë një herë" pasi një vrimë në vendin e gabuar do të kishte qenë një katastrofë. Fatmirësisht doli në qendër të vdekur dhe pak shumë e lartë, kështu që unë kam qenë në gjendje ta kompensoj duke shtuar rondele midis kllapës së kamerës dhe bazës.

Unë shtova gjithashtu në një Pimoroni Dual Micro USB Power Power në këtë pikë - kjo më dha një prizë të bukur mikro -usb në pjesën e pasme të kutisë dhe siguroi një prizë të dytë të energjisë. Unë kisha ndërmend të përdorja prizën shtesë për të ngarkuar baterinë e altoparlantit dhe u futa në të në mënyrë që të mund të lidhesha me çelësin origjinal të "heshtjes" së Nabaztag për të kontrolluar ngarkimin.

Hapi 9: Çfarë është Cookin 'Doc? Receta IFTTT

Çfarë është Cookin 'Doc? Receta IFTTT!
Çfarë është Cookin 'Doc? Receta IFTTT!
Çfarë është Cookin 'Doc? Receta IFTTT!
Çfarë është Cookin 'Doc? Receta IFTTT!

Gjëja fenomenale në ndërtimin e një pajisjeje IoT tani është numri i madh i shërbimeve në internet të disponueshme, dhe shërbimi IFTTT (If This Then That) bën një punë të mahnitshme duke i lidhur të gjitha këto së bashku në një paketë të drejtpërdrejtë dhe funksionale. Nëse nuk e keni përdorur ende është një shërbim online, dhe pasi të regjistroheni mund të lidhni të gjitha gjërat e tjera të bazuara në internet me të, si Gmail, Facebook, Twitter dhe (e keni menduar) Amazon Alexa. Ekziston një numër i madh shërbimesh për të zgjedhur, përfshirë edhe opsionet e kontrollit për pajisjet inteligjente si llamba, termostate dhe priza.

Rregullat e IFTTT janë vendosur në "receta" - si një rregull Outlook ose një deklaratë IF në SQL ose Visual Basic, për shembull kam një recetë që thotë "NFSE dikush më etiketon në një foto në Facebook PASTAJ më dërgoni një email me Subjektin "Guacamole e Shenjtë, [etiketimi i emrit të personit] sapo ju ka etiketuar në një foto në facebook" - sepse kjo më dërgohet nga adresa ime, RabbitPi pastaj lexon tekstin e subjektit.

Një përdorim tjetër i shkëlqyeshëm i IFTTT është me shërbimin Alexa zë - për pjesën IF të një recete mund të vendosni një frazë, për shembull "lazeri" dhe nëse më pas i thoni Alexa "Aktivizo lazerin" ajo do t'ia kalojë kërkesën IFTTT, e cila do të ndezë pjesën PASTAJ të recetës, në këtë rast duke aktivizuar një prizë të largët të lidhur me një lazer disko.

Madje shkon përtej "gjërave të zgjuara" - nëse keni të instaluar IFTTT në telefonin tuaj (imi është versioni Android) atëherë mund të ndërveproni me të në të dy drejtimet, një recetë e përdorur në video është: "NFSE them" Trigger Chas & Dave "për Alexa, PASTAJ luani këngën specifike" Rabbit "në telefonin tim android. Gjithashtu punon anasjelltas - aplikacioni universal i telekomandës AnyMote në telefonin tim mund të personalizohet në mënyrë që një buton specifik me shkas pjesën" IF " e një recete - kështu që unë kam një buton në ekranin tim që nxit RabbitPi të bëjë një selfie dhe ta ngarkojë atë në Twitter.

Një funksion tjetër i mundëson RabbitPi të lexojë mesazhet e mia me tekst, në telefonin tim kam një recetë "NFSE marr një mesazh të ri SMS PASTAJ dërgo vetes një email me subjektin e mëposhtëm" Hej! [dërguesi i tekstit] thotë [trupi i mesazheve me tekst]"

Easyshtë e lehtë për t'u përdorur, shumë argëtuese dhe funksionon mirë, njoftimet kalojnë shumë shpejt përpara dhe mbrapa, veçanërisht në ndërprerësin WeMo Insight që kam, i cili është shumë i menjëhershëm. Të kesh IFTTT dhe RabbitPi e bën lidhjen e gjërave dhe shërbimeve vërtet të drejtpërdrejtë.

Hapi 10: Montimi dhe Testimi

Montimi & Testimi
Montimi & Testimi
Montimi & Testimi
Montimi & Testimi
Montimi & Testimi
Montimi & Testimi

Tani erdhi pjesa e ndërlikuar - grumbullimi i të gjithë përbërësve në kasë! Isha shumë i sigurt se gjithçka do të përshtatej, por montimi aktual ishte vërtet i çuditshëm, i shfrytëzova mirë disa instrumente kirurgjikale dhe piskatore për të futur kabllot nëpër boshllëqe të vogla.

Pasi gjithçka ishte e pajisur në mënyrë të sigurt, shtova disa baza të lidhjes së kabllove vetë -ngjitëse, në mënyrë që telat e shumtë të mund të tërhiqen së bashku - kjo ishte me të vërtetë e rëndësishme pasi nuk doja të shkëpusja aksidentalisht asnjë prej tyre kur vendosja kutinë përsëri së bashku.

Hapi 11: Lepur gati?

Lepur gati?
Lepur gati?
Lepur gati?
Lepur gati?
Lepur gati?
Lepur gati?
Lepur gati?
Lepur gati?

Tani që e gjithë ana fizike e ndërtesës ishte bërë, ishte koha për të "prerë kordonin", duke hequr RabbitPi nga komoditeti i kabllit të tij ethernet, monitorit dhe tastierës në punëtori, në mënyrë që të përfundoja kodin diku tjetër përmes SSH (Sinjali pa tel është vërtet i dobët atje!)

I vendosur në tavolinën e punës në zyrën time, fillova lepurin dhe - asnjë lidhje wi -fi fare, asgjë. E dija që duhej të kishte një sinjal pasi telefoni im funksiononte mirë - a kishte ndonjë problem me përshtatësin e rrjetit në Pi 3 për të cilin nuk kisha dëgjuar? Një pjesë e shpejtë e googlimit më informoi se Pi 3 do të gjejë një sinjal wi-fi vetëm nëse ruteri transmeton në kanalet 1-11-imi ishte vendosur në kanalin 13! Disa rregullime më vonë dhe u lidhëm, një psherëtimë e madhe lehtësimi.

Tjetra erdhi zgjidhja e shkrimeve të ndryshme. Së pari, unë modifikova skenarin main.py të kodit AlexaPi, duke shtuar rreshta shtesë në mënyrë që si dhe ndezja e LED -ve të tij gjatë fillimit, RabbitPi gjithashtu do të bënte një lëvizje të bukur të veshit. Unë gjithashtu zëvendësova mesazhin standard "Përshëndetje" me një efekt të shëndoshë "boing" për argëtim.

Skenari i dytë quhet rabbit.py (SWIDT?) Dhe përmban të gjithë kodin për marrjen e mesazheve gmail dhe leximin e tyre me Pyvona. Unë gjithashtu shtova në një kod Twython të përshtatur nga një mësim Raspberry Pi "Tweeting Babbage", duke i mundësuar RabbitPi të marrë një fotografi dhe ta ngarkojë atë në llogarinë e tij në Twitter (@NabazPi). Shtova disa lëvizje të veshit dhe ndezje LED për t'ju dhënë një paralajmërim të drejtë kur fotografia është duke u bërë, si dhe një zhurmë qepen dhe një konfirmim të cicërimës të lexuar nga Pyvona.

Së fundi, shtova në një deklaratë IF kodin e imaplib gmail, në mënyrë që nëse subjekti i postës elektronike të ishte "selfie", atëherë RabbitPi do të bënte selfie -n e tij, por përndryshe do ta lexonte temën e postës elektronike si normale.

Kodi që kam përdorur është i disponueshëm në GitHub - ju lutemi lexoni skedarin ReadMe!

Si një prekje përfundimtare, unë printova një logo të Raspberry Pi në letër transparence dhe e ngjita brenda kutisë RabbitPi, në mënyrë që barku i bardhë LED të ndriçonte imazhin përmes lëkurës së tij të tejdukshme.

Hapi 12: Nabaztag është kthyer

Nabaztag është kthyer!
Nabaztag është kthyer!
Nabaztag është kthyer!
Nabaztag është kthyer!
Nabaztag është kthyer!
Nabaztag është kthyer!

Me gjithçka të bërë, mbeti vetëm videoja për të bërë. Ishte kënaqësi e madhe të vësh RabbitPi përmes hapave të saj në kamera, e vetmja pengesë ishte të redaktoja pamjet HD në laptopin tim të moshuar më vonë. Për disa prej njoftimeve (kryesisht mesazhe me tekst për shkak të sinjalit tim të tmerrshëm Vodafone) i shkurtova pauzat midis veprimit dhe njoftimit, ose do të kishte qenë një video e gjatë dhe e mërzitshme, por shumica e saj tregojnë shpejtësinë e vërtetë të përgjigjes.

Unë eksperimentova duke përdorur një sensor përplasjeje për të aktivizuar shërbimin Alexa (siç shihet në videon Snap to it Alexa), por e lashë jashtë ndërtimit përfundimtar pasi nuk ishte me të vërtetë mjaft i besueshëm kur kishte zhurmë në sfond. Unë e di që kallajxhinjtë e tjerë po punojnë në përdorimin e telekomandave IR, kontrolluesit wii dhe madje edhe dëgjimin aktiv me kodin AlexaPi kështu që ka shumë mundësi për të ardhmen.

Shpresoj të shtoj një unazë neopixel adafruit për të zëvendësuar LED -në e barkut pasi kjo do të bënte për njoftime vizuale shumë më të mira, gjithashtu do të doja të faktorizoja në "zhurmën" e njoftimeve zanore gjatë natës. Fëmijët e mi gjithashtu dhanë disa sugjerime të shkëlqyera, dhe tani që jam pak më rehat me Python ne do të punojmë së bashku për të zgjeruar gamën e njoftimeve, për shembull në mënyrë që teksti i konfirmimit të selfie të merret nga një listë vlerash rastësisht, dhe kështu lepuri mund të udhëzohet të përpiqet të vallëzojë makarenën me veshët dhe LED -të e tij.

Unë rastësisht kam një Nabaztag tjetër këtu, si dhe një lepur të mëvonshëm Karotz, kështu që mund të ndërtoj diçka tjetër me ta - është joshëse të eksperimentosh me monitorimin në distancë dhe sensorë të të gjitha llojeve! It'sshtë një platformë ideale harduerike për Pi me kutinë, motorët dhe butonin e saj në madhësi të përsosur. Pyes veten nëse prodhuesit origjinalë kanë një magazinë Nabaztags të pashitur diku, si deponia Atari? Me siguri me disa mirësi të printuara 3d për montimin e kamerës dhe PI dhe një HAT të personalizuar për të drejtuar motorët, LED dhe audio ata do të bënin një çantë ideale të krijuesit të Raspberry Pi, çdo klub kodimi duhet të ketë një të tillë!

Nëse ju pëlqen ky projekt dhe doni të shihni më shumë, mund të shikoni faqen time në internet për përditësimet e projektit në progres në bit.ly/OldTechNewSpec, bashkohuni në Twitter @OldTechNewSpec ose regjistrohuni në kanalin në rritje të YouTube në bit.ly/oldtechtube - jepni disa nga Teknika juaj e Vjetër një Specifikim i Ri!

Konkursi i Internetit të Gjërave 2016
Konkursi i Internetit të Gjërave 2016
Konkursi i Internetit të Gjërave 2016
Konkursi i Internetit të Gjërave 2016

Konkursi në internet i gjërave 2016

Recommended: