Sommario:

Project Oasis: Voice Terrarium: 9 passaggi (con immagini)
Project Oasis: Voice Terrarium: 9 passaggi (con immagini)

Video: Project Oasis: Voice Terrarium: 9 passaggi (con immagini)

Video: Project Oasis: Voice Terrarium: 9 passaggi (con immagini)
Video: Voice Experiments: Project Oasis 2024, Luglio
Anonim

Project Oasis è un terrario vocale con cui puoi parlare. È un ecosistema chiuso autosufficiente che imita il tempo esterno ma all'interno di una scatola. Puoi chiedere al terrario di "Meteo a Seattle" come risposta a cui potrebbe iniziare a versare all'interno della scatola. Il terrario può anche generare nuvole, nebbia o cambiare l'illuminazione per rappresentare altre condizioni meteorologiche.

Passaggio 1: motivazione

Il mezzo della nostra conversazione con la natura è così visivo e multimodale, in contrasto con ciò che facciamo oggi con la tecnologia. Il tempo su telefoni o computer non richiama gli stessi sensi di vedere o sentire letteralmente il tempo. Ci ho pensato durante il mio periodo al Google Creative Lab e ho creato Project Oasis.

È un terrario con cui puoi parlare usando l'Assistente Google. Puoi chiedergli di creare determinate condizioni o mostrarti il tempo in un luogo specifico. Questo esperimento amplia la nostra conversazione con la tecnologia e il mondo naturale. Viviamo tra natura e tecnologia e tradizionalmente li guardiamo come due mondi molto diversi. Oasis è una conversazione ecologica ma in modo naturale; né programmato né caotico. Di seguito sono riportati i passaggi su come creare uno dei tuoi terrari attivi.

Passaggio 2: meccanismo generale

Il terrario come detto crea condizioni di pioggia, nebbia e luce. La parte superiore del terrario ha LED, un vassoio per la pioggia e un piccolo recinto con risonatori in ceramica a contatto con l'acqua. Questi piccoli dischi risuonano a ~1-1,7 Mhz per atomizzare l'acqua in quella che sembra nebbia.

Il fondo del terrario ospita due pompe peristaltiche e altri dispositivi elettronici. Un serbatoio nella parte inferiore del terrario trattiene l'acqua in eccesso. L'acqua viene riciclata/filtrata e pompata fino alla vasca di raccolta tramite una delle pompe peristaltiche silenziose.

Passaggio 3: progettazione dell'involucro

Image
Image

Collegamento a CAD

Elenco di strumenti/materiali:

  1. Fogli in acrilico/plexiglass spesso 0,25" (24" x 18" - Qtà: 4)
  2. Colla acrilica
  3. Set di punte con punte inferiori da 1/4" e graduate
  4. Nastro di misurazione + Calibri
  5. Colla epossidica (~ 15 minuti di tempo carino)
  6. Sigillante GE per impermeabilizzazioni
  7. Tubi in PVC trasparente 1/4" OD + connettori spinati

Le linee guida di progettazione per questo terrario sono regole flessibili e non rigide. Ho scelto di costruirne uno che potessi tenere sulla mia scrivania o uno che stesse bene su un piano di lavoro. Inoltre, avevo un'idea generale dello spazio che la mia elettronica, le piante e il serbatoio dell'acqua avrebbero occupato. Ho deciso che l'intero recinto fosse H:15 "W: 6" L: 10"

Le dimensioni CAD nella figura sopra mostrano la rottura generale; in linea di massima l'elettronica superiore e inferiore occupano 4" di altezza ciascuna. Il serbatoio occupa 4" L in basso lasciando 6" L per l'elettronica (più sull'elettronica più avanti).

Ho deciso di utilizzare l'Acrilico/Plexiglass per questa versione del terrario poiché è facilmente reperibile, molto facile da lavorare al laser e le parti possono essere incollate/saldate insieme con una varietà di cementi acrilici. Il vetro o la plastica trasparente sono buoni candidati a seconda di quanto lontano vuoi andare con l'aspetto, specialmente se il terrario avrà delle curve. Inoltre, in molti negozi sono disponibili anche versioni antigraffio di plexiglass, quindi potrebbe comunque renderlo una scelta ideale.

Ho progettato il modello 3D per il mio terrario in Fusion 360, solo perché volevo provarlo. I file CAD per questo progetto sono allegati a questo passaggio. Ho appiattito tutti gli schizzi per ottenere i file della macchina laser e segue il processo di lavorazione laser standard. Imposta il laser (Epilog nel mio caso), apri i file in Corel Draw ed esegui la lavorazione.

Ora dovresti avere le parti acriliche necessarie per il montaggio della custodia. Fare riferimento al CAD e andando dal basso verso l'alto, assemblare le parti con cemento acrilico insieme per ottenere una scatola, con ponteggi in alto / in basso. Usa un calibro e un tappetino per righello (dato che la tua scatola è trasparente) come guida per un processo di assemblaggio più semplice.

Passaggio 4: progettazione elettronica

Progettazione elettronica
Progettazione elettronica
Progettazione elettronica
Progettazione elettronica
Progettazione elettronica
Progettazione elettronica

Elenco dei componenti/elettronica:

  1. Alimentazione 5V/10A (Qtà: 1)
  2. Convertitore boost 3V-35V (Qtà: 2)
  3. Pompa Peristaltica Dosatrice 12V DC (Qtà: 1)
  4. Pompa peristaltica da 2200 ml/min (Qtà: 1)
  5. Icstation dischi ceramici da 20 mm freq = 113 KHz, con schede driver (Qtà: 2)
  6. Striscia LED RGB (Qtà: 1)
  7. Set di cavi da 18 AWG e 24 AWG
  8. Telaio a filo 1/4"
  9. Raspberry Pi 3 + Google Voice Hat (hai solo bisogno del voice hat + microfono qui e non dell'altoparlante stesso)
  10. Arduino Nano con cavo Mini USB
  11. ~ Relè SSR a foro passante con carico di tensione da 3-24 V
  12. Scheda prototipi di mezza misura

Avresti anche bisogno di un alimentatore a tensione variabile, un multimetro, un saldatore e una pistola per colla a caldo durante l'intero processo.

Nota: questo è un prototipo rapido e ci sono alternative migliori ad alcuni componenti e connessioni. Se sai cosa stai facendo, sentiti libero di cambiare con valide alternative.

Ho hackerato l'alimentatore 5V/10A a uscita singola in un alimentatore muti-output rimuovendo la spina e aggiungendo i miei cavi a più fili per i singoli componenti.

  • Linea 5V per schede driver Icstation
  • Linea 5V per LED RGB
  • Linea 5V per Raspberry Pi 3
  • Linea 12V (variabile tramite Boost Converter) per dosaggio pompa peristaltica
  • Linea 24V (variabile tramite Boost Converter) per pompa peristaltica pioggia ad alta portata

Ho preso le singole linee e le ho messe insieme in un telaio metallico per un aspetto ordinato. Ho anche aggiunto un cappuccio nella linea 5V per evitare increspature di alimentazione poiché si collega direttamente a Raspberry Pi.

Connessioni di base:

Ho collegato una delle linee 5V direttamente al Raspberry Pi -- il retro della scheda a PP1 e PP6 in modo da non utilizzare il cavo mini usb a causa dello spazio limitato. Il Pi ha un Google Voice Hat seduto sopra di esso. Ho preso un programma già esistente che avevo per la commutazione seriale e l'ho portato su un Arduino Nano. Questo Nano è collegato a Pi 3 tramite un cavo mini USB corto. L'Arduino Nano ha connessioni a una scheda prototipi per l'accensione/spegnimento dei relè che a loro volta alimentano le pompe/il nebulizzatore on/off.

La scheda prototipi ha tre relè con linee di carico da 5V, 12V e 24V ciascuno. Ogni relè è inoltre collegato a un pin separato su Arduino (D5, D7 e D8). Fare riferimento allo schema del relè su come cablare i contatti del relè per alcune azioni di commutazione. A1/A2 saranno le linee di Arduino mentre 13+, 14 saranno le tue linee per completare il circuito per il carico. Sto usando i relè per un buon isolamento, ma puoi anche sostituirli con i transistor. Ricorda di avere una messa a terra comune tra il carico e Arduino affinché il circuito funzioni.

Risonatori in ceramica

I risonatori/piezo ceramici sono dotati di una scheda driver che è possibile controllare singolarmente su un alimentatore variabile. La superficie superiore in ceramica deve essere a contatto con l'acqua per creare nebbia. Dopo aver testato le schede driver, collegarle direttamente con una linea di alimentazione a 5 V, con un relè in mezzo (come sopra). Quando il relè è acceso e il circuito è completato, vedrai l'acqua convertita in nebbia.

LED

I LED Neopixel di Adafruit sono controllati direttamente con una linea di controllo ad Arduino, senza utilizzare alcun relè. Ho tagliato questa lunga striscia in più sezioni di ~ 15 LED ciascuna. Fare riferimento a questa pagina su come tagliare e collegare questi LED. Dopo aver creato più sezioni di LED (come si vede anche nella foto), ho tenuto il rivestimento in silicone e ho aggiunto della colla a caldo alle estremità per impermeabilizzare il tutto. Ho incollato singole sezioni sul fondo del vassoio antipioggia per una distribuzione della luce piacevole e uniforme.

Pompe Peristaltiche

Come notato prima, in questo terrario ci sono due pompe peristaltiche. Il dosatore peristaltico eroga solo piccole quantità di acqua per il generatore di nebbia. Il serbatoio della nebbia ha due risonatori ceramici a contatto con l'acqua, ma l'acqua non finisce molto velocemente. Di conseguenza, questa pompa non funziona molto spesso per riempire d'acqua il serbatoio della nebbia. (In effetti, ho persino finito per rimuoverlo dal codice e riempirlo manualmente a volte del serbatoio di nebulizzazione semplicemente sollevando il coperchio superiore del terrario)

Il peristaltico 24V, 2200mL/min invece è utilizzato per la pioggia ed è quindi scelto per questo volume elevato. Sebbene la stessa 24V produca una portata troppo alta per il terrario, è possibile modificare la tensione sul convertitore boost per modificare la portata di questa pompa su un'impostazione ottimale.

Passaggio 5: assemblaggio e test

Image
Image

Assemblea

foratura

L'elettronica (2 pompe peristaltiche, RPi + Voice Hat/Microphone, Nano, Piezo Driver Boards, Relay Protoboard) rimane nella parte inferiore di 6"L del terrario. Sono andato per il montaggio dal basso verso l'alto secondo il modello 3D. Drill due fori (circa 1/4" ciascuno) sul retro delle sezioni elettroniche inferiori - uno dei fori è per le linee di alimentazione di tutti i componenti mentre l'altro è per i tubi delle pompe peristaltiche.

Praticare un foro lasciando 1/4 dal coperchio superiore per consentire l'ingresso del tubo dell'acqua piovana. Praticare un altro piccolo foro per far uscire il cablaggio del LED e entrare nel Nano in basso. Testare tutta l'elettronica un'ultima volta prima mettendoli dentro la scatola.

Posizionamento e impermeabilizzazione

A questo punto, tutte le sezioni acriliche dovrebbero essere state bloccate in posizione dalla fase di progettazione dell'involucro. Posizionare l'elettronica sopra menzionata nella parte inferiore dell'involucro e mettere il coperchio su di essa. È importante sigillare accuratamente questo coperchio affinché sia impermeabile. Il coperchio non è a pressione all'interno della scatola, in modo da lasciare un po' di spazio per far scorrere facilmente la colla e chiudere gli spazi vuoti. Ho usato Epoxy, l'ho versato sui lati del coperchio e l'ho lasciato scorrere sull'impalcatura fatta per tenere il coperchio. La colla dovrebbe scorrere e chiudere perfettamente gli spazi vuoti. Lasciare riposare per una notte e poi eventualmente fare un altro strato di impermeabilizzazione con il GE Sealant.

Assemblaggio pioggia e nebbia

L'assemblaggio della vaschetta per la pioggia con il serbatoio della nebbia (con dischi in ceramica nella parte inferiore) dovrebbe essere avvenuto durante la fase di progettazione dell'armadio. I LED dovrebbero anche essere attaccati alla parte inferiore del vassoio della pioggia dal passaggio precedente e i fili per i risonatori ceramici che escono dal rispettivo foro nella parte superiore/posteriore della scatola. Puoi lasciare che questo gruppo di creazione di pioggia + nebbia si sieda sull'impalcatura nella parte superiore della scatola. Prima di chiudere il coperchio superiore, introdurre il tubo della pompa attraverso il foro praticato in precedenza sopra il vassoio della pioggia per questo scopo. Taglia piccole sezioni di tubo e usa connettori spinati per creare più prese per una distribuzione uniforme dell'acqua quando arriva nel vassoio. La pioggia avrà un aspetto uniforme in questo modo nel terrario. È possibile utilizzare un flacone erogatore d'acqua per aggiungere acqua nel serbatoio della nebbia prima di mettere il coperchio per il test una volta che tutto è all'interno della scatola.

test

Ho collegato l'alimentazione che fa andare online l'RPi. Era stato precedentemente configurato per connettersi alla mia rete wifi locale. Posso interrogare la rete per l'IP di Pi, in seguito al quale utilizzo la condivisione dello schermo integrata su Mac per accedere al Pi. Ciò mi consente di testare ed eseguire le cose in remoto e di non dover collegare un cavo HDMI nella scatola. Uso i miei programmi preimpostati (fare riferimento al passaggio Software per i programmi in esecuzione su Pi/Arduino per i componenti diff.) per verificare che tutto sia a posto prima di passare ai passaggi successivi.

Passaggio 6: progettazione del terrario (paesaggio)

Progettazione di terrari (paesaggistica)
Progettazione di terrari (paesaggistica)

Questa è probabilmente la parte più divertente dell'intero processo. Puoi cacciare o acquistare piante! Sono andato in giro nei centri di giardinaggio locali, incluso quello di Home Depot, nei negozi di piante nelle vicinanze e ho anche appena camminato nel mio quartiere che ha molti spazi verdi. Poiché il clima è umido, chiuso e cambia molto all'interno del terrario, stavo cercando di trovare piante resistenti al clima tropicale. Avresti bisogno dei seguenti elementi per avere il letto pronto per la semina:

  • terra nera
  • perlite
  • Ghiaia
  • Carbone attivo

L'acqua filtra attraverso il letto del terreno fino al serbatoio per essere nuovamente riciclata come pioggia. Utilizzare una rete metallica fine (rete in fibra di vetro, ad esempio) come base prima di posizionare il letto di terra. Metti il carbone attivo come strato più in basso nel terrario. Ciò impedisce la formazione di muffe all'interno del terrario e tiene sotto controllo anche i cattivi odori. Copri questo strato con della ghiaia in modo che l'acqua abbia un altro strato di filtraggio e lo sporco non continui a fluire liberamente nel serbatoio. Mescola terra nera e perlite in rapporto 1:1 in modo da avere un substrato di coltivazione davvero arioso e drenante. Ora sei pronto per la semina.

Nota: per far cadere tutta questa roba nella scatola senza toccare le pareti, ho creato una forma a imbuto con della carta e ho versato del materiale nella scatola attraverso quell'apertura e non l'ho gettata direttamente.

Ho raccolto piccoli tronchi e muschio da tronchi d'albero nel mio quartiere e più varietà di piccole piante tropicali nei negozi di piante locali. Ho trovato un Bonsai Arancio che si adattava alle mie esigenze di aspetto e qualcosa che sarebbe sopravvissuto in un clima topico a Home Depot. Uso del muschio di foglio e del muschio spagnolo (entrambi comunemente presenti nei centri di giardinaggio) per un aspetto verde naturale sopra il terreno nel terrario.

Per quanto riguarda la semina, vado dalla taglia piccola a quella grande. Uso le pinzette per inserire le piccole piante e ho posizionato muschio/tronchi solo con le mani, prima di raggiungere l'aspetto di cui ero finalmente felice. Dovresti una volta annaffiare leggermente il terrario e lasciarlo riposare per un giorno o due affinché le piante si acclimatino e crescano radici in questo nuovo letto.

Passaggio 7: software

Queste istruzioni per la maggior parte provengono da github qui con tutto il codice. Li lascerò ancora qui per il completamento. Mentre uso Google Assistant come si vede nel video, il terrario ha anche un Google Voice Hat con un microfono nel terrario stesso, ascoltando i comandi. Puoi scegliere di utilizzare semplicemente AIR Voice Hat secondo le istruzioni qui.

Prima che inizi

DialogFlow / Azioni su Google

Segui i passaggi qui per creare un agente Dialogflow. Usiamo un intento di benvenuto che consente all'utente di iniziare a parlare con il terrario. Ci sono ulteriori intenti per l'utente di informarsi sul tempo in un determinato luogo, ora (ad esempio: "mostrami il tempo a Seattle") o invocare un'azione esplicita (ad esempio: "fai piovere")

Dovrai distribuire le tue funzioni cloud che sono mappate alle azioni dell'utente.

-> Segui le istruzioni qui per abilitare le funzioni cloud per Firebase. -> I passaggi per distribuire le funzioni dalla CLI sono in Distribuisci le tue funzioni con la CLI Firebase sullo stesso collegamento di cui sopra

Cloud PubSubConfigura un progetto Cloud PubSub come in questo link

Segui i passaggi per creare un argomento. Abbiamo creato un argomento chiamato 'Meteo' nel nostro progetto, al quale abbiamo aggiunto le nostre iscrizioni. Usiamo solo abbonamenti pull in questo progetto. L'abbonamento era terrario è stato nominato come dettaglio meteo

Annotare l'ID progetto per questo progetto poiché sarà utile eseguire il client listener in un secondo momento.

Openweather APIOttieni la tua chiave API da openweathermap.org. Aggiungi questa chiave nelle funzioni cloud in modo che tali funzioni possano eseguire il ping dei server meteo quando l'utente richiede informazioni specifiche. Installa NodeJS

Installa NodeJS sul tuo RPi

Come eseguire questi moduli

Implementazione della funzione Dialogflow Cloud

Passa alla directory delle tue funzioni ed esegui quanto segue in ordine

$ npm installazione

$ login firebase

$ firebase init

E infine esegui quanto segue per distribuire le tue funzioni:

$ schieramento base di fuoco

Il collegamento delle funzioni distribuite diventa l'URL del webhook per Dialogflow. Cloud PubSub

Passare alla directory del filesubscription.js e package.json ed eseguire npm install per installare le dipendenze. Quando sei pronto, esegui node subscritpions.js listen-messages weather-detail dove weather-detail è l'abbonamento che hai creato in un passaggio precedente. Implementazione di test di Assistente Google/AIY Voice Kit

Puoi utilizzare Google Home o un kit vocale AIY per interagire con il terrario. La configurazione dell'app sopra rimane la stessa per entrambi.

Segui le istruzioni qui per testare e distribuire la tua app sull'Assistente Google. Puoi quindi utilizzare un Assistente Google associato al tuo account parlando con esso per attivare il terrario e chiedendogli del tempo.

Passaggio 8: esegui il terrario

Seguire tutta questa configurazione sembra arduo, ma in realtà è divertente e coinvolgente mentre si lavora con le piante. Se fatto bene, dovresti finalmente essere in grado di dire qualcosa come

"Ehi Google, che tempo fa a Seattle?", "Ehi Google, fai piovere" ecc. e guarda l'output magico nel tuo terrario.

Goditi il tuo nuovo terrario e mostralo ai tuoi amici!

Passaggio 9: contributori / NOTA

  • Realizzato da Harpreet Sareen e amici del Google Creative Lab.
  • Questo progetto segue le linee guida della community open source di Google. Fare riferimento qui per la licenza e altre linee guida.
  • Nota: questo non è un prodotto Google ufficialmente supportato.

Consigliato: