INHOUDSOPGAWE:

Project Oasis: Voice Terrarium: 9 stappe (met foto's)
Project Oasis: Voice Terrarium: 9 stappe (met foto's)

Video: Project Oasis: Voice Terrarium: 9 stappe (met foto's)

Video: Project Oasis: Voice Terrarium: 9 stappe (met foto's)
Video: Voice Experiments: Project Oasis 2024, November
Anonim

Project Oasis is 'n stemterrarium waarmee jy kan praat. Dit is 'n selfversorgende geslote ekosisteem wat weer buite buig, maar in 'n boks. U kan die terrarium vra oor 'Weer in Seattle' as 'n reaksie waarop dit in die boks kan begin stort. Die terrarium kan ook wolke, mis veroorsaak of beligting verander om ander weersomstandighede voor te stel.

Stap 1: Motivering

Die medium van ons gesprek met die natuur is so visueel en multi-modaal, in teenstelling met wat ons vandag met tegnologie doen. Weer op telefone of rekenaars roep nie dieselfde sintuie op as om die weer letterlik te sien of te voel nie. Ek het daaroor gedink tydens my tyd by Google Creative Lab en Project Oasis geskep.

Dit is 'n terrarium waarmee u met die Google Assistant kan praat. U kan dit vra om sekere toestande te skep of die weer op 'n spesifieke plek te wys. Hierdie eksperiment brei ons gesprek met tegnologie en die natuurlike wêreld uit. Ons leef tussen die natuur en tegnologie en beskou dit tradisioneel as twee baie verskillende wêrelde. Oasis is 'n ekologiese gesprek, maar op 'n natuurlike manier; nie geprogrammeer of chaoties nie. Hier volg die stappe om een van u eie aktiewe terrariums te skep.

Stap 2: Algemene meganisme

Die terrarium skep, soos genoem, reën, mis en ligstoestande. Die bokant van die terrarium het LED's, 'n reënbak plus 'n klein omhulsel met keramiekresonators wat in aanraking kom met water. Hierdie klein skyfies resoneer by ~ 1-1.7Mhz om water te atomiseer tot mis wat lyk.

Die onderkant van die terrarium huisves twee peristaltiese pompe en ander elektronika. 'N Reservoir aan die onderkant van die terrarium bevat oortollige water. Die water word herwin/geplaas en word met een van die stil peristaltiese pompe na die reënbak gepomp.

Stap 3: Omhulselontwerp

Image
Image

Skakel na CAD

Lys van gereedskap/materiaal:

  1. Akriel/plexiglas velle 0,25 "dik (24" x 18 " - Aantal: 4)
  2. Akriel gom
  3. Boorstel met 1/4 "en gegradeerde onderste bisse
  4. Meetband + kalipers
  5. Epoksiegom (ongeveer 15 minute oulike tyd)
  6. GE seëlmiddel vir waterdigting
  7. Duidelike PVC -buise 1/4 "OD + hakies

Die ontwerpriglyne vir hierdie terrarium is buigsame en nie vinnige reëls nie. Ek het gekies om een te bou wat ek op my lessenaar kon hou, of een wat mooi sou lyk op 'n tafelblad. Boonop het ek 'n algemene idee gehad van die ruimte wat my elektronika, aanlegte en waterreservoir sou inneem. Ek het besluit dat die hele omhulsel H: 15 "W: 6" L: 10 "moet wees

Die CAD -afmetings in die figuur hierbo toon die algemene uiteensetting; in die algemeen beslaan die boonste en onderste elektronika elk 4 "hoogte. Die reservoir beslaan onderaan 4" L en laat 6 "L oor vir die elektronika (meer oor die elektronika later).

Ek het besluit om akriel/plexiglas te gebruik vir hierdie weergawe van terrarium, aangesien dit maklik beskikbaar is, baie maklik om op laser te bewerkstellig, en die dele kan met 'n verskeidenheid akrielsemente vasgeplak/gelas word. Glas of deursigtige plastiek is goeie kandidate, afhangende van hoe ver u met die voorkoms wil gaan, veral as die terrarium krommes sal hê. Boonop is krasvaste weergawes van plexiglas ook in baie winkels beskikbaar, sodat dit steeds 'n ideale keuse kan wees.

Ek het die 3D -model vir my terrarium in Fusion 360 ontwerp, net omdat ek dit wou probeer. Die CAD -lêers vir hierdie projek word by hierdie stap aangeheg. Ek het al die sketse platgemaak om lasermasjienlêers te kry, en die standaard laserbewerkingsproses volg. Stel die laser op (Epilog in my geval), maak die lêers oop in Corel Draw en voer die bewerking uit.

U moet nou die akrielonderdele hê wat nodig is vir die montering van die omhulsel. Verwys na CAD en gaan van onder na bo, monteer die dele met akriel sement om 'n boks te kry, met steiers aan die bokant / onderkant. Gebruik 'n maat en liniaalmat (aangesien die boks deursigtig is) as 'n riglyn vir 'n makliker monteerproses.

Stap 4: Elektroniese ontwerp

Elektroniese ontwerp
Elektroniese ontwerp
Elektroniese ontwerp
Elektroniese ontwerp
Elektroniese ontwerp
Elektroniese ontwerp

Lys van komponente / elektronika:

  1. 5V/10A kragtoevoer (hoeveelheid: 1)
  2. 3V-35V Boost-omskakelaar (aantal: 2)
  3. 12V DC doseringsperistaltiese pomp (hoeveelheid: 1)
  4. 2200 ml/min Peristaltiese pomp (hoeveelheid: 1)
  5. Icstation 20mm keramiekskywe freq = 113KHz, met bestuurdersborde (aantal: 2)
  6. RGB LED -strook (aantal: 1)
  7. 18 AWG en 24 AWG draadstel
  8. Draadweef 1/4"
  9. Raspberry Pi 3 + Google Voice Hat (jy benodig net die stemhoed + mikrofoon hier en nie luidspreker self nie)
  10. Arduino Nano met mini -USB -kabel
  11. ~ 3-24V spanningsbelasting deur SSR-relais
  12. Halfgrootte Protoboard

U benodig ook 'n veranderlike spanningstoevoer, 'n multimeter, 'n strykyster en 'n warm lijmpistool gedurende hierdie hele proses.

Opmerking: dit is 'n vinnige prototipe en daar is beter alternatiewe vir sommige van die komponente en verbindings. As u weet wat u doen, kan u gerus verander met lewensvatbare alternatiewe.

Ek het die 5V/10A-kragtoevoer met 'n enkele uitset in 'n muti-uitgangstoevoer ingekap deur die prop uit te trek en my eie meerstrengs kabels vir individuele komponente by te voeg.

  • 5V -lyn vir Icstation -bestuurdersborde
  • 5V lyn vir RGB LED's
  • 5V -lyn vir Raspberry Pi 3
  • 12V -lyn (veranderlik via Boost Converter) vir die dosering van peristaltiese pomp
  • 24V -lyn (veranderlik via Boost Converter) vir 'n hoë vloeitempo peristaltiese pomp

Ek neem die individuele lyne en sit dit saam in 'n draadweefsel vir 'n netjiese kyk. Ek het ook 'n dop in die 5V -lyn bygevoeg om stroompies te voorkom, aangesien dit direk met Raspberry Pi verbind kan word.

Basiese verbindings:

Ek het een van die 5V -lyne direk met Raspberry Pi verbind - agterkant van die bord op PP1 en PP6 om nie 'n mini -usb -kabel te gebruik nie weens beperkte ruimte. Die Pi het 'n Google Voice -hoed bo -op. Ek het 'n reeds bestaande program vir seriële skakeling geneem en na 'n Arduino Nano oorgeplaas. Hierdie Nano is gekoppel aan Pi 3 deur 'n kort mini -USB -kabel. Die Arduino Nano het verbindings met 'n protobord om relais aan/uit te skakel, wat weer pompe/mismaker aan/uit kan skakel.

Die protobord het drie aflosse met 5V, 12V en 24V laailyne elk. Elke aflos is ook gekoppel aan 'n aparte pen op Arduino (D5, D7 en D8). Raadpleeg die aflosdiagram oor hoe om die relaiskontakte te bedrieg vir 'n paar skakelaksies. A1/A2 sal die lyne van Arduino wees, terwyl 13+, 14 u lyne sal wees om die kring vir die vrag te voltooi. Ek gebruik relais vir goeie isolasie, maar u kan dit ook vervang met transistors. Onthou om 'n gemeenskaplike aarding tussen die las en Arduino te hê sodat die stroombaan kan werk.

Keramiekresonators

Die keramiekresonators/piezos het elkeen 'n bestuurdersbord wat u individueel op 'n veranderlike kragtoevoer kan kontroleer. Die boonste keramiekoppervlak moet in aanraking kom met water om mis te kan veroorsaak. Sodra u die bestuurdersborde laat toets het, moet u dit direk met 'n 5V -kraglyn aansluit, met 'n relais tussenin (soos hierbo). As die aflos aangeskakel word en die stroombaan voltooi is, sien u hoe die water in mis verander word.

LED's

Neopixel LED's van Adafruit word direk beheer met 'n bedieningslyn na Arduino, sonder om relais te gebruik. Ek sny hierdie lang strook in verskeie dele van ~ 15 LED's elk. Raadpleeg hierdie bladsy oor hoe om hierdie LED's te sny en aan te sluit. Nadat ek verskeie dele LED's geskep het (soos ook op die foto gesien), het ek die silikoonbedekking aangehou en warm gom aan die kante bygevoeg om alles waterdig te maak. Ek het afsonderlike gedeeltes aan die onderkant van die reënbak vasgesteek vir 'n mooi en egalige beligting.

Peristaltiese pompe

Soos voorheen opgemerk, is daar twee peristaltiese pompe in hierdie terrarium. Die doseringsperistaltiek lewer slegs klein hoeveelhede water vir die misopwekker. Die misreservoir het twee keramiekresonators wat in aanraking kom met water, maar die water eindig nie baie vinnig nie. As gevolg hiervan loop hierdie pomp nie gereeld om die misreservoir met water te vul nie. (Eintlik het ek dit selfs uit die kode verwyder en dit soms soms met die hand opgevul, net deur die boonste deksel van die terrarium op te lig)

Die peristaltika van 24V, 2200mL/min, aan die ander kant, word gebruik vir reën en word dus gekies vir hierdie hoë volume. Terwyl 24V self 'n te hoë vloeitempo vir die terrarium lewer, kan u die spanning op die Boost Converter verander om die vloeitempo van hierdie pomp na 'n optimale instelling te verander.

Stap 5: Montering en toetsing

Image
Image

Vergadering

Boor

Die elektronika (2 peristaltiese pompe, RPi + stemhoed/mikrofoon, Nano, Piezo bestuurdersborde, Relay Protoboard) bly in die onderste 6 "L van die terrarium. Ek het van onder na bo gegaan volgens die 3D -model. Boor twee gate (ongeveer 1/4 "elk) aan die agterkant van die onderste elektroniese afdelings - een van die gate is vir die kraglyne van al die komponente, terwyl die ander vir buise van die peristaltiese pompe is.

Boor 'n gaatjie 1/4 van die boonste deksel af sodat die reënwaterbuis kan binnedring. Boor nog 'n klein gaatjie sodat die LED -bedrading kan uitkom en onder in die Nano kan gaan. Toets al die elektronika 'n laaste keer voor sit hulle in die boks.

Plasing en waterdigting

Teen hierdie tyd moes al die akrielafdelings vasgesteek gewees het vanaf die stap van die ontwerp van die omhulsel. Plaas bogenoemde elektronika in die onderste omhulsel en sit die deksel daarop. Dit is belangrik om hierdie deksel versigtig te verseël sodat dit waterdig is. Die deksel pas nie in die boks om die gom 'n bietjie ruimte te gee om maklik te vloei en die gapings toe te maak nie. Ek gebruik Epoxy, gooi dit oor die kante van die deksel en laat dit loop op die steierwerk wat gemaak is om die deksel vas te hou. Die gom moet loop en die gapings moeiteloos toemaak. Laat dit vir oornag uitdroog en doen dan moontlik nog 'n laag waterdig met die GE Sealant.

Reën- en Misbyeenkoms

Die samestelling van reënbak met misreservoir (met keramiekskywe aan die onderkant) moes bymekaar gekom het tydens die ontwerp van die omhulsel. Die LED's moet ook aan die onderkant van die reënbak vasgesteek word vanaf die vorige stap en die drade vir keramiekresonators wat uit die onderskeie gaatjie bo/agter in die boks kom. U kan hierdie reën + mismaker -samestelling op die stellasie aan die bokant van die boks laat sit. Voordat u die boonste deksel toemaak, moet u die buis van die pomp deur die gaatjie wat voorheen bo die reënbak geboor is, inbring. Sny klein stukke buise en gebruik doringkonnekte om verskeie afsetpunte te skep vir 'n eweredige verspreiding van water wanneer dit in die skinkbord kom. Die reën sal in die terrarium eenvormig lyk. U kan 'n perswaterbottel gebruik om water in die misreservoir te gooi voordat u die deksel opsit om te toets sodra alles in die boks is.

Toets

Ek het die krag ingeprop waarmee die RPi aanlyn kan kom. Dit was voorheen gekonfigureer om aan te sluit by my plaaslike wifi -netwerk. Ek kan die IP -adres van Pi navraag doen, waarna ek 'n ingeboude skermdeling op Mac gebruik om by die Pi aan te meld. Dit laat my toe om dinge op afstand te toets en uit te voer, en ek hoef nie 'n HDMI -kabel in die boks te steek nie. Ek gebruik my vooraf ingestelde programme (verwys na sagteware -stap vir programme wat op Pi/Arduino vir verskillende komponente werk) om te toets of alles in plek is voordat ek na die volgende stappe gaan.

Stap 6: Terrariumontwerp (Landscaping)

Terrariumontwerp (landskap)
Terrariumontwerp (landskap)

Dit is waarskynlik die lekkerste deel van die hele proses. U kan jag of plante koop! Ek het rondgegaan in plaaslike tuinsentrums, waaronder die in die plaaslike Home Depot, plantwinkels in die omgewing, en selfs net in my omgewing gestap met baie groen ruimtes. Aangesien die klimaat vogtig, geslote en baie verander binne die terrarium, het ek probeer om veerkragtige tropiese klimaatplante te vind. U benodig die volgende items om die bed gereed te hê om te plant:

  • Swart grond
  • Perliet
  • Gruis
  • Geaktiveerde houtskool

Die water filtreer deur die grondbed tot by die reservoir om weer as reën herwin te word. Gebruik 'n fyn gaas (veselglas gaas) as basis voordat u die grondbed aantrek. Plaas geaktiveerde houtskool as die onderste laag in die terrarium. Dit voorkom dat vorms binne -in die terrarium groei en hou ook slegte reuke in toom. Bedek hierdie laag met 'n bietjie gruis, sodat die water nog 'n laag filtreer en vuil nie vrylik na die reservoir vloei nie. Meng swart grond en perliet in 'n verhouding van 1: 1 sodat u 'n baie lugagtige en dreinerende medium het. U is nou gereed om te plant.

Nota: Om al hierdie goed in die boks te laat val sonder om aan die mure te raak, het ek 'n tregtervorm gemaak met 'n papier en materiaal in die boks gegooi deur dit nie te gooi nie.

Ek het klein boomstamme en mos bymekaargemaak uit boomstamme in my omgewing en 'n groter verskeidenheid klein tropiese plante in plaaslike plantwinkels. Ek het 'n Bonsai -lemoenboom gevind wat pas by my behoefte aan voorkoms en iets wat in 'n aktuele klimaat by Home Depot sou oorleef. Ek gebruik 'n paar velmos en 'n paar Spaanse mos (beide algemeen in tuinsentrums) vir 'n natuurlike groen voorkoms bo die grond in die terrarium.

Wat plant betref, gaan ek van klein tot groot. Ek gebruik 'n pincet om die klein plantjies in te sit en mos/stompe net met hande neer te sit, voordat ek die voorkoms bereik het waarmee ek uiteindelik tevrede was. U moet die terrarium een keer liggies natmaak en 'n dag of twee laat staan sodat die plante kan akklimatiseer en wortels in hierdie nuwe bed kan groei.

Stap 7: sagteware

Hierdie instruksies kom meestal uit die github hier met al die kode. Ek sal hulle nog steeds hier laat vir voltooiing. Terwyl ek die Google Assistant gebruik, soos in die video gesien, is die terrarium ook 'n Google Voice Hat met 'n mikrofoon in die terrarium self, wat luister na opdragte. U kan kies om die AIR Voice Hat te gebruik volgens die instruksies hier.

Voor jy begin

DialogFlow / Actions on Google

Volg die stappe hier om 'n Dialogflow -agent te skep. Ons gebruik 'n welkome bedoeling waarmee die gebruiker met die terrarium kan begin praat. Daar is ekstra bedoelings vir die gebruiker om navraag te doen oor die weer op 'n sekere tydstip (byvoorbeeld: 'wys my die weer in Seattle') of om 'n eksplisiete aksie aan te wend (byvoorbeeld: 'laat dit reën')

U moet u wolkfunksies implementeer wat gekoppel is aan die optrede van die gebruiker.

-> Volg die instruksies hier om die wolkfunksies vir Firebase moontlik te maak. -> Stappe om die funksies van CLI te implementeer, is onder Ontplooi u funksies met die Firebase CLI op dieselfde skakel as hierbo

Cloud PubSub Stel 'n Cloud PubSub -projek op soos in hierdie skakel

Volg die stappe om 'n onderwerp te skep. Ons het 'n onderwerp met die naam 'Weer' in ons projek geskep, waarby ons ons intekeninge bygevoeg het. Ons gebruik slegs trek -intekeninge in hierdie projek. Die intekening op terrarium is genoem as weer-detail

Let op die projek -ID vir hierdie projek, aangesien dit handig sal wees om die luisteraarkliënt later uit te voer.

Openweather APIGaflaai van u API -sleutel vanaf openweathermap.org. Voeg hierdie sleutel by die wolkfunksies, sodat hierdie funksies die weerservers kan ping wanneer die gebruiker spesifieke inligting vra

Installeer NodeJS op u RPi

Hoe om hierdie modules uit te voer

Die implementering van Dialogflow Cloud -funksie

Gaan na die gids van u funksies en voer die volgende in volgorde uit

$ npm installeer

$ firebase -aanmelding

$ firebase init

En voer laastens die volgende uit om u funksies te implementeer:

$ vuurbasis ontplooi

Die skakel van die ontplooide funksies word die webhook -URL vir Dialogflow. Cloud PubSub

Naivgate na die gids van die subscription.js & package.json -lêer en voer npm install uit om die afhanklikes te installeer. As u gereed is, voer node subscritpions.js luister-boodskappe weer-detail uit, waar weer-detail die intekening is wat u uit 'n vorige stap geskep het. Google Assistant / AIY Voice Kit-toetsontplooiing

U kan 'n Google Home of 'n AIY Voice Kit gebruik om met die terrarium te kommunikeer. Die app -opstelling hierbo bly vir beide dieselfde.

Volg die instruksies hier om u program op Google Assistant te toets en te implementeer. U kan dan 'n Google Assistent wat met u rekening verband hou, gebruik deur daarmee te praat om die terrarium te aktiveer en dit oor die weer te vra.

Stap 8: Begin die Terrarium

Dit lyk moeilik om hierdie hele opset te volg, maar dit is eintlik lekker en boeiend terwyl u met die plante werk. As dit reg gedoen word, moet u uiteindelik iets soos kan sê

'Hey Google, wat is die weer in Seattle?', 'Hey Google, maak dit reën' ens. En sien die magiese uitset in u terrarium.

Geniet u nuwe terrarium en wys dit aan u vriende!

Stap 9: Bydraers / NOTA

  • Gemaak deur Harpreet Sareen en vriende by die Google Creative Lab.
  • Hierdie projek volg Google se Open Source -gemeenskapsriglyne. Verwys hier vir lisensie en ander riglyne.
  • Let wel: dit is nie 'n amptelik gesteunde Google -produk nie.

Aanbeveel: