Sisällysluettelo:

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

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

Video: RabbitPi - Alexa Enabled, IFTTT Connected, Ear -Wiggling IoT Assistant: 12 vaihetta
Video: RabbitPi - The Raspberry Pi Digital Assistant 2024, Marraskuu
Anonim
Image
Image
RabbitPi - Alexa -käytössä, IFTTT Connected, korvat heiluva IoT -avustaja
RabbitPi - Alexa -käytössä, IFTTT Connected, korvat heiluva IoT -avustaja
RabbitPi - Alexa -käytössä, IFTTT Connected, korvan heiluva IoT -avustaja
RabbitPi - Alexa -käytössä, IFTTT Connected, korvan heiluva IoT -avustaja
RabbitPi - Alexa -käytössä, IFTTT Connected, korvan heiluva IoT -avustaja
RabbitPi - Alexa -käytössä, IFTTT Connected, korvan heiluva IoT -avustaja

Tämä on vanhentunut vuoden 2005 Nabaztag -älykäs kani, jonka olen rakentanut uudelleen nykyaikaiseksi IoT -avustajaksi käyttämällä Raspberry Pi 3: ta ja Adafruit Motor HATia, jossa on verkkokameramikrofoni ja Philips Soundshooter -kaiutin, jotka sisältyvät söpöyn alkuperäiseen koteloon. -painike käynnisti äänikomennot Amazonin Alexa -äänipalvelun avulla ja lukee vastaukset sisäänrakennetun kaiuttimen kautta. Äänikomentoja käytetään myös IFTTT-reseptien (If This Then That) käynnistämiseen muiden Internet-laitteiden, kuten älykkäiden pistorasioiden ja matkapuhelimien, kanssa. Ei tarpeeksi? Sen lisäksi, että se laukaisee IFTTT-tapahtumia, se vastaanottaa ne myös Gmailin kautta käyttämällä Ivona-tekstistä puheeksi -moottoria lukemaan sähköpostit, tekstiviestit ja muut ilmoitukset, esimerkiksi siitepölyhälytykset tai kodin turvakameran ilmoitukset. saatko visuaalista palautetta LED -valojen ja moottoroitujen korvien avulla? Ja sen vatsassa on V2 Raspberry Pi -kamera ääniaktivoitujen selfien lataamiseen Twitteriin.

Vaihe 1: Älykkäiden kanien lyhyt historia

Älykkäiden kanien lyhyt historia
Älykkäiden kanien lyhyt historia
Älykkäiden kanien lyhyt historia
Älykkäiden kanien lyhyt historia
Älykkäiden kanien lyhyt historia
Älykkäiden kanien lyhyt historia
Älykkäiden kanien lyhyt historia
Älykkäiden kanien lyhyt historia

Alkuperäinen Nabaztag "ensimmäinen älykäs kani" julkaistiin vuonna 2005, ja se laskutettiin kodin avustajana (kuulostaako tutulta Amazonilta ja Googlelta?) - epäilemättä se oli ensimmäinen esineiden internet -asia ja oli monella tapaa aikaansa edellä, Ostin yhden heti. Se istui takan päällä, lukiessaan päivittäisiä sääennusteita ja satunnaisia ilmoituksia, mutta sillä ei koskaan ollut paljon mahdollisuuksia. Se luotti WEP-Wi-Fi-yhteyteen ja omiin ohjelmistoihin ja palvelimiin tarjotakseen tekstistä puheeksi (TTS) -palveluja. Sitä on vaikea kuvitella nyt, mutta siihen aikaan siihen ei ollut niin paljon yhteyttä, sosiaalinen media oli tuskin asia, Nokia hallitsi älypuhelinmaailmaa ja LED -lamput olivat kallis uutuus.

Seuraavina vuosina seurasi kaksi muuta versiota, Nabaztag: Tag ja Karotz, molemmat tarjosivat parempia toimintoja, mutta kumpikaan ei löytänyt markkinarakoaan, mikä lopulta heikkeni laitteisto- ja ohjelmistorajoitusten vuoksi. Häpeä oli, että heti kun tukipalvelimet sammutettiin, aiemmin älykkäistä kaneista tuli vähän enemmän kuin koristeita. Useat yhteisöprojektit yrittivät korvata "virallisten" palvelimien palvelut, ja me käytimme "OpenKarotz" -palvelua jonkin aikaa, mutta myös tämä näytti kuolleen vuosi tai kaksi sitten jättäen kanit hiljaa ja liikkumattomiksi kaiuttimien päälle.

Joka tapauksessa historian oppitunti ohi! Tuloksena on, että muistamme lämpimästi Nabaztag -läsnäolon olohuoneessamme, ja halusin sen takaisin, mutta kunnollisena nykyaikaisena IoT -laitteena.

Vaihe 2: Nabaztag 2.0

Nabaztag 2.0
Nabaztag 2.0

Innostuin vihdoin käynnistämään RabbitPi -ohjelman, kun luin maaliskuussa, että Amazon Alexa -äänipalvelu oli saatettu Raspberry Pi: n saataville - avain on, että nappia vaadittiin "kuuntelun" aktivoimiseksi - tämä sopi täydellisesti Nabaztagiin, koska siinä on painonappi tasalla kiiltävän päänsä yläosan kanssa. Irrotin kanin ja pian sain Sam Machinin erinomaisen AlexaPi -koodin käynnissä Pi 3: ssa, joka aktivoitiin painamalla kanin painiketta. Tässä vaiheessa hämmennyin täysin rakentamalla AlexaPhonen, mutta hyppäsin suoraan takaisin alas älykkääseen rabbitholeen heti, kun se oli valmis. Tarvitsin uuden parannetun Nabaztagini vähintään yhtä älykkääksi kuin alkuperäinen, joten halusin sen olevan:

Tee äänihakuja ja lue tulokset

Lue ilmoitukset

Siirrä sen korvia ja vilkkuvat LEDit

Ota valokuvia ja salli etävalvonta

Käytä älykkäitä pistorasioita, hehkulamppuja ja niin edelleen

Vaihe 3: Bunny Chop

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

Ensimmäinen tehtävä oli purkaa Nabaztag ja katsoa, mitä osia voitaisiin käyttää uudelleen. Korvat on suunniteltu vaihdettaviksi ja niitä pidetään vain magneeteilla, joten se oli helppoa, ja pääkansi pidettiin kiinni vain kahdella (outo kolmionmuotoisella) ruuvilla. Tämä paljasti kaikki piirit ja komponentit, jotka on rakennettu muovisen keskipylvään ympärille. Toisella puolella oli päävirtapiiri ja LEDit, kaiutin toisella puolella ja moottorit/painike upotettu pilariin yläreunassa.

Kun suunnittelin vain moottorien pitämistä, katkaisin suurimman osan kaapeleista ja aloin irrottaa ruuveja. Sain todellisen yllätyksen tässä vaiheessa! Kanin "aivopiirin" takana oli aukko, joka kulki koko pylvään korkeudella ja sisälsi täysikokoisen PCMCIA-Wi-Fi-kortin, sellaista kuin käyttäisit vanhoissa kannettavissa tietokoneissa. Luulen, että se oli suunnittelu- tai yhteensopivuuskompromissi tuolloin, mutta sen koon vertaaminen moderniin USB -sovittimeen toi todella kotiin kuinka paljon tekniikka on kutistunut 10 vuoden aikana.

Loput osat irrotettiin helposti jättäen vain paljaan muovisen tukipilarin ympärille varmasti runsaasti tilaa?

Vaihe 4: Puhuminen ja kuunteleminen

Puhuminen ja kuunteleminen
Puhuminen ja kuunteleminen
Puhuminen ja kuunteleminen
Puhuminen ja kuunteleminen
Puhuminen ja kuunteleminen
Puhuminen ja kuunteleminen

Sinulla ei voi olla ääniohjattua puhuvaa kania ilman kaiutinta ja mikrofonia, joten nämä olivat ensimmäisiä asioita, jotka selvitin. Minun ei todellakaan tarvinnut yrittää kovin kovasti, Pi näyttää olevan erittäin joustava USB -mikrofonien suhteen ja käytin vain vanhaa MSI StarCam Clip -verkkokameraa tuloon säätämällä äänitason Max -arvoksi Pi -ääniasetuksissa. Tilan säästämiseksi purin verkkokameran ja hävitin kameran linssin ja kotelon. Porasin reiän pohjaan mikrofonin lävistämiseksi ja liitin sen Pi: n USB: hen, ajaen kaapelit mahdollisimman siististi.

Käytin KitSound MiniBuddy -kaiutinta AlexaPhonessa, koska se osoittautui todella tehokkaaksi, mutta kun menin ostamaan sellaisen tähän projektiin, huomasin, että muotoilu oli muuttunut ja niitä ei enää ladattu micro-usb-liittimellä! Etsin ympärilleni jotain vastaavaa ja keksin Philips SoundShooterin, pienen käsikranaatin kaltaisen yksikön. Toivoin, että se mahtuu koteloon ilman purkamista, mutta se oli aivan liian suuri, joten ruuvimeisseli tuli ulos purkamaan sen. Onnistuin napsauttamaan kaiutinjohdot prosessissa, joten juotettuna joihinkin hyppyjohtoihin, jotta yhdistäminen olisi helpompaa. Tämä kaiutinosa oli liimattu kuoreen koteloon samassa paikassa kuin alkuperäinen kaiutin, ja piiri ja akku kiinnitettiin sen alla olevaan pieneen hyllyyn.

Jälkeenpäin ajatellen toivoisin, että olisin käyttänyt sen sijaan verkkovirtakäyttöisen kaiutintelakan tai jotain muuta, koska kaiuttimen lataaminen ei ole ihanteellista - se kestää kuitenkin todella kauan ja kuulostaa hyvältä ja pääkannena nousee helposti pois, se ei todellakaan ole esityksen pysäytysongelma.

Vaihe 5: Lukeminen kuin kanit

Lukeminen kuin kanit
Lukeminen kuin kanit
Lukeminen kuin kanit
Lukeminen kuin kanit

Nyt kun Alexa -osa toimi, siirryin seuraavan ongelman ratkaisemiseen, miten saisin kanin lukemaan ilmoitukset? Alkuperäisen Nabaztagin tekstistä puheeksi -puhe oli yllättävän hyvä, vaikka muistan, että se luki aina tekstiviestini allekirjoitukset (MM) "millimetreinä" ja vaimoni (CM) "senttimetreinä"-halusin käyttää nykyaikaista ja Luonnollisen kuuloinen moottori, joka tulkitsee "&" -symbolin kaltaisia asioita oikein ja ymmärtää yksinkertaisia hymiöitä, kuten:).

Kuten kaikessa Raspberry Pi -laitteessa, siellä on paljon erilaisia vaihtoehtoja, ja katsoin useita ennen kuin päätin Ivonasta, joka näyttää olevan sama Alexa -palvelun käyttämä moottori. Se oli minulle paras vaihtoehto, koska käytettävissä on erilaisia ääniä ja kokoonpanovaihtoehtoja - myös suuri plus oli, että Zachary Bears oli tarjonnut kätevän Python -kääreen palveluun, Pyvona.

Jotta voit aloittaa Ivona -palvelun käytön, sinun on ensin luotava kehittäjätili ja sitten, kuten Alexa -asennuksen yhteydessä, sinulle annetaan sitten käyttöoikeudet sovelluksessasi, tässä tapauksessa komentosarja ilmoitusten lukemiseen. Sinulla on sallittu 50 000 hakua kuukaudessa yhdellä näistä tileistä, mikä riittää minulle.

Pyvona -asennus oli todella suoraviivaista, muutamassa minuutissa olin luonut annetusta esimerkistä Python -skriptin, joka lukisi kaikki kirjoittamani lauseet. Mutta tämä oli tietysti vain osittain ratkaisu - en halunnut, että Ivona lukee kovakoodatut tekstiä, mutta dynaamisia saapuvia ilmoituksia.

Vaihe 6: Sano mitä?

Mitä sanoit?
Mitä sanoit?
Mitä sanoit?
Mitä sanoit?

Joten minulla oli nyt kani (palasina ympäri penkkiä), joka pystyi puhumaan, mutta se tarvitsi mekanismin ilmoitusten vastaanottamiseksi ja välittämiseksi Ivona -palveluun luettavaksi. Katsoin mahdollisuutta lähettää tekstiviestejä verkkopalvelun tai SIM-korttisovittimen kautta sekä Twitteriä ja Dropboxia tekstijonojen/tiedostojen toimittamiseen, mutta päätin lopulta käyttää imaplibia, Python-pohjaista keinoa vuorovaikutuksessa IMAP-sähköpostitilien kanssa. Päätin tämän vaihtoehdon pääasiassa siksi, että se integroitui hyvin IFTTT -palveluun, joten voit olla todella luova ilmoitussähköpostien muotoilussa. Se tarkoitti myös sitä, että voisin lähettää sähköpostiviestejä suoraan RabbitPi: lle luettavaksi ääneen.

Selasin paljon imaplib -python -esimerkkejä verkossa, ja kun olen yhdistänyt palaset ja palanut imaplib -dokumentaation läpi, onnistuin lopulta saamaan käsikirjoituksen, joka tarkisti Gmailin lukemattomat viestit säännöllisin väliajoin ja tulostin eri tekstiä näytölle sisällön mukaan. viestin aihe. Tämä oli todella kätevää, koska voisin mukauttaa koodin "IF" -lausekkeen toimimaan vain, jos sähköposti tuli minulta, ja vaihtaa sitten "Tulosta" -toiminto Ivona -palvelua kutsuvaan koodiin.

Yritin jonkin aikaa yrittää sovittaa imaplib & Pyvona -koodin lukemaan sähköpostiviestit, mutta tämä osoittautui erittäin monimutkaiseksi - pian opin, että sähköpostin ydinkentät (From, To, Subject jne.) On muotoiltu hyvin yksinkertaisesti, mutta sähköpostin teksti voidaan rakentaa monella eri tavalla. Lopulta sillä ei ollut oikeastaan väliä, pystyin saavuttamaan tarvitsemani käyttämällä sähköpostin aihetta kentänä, josta ilmoitusteksti luetaan.

Muokkasin sitten imaplib -koodiesimerkkiä siten, että sen sijaan, että se pysähtyisi jokaisen sähköpostitarkastuksen jälkeen, se kiertäisi äärettömän paljon, tarkistaisi sähköpostit muutaman kerran minuutissa ja lukisi kaikki uudet saapuessaan. Tästä oli hyötyä testauksessa, mutta käytännössä tekisin sen todennäköisesti hieman harvemmin. On myös syytä huomata, että komentosarja tallentaa salasanan pelkkänä tekstinä, joten siihen on lisättävä salaus jossain vaiheessa.

Olen 100% varma, että tämä voidaan saavuttaa paljon tyylikkäämmin ja tehokkaammin Pythonissa, mutta oli hauskaa ja haastavaa saada se toimimaan ollenkaan - lainasin "Python for Kids" -kirjaston kirjastosta tällä viikolla, joten koodini toivottavasti paranee kun opin lisää.

Sähköpostin lähettämisen ja lukemisen perusskriptin toimiessa lisäsin koodin ylimääräiset bitit, jotka saisivat kanin korvat liikkumaan ja LED-valot syttyvät lukiessaan ilmoituksia. Käyttämäni koodi on GitHubissa, mutta muistakaa nykyinen python -taitoni puute!

Vaihe 7: hattu RabbitPi: lle

Hattu RabbitPi: lle
Hattu RabbitPi: lle
Hattu RabbitPi: lle
Hattu RabbitPi: lle
HATTI RabbitPi: lle
HATTI RabbitPi: lle
Hattu RabbitPi: lle
Hattu RabbitPi: lle

Yksi Nabaztagin tunnetuimmista asioista oli tapa, jolla se liikutti korviaan ilmoituksen saapuessa. Ne voidaan asettaa tiettyyn suuntaan joko siirtämällä niitä manuaalisesti tai asettamalla sijainti ohjausohjelmiston avulla - tavoitteeni oli vain saadakseen heidät liikkumaan.

En ollut käyttänyt Raspberry Pi -moottoreita aiemmin, joten tämä oli minulle uusi tutkimusaihe - ensin minun piti selvittää, millaisia moottoreita olin tekemässä. Verkkoa lukiessani päädyin siihen, että näiden on oltava suoraviivaisia tasavirtamoottoreita askelmoottoreiden sijasta, mikä on vahvistettu tämän fantastisen hyödyllisen ohjeellisen Liana_B: n "Hack the Nabaztag" -kirjan avulla, jonka olisin lukenut noin kuukautta aikaisemmin.

Jälleen kerran Pi: n joustavuuden ansiosta moottoreita voidaan ohjata monella eri tavalla, mutta päätin käyttää Adafruit DC & Stepper Motor HAT -levyä. Olen käyttänyt Adafruit -näyttöjä ja rihkamaa ennen ja pidän yksityiskohtaisista ohjeista ja esimerkeistä, jotka tulevat vakiona.

HAT (Hardware Attached on Top) -standardin mukaisen levyn käyttäminen tarkoitti, että moottorin ohjain mahtuu siististi Pi: n päälle ja vie vain vähän tilaa, ja koska se käyttää I2C -käyttöliittymää, se jätti vapaiksi Alexa/Clapille tarvitsemani GPIO -nastat -painiketta ja LED -valoja.

Kuten odotettiin, HAT: n juottaminen yhteen oli todella yksinkertaista, ja pian asensin sen PI: hen ja liitin kahteen korvan moottoriin. Olin suunnitellut moottorien käyttämistä usb -virtapankista niin, että tarvitsen vain yhden virtapistokkeen, mutta tämä osoittautui riittämättömäksi, se ei edes sytyttäisi HAT -merkkivaloa. Päätin sen sijaan käyttää tasavirtalähdettä HAT: n ja korvien käyttämiseen, ja minulla oli kätevästi yksi niistä universaaleista, joissa oli vaihdettavat kärjet. Minulla ei ollut tasavirtaliitintä sovittimen liittämiseksi HAT -laitteeseen. Olin lähdössä Norwich Mapliniin (jälleen), kun muistin katkaisusta, että Nabaztagin alkuperäinen virtajohto oli tavallinen tasavirtapistoke - siksi voisin vain kytkeä alkuperäisen pistorasian takaisin HATtiin - siisti! Lopulta käytin myös alkuperäistä Nabaztag-virtalähdettä uudelleen, koska se antoi juuri oikean määrän virtaa.

Kun kaikki on kytketty ja järkevä jännite on valittu, suoritin alustavasti python -esimerkin, joka sisältyy DC -moottorin hattuun, näytekoodi, joka muutti jatkuvasti moottorin nopeutta ja suuntaa havainnollistamaan erilaisia ohjausvaihtoehtoja. Olin niin innoissani, kun se toimi, ensimmäinen Pi-ohjattu moottorini! Mutta sitten huomasin jotain - todella voimakkaan korkean äänen, kuten joku juoksee märällä sormella viinilasin ympärillä. Tämä ei ollut ollenkaan hyvä, halusin saada korvat liikkumaan, kun ilmoituksia luettiin, ja vaikka ei kuulo, valitus oli todella havaittavissa. Kokeilin eri jännitteitä, mutta ei muutoksia. Googleen kääntyessä huomasin, että tämä voi tapahtua PWM: n (pulssileveyden modulaatio) takia ja että yksi ratkaisu voi olla juottaa pieniä kondensaattoreita moottorin liittimien poikki. Kun katsot moottoreita, ne olivat jo paikallaan. Kokeilin myös PWM -taajuuden muuttamista, mutta silti ei muutosta. Kokeilun jälkeen tajusin, että valitus tapahtui vasta, kun moottorin nopeus muutettiin koodista matalasta korkeaan - joten sen asettaminen vakioksi suurelle nopeudelle eliminoi valituksen kokonaan - huh!

Luotin pari testipython -skriptiä Adafruit -esimerkkien perusteella, joista toinen liikkui ilmoitusten aikana ja toinen sai korvat suorittamaan täyden "piirin" käynnistyksen yhteydessä. Alexa ja Gmail/Ivona -vuorovaikutukset.

Vaihe 8: Kamera ja tweaks

Kamera ja säätöjä
Kamera ja säätöjä
Kamera ja säätöjä
Kamera ja säätöjä
Kamera ja säätöjä
Kamera ja säätöjä

Ennen kokoonpanon aloittamista testasin kaiken. Aina kun mahdollista tämän rakenteen yhteydessä, käytin hyppyjohtoja yhdistämään yksittäiset komponentit toisiinsa, jos aiemmat rakenteet ovat opettaneet minulle mitään, on suunniteltava tuleva purkaminen! Piirsin myös liitäntäkaavion, joka osoittaa, minkä väriset kaapelit menivät minne, hyppyjohdot ovat erinomaisia, mutta joskus helposti irrotettavissa, kun ahdistetaan komponentteja ahtaisiin tiloihin!

Päätin melko pitkälle rakentaa sisällyttämään myös Pi -kameramoduulin, 8MP -versio 2 oli juuri julkaistu ja jotain muuta uutta minulle ajattelin, että se olisi hyvä lisä. Karotz-kanin uusin versio oli sisältänyt verkkokameran vatsaansa, mutta tämä ei koskaan toiminut niin hyvin, ajattelin, että Pi-kamera olisi hauska ääni-aktivoiduille selfieille ja ehkä jopa etävalvontaan, jos Pi kykenisi käsittelemään koodia samaan aikaan kuin kaikki muu.

Rakensin kameralle pidikkeen muovipäällystetystä mekanosta ja asensin sen ensin koteloon, sitten mittasin hyvin huolellisesti, missä minun piti porata kotelon upotettu reikä. Tämä oli ehdottomasti tapaus "leikkaa kaksi kertaa kerran", koska reikä väärään paikkaan olisi ollut katastrofi. Onneksi se tuli kuolleena keskipisteenä ja vain hieman liian korkealla, joten pystyin kompensoimaan lisäämällä aluslevyjä kameran kiinnikkeen ja jalustan väliin.

Lisäsin tässä vaiheessa myös Pimoroni Dual Micro USB -virtakaapelin - tämä antoi minulle mukavan mikro -usb -liitännän kotelon takana ja tarjosi toisen virtapistokkeen. Aioin käyttää ylimääräistä pistoketta kaiuttimen akun lataamiseen ja murtauduin siihen, jotta voisin muodostaa yhteyden Nabaztagin alkuperäiseen "mykistys" -kytkimeen latauksen ohjaamiseksi.

Vaihe 9: Mikä on Cookin 'Doc? IFTTT -reseptit

Mikä on Cookin 'Doc? IFTTT -reseptit!
Mikä on Cookin 'Doc? IFTTT -reseptit!
Mikä on Cookin 'Doc? IFTTT -reseptit!
Mikä on Cookin 'Doc? IFTTT -reseptit!

IoT -laitteen rakentamisessa ilmiömäinen asia on tällä hetkellä saatavilla olevien verkkopalvelujen määrä, ja IFTTT (If This Then That) -palvelu tekee hämmästyttävän työn, joka yhdistää nämä kaikki yhteen yksinkertaiseen ja toimivaan pakettiin. Jos et ole vielä käyttänyt sitä, se on verkkopalvelu, ja kun olet rekisteröitynyt, voit yhdistää siihen kaikki muut verkkopohjaiset tavarasi, kuten Gmail, Facebook, Twitter ja (arvasit sen) Amazon Alexa. Valittavana on useita palveluita, mukaan lukien älylaitteiden, kuten hehkulamppujen, termostaattien ja pistorasioiden, ohjausvaihtoehdot.

IFTTT -säännöt on asetettu "resepteihin" - kuten Outlook -sääntö tai IF -lauseke SQL: ssä tai Visual Basicissa, esimerkiksi minulla on resepti, joka sanoo "JOS joku merkitsee minut valokuvaan Facebookissa, lähetä sitten minulle sähköpostiviesti otsikolla "Pyhä guacamole, [merkitsemällä henkilön nimi] merkitsi sinut juuri Facebook -valokuvaan" - koska tämä lähetetään minulle omasta osoitteestani, RabbitPi lukee sitten aihetekstin.

Toinen suuri IFTTT: n käyttö on Alexa -äänipalvelu - reseptin IF -osassa voit määrittää lauseen, esimerkiksi "laser", ja jos sanot sitten Alexalle "Käynnistä laser", hän välittää pyynnön IFTTT, joka laukaisee reseptin THEN -osan ja aktivoi tässä tapauksessa diskolaseriin yhdistetyn etäliitännän.

Se ylittää jopa "älykkäät asiat" - jos puhelimeesi on asennettu IFTTT (omani on Android -versio), voit olla vuorovaikutuksessa sen kanssa molempiin suuntiin, videossa käytetty resepti on: "IF I say" Trigger Chas & Dave "Alexalle, SINÄ soitat tietyn kappaleen" Rabbit "Android -puhelimellani. Se toimii myös toisinpäin - puhelimessani oleva AnyMote -yleiskaukosäädinsovellus voidaan räätälöidä niin, että tietty painike, joka laukaisee" IF "-osan reseptistä - joten minulla on ruudulla painike, joka saa RabbitPin ottamaan selfien ja lataamaan sen Twitteriin.

Toinen toiminto mahdollistaa RabbitPin lukea tekstiviestini, puhelimessani on resepti "JOS saan uuden tekstiviestin, lähetän sitten itselleni sähköpostin, jonka aihe on" Hei! [tekstin lähettäjä] sanoo [tekstiviestin teksti]"

Se on helppokäyttöinen, hauskaa ja toimii hyvin, ilmoitukset välitetään edestakaisin todella nopeasti, etenkin WeMo Insight -kytkimelle, joka on melkein heti. IFTTT ja RabbitPi tekevät asioiden ja palveluiden yhdistämisestä todella helppoa.

Vaihe 10: Kokoonpano ja testaus

Kokoonpano ja testaus
Kokoonpano ja testaus
Kokoonpano ja testaus
Kokoonpano ja testaus
Kokoonpano ja testaus
Kokoonpano ja testaus

Nyt tuli hankala osa - pakata kaikki komponentit koteloon! Olin melko varma, että se kaikki sopii, mutta varsinainen kokoonpano oli todella hämmentävää, käytin hyväksi joitain kirurgisia instrumentteja ja pinsettejä pistämään kaapeleita pienien aukkojen läpi.

Kun kaikki oli kiinnitetty kunnolla, lisäsin siihen joitakin itseliimautuvia nippusidejalustoja, jotta monet johdot voitaisiin vetää yhteen siististi - tämä oli todella tärkeää, koska en halunnut irrottaa mitään niistä vahingossa, kun laitoin kotelon takaisin yhteen.

Vaihe 11: Valmis kani?

Valmis kani?
Valmis kani?
Valmis kani?
Valmis kani?
Valmis kani?
Valmis kani?
Valmis kani?
Valmis kani?

Nyt kun kaikki rakennuksen fyysiset puolet oli tehty, oli aika "katkaista johto" ja poistaa RabbitPi sen Ethernet -kaapelin, näytön ja näppäimistön mukavuudesta työpajassa, jotta voisin viimeistellä koodin muualla SSH: n kautta (langaton signaali on todella heikko siellä!)

Asettuessani toimistoni pöydälle käynnistin kanin ja - ei Wi -Fi -yhteyttä ollenkaan, ei mitään. Tiesin, että signaalin oli oltava, koska puhelimeni toimi hyvin - oliko Pi 3: n verkkosovittimessa ongelma, josta en ollut kuullut? Nopea googlaaminen ilmoitti minulle, että Pi 3 löytää Wi-Fi-signaalin vain, jos reititin lähettää kanavilla 1-11-minun oli asetettu kanavalle 13! Muutama säätö myöhemmin ja olimme yhteydessä toisiinsa, suuri helpotuksen huokaus.

Seuraavaksi tuli lajitella erilaisia käsikirjoituksia. Ensinnäkin muokkasin AlexaPi -koodin main.py -komentosarjaa lisäämällä ylimääräisiä rivejä, jotta RabbitPi -merkkivalot vilkkuvat käynnistyksen yhteydessä myös hienolla korvan heilumisella. Korvasin myös tavallisen "Hello" -viestin leikkisällä "boing" -tehosteella huvin vuoksi.

Toisen komentosarjan nimi on rabbit.py (SWIDT?), Ja se sisältää kaikki koodit Gmail -viestien hakemiseen ja lukemiseen Pyvonan avulla. Lisäsin myös johonkin Twithon -koodiin, jonka olen mukauttanut Raspberry Pi: n "Tweeting Babbage" -opetusohjelmasta, jolloin RabbitPi voi ottaa kuvan ja ladata sen Twitter -tililleen (@NabazPi). Lisäsin korvan liikkeitä ja LED-välähdyksiä varoittaakseni sinua, kun valokuva on otettava, sekä suljinääni ja Pyvona-lukema twiitin vahvistus.

Lopuksi lisäsin IF -lausekkeen imaplib gmail -koodiin, jotta jos sähköpostin aihe olisi "selfie", RabbitPi tekisi selfie -asiansa, mutta muuten lukisi sähköpostin aiheen normaalisti.

Käyttämäni koodi on saatavana GitHubissa - lue ReadMe -tiedosto!

Viimeistelynä tulostin Raspberry Pi -logon läpinäkyvyyspaperille ja liimasin sen RabbitPi -kotelon sisään, jotta valkoinen vatsa -LED valaisi kuvan läpikuultavan ihon läpi.

Vaihe 12: Nabaztag on palannut

Nabaztag on palannut!
Nabaztag on palannut!
Nabaztag on palannut!
Nabaztag on palannut!
Nabaztag on palannut!
Nabaztag on palannut!

Kun kaikki oli tehty, jäljellä oli vain video. Oli hauskaa laittaa RabbitPi -kamera kameraan, ainoa haittapuoli oli HD -materiaalin muokkaaminen vanhalla kannettavalla tietokoneella myöhemmin. Joidenkin ilmoitusten osalta (lähinnä tekstiviestejä kauhean Vodafone -signaalin vuoksi) leikkasin tauot toiminnan ja ilmoitusten välillä, tai se olisi ollut pitkä ja tylsä video, mutta suurin osa näyttää todellisen vastausnopeuden.

Tein kokeilun käyttämällä taputusanturia Alexa -palvelun käynnistämiseksi (kuten Snap to it Alexa -videossa näkyy), mutta jätin sen pois lopullisesta rakennuksesta, koska se ei ollut tarpeeksi luotettava taustamelun aikana. Tiedän, että muut piilottelijat työskentelevät IR -kaukosäätimien, wii -ohjainten ja jopa aktiivisen kuuntelun kanssa AlexaPi -koodilla, joten tulevaisuuden vaihtoehtoja on paljon.

Toivon, että voin lisätä adafruit -neopikselirenkaan vatsan LED -valon tilalle, koska se parantaisi visuaalisia ilmoituksia paljon, ja haluaisin myös ottaa äänimerkinnät "mykistetyiksi" yöllä. Lapseni esittivät myös hienoja ehdotuksia, ja nyt kun olen hieman viihtynyt Pythonin kanssa, pyrimme laajentamaan yhdessä ilmoitusten valikoimaa, esimerkiksi niin, että selfien vahvistusteksti otetaan arvoluettelosta sattumanvaraisesti ja niin kani voidaan neuvoa yrittämään tanssia macarenaa korvillaan ja LED -valollaan.

Minulla on juuri täällä toinen Nabaztag sekä myöhempi Karotz -kani, joten voin rakentaa heidän kanssaan jotain muuta - on houkuttelevaa kokeilla etävalvontaa ja kaikenlaisia antureita! Se on ihanteellinen laitteistoalusta Pi: lle täydellisen kokoisella kotelolla, moottoreilla ja painikkeella. Mietin, onko alkuperäisillä valmistajilla varastoa myymättömiä Nabaztageja jossain, kuten Atarin kaatopaikalla? Varmasti 3D-tulostetulla hyvyydellä kameran ja PI: n asentamiseksi ja mukautetulla hatulla moottorien, LEDien ja äänen käyttämiseksi ne tekisivät ihanteellisen Raspberry Pi maker -sarjan, jokaisella koodausklubilla pitäisi olla sellainen!

Jos pidät tästä projektista ja haluat nähdä lisää, voit tarkistaa verkkosivustoltani käynnissä olevat projektipäivitykset osoitteessa bit.ly/OldTechNewSpec, liittyä Twitteriin @OldTechNewSpec tai tilata kasvavan YouTube -kanavan osoitteessa bit.ly/oldtechtube - give jotkut vanhasta tekniikastasi ja uudet tekniset tiedot!

Esineiden Internet -kilpailu 2016
Esineiden Internet -kilpailu 2016
Esineiden Internet -kilpailu 2016
Esineiden Internet -kilpailu 2016

Toinen sija esineiden internet -kilpailussa 2016

Suositeltava: