Innehållsförteckning:

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

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

Video: RabbitPi - Alexa Enabled, IFTTT Connected, Ear -Wiggling IoT Assistant: 12 steg
Video: RabbitPi - The Raspberry Pi Digital Assistant 2024, November
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

Detta är en föråldrad 2005 Nabaztag "smart kanin" som jag har byggt om till en modern IoT -assistent med en Raspberry Pi 3 och en Adafruit Motor HAT, med en webbkameramikrofon och en Philips Soundshooter -högtalare som finns i det söta originalfodralet. Den svarar på knapp startade röstkommandon med Amazons Alexa -rösttjänst och läste upp svaren via den integrerade högtalaren. Röstkommandon används också för att utlösa IFTTT (If This Then That) -recept, för att interagera med andra internetanslutna enheter som smarta uttag och mobiltelefoner. Inte tillräckligt? Förutom att utlösa IFTTT-händelser tar den också emot dem via Gmail, med hjälp av Ivona text-till-tal-motor för att läsa upp e-post, textmeddelanden och andra meddelanden, till exempel pollenvarningar eller aviseringar från en hemmakamera. Har jag nämnt att det ger du visuell feedback med lysdioder och motoriserade öron? Åh, och den har en V2 Raspberry Pi-kamera i magen för att ladda upp röstaktiverade selfies till Twitter. Det är svårt att beskriva RabbitPis söthet i ord, kolla in videon för att se den i aktion!

Steg 1: En kort historia av smarta kaniner

En kort historia om smarta kaniner
En kort historia om smarta kaniner
En kort historia om smarta kaniner
En kort historia om smarta kaniner
En kort historia om smarta kaniner
En kort historia om smarta kaniner
En kort historia om smarta kaniner
En kort historia om smarta kaniner

Den ursprungliga Nabaztag "första smarta kaninen" släpptes 2005, fakturerad som en ambient hemassistent (låter bekant Amazon & Google?) - utan tvekan var det den första "sakernas internet" och var på många sätt långt före sin tid, Jag köpte en direkt. Den satt på vår kaminhylla och läste upp dagliga väderprognoser och enstaka aviseringar men hade aldrig mycket kapacitet, och förlitade sig på en WEP-wi-fi-anslutning och egenutvecklad programvara och servrar för att tillhandahålla sina text-till-tal-tjänster (TTS). Det är svårt att föreställa sig nu men då fanns det inte så mycket det kunde ansluta till, sociala medier var knappt en sak, Nokia styrde smartphone -världen och LED -lampor var en dyr nyhet.

Under kommande år följde ytterligare två versioner, Nabaztag: Tag och Karotz, båda erbjöd förbättrad funktionalitet men hittade ingen av dess nisch på marknaden, slutligen svikna av hårdvaru- och programvarubegränsningar. Synden var att så snart de stödjande servrarna stängdes av blev de tidigare smarta kaninerna lite mer än prydnadsföremål. Flera samhällsprojekt försökte ersätta tjänsterna för de "officiella" servrarna, och vi använde "OpenKarotz" ett tag, men även detta verkade dö av för ett eller två år sedan och lämnade mina kaniner tysta och orörliga ovanpå mina högtalare.

Hur som helst historielektion över! Resultatet är att vi med glädje minns närvaron av Nabaztag i vårt vardagsrum, och jag ville ha tillbaka det, men som en riktig modern IoT -enhet.

Steg 2: Nabaztag 2.0

Nabaztag 2.0
Nabaztag 2.0

Jag blev inspirerad att äntligen starta RabbitPi när jag i mars läste att rösttjänsten Amazon Alexa hade blivit tillgänglig för Raspberry Pi - nyckeln var att en knapp krävdes för att aktivera "lyssnandet" - detta passade perfekt med Nabaztag, eftersom den har en tryckknapp i linje med toppen av det glänsande lilla huvudet. Jag demonterade min kanin och fick snart Sam Machins utmärkta AlexaPi -kod igång på min Pi 3, aktiverad genom att trycka på kaninknappen. Vid det här laget blev jag helt distraherad av att bygga AlexaPhone, men hoppade rakt tillbaka ner i det smarta kaninhålet så snart det var klart. Jag behövde min nya förbättrade Nabaztag för att vara minst lika smart som originalet, så jag ville att den skulle:

Utför röstsökningar och läs upp resultat

Läs upp aviseringar

Rör öronen och blinka lysdioder

Ta foton och tillåt fjärrövervakning

Interagera med smarta uttag, glödlampor och så vidare

Steg 3: Bunny Chop

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

Det första jobbet var att demontera Nabaztag och se vilka delar som kan återanvändas. Öronen är utformade för att vara utbytbara och bara hållas med magneter, så det var enkelt, och huvudkåpan hölls bara med två (bisarra triangulära) skruvar. Detta avslöjade alla kretsar och komponenter, byggda runt en central plastpelare. Ena sidan innehöll huvudkretsen och lysdioder, med en högtalare på andra sidan och motorer/knapp inbäddad i pelaren högst upp.

Eftersom jag bara planerade att behålla motorerna slog jag igenom de flesta kablarna och började ta ut skruvar. Jag fick en riktig överraskning just nu! Bakom kaninens "hjärnans" krets fanns en kortplats som löpte över hela pelarens höjd, som innehöll ett PCMCIA wi-fi-kort i full storlek, den typ du skulle använda i gamla bärbara datorer. Jag antar att det var en design- eller kompatibilitetskompromiss på den tiden, men att jämföra den i storlek med en modern USB -dongel fick verkligen hem hur mycket teknik som har krympt på tio år.

Resten av delarna togs enkelt bort och lämnade bara den nakna plaststödpelaren med säkert gott om utrymme runt den?

Steg 4: Tala och lyssna

Prata och lyssna
Prata och lyssna
Prata och lyssna
Prata och lyssna
Prata och lyssna
Prata och lyssna

Du kan inte ha en röststyrd talande kanin utan högtalare och mikrofon, så det här var bland det första jag redde ut. Jag behövde verkligen inte försöka särskilt mycket, Pi verkar vara väldigt flexibel när det gäller USB -mikrofoner och jag använde precis en gammal MSI StarCam Clip -webbkamera för ingången och justerade ljudnivån till Max i Pi -ljudinställningarna. För att spara utrymme demonterade jag webbkameran och slängde kameralinsen och fodralet. Jag borrade ett hål i basen för mikrofonen att sticka igenom och kopplade den till Pi: s USB, så att kablarna körs så snyggt som möjligt.

Jag använde KitSound MiniBuddy-högtalaren i AlexaPhone, eftersom det visade sig verkligen effektivt, men när jag gick för att köpa en för det här projektet fann jag att designen hade ändrats och att de inte längre laddades med en mikro-usb-kontakt! Jag letade runt efter något liknande och kom på Philips SoundShooter, en liten handgranatliknande enhet. Jag hade hoppats att den skulle passa i höljet utan att demontera men den var alldeles för stor, så skruvmejseln kom ut för att demontera den. Jag lyckades knäppa högtalarkablarna i processen, så lödde i några bygelkablar för att göra det lättare att ansluta igen. Denna högtalardel var limmad på fodralet på samma plats som den ursprungliga högtalaren, med kretsen och batteriet fäst på den lilla hyllan under den.

I efterhand önskar jag att jag bara hade använt tarmarna på en nätdriven högtalarstation eller något istället, eftersom det inte är idealiskt att behöva ladda upp högtalaren - ändå håller den riktigt länge och låter bra, och som huvudomslag lyfter lätt, det är egentligen inte ett show-stoppande problem.

Steg 5: Läsa som kaniner

Läser som kaniner
Läser som kaniner
Läser som kaniner
Läser som kaniner

Nu när Alexa -delen fungerade gick jag vidare till att lösa nästa problem, hur skulle jag få kaninen att läsa upp aviseringar? Text-till-talet i den ursprungliga Nabaztag var förvånansvärt bra, men jag kommer ihåg att det alltid läste upp mina textmeddelanden (MM) som "Millimeter" och min frus (CM) som "Centimeter"-jag ville använda en modern och naturligt klingande motor som skulle tolka saker som "&" -symbolen ordentligt och förstå enkla uttryckssymboler som:).

Som med allt på Raspberry Pi finns det massor av olika alternativ där ute och jag tittade på flera innan jag bestämde mig för Ivona, vilket verkar vara samma underliggande motor som används av Alexa -tjänsten. Det var det bästa alternativet för mig eftersom det finns en rad tillgängliga röster och konfigurationsalternativ - också ett stort plus var att Zachary Bears hade tillhandahållit en bekväm Python -omslag för tjänsten, Pyvona.

För att komma igång med Ivona måste du först skapa ett utvecklarkonto, sedan precis som med Alexa -konfigurationen får du sedan referenser att använda i din applikation, i det här fallet ett skript för att läsa av meddelanden. Du får 50 000 sökningar i månaden med ett av dessa konton, vilket verkligen är mycket för mig.

Pyvona -upplägget var riktigt enkelt, inom några minuter hade jag ett Python -skript skapat från det medföljande exemplet som skulle läsa upp alla fraser jag skrev in. Men det var naturligtvis bara delvis lösningen - jag ville inte att Ivona skulle läsa upp hårdkodade text men dynamiska inkommande aviseringar.

Steg 6: Säg vad?

Säg vad?
Säg vad?
Säg vad?
Säg vad?

Så jag hade nu en kanin (i bitar över hela bänken) som kunde tala, men den behövde en mekanism för att ta emot aviseringar och skicka dem till Ivona -tjänsten för att kunna läsas upp. Jag tittade på möjligheten att sms: a via en onlinetjänst eller SIM-kortadapter, och även Twitter och Dropbox för att leverera textsträngar/filer, men bestämde mig slutligen för att använda imaplib, ett Python-baserat sätt att interagera med IMAP-e-postkonton. Jag bestämde mig för det här alternativet främst eftersom det integrerades bra med IFTTT -tjänsten, du kan vara riktigt kreativ med formateringen av meddelande -e -postmeddelanden. Det innebar också att jag skulle kunna skicka e -postmeddelanden direkt till RabbitPi för att bli uppläst.

Jag tittade igenom massor av imaplib python -exempel online, och efter att ha kombinerat bitar och arbetat igenom imaplib -dokumentationen lyckades jag sluta med ett skript som kontrollerade Gmail för olästa meddelanden med jämna mellanrum och skrev ut olika text på skärmen beroende på innehållet i meddelandets ämne. Detta var verkligen praktiskt, eftersom jag kunde anpassa ett "IF" -uttalande i koden för att bara fungera om mejlet kom från mig själv och sedan byta ut "Skriv ut" -åtgärden för koden som ringer Ivona -tjänsten.

Jag tillbringade ett tag med att försöka anpassa imaplib & Pyvona -koden för att läsa upp e -postmeddelanden, men det visade sig vara extremt komplicerat - jag lärde mig snart att de grundläggande e -postfälten (Från, Till, Ämne etc) är formaterade mycket enkelt, men den e -postkroppen kan struktureras på många olika sätt. I slutändan spelade det ingen roll, jag kunde uppnå det jag behövde genom att använda e -postämnet som fältet som aviseringstexten skulle läsas från.

Jag anpassade sedan imaplibkodsexemplet så att det istället för att stanna efter varje kontroll av e -post skulle gå runt oändligt, leta efter e -post några gånger i minuten och läsa ut nya ungefär så snart de kom. Detta var användbart för testning, men i praktiken skulle jag förmodligen få det att kolla lite mindre ofta. Det är också värt att notera att skriptet lagrar lösenordet i vanlig text så att det kommer att behöva läggas till någon kryptering någon gång.

Jag är 100% säker på att detta kan uppnås mycket mer elegant och effektivt i Python men det var roligt och utmanande att få det att fungera alls - jag lånade "Python for Kids" från biblioteket den här veckan så min kod kommer förhoppningsvis att förbättras när jag lär mig mer.

Med det grundläggande skriptet för att få ett e-post-och-läs-det-ut-arbete, lade jag till de extra kodbitarna som skulle få kaninens öron att röra sig och lysdioder lyser när de läser aviseringarna. Koden jag använde är på GitHub men kom ihåg min nuvarande brist på pythonförmåga!

Steg 7: En hatt för RabbitPi

En hatt för RabbitPi
En hatt för RabbitPi
EN HAT för RabbitPi
EN HAT för RabbitPi
En hatt för RabbitPi
En hatt för RabbitPi
EN HAT för RabbitPi
EN HAT för RabbitPi

En av de mest ikoniska sakerna med Nabaztag var hur den skulle röra öronen när ett meddelande kom in. De kunde ställas in på en viss orientering antingen genom att manuellt flytta dem eller genom att ställa in en position med hjälp av kontrollprogramvaran - mitt mål var bara för att få dem att röra på sig.

Jag hade inte använt motorer med Raspberry Pi tidigare så det här var ett nytt forskningsämne för mig - först behövde jag ta reda på vilken typ av motorer jag hade att göra med, allt jag visste var att det fanns 2 motorer, var och en med 2 trådar. När jag läste upp på nätet kom jag fram till att dessa måste vara enkla likströmsmotorer snarare än stegmotorer, ett faktum som bekräftades av denna fantastiskt hjälpsamma instruerbara "Hack the Nabaztag" av Liana_B, som jag önskar att jag hade läst ungefär en månad tidigare.

Återigen tack vare Pi: s flexibilitet finns det många olika sätt att motorerna kan styras på, men jag bestämde mig för att använda ett Adafruit DC & Stepper Motor HAT -kort. Jag har använt Adafruit skärmar och prydnadsföremål tidigare och jag älskar detaljerade instruktioner och exempel som kommer som standard.

Att använda ett kort med HAT -standarden (Hardware Attached on Top) innebar att motorkontrollen skulle passa snyggt ovanpå Pi som tog minimal plats, och eftersom den använder I2C -gränssnittet lämnade den GPIO -stiften som jag behövde för Alexa/Clap fri. knapp och lysdioder.

Som förväntat lödning av HAT var verkligen enkelt, och jag fick snart det monterat på PI och anslutas till de två öronmotorerna. Jag hade planerat att köra motorerna från en usb powerbank så att jag bara skulle behöva en enda strömkontakt, men det visade sig inte ha tillräckligt med grymtande, det skulle inte ens lysa upp "Working" -lampan på HAT. Jag bestämde mig istället för att använda en likströmadapter för att köra hatt och öron, jag hade bekvämt en av de universella med utbytbara tips till hands. Vad jag inte hade var ett DC -uttag för att ansluta adaptern till HAT. Jag var på väg att lämna Norwich Maplin (igen) när jag kom ihåg från rivningen att Nabaztagens ursprungliga strömkabel var en vanlig likströmskontakt - därför kunde jag bara dra om det ursprungliga eluttaget till HAT - snyggt! Till slut återanvändde jag också den ursprungliga Nabaztag-strömförsörjningen, eftersom den gav precis rätt mängd ström.

Med allt anslutet och en förnuftig spänning vald körde jag preliminärt python -exemplet som medföljde DC Motor Hat, provkod som ständigt ändrade motorns hastighet och riktning för att illustrera de olika kontrollalternativen. Jag var så upphetsad när det fungerade, min första Pi-styrda motor! Men så märkte jag något - ett riktigt högt högt gnäll som någon som kör ett blött finger runt ett vinglas. Det här var inte alls bra, jag ville få öronen att röra sig medan aviseringar lästes och även om det inte var öronbedövande var gnällen verkligen märkbar. Jag testade olika spänningar men ingen förändring. När jag vände mig till Google fick jag reda på att detta kan hända på grund av PWM (pulsbreddsmodulering) och att en lösning kan vara att lödda små kondensatorer över motorterminalerna. När man tittar på motorerna var dessa redan på plats. Jag experimenterade också med att ändra PWM -frekvensen men fortfarande ingen förändring. Efter lite experimenterande insåg jag att gnällningen bara hände när motorns hastighet ändrades av koden från låg till hög - så att ställa in den på en konstant hög hastighet eliminerade gnällningen helt och hållet - fy!

Jag skapade ett par test -python -skript baserade på Adafruit -exemplen, ett för rörelse under aviseringar och ett annat för att få öronen att utföra en fullständig "krets" vid start, med syfte att kopiera arbetskoden från dessa till huvudskripten som används för att hantera Interaktioner mellan Alexa och Gmail/Ivona.

Steg 8: Kamera och tweaks

Kamera och tweaks
Kamera och tweaks
Kamera och tweaks
Kamera och tweaks
Kamera och tweaks
Kamera och tweaks

Innan jag började montera testade jag allt. Om möjligt på den här byggnaden använde jag hopparkablar för att ansluta de enskilda komponenterna, om tidigare byggnader har lärt mig någonting är det att planera för framtida demontering! Jag gjorde också en poäng med att rita upp ett anslutningsdiagram som visar vilka färgkablar som gick vart, bygelkablar är utmärkta men lossnar ibland lätt när komponenter pressas in i trånga utrymmen!

Jag bestämde mig ganska långt in i byggnaden för att även inkludera en Pi -kameramodul, 8MP version 2 hade just släppts och som något annat nytt för mig trodde jag att det skulle vara ett bra tillägg. Den senaste versionen av Karotz-kaninen hade inkluderat en webbkamera i magen men det fungerade aldrig riktigt så bra, jag trodde att Pi-kameran skulle vara kul för röstaktiverade selfies och kanske till och med fjärrövervakning om Pi kunde hantera koden vid samtidigt som allt annat.

Jag byggde en hållare för kameran av plasttäckt meccano och monterade den i höljet först, sedan mycket noggrant mätt var jag behövde borra det försänkta hålet i fodralet. Detta var definitivt ett fall av "åtgärd två gånger skuren en gång" eftersom ett hål på fel plats skulle ha varit en katastrof. Tack och lov kom det ut i mitten och bara lite för högt, så jag kunde kompensera genom att lägga in brickor mellan kamerafästet och basen.

Jag lade också till en Pimoroni Dual Micro USB -strömkabel vid denna tidpunkt - detta gav mig ett trevligt mikro -usb -uttag på baksidan av fodralet och gav en andra strömkontakt. Jag tänkte använda den extra kontakten för att ladda upp högtalarens batteri och bröt mig in i det så att jag kunde ansluta Nabaztagens ursprungliga "mute" -brytare för att styra laddningen.

Steg 9: Vad är Cookin 'Doc? IFTTT Recept

Vad är Cookin 'Doc? IFTTT Recept!
Vad är Cookin 'Doc? IFTTT Recept!
Vad är Cookin 'Doc? IFTTT Recept!
Vad är Cookin 'Doc? IFTTT Recept!

Det fenomenala med att bygga en IoT -enhet just nu är det stora antalet tillgängliga webbtjänster, och IFTTT (If This Then That) -tjänsten gör ett fantastiskt jobb med att knyta ihop dem alla i ett enkelt och funktionellt paket. Om du inte har använt det ännu är det en onlinetjänst, och när du har registrerat dig kan du ansluta alla dina andra webbaserade saker till det, som Gmail, Facebook, Twitter och (du gissade det) Amazon Alexa. Det finns ett totalt smörgåsbord att välja mellan, inklusive kontrollalternativ för smarta apparater som glödlampor, termostater och uttag.

IFTTT -reglerna ställs in i "recept" - ungefär som en Outlook -regel eller ett IF -uttalande i SQL eller Visual Basic, till exempel har jag ett recept som säger "OM någon taggar mig på ett foto på Facebook SÄND skicka mig ett mail med ämnet "Holy guacamole, [tagging persons name] just tagged you in a facebook photo" - eftersom detta skickas till mig från min egen adress läser RabbitPi sedan upp ämnestexten.

En annan bra användning av IFTTT är med rösttjänsten Alexa - för IF -delen av ett recept kan du ställa in en fras, till exempel "lasern" och om du sedan säger till Alexa "Utlös lasern" skickar hon begäran till IFTTT, som avfyrar THEN -delen av receptet, aktiverar i detta fall ett fjärrkontakt anslutet till en diskolaser.

Det går till och med bortom "smarta saker" - om du har IFTTT installerat på din telefon (min är Android -versionen) kan du interagera med den i båda riktningarna, ett recept som används i videon är: "OM jag säger" Trigger Chas & Dave "till Alexa, SPELA DEN den specifika låten" Rabbit "på min Android -telefon. Det fungerar också tvärtom - AnyMote universella fjärrkontrollapp på min telefon kan anpassas så att en specifik knapp med trigger" IF "-delen av ett recept - så jag har en knapp på min skärm som får RabbitPi att ta en selfie och ladda upp den till Twitter.

En annan funktion gör det möjligt för RabbitPi att läsa upp mina textmeddelanden, på min telefon har jag ett recept "OM jag får ett nytt SMS -meddelande SEDAN skicka mig ett e -postmeddelande med följande ämne" Hej! [textavsändare] säger [textmeddelande]

Det är lätt att använda, mycket roligt och fungerar bra, aviseringar skickas fram och tillbaka väldigt snabbt, särskilt till WeMo Insight -omkopplaren jag har, vilket är ganska omedelbart. Att ha IFTTT och RabbitPi gör det enkelt att ansluta saker och tjänster.

Steg 10: Montering och testning

Montering och testning
Montering och testning
Montering och testning
Montering och testning
Montering och testning
Montering och testning

Nu kom den knepiga delen - att klämma ihop alla komponenter i fodralet! Jag var ganska säker på att allt skulle passa men själva monteringen var riktigt jobbig, jag använde bra några kirurgiska instrument och pincett för att peta kablar genom små luckor.

När allt var säkert monterat lade jag till några självhäftande buntband så att de många trådarna kunde dras ihop ordentligt - detta var verkligen viktigt eftersom jag inte av misstag skulle dra ur någon av dem när jag satte ihop höljet igen.

Steg 11: Klar kanin?

Klar kanin?
Klar kanin?
Klar kanin?
Klar kanin?
Klar kanin?
Klar kanin?
Klar kanin?
Klar kanin?

Nu när hela den fysiska byggsidan var klar var det dags att "klippa av sladden", ta bort RabbitPi från bekvämligheten med sin ethernetkabel, bildskärm och tangentbord i verkstaden så att jag kunde avsluta koden någon annanstans via SSH (den trådlösa signalen är riktigt svag där inne!)

Jag satte mig på skrivbordet på mitt kontor och startade upp kaninen och - ingen wi -fi -anslutning alls, ingenting. Jag visste att det måste vara en signal eftersom min telefon fungerade bra - var det ett problem med nätverkskortet på Pi 3 som jag inte hade hört talas om? En snabb googling informerade mig om att Pi 3 bara hittar en wi-fi-signal om routern sänder på kanalerna 1-11-min var inställd på kanal 13! Några tweaks senare och vi var anslutna, stor suck av lättnad.

Därefter kom sorteringen av de olika skripten. För det första ändrade jag main.py -skriptet för AlexaPi -koden och lade till extra rader så att RabbitPi utöver att blinka dess lysdioder vid start också skulle utföra en trevlig öronvridning. Jag bytte också ut standard "Hej" -meddelandet med en lekfull "boing" ljudeffekt för skojs skull.

Det andra skriptet heter rabbit.py (SWIDT?) Och innehåller all kod för att hämta gmail -meddelanden och läsa dem med Pyvona. Jag lade också till en del Twython -kod som jag anpassade från en Raspberry Pi "Tweeting Babbage" -handledning, så att RabbitPi kunde ta en bild och ladda upp den till sitt Twitter -konto (@NabazPi). Jag lade till lite öronrörelse och LED-blixtar för att ge dig rättvis varning när fotot ska tas, samt slutarljud och Pyvona-läst tweetbekräftelse.

Slutligen lade jag till i ett IF -uttalande till imaplib gmail -koden, så att om e -postämnet var "selfie" så skulle RabbitPi göra sin selfie -grej, men annars skulle läsa upp e -postämnet som normalt.

Koden jag använde är tillgänglig på GitHub - läs ReadMe -filen!

Som en sista touch skrev jag ut en Raspberry Pi -logotyp på genomskinligt papper och limmade den inuti RabbitPi -fodralet, så att den vita magen LED skulle lysa upp bilden genom dess genomskinliga hud.

Steg 12: Nabaztag är tillbaka

Nabaztag är tillbaka!
Nabaztag är tillbaka!
Nabaztag är tillbaka!
Nabaztag är tillbaka!
Nabaztag är tillbaka!
Nabaztag är tillbaka!

Med allt gjort var det bara videon kvar att göra. Det var jättekul att sätta RabbitPi genom sina steg på kameran, den enda nackdelen var att redigera HD -bilderna på min äldre bärbara dator senare. För några av meddelandena (huvudsakligen textmeddelanden på grund av min fruktansvärda Vodafone -signal) har jag avbrutit pauserna mellan handling och avisering, annars hade det varit en lång och tråkig video, men det mesta visar den sanna reaktionshastigheten.

Jag experimenterade med att använda en klappsensor för att utlösa Alexa -tjänsten (som det ses i Snap to it Alexa -videon), men lämnade den utanför den slutliga byggnaden eftersom den inte var riktigt pålitlig nog när det fanns bakgrundsbrus. Jag vet att andra tinkerers arbetar med att använda IR -fjärrkontroller, wii -kontroller och till och med aktivt lyssna med AlexaPi -koden så det finns massor av alternativ för framtiden.

Jag hoppas kunna lägga till en adafruit neopixelring för att ersätta magen LED eftersom detta skulle göra för mycket bättre visuella meddelanden, också skulle jag vilja faktor i "muting" röstmeddelanden på natten. Mina barn gav också några bra förslag, och nu när jag är lite mer bekväm med Python kommer vi att arbeta tillsammans för att utöka utbudet av meddelanden, till exempel så att selfiebekräftelsetexten slumpmässigt tas från en lista med värden, och så kan kaninen instrueras att försöka dansa macarenan med sina öron och lysdioder.

Jag råkar bara ha en annan Nabaztag här, liksom en senare Karotz -kanin, så jag kan mycket väl bygga något annat med dem - det är frestande att experimentera med fjärrövervakning och sensorer av alla de slag! Det är en idealisk hårdvaruplattform för Pi med sitt perfekta fodral, motorer och knapp. Jag undrar om de ursprungliga tillverkarna har ett lager av osålda Nabaztags någonstans, som Atari -deponin? Säkert, med lite 3D-tryckt godhet för att montera kameran och PI och en anpassad hatt för att köra motorer, lysdioder och ljud skulle de göra en idealisk Raspberry Pi-tillverkare, varje kodningsklubb borde ha en!

Om du gillar det här projektet och vill se mer kan du kolla in min webbplats för pågående projektuppdateringar på bit.ly/OldTechNewSpec, gå med på Twitter @OldTechNewSpec eller prenumerera på den växande YouTube -kanalen på bit.ly/oldtechtube - ge några av dina Old Tech en ny specifikation!

Tävlingen Internet of Things 2016
Tävlingen Internet of Things 2016
Tävlingen Internet of Things 2016
Tävlingen Internet of Things 2016

Tvåa i tävlingens tävling 2016

Rekommenderad: