Sadržaj:

Project Oasis: Voice Terrarium: 9 koraka (sa slikama)
Project Oasis: Voice Terrarium: 9 koraka (sa slikama)

Video: Project Oasis: Voice Terrarium: 9 koraka (sa slikama)

Video: Project Oasis: Voice Terrarium: 9 koraka (sa slikama)
Video: Voice Experiments: Project Oasis 2024, Juli
Anonim

Project Oasis je glasovni terarij s kojim možete razgovarati. To je samodostatan zatvoreni ekosistem koji oponaša vanjsko vrijeme, ali unutar kutije. Možete pitati terarij o 'Vrijeme u Seattleu' kao odgovor na koji bi se moglo početi ulijevati u kutiju. Terarij također može stvarati oblake, maglu ili mijenjati osvjetljenje kako bi predstavljao druge vremenske uslove.

Korak 1: Motivacija

Medij našeg razgovora s prirodom toliko je vizualan i multimodalni, za razliku od onoga što danas radimo s tehnologijom. Vreme na telefonima ili računarima ne izaziva ista čula kao doslovno gledanje ili osećanje vremena. Razmišljao sam o ovome dok sam bio u Google Creative Lab -u i stvorio Project Oasis.

To je terarij s kojim možete razgovarati pomoću Google asistenta. Možete ga zamoliti da stvori određene uslove ili vam pokaže vrijeme na određenom mjestu. Ovaj eksperiment proširuje naš razgovor o tehnologiji i svijetu prirode. Živimo između prirode i tehnologije i tradicionalno ih gledamo kao dva vrlo različita svijeta. Oaza je ekološki razgovor, ali na prirodan način; ni programirano ni kaotično. Slijede koraci kako stvoriti jedan od vlastitih aktivnih terarija.

Korak 2: Opći mehanizam

Spomenuti terarij stvara kišu, maglu i svjetlosne uvjete. Na vrhu terarija su LED diode, posuda za kišu i malo kućište s keramičkim rezonatorima u dodiru s vodom. Ovi mali diskovi rezoniraju pri ~ 1-1,7 MHz da rasprše vodu u ono što izgleda kao izmaglica.

Na dnu terarija nalaze se dvije peristaltičke pumpe i druga elektronika. Rezervoar na dnu terarija drži višak vode. Voda se reciklira/dopunjava i pumpi do kišnice pomoću jedne od tihih peristaltičkih pumpi.

Korak 3: Dizajn kućišta

Image
Image

Veza na CAD

Lista alata/materijala:

  1. Listovi od akrila/pleksiglasa debljine 0,25 "(24" x 18 " - Količina: 4)
  2. Akrilni ljepilo
  3. Bušilica sa 1/4 "i stepenastim donjim nastavcima
  4. Merna traka + čeljusti
  5. Epoksidni ljepilo (~ 15 min slatko vrijeme)
  6. GE brtvilo za hidroizolaciju
  7. Prozirne PVC cijevi 1/4 "OD + bodljikavi konektori

Smjernice za dizajn ovog terarija su fleksibilna, a ne stroga pravila. Odlučio sam izgraditi onu koju bih mogao držati na stolu ili onu koja bi izgledala lijepo na radnoj površini. Osim toga, imao sam opću ideju o prostoru koji će zauzeti moja elektronika, biljke i rezervoari vode. Odlučio sam da cijelo kućište bude H: 15 "W: 6" L: 10"

CAD dimenzije na gornjoj slici prikazuju opći raspad; uglavnom gornja i donja elektronika zauzimaju svaka 4 "visine. Rezervoar zauzima 4" L na dnu ostavljajući 6 "L za elektroniku (više o elektronici kasnije).

Odlučio sam upotrijebiti akril/pleksiglas za ovu verziju terarija jer je lako dostupan, vrlo jednostavan za lasersku obradu i dijelovi se mogu lijepiti/zavariti zajedno s raznim akrilnim cementima. Staklo ili prozirna plastika dobri su kandidati ovisno o tome koliko daleko želite ići s izgledom, pogotovo ako će terarij imati zavoje. Osim toga, verzije pleksiglasa otporne na ogrebotine dostupne su i u mnogim trgovinama, pa bi to ipak moglo ostati kao idealan izbor.

Dizajnirao sam 3D model za svoj terarij u Fusion 360, samo zato što sam to htio pokušati. CAD datoteke za ovaj projekt priložene su uz ovaj korak. Poravnao sam sve skice da bih dobio datoteke laserske mašine i slijedi standardni postupak laserske obrade. Postavite laser (u mom slučaju Epilog), otvorite datoteke u Corel Drawu i pokrenite obradu.

Sada biste trebali imati akrilne dijelove potrebne za montažu kućišta. Pogledajte CAD i idite odozdo prema gore, sastavite dijelove akrilnim cementom zajedno kako biste dobili kutiju, sa skelama na vrhu / dnu. Koristite čeljusti i podmetač za ravnalo (budući da je vaša kutija prozirna) kao vodič za lakši postupak montaže.

Korak 4: Dizajn elektronike

Dizajn elektronike
Dizajn elektronike
Dizajn elektronike
Dizajn elektronike
Dizajn elektronike
Dizajn elektronike

Popis komponenti / elektronike:

  1. Napajanje 5V/10A (Količina: 1)
  2. Pretvarač pojačanja 3V-35V (Količina: 2)
  3. Peristaltička pumpa za doziranje 12V DC (Količina: 1)
  4. 2200 mL/min Peristaltička pumpa (Količina: 1)
  5. Icstation 20 mm keramički diskovi učestalost = 113KHz, sa upravljačkim pločama (Količina: 2)
  6. RGB LED traka (Količina: 1)
  7. 18 AWG i 24 AWG set žica
  8. Žičani razboj 1/4"
  9. Raspberry Pi 3 + Google Voice šešir (ovdje vam treba samo glasovni šešir + mikrofon, a ne sam zvučnik)
  10. Arduino Nano sa mini USB kablom
  11. ~ 3-24V Napon-opterećenje kroz rupe SSR releji
  12. Polu-dimenzionirana ploča

Za cijeli ovaj proces trebat će vam i napajanje promjenjivog napona, multimetar, čvrsta pegla i pištolj za vruće ljepilo.

Napomena: Ovo je brzi prototip i postoje bolje alternative za neke komponente i veze. Ako znate što radite, slobodno se promijenite s održivim alternativama.

Hakirao sam jedno izlazno 5V/10A napajanje u više izlazno napajanje tako što sam skinuo utikač i dodao vlastite višežilne kabele za pojedinačne komponente.

  • 5V linija za upravljačke ploče Icstation
  • 5V linija za RGB LED diode
  • 5V linija za Raspberry Pi 3
  • 12V vod (promjenjiv preko pojačanog pretvarača) za doziranje peristaltičke pumpe
  • 24V vod (promjenjivo putem pojačanog pretvarača) za peristaltičku pumpu velike kiše

Uzeo sam pojedinačne redove i spojio ih u žičani razboj radi urednog izgleda. Također sam dodao kapu u liniji 5V kako bih spriječio talase napajanja jer se to direktno povezuje s Raspberry Pi.

Osnovne veze:

Spojio sam jednu od 5V linija direktno na Raspberry Pi - stražnju stranu ploče na PP1 i PP6 kako ne bih koristio mini USB kabel zbog ograničenog prostora. Pi ima Google Voice šešir na vrhu. Uzeo sam već postojeći program za serijsko prebacivanje i prenio ga na Arduino Nano. Ovaj Nano je spojen na Pi 3 kratkim mini USB kabelom. Arduino Nano ima priključke na protoboard za uključivanje/isključivanje releja koji zauzvrat uključuje/isključuje pumpe/aparat za pravljenje magle.

Protoboard ima tri releja sa 5V, 12V i 24V linijama opterećenja svaki. Svaki relej je spojen i na zasebni pin na Arduinu (D5, D7 i D8). Pogledajte dijagram releja o tome kako spojiti kontakte releja za neke radnje prebacivanja. A1/A2 će biti linije iz Arduina, dok će 13+, 14 biti vaše linije za dovršetak kruga za opterećenje. Koristim releje za dobru izolaciju, ali možete ih zamijeniti i tranzistorima. Ne zaboravite imati zajedničko uzemljenje između opterećenja i Arduina da bi krug radio.

Keramički rezonatori

Keramički rezonatori/piezo uređaji dolaze s upravljačkom pločom koju možete pojedinačno provjeriti na varijabilnom napajanju. Gornja keramička površina mora biti u dodiru s vodom kako bi stvorila maglu. Nakon što isprobate ploče upravljačkih programa, povežite ih izravno s naponom od 5 V, s relejem između (kao gore). Kada se relej uključi i krug završi, vidjet ćete da se voda pretvara u maglu.

LED diode

Neopixel LED diode iz Adafruit -a se kontrolišu direktno sa kontrolne linije do Arduina, bez upotrebe releja. Rezao sam ovu dugu traku na više dijelova od po ~ 15 LED dioda. Pogledajte ovu stranicu o tome kako izrezati i spojiti ove LED diode. Nakon što sam stvorio više dijelova LED dioda (kao što se vidi i na slici), zadržao sam silikonski omotač i na krajeve dodao vruće ljepilo kako bih sve vodonepropusno. Zalijepio sam pojedinačne dijelove na dno posude za kišu radi lijepe i ravnomjerne distribucije svjetla.

Peristaltičke pumpe

Kao što je već napomenuto, u ovom terarijumu postoje dvije peristaltičke pumpe. Peristaltik za doziranje isporučuje samo male količine vode za generator magle. Rezervoar za maglu ima dva keramička rezonatora u kontaktu s vodom, ali voda ne završava brzo. Zbog toga ova pumpa ne radi često da napuni rezervoar za maglu vodom. (Zapravo, čak sam ga na kraju uklonio iz koda i samo ponekad ručno napunio rezervoar za magljenje samo podizanjem gornjeg poklopca terarija)

S druge strane, peristaltik od 24V, 2200mL/min koristi se za kišu i stoga je odabran za ovu veliku količinu. Iako će sama 24V proizvesti prevelik protok za terarij, možete promijeniti napon na pretvaraču za povećanje brzine protoka ove pumpe na optimalno podešenje.

Korak 5: Montaža i testiranje

Image
Image

Montaža

Bušenje

Elektronika (2 peristaltičke pumpe, RPi + glasovni šešir/mikrofon, Nano, Piezo upravljačke ploče, relejna protoboard) ostaju na donjih 6 "L terarija. Išao sam na montažu odozdo prema gore prema 3D modelu. Bušilica dvije rupe (otprilike 1/4 "svaka) na stražnjoj strani donjih odjeljaka elektronike - jedna rupa služi za vodove svih komponenti, a druga za cijevi peristaltičkih pumpi.

Izbušite jednu rupu ostavljajući 1/4 od gornjeg poklopca kako biste omogućili ulazak cijevi za kišnicu. Izbušite još jednu malu rupicu da LED ožičenje izađe i uđe u Nano na dnu. Ispitajte svu elektroniku zadnji put prije stavljajući ih u kutiju.

Postavljanje i hidroizolacija

Do sada su svi akrilni dijelovi trebali biti zalijepljeni od koraka Dizajn kućišta. Stavite gore navedenu elektroniku u donje kućište i stavite poklopac na nju. Važno je pažljivo zatvoriti ovaj poklopac kako bi bio vodootporan. Poklopac nije predviđen za prešanje unutar kutije, kako bi se ostavio prostor za lako protjecanje ljepila i zatvaranje praznina. Koristio sam epoksid, prelio ga po stranama poklopca i pustio da teče po skelama napravljenim za držanje poklopca. Ljepilo bi trebalo teći i besprijekorno zatvoriti praznine. Ostavite da odstoji preko noći da očvrsne, a zatim eventualno napravite još jedan sloj hidroizolacije sa GE zaptivačem.

Skupština kiše i magle

Sklapanje posude za kišu sa rezervoarom za maglu (sa keramičkim diskovima na dnu) trebalo je da se spoji u fazi projektovanja kućišta. LED diode bi također trebale biti zaglavljene na dnu posude za kišu iz prethodnog koraka, a žice za keramičke rezonatore izlaze iz odgovarajuće rupe na vrhu/stražnjoj strani kutije. Ovaj sklop uređaja za stvaranje kiše i magle možete ostaviti na skeli pri vrhu kutije. Prije zatvaranja gornjeg poklopca, u tu svrhu unesite cijev pumpe kroz prethodno izbušenu rupu iznad posude za kišu. Izrežite male dijelove cijevi i upotrijebite bodljikave konektore za stvaranje više otvora za ravnomjernu distribuciju vode kada uđe u ladicu. Kiša će imati ujednačen izgled na ovaj način u terariju. Možete upotrijebiti bocu za istiskivanje vode za dodavanje vode u rezervoar za maglu prije stavljanja poklopca na testiranje kada sve bude u kutiji.

Testiranje

Uključio sam napajanje koje RPi uključuje. Prethodno je bilo konfigurirano za povezivanje s mojom lokalnom WiFi mrežom. Mogu pitati mrežu za IP Pi, nakon čega koristim ugrađeno dijeljenje ekrana na Mac -u za prijavu na Pi. To mi omogućava da testiram i pokrenem stvari na daljinu i da ne moram priključivati HDMI kabel u kutiju. Koristim svoje unaprijed postavljene programe (pogledajte odjeljak Softverski korak za programe koji se izvode na Pi/Arduinu za različite komponente) da provjerim je li sve na mjestu prije nego što pređemo na sljedeće korake.

Korak 6: Dizajn terarija (uređenje okoliša)

Dizajn terarija (uređenje okoliša)
Dizajn terarija (uređenje okoliša)

Ovo je vjerojatno najzabavniji dio cijelog procesa. Možete loviti ili kupovati biljke! Obišao sam lokalne vrtne centre, uključujući i onaj u lokalnom Home Depotu, obližnje prodavaonice biljaka, pa čak i samo šetao po svom kvartu koji ima puno zelenih površina. Budući da je klima vlažna, zatvorena i da se jako mijenja unutar terarija, pokušavao sam pronaći otporne biljke tropske klime. Za pripremu kreveta za sadnju potrebni su vam sljedeći predmeti:

  • Black Soil
  • Perlit
  • Šljunak
  • Aktivni ugljen

Voda se filtrira kroz tlo do rezervoara kako bi se ponovo reciklirala kao kiša. Prije postavljanja na krevet zemlje upotrijebite finu žičanu mrežu (npr. Stakloplastičnu mrežu). Stavite aktivni ugljen kao najdonji sloj u terarijumu. Time se sprječava rast plijesni unutar terarija, a također se kontrolira i svaki loš miris. Pokrijte ovaj sloj šljunkom kako bi voda imala još jedan sloj filtriranja i prljavština ne bi mogla slobodno teći u rezervoar. Pomiješajte crno tlo i perlit u omjeru 1: 1 tako da imate zaista prozračan i isušen medij za uzgoj. Sada ste spremni za sadnju.

Napomena: Da bih sve ove stvari spustio u kutiju bez dodirivanja zidova, napravio sam papir u obliku lijevka i ubacio materijal u kutiju kroz taj otvor, a ne izravno ga ubacio.

Skupio sam male trupce i mahovinu sa stabala u svom susjedstvu i više različitih malih tropskih biljaka u lokalnim prodavaonicama biljaka. Našao sam drvo naranče Bonsai koje je odgovaralo mojim potrebama za izgledom i nešto što bi preživjelo u aktualnoj klimi u Home Depotu. Koristim malo mahovine i nešto španjolske mahovine (obje se obično nalaze u vrtnim centrima) za neki prirodni zeleni izgled iznad tla u terariju.

Što se tiče sadnje, idem od malih do velikih veličina. Pincetom stavljam male biljke i stavljam mahovinu/trupce samo rukama, prije nego što dosegnem izgled kojim sam konačno bio zadovoljan. Jednom biste trebali lagano zalijevati terarij i ostaviti ga da odstoji dan ili dva kako bi se biljke aklimatizirale i izrasle korijenje na ovom novom krevetu.

Korak 7: Softver

Ova uputstva najvećim dijelom dolaze sa githuba sa svim kodom. Ostavit ću ih ovdje radi dovršetka. Dok koristim Google pomoćnika kako se vidi na videu, u terarijumu postoji i Google Voice šešir s mikrofonom u samom terariju, koji sluša naredbe. Možete odabrati samo korištenje AIR glasovnog šešira prema uputama ovdje.

Prije nego počnete

DialogFlow / Akcije na Googleu

Slijedite ove korake za kreiranje agenta Dialogflow. Koristimo namjeru dobrodošlice koja omogućava korisniku da počne razgovarati s terarijem. Korisnici imaju dodatne namjere da se raspitaju o vremenu na određenoj lokaciji, u vrijeme (npr: 'pokaži mi vrijeme u Sijetlu') ili pozovu eksplicitnu radnju (npr: 'neka pada kiša')

Morat ćete implementirati svoje funkcije u oblaku koje su preslikane u radnje korisnika.

-> Slijedite upute ovdje kako biste omogućili funkcije oblaka za firebase. -> Koraci za implementaciju funkcija iz CLI -a nalaze se u odjeljku Implementacija vaših funkcija s Firebase CLI -om na istoj vezi kao gore

Cloud PubSubPostavite Cloud PubSub projekt kao na ovoj vezi

Slijedite korake za kreiranje teme. U našem smo projektu stvorili temu pod nazivom 'Vrijeme', kojoj smo dodali naše pretplate. U ovom projektu koristimo samo pull pretplate. Pretplata na terarij bila je imenovana kao detalj o vremenu

Zabilježite ID projekta za ovaj projekt jer će vam kasnije biti korisno za pokretanje slušatelja.

Openweather APIGNabavite svoj API ključ sa openweathermap.org. Dodajte ovaj ključ u funkcije u oblaku kako bi te funkcije mogle pingati vremenske servere kada korisnik zatraži određenu informaciju. Instalirajte NodeJS

Instalirajte NodeJS na svoj RPi

Kako pokrenuti ove module

Implementacija funkcije Dialogflow Cloud

Idite do direktorija vaših funkcija i pokrenite sljedeće po redu

$ npm instalacija

$ firebase prijava

$ firebase init

I na kraju pokrenite sljedeće za implementaciju svojih funkcija:

$ firebase deploy

Veza postavljenih funkcija postaje URL webhook -a za Dialogflow. Cloud PubSub

Idite u direktorij datoteke subscription.js & package.json i pokrenite npm install da instalirate zavisnosti. Kad budete spremni, pokrenite čvor subscritpions.js Listen-messages weather-detail gdje je weather-detail pretplata koju ste stvorili iz prethodnog koraka. Google Implementacija testa za Google Assistant / AIY Voice Kit

Za interakciju s terarijem možete koristiti Google Home ili AIY Voice Kit. Gornje postavljanje aplikacije ostaje isto za oboje.

Slijedite ovdje navedene upute za testiranje i postavljanje aplikacije na Google Asistentu. Zatim možete koristiti Google asistenta povezanog s vašim računom tako što ćete s njim razgovarati da pokrenete terarij i pitati ga o vremenu.

Korak 8: Pokrenite terarij

Pratiti cijelu ovu postavku čini se naporno, ali je zapravo zabavno i angažirano dok radite s biljkama. Ako to učinite kako treba, konačno biste mogli reći nešto poput

'Hej Google, kakvo je vrijeme u Seattleu?', 'Hey Google, neka pada kiša' itd. I pogledajte magični izlaz u svom terariju.

Uživajte u svom novom terariju i pokažite ga svojim prijateljima!

Korak 9: Doprinositelji / NAPOMENA

  • Proizvođač Harpreet Sareen i prijatelji u Google Creative Lab -u.
  • Ovaj projekt slijedi Googleove smjernice zajednice otvorenog koda. Ovdje potražite licencu i druge smjernice.
  • Napomena: Ovo nije službeno podržani Googleov proizvod.

Preporučuje se: