Spisu treści:

Project Oasis: Voice Terrarium: 9 kroków (ze zdjęciami)
Project Oasis: Voice Terrarium: 9 kroków (ze zdjęciami)

Wideo: Project Oasis: Voice Terrarium: 9 kroków (ze zdjęciami)

Wideo: Project Oasis: Voice Terrarium: 9 kroków (ze zdjęciami)
Wideo: Voice Experiments: Project Oasis 2024, Listopad
Anonim

Project Oasis to terrarium głosowe, z którym możesz porozmawiać. To samowystarczalny zamknięty ekosystem, który naśladuje pogodę zewnętrzną, ale wewnątrz pudełka. Możesz zapytać terrarium o „Pogodę w Seattle” w odpowiedzi na to, że może zacząć wlewać się do pudełka. Terrarium może również generować chmury, mgłę lub zmieniać oświetlenie, aby odzwierciedlić inne warunki pogodowe.

Krok 1: Motywacja

Medium naszej rozmowy z naturą jest tak wizualne i multimodalne, w przeciwieństwie do tego, co robimy dzisiaj z technologią. Pogoda na telefonach lub komputerach nie wywołuje tych samych zmysłów, co dosłownie widzenie lub odczuwanie pogody. Myślałem o tym podczas pracy w Google Creative Lab i stworzyłem Project Oasis.

To terrarium, z którym możesz porozmawiać za pomocą Asystenta Google. Możesz poprosić go o stworzenie określonych warunków lub pokazanie pogody w określonym miejscu. Ten eksperyment poszerza naszą rozmowę o technologię i świat przyrody. Żyjemy pomiędzy naturą a technologią i tradycyjnie patrzymy na nie jako na dwa bardzo różne światy. Oasis to rozmowa ekologiczna, ale w naturalny sposób; ani zaprogramowany, ani chaotyczny. Poniżej znajdują się kroki, jak stworzyć jedno z własnych aktywnych terrariów.

Krok 2: Mechanizm ogólny

Jak wspomniano, terrarium stwarza warunki deszczowe, mgły i światła. W górnej części terrarium znajdują się diody LED, Rain Tray oraz mała obudowa z ceramicznymi rezonatorami stykającymi się z wodą. Te małe dyski rezonują z częstotliwością ~1-1,7 MHz, rozpylając wodę w coś, co wydaje się mgłą.

Na dnie terrarium znajdują się dwie pompy perystaltyczne i pozostała elektronika. Zbiornik na dnie terrarium zawiera nadmiar wody. Woda jest poddawana recyklingowi/filtrowaniu i pompowana do tacy deszczowej za pomocą jednej z cichych pomp perystaltycznych.

Krok 3: Projekt obudowy

Image
Image

Link do CAD

Lista narzędzi/materiałów:

  1. Arkusze akrylowe/pleksiglasowe o grubości 0,25" (24" x 18" - Ilość: 4)
  2. Klej akrylowy
  3. Zestaw wierteł z 1/4" i stopniowanymi dolnymi końcówkami
  4. Taśma pomiarowa + suwmiarki
  5. Klej epoksydowy (~15 minut czasu słodkiego)
  6. GE Sealant do hydroizolacji
  7. Przezroczyste rurki PCV 1/4 "OD + złącza kolczaste

Wytyczne projektowe dla tego terrarium to elastyczne, a nie twarde i szybkie zasady. Zdecydowałem się zbudować taki, który mógłbym trzymać na biurku lub taki, który ładnie wyglądałby na blacie. Poza tym miałem ogólne pojęcie o tym, ile miejsca zajmie moja elektronika, rośliny i zbiornik na wodę. Zdecydowałem się na całą obudowę W:15" W:6"L:10"

Wymiary CAD na powyższym rysunku pokazują ogólny rozpad; ogólnie górna i dolna elektronika zajmują 4" wysokości każda. Zbiornik zajmuje 4" L na dole, pozostawiając 6" L na elektronikę (więcej o elektronice później).

Zdecydowałem się użyć akrylu/pleksiglasu do tej wersji terrarium, ponieważ jest on łatwo dostępny, bardzo łatwy do obróbki laserem, a części można sklejać/spawać za pomocą różnych cementów akrylowych. Szkło lub przezroczyste tworzywa sztuczne są dobrymi kandydatami w zależności od tego, jak daleko chcesz zajść w wyglądzie, zwłaszcza jeśli terrarium będzie miało krzywe. Ponadto w wielu sklepach dostępne są również odporne na zarysowania wersje pleksi, więc nadal może być to idealny wybór.

Zaprojektowałem model 3D do mojego terrarium w Fusion 360, tylko dlatego, że chciałem go uchwycić. Do tego kroku dołączone są pliki CAD dla tego projektu. Spłaszczyłem wszystkie szkice, aby uzyskać pliki Laser Machine i następuje standardowy proces obróbki laserowej. Ustaw laser (w moim przypadku Epilog), Otwórz pliki w Corel Draw i uruchom obróbkę.

Powinieneś mieć teraz akrylowe części potrzebne do montażu obudowy. Patrz CAD i idąc od dołu do góry, zmontuj części za pomocą cementu akrylowego, aby uzyskać pudełko z rusztowaniem na górze / na dole. Użyj suwmiarki i maty linijki (ponieważ pudełko jest przezroczyste) jako przewodnika dla łatwiejszego procesu montażu.

Krok 4: Projektowanie elektroniki

Projektowanie elektroniki
Projektowanie elektroniki
Projektowanie elektroniki
Projektowanie elektroniki
Projektowanie elektroniki
Projektowanie elektroniki

Lista komponentów/elektroniki:

  1. Zasilacz 5V/10A (Ilość: 1)
  2. Konwerter doładowania 3V-35V (Ilość: 2)
  3. Pompa perystaltyczna dozująca 12 V DC (Ilość: 1)
  4. Pompa perystaltyczna 2200 ml/min (Ilość: 1)
  5. Dyski ceramiczne Icstation 20mm freq = 113KHz, z płytami sterownika (Ilość: 2)
  6. Taśma LED RGB (Ilość: 1)
  7. Zestaw przewodów 18 AWG i 24 AWG
  8. Wiązka drutu 1/4"
  9. Raspberry Pi 3 + Google Voice Hat (wystarczy tylko czapka głosowa + mikrofon, a nie sam głośnik)
  10. Arduino Nano z kablem Mini USB
  11. ~3-24V Przekaźniki przelotowe SSR z obciążeniem napięciowym
  12. Półwymiarowa płyta prototypowa

Potrzebujesz również zasilacza o zmiennym napięciu, multimetru, żelazka i pistoletu do klejenia na gorąco w całym tym procesie.

Uwaga: Jest to szybki prototyp i istnieją lepsze alternatywy dla niektórych komponentów i połączeń. Jeśli wiesz, co robisz, nie wahaj się zmienić, korzystając z realnych alternatyw.

Zhakowałem pojedynczy zasilacz 5 V/10 A do zasilacza muti-output, zdejmując wtyczkę i dodając własne kable wielożyłowe dla poszczególnych komponentów.

  • Linia 5V dla płyt sterowników Icstation
  • Linia 5V dla diod LED RGB
  • Linia 5V dla Raspberry Pi 3
  • Linia 12V (zmienna poprzez Boost Converter) do dozowania pompy perystaltycznej
  • Linia 24 V (zmienna przez konwerter Boost) dla pompy perystaltycznej o dużym natężeniu przepływu deszczu

Wziąłem poszczególne linie i ułożyłem je razem w krośnie drucianym, aby uzyskać schludny wygląd. Dodałem również nasadkę na linii 5 V, aby zapobiec tętnieniom zasilania, ponieważ łączy się bezpośrednio z Raspberry Pi.

Podstawowe połączenia:

Podłączyłem jedną z linii 5V bezpośrednio do Raspberry Pi - tył płyty do PP1 i PP6, aby nie używać kabla mini USB z powodu ograniczonej przestrzeni. Pi ma na sobie Google Voice Hat. Wziąłem już istniejący program do przełączania szeregowego i przeniosłem go na Arduino Nano. Ten Nano jest podłączony do Pi 3 za pomocą krótkiego kabla mini USB. Arduino Nano ma połączenia z płytą prototypową do włączania/wyłączania przekaźników, które z kolei włączają/wyłączają pompy/wytwornica mgły.

Płytka prototypowa ma trzy przekaźniki z liniami obciążenia 5V, 12V i 24V każdy. Każdy przekaźnik jest również podłączony do osobnego pinu na Arduino (D5, D7 i D8). Zapoznaj się ze schematem przekaźnika, aby dowiedzieć się, jak podłączyć styki przekaźnika w celu wykonania niektórych czynności przełączania. A1/A2 będą liniami z Arduino, podczas gdy 13+, 14 będą twoimi liniami do uzupełnienia obwodu dla obciążenia. Używam przekaźników do dobrej izolacji, ale można je również zastąpić tranzystorami. Pamiętaj, aby mieć wspólne uziemienie między obciążeniem a Arduino, aby obwód działał.

Rezonatory ceramiczne

Rezonatory ceramiczne/piezoelektryczne dostarczane są z płytą sterowniczą, którą można sprawdzić indywidualnie na zmiennym zasilaniu. Górna ceramiczna powierzchnia musi mieć kontakt z wodą, aby mogła wytworzyć mgiełkę. Po przetestowaniu płytek sterowników podłącz je bezpośrednio do linii zasilającej 5 V, z przekaźnikiem pomiędzy nimi (jak wyżej). Gdy przekaźnik jest włączony, a obwód jest zamknięty, zobaczysz, że woda zamienia się w mgłę.

diody LED

Diody Neopixel firmy Adafruit sterowane są bezpośrednio linią sterującą do Arduino, bez użycia jakichkolwiek przekaźników. Pociąłem ten długi pasek na wiele odcinków po ~15 diod LED każda. Zapoznaj się z tą stroną, aby dowiedzieć się, jak wyciąć i podłączyć te diody LED. Po utworzeniu wielu sekcji diod LED (tak jak widać na zdjęciu), zachowałem silikonową osłonę i dodałem gorący klej na końcach, aby wszystko było wodoodporne. Poszczególne sekcje przykleiłem na dnie miski deszczowej dla ładnego i równomiernego rozsyłu światła.

Pompy perystaltyczne

Jak wspomniano wcześniej, w terrarium znajdują się dwie pompy perystaltyczne. Perystaltyka dozująca dostarcza tylko niewielkie ilości wody do generatora mgły. Zbiornik na mgiełkę ma dwa rezonatory ceramiczne stykające się z wodą, ale woda nie kończy się zbyt szybko. W rezultacie pompa ta nie pracuje zbyt często, aby napełnić zbiornik mgiełki wodą. (W rzeczywistości skończyło się nawet na usunięciu go z kodu i po prostu ręcznie napełniałem zbiornik mgiełki, po prostu podnosząc górną pokrywę terrarium)

Z drugiej strony, perystaltyka 24 V, 2200 ml/min jest używana do deszczu i dlatego jest wybierana do tak dużej objętości. Podczas gdy samo napięcie 24 V będzie zbyt wysokie dla terrarium, możesz zmienić napięcie na konwerterze doładowania, aby zmienić prędkość przepływu tej pompy na optymalne ustawienie.

Krok 5: Montaż i testowanie

Image
Image

montaż

Wiercenie

Elektronika (2 pompy perystaltyczne, RPi + Voice Hat/Microphone, Nano, Piezo Driver Boards, Relay Protoboard) pozostają w dolnych 6"L terrarium. Poszedłem na montaż od dołu do góry zgodnie z modelem 3D. dwa otwory (każdy po ok. 1/4") z tyłu dolnych sekcji elektroniki - jeden z nich przeznaczony jest na przewody zasilające wszystkich komponentów, a drugi na przewody pomp perystaltycznych.

Wywierć jeden otwór pozostawiając 1/4 od górnej pokrywy, aby umożliwić wejście rurki wody deszczowej. Wywierć kolejny mały otwór, aby okablowanie LED wyszło i weszło do Nano na dole. Przetestuj całą elektronikę po raz ostatni przed włożenie ich do pudełka.

Umieszczanie i hydroizolacja

Do tej pory wszystkie sekcje akrylowe powinny być przyklejone na miejscu od etapu projektowania obudowy. Wspomnianą elektronikę należy umieścić w dolnej obudowie i nałożyć na nią pokrywę. Ważne jest, aby dokładnie uszczelnić tę pokrywę, aby była wodoszczelna. Wieczko nie jest wciskane wewnątrz pudełka, aby zapewnić trochę miejsca na swobodny przepływ kleju i zamknięcie szczelin. Użyłem żywicy epoksydowej, wylałem ją na boki pokrywy i pozwoliłem jej spłynąć po rusztowaniu, które miało utrzymać pokrywę. Klej powinien spływać i bezproblemowo zamykać szczeliny. Pozostaw na noc do utwardzenia, a następnie ewentualnie wykonaj kolejną warstwę hydroizolacji za pomocą GE Sealant.

Zespół Deszczu i Mgły

Montaż wanny deszczowej ze zbiornikiem na mgiełkę (z ceramicznymi krążkami na dnie) powinien być zmontowany na etapie projektowania obudowy. Diody LED należy również przykleić na dole tacy deszczowej z poprzedniego kroku, a przewody do rezonatorów ceramicznych wychodzą z odpowiedniego otworu na górze/z tyłu pudełka. Możesz pozwolić, aby ten zespół wytwarzający deszcz + mgłę usiadł na rusztowaniu u góry pudełka. Przed zamknięciem górnej pokrywy należy wprowadzić wężyk pompy przez otwór wywiercony w tym celu nad misą deszczową. Wytnij małe odcinki rurek i użyj złączy kolczastych, aby utworzyć wiele wylotów, aby zapewnić równomierne rozprowadzanie wody, gdy trafia ona do tacy. W ten sposób deszcz będzie miał w terrarium jednolity wygląd. Możesz użyć ściskanej butelki z dozownikiem wody, aby dodać wodę do pojemnika na mgiełkę przed założeniem pokrywki do testowania, gdy wszystko znajdzie się w pudełku.

Testowanie

Podłączyłem zasilanie, które sprawia, że RPi przechodzi w tryb online. Wcześniej był skonfigurowany do łączenia się z moją lokalną siecią Wi-Fi. Mogę zapytać sieć o adres IP Pi, po czym używam wbudowanego udostępniania ekranu na Macu, aby zalogować się do Pi. Dzięki temu mogę testować i uruchamiać rzeczy zdalnie, bez konieczności podłączania kabla HDMI w pudełku. Używam moich gotowych programów (patrz Krok oprogramowania dla programów działających na Pi/Arduino dla komponentów różnicowych), aby przetestować, czy wszystko jest na swoim miejscu przed przejściem do następnych kroków.

Krok 6: Projektowanie terrarium (Krajobraz)

Terrarium Design (Krajobraz)
Terrarium Design (Krajobraz)

To prawdopodobnie najfajniejsza część całego procesu. Możesz polować lub kupować rośliny! Chodziłem po lokalnych centrach ogrodniczych, w tym w lokalnym Home Depot, pobliskich sklepach z roślinami, a nawet po prostu spacerowałem po mojej okolicy, która ma dużo terenów zielonych. Ponieważ klimat w terrarium jest wilgotny, zamknięty i bardzo się zmienia, starałem się znaleźć odporne rośliny na klimat tropikalny. Potrzebujesz następujących przedmiotów, aby przygotować grządkę do sadzenia:

  • Czarnoziem
  • Perłowiec
  • Żwir
  • Węgiel aktywny

Woda filtruje przez glebę w dół do zbiornika, gdzie jest ponownie przetwarzana jako deszcz. Użyj cienkiej siatki drucianej (np. z włókna szklanego) jako podstawy przed położeniem gleby. Umieść węgiel aktywny jako najniższą warstwę w terrarium. Zapobiega to rozwojowi pleśni w terrarium, a także utrzymuje w ryzach nieprzyjemny zapach. Przykryj tę warstwę odrobiną żwiru, aby woda miała kolejną warstwę filtracji, a brud nie spływał swobodnie do zbiornika. Zmieszaj czarną glebę i perlit w stosunku 1:1, aby uzyskać naprawdę przewiewne i osuszone podłoże. Jesteś teraz gotowy do sadzenia.

Uwaga: Aby wrzucić wszystkie te rzeczy do pudełka bez dotykania ścian, stworzyłem kształt przypominający lejek z papieru i wlałem materiał do pudełka przez ten otwór i nie wrzucałem go bezpośrednio.

Zbierałem małe kłody i mech z pni drzew w mojej okolicy oraz więcej różnych małych roślin tropikalnych w lokalnych sklepach z roślinami. Znalazłem drzewko Bonsai Orange, które pasowało do moich potrzeb w zakresie wyglądu i coś, co przetrwałoby w aktualnym klimacie w Home Depot. Używam trochę mchu arkuszowego i trochę mchu hiszpańskiego (oba powszechnie spotykane w centrach ogrodniczych), aby uzyskać naturalny, zielony wygląd nad ziemią w terrarium.

Jeśli chodzi o sadzenie, przechodzę od małych do dużych. Używam pęsety do wkładania małych roślin i umieszczania mchu/kłody tylko rękami, zanim doszedłem do wyglądu, z którego w końcu byłem zadowolony. Należy raz lekko podlać terrarium i pozostawić je na dzień lub dwa, aby rośliny zaaklimatyzowały się i wypuściły korzenie w tym nowym grządce.

Krok 7: Oprogramowanie

Te instrukcje w większości pochodzą z github tutaj z całym kodem. Nadal zostawię je tutaj do ukończenia. Podczas gdy używam Google Assistant, jak widać na filmie, terrarium również Google Voice Hat z mikrofonem w samym terrarium, słuchając poleceń. Możesz po prostu użyć czapki głosowej AIR zgodnie z instrukcjami tutaj.

Zanim zaczniesz

DialogFlow / Działania w Google

Wykonaj czynności opisane tutaj, aby utworzyć agenta Dialogflow. Używamy intencji powitalnej, która pozwala użytkownikowi na rozpoczęcie rozmowy z terrarium. Użytkownik ma dodatkowe intencje, aby zapytać o pogodę w określonym miejscu i czasie (np. „pokaż mi pogodę w Seattle”) lub wywołać wyraźne działanie (np. „spraw, by padało”)

Będziesz musiał wdrożyć swoje funkcje w chmurze, które są mapowane na działania użytkownika.

-> Postępuj zgodnie z instrukcjami tutaj, aby włączyć funkcje chmury dla Firebase. -> Kroki wdrażania funkcji z CLI znajdują się w sekcji Wdróż swoje funkcje z Firebase CLI na tym samym łączu, co powyżej

Cloud PubSubSkonfiguruj projekt Cloud PubSub tak, jak w tym łączu

Postępuj zgodnie z instrukcjami, aby utworzyć temat. W naszym projekcie stworzyliśmy temat o nazwie „Pogoda”, do którego dodaliśmy nasze subskrypcje. W tym projekcie używamy tylko subskrypcji ściąganych. Subskrypcja terrarium została nazwana szczegółem pogody

Zanotuj identyfikator projektu dla tego projektu, ponieważ przyda się później do uruchomienia klienta odbiornika.

Openweather APIPobierz swój klucz API z openweathermap.org. Dodaj ten klucz do funkcji chmury, aby te funkcje mogły pingować serwery pogodowe, gdy użytkownik poprosi o określone informacje. Zainstaluj NodeJS

Zainstaluj NodeJS na swoim RPi

Jak uruchomić te moduły

Wdrożenie funkcji Dialogflow Cloud

Przejdź do katalogu swoich funkcji i wykonaj następujące czynności w kolejności

Instalacja $ npm

$ login do Firebase

$ firebase init

I na koniec uruchom następujące polecenia, aby wdrożyć swoje funkcje:

$ wdrożenie bazy Firebase

Link do wdrożonych funkcji staje się adresem URL webhooka dla Dialogflow. Cloud PubSub

Przejdź do katalogu pliku Subscription.js & package.json i uruchom npm install, aby zainstalować zależności. Kiedy będziesz gotowy, uruchom node subscritpions.js listen-messages weather-detail, gdzie weather-detail to subskrypcja utworzona w poprzednim kroku. Wdrożenie testowe Asystenta Google / AIY Voice Kit

Możesz użyć Google Home lub zestawu głosowego AIY do interakcji z terrarium. Powyższa konfiguracja aplikacji pozostaje taka sama dla obu.

Postępuj zgodnie z instrukcjami tutaj, aby przetestować i wdrożyć swoją aplikację w Asystencie Google. Następnie możesz użyć Asystenta Google powiązanego z Twoim kontem, rozmawiając z nim, aby uruchomić terrarium i zapytać go o pogodę.

Krok 8: Uruchom terrarium

Podążanie za tą całą konfiguracją wydaje się żmudne, ale w rzeczywistości jest zabawne i wciągające podczas pracy z roślinami. Jeśli zrobisz to dobrze, w końcu powinieneś być w stanie powiedzieć coś takiego

„Hej Google, jaka jest pogoda w Seattle?”, „Hej Google, Make it Rain” itd. i zobacz magiczne efekty w swoim terrarium.

Ciesz się swoim nowym terrarium i pochwal się nim znajomym!

Krok 9: Współtwórcy / UWAGA

  • Wykonane przez Harpreet Sareen i przyjaciół z Google Creative Lab.
  • Ten projekt jest zgodny z wytycznymi społeczności Google Open Source. Zapoznaj się z licencją i innymi wytycznymi.
  • Uwaga: to nie jest oficjalnie obsługiwany produkt Google.

Zalecana: