Оглавление:

Проект Оазис: Голосовой террариум: 9 шагов (с изображениями)
Проект Оазис: Голосовой террариум: 9 шагов (с изображениями)

Видео: Проект Оазис: Голосовой террариум: 9 шагов (с изображениями)

Видео: Проект Оазис: Голосовой террариум: 9 шагов (с изображениями)
Видео: У Кремля снесло строительные леса , обрушившие зубцы ( 2024, Июль
Anonim

Project Oasis - это голосовой террариум, с которым можно поговорить. Это самодостаточная замкнутая экосистема, которая имитирует внешнюю погоду, но внутри коробки. Вы можете спросить террариум о погоде в Сиэтле, и в ответ он может начать выливаться внутрь коробки. Террариум также может генерировать облака, туман или изменять освещение для представления других погодных условий.

Шаг 1: мотивация

Среда нашего разговора с природой настолько визуальна и многомодальна, в отличие от того, что мы делаем с технологиями сегодня. Погода на телефонах или компьютерах не вызывает тех же чувств, что буквально видеть или чувствовать погоду. Я думал об этом во время работы в Google Creative Lab и создал Project Oasis.

Это террариум, с которым можно поговорить с помощью Google Assistant. Вы можете попросить его создать определенные условия или показать вам погоду в определенном месте. Этот эксперимент расширяет наш разговор о технологиях и мире природы. Мы живем между природой и технологиями и традиционно смотрим на них как на два совершенно разных мира. Oasis - это экологический разговор, но естественным образом; ни запрограммирован, ни хаотичен. Ниже приведены инструкции по созданию одного из ваших собственных активных террариумов.

Шаг 2: Общий механизм

Террариум, как уже упоминалось, создает условия для дождя, тумана и света. В верхней части террариума расположены светодиоды, поддон для дождя и небольшой корпус с керамическими резонаторами, контактирующими с водой. Эти маленькие диски резонируют на частоте ~ 1-1,7 МГц, превращая воду в туман.

Внизу террариума находятся два перистальтических насоса и другая электроника. Резервуар на дне террариума удерживает лишнюю воду. Вода рециркулируется / перекачивается и перекачивается в поддон для дождя с помощью одного из бесшумных перистальтических насосов.

Шаг 3: Дизайн корпуса

Image
Image

Ссылка на САПР

Список инструментов / материалов:

  1. Листы акрила / оргстекла толщиной 0,25 дюйма (24 x 18 дюймов - 4 шт.)
  2. Акриловый клей
  3. Набор сверл с 1/4 "и градуированными нижними долотами
  4. Измерительная лента + штангенциркуль
  5. Эпоксидный клей (~ 15 минут милого времени)
  6. Герметик GE для гидроизоляции
  7. Прозрачная трубка из ПВХ с наружным диаметром 1/4 дюйма + зазубренные соединители

Руководства по дизайну этого террариума - гибкие, а не жесткие правила. Я решил построить ту, которую можно было бы держать на столе, или такую, которая будет хорошо смотреться на столешнице. Вдобавок у меня было общее представление о том, сколько места займет моя электроника, растения и резервуар для воды. Я решил, что весь корпус должен быть H: 15 "W: 6" L: 10"

Размеры САПР на приведенном выше рисунке показывают общую разбивку; в целом верхняя и нижняя электроника занимают 4 дюйма высоты каждая. Резервуар занимает 4 дюйма внизу, оставляя 6 дюймов для электроники (подробнее об электронике позже).

Я решил использовать акрил / оргстекло для этой версии террариума, поскольку он легко доступен, его очень легко обрабатывать лазером, а детали можно склеивать / сваривать с помощью различных акриловых цементов. Стекло или прозрачный пластик являются хорошими кандидатами в зависимости от того, насколько далеко вы хотите зайти в дизайне, особенно если террариум будет иметь кривые. Кроме того, устойчивые к царапинам варианты оргстекла также доступны во многих магазинах, так что это может сделать его идеальным выбором.

Я разработал 3D-модель своего террариума в Fusion 360 просто потому, что хотел попробовать. Файлы САПР для этого проекта прилагаются к этому шагу. Я расплющил все эскизы, чтобы получить файлы Laser Machine, и далее следует стандартный процесс лазерной обработки. Настройте лазер (в моем случае - Epilog), откройте файлы в Corel Draw и запустите обработку.

Теперь у вас должны быть акриловые детали, необходимые для сборки корпуса. Обратитесь к CAD и, идя снизу вверх, соберите детали вместе с акриловым цементом, чтобы получить коробку с лесами вверху / внизу. Используйте штангенциркуль и коврик для линейки (поскольку ваша коробка прозрачная) в качестве ориентира для облегчения процесса сборки.

Шаг 4: Дизайн электроники

Дизайн электроники
Дизайн электроники
Дизайн электроники
Дизайн электроники
Дизайн электроники
Дизайн электроники

Список компонентов / электроники:

  1. Блок питания 5 В / 10 А (Кол-во: 1)
  2. Повышающий преобразователь 3В-35В (Кол-во: 2)
  3. Перистальтический дозирующий насос 12 В постоянного тока (1 шт.)
  4. Перистальтический насос 2200 мл / мин (Кол-во: 1)
  5. Керамические диски ICStation 20 мм, частота = 113 кГц, с платами драйверов (2 шт.)
  6. Светодиодная лента RGB (Кол-во: 1)
  7. Комплект проводов 18 AWG и 24 AWG
  8. Ткацкий станок 1/4"
  9. Raspberry Pi 3 + Google Voice Hat (здесь вам просто нужна голосовая шляпа + микрофон, а не сам динамик)
  10. Arduino Nano с кабелем Mini USB
  11. ~ 3-24 В реле напряжения-нагрузки через отверстие SSR
  12. Протоборд половинного размера

Вам также понадобится источник питания с регулируемым напряжением, мультиметр, припой и пистолет для горячего клея на протяжении всего этого процесса.

Примечание: это быстрый прототип, и есть лучшие альтернативы некоторым компонентам и соединениям. Если вы знаете, что делаете, не стесняйтесь меняться, используя жизнеспособные альтернативы.

Я взломал блок питания с одним выходом 5V / 10A на блок питания с несколькими выходами, сняв вилку и добавив свои собственные многожильные кабели для отдельных компонентов.

  • Линия 5 В для плат драйверов Icstation
  • Линия 5V для светодиодов RGB
  • Линия 5V для Raspberry Pi 3
  • Линия 12 В (регулируется с помощью повышающего преобразователя) для перистальтического дозирующего насоса
  • Линия 24 В (регулируется с помощью повышающего преобразователя) для дождевого перистальтического насоса с высоким расходом

Я взял отдельные линии и соединил их на проволочном ткацком станке, чтобы получился аккуратный вид. Я также добавил колпачок на линию 5 В, чтобы предотвратить колебания напряжения, поскольку он напрямую подключается к Raspberry Pi.

Основные подключения:

Я подключил одну из линий 5V напрямую к Raspberry Pi - задняя часть платы к PP1 и PP6, чтобы не использовать кабель mini-usb из-за ограниченного пространства. На Pi есть шляпа Google Voice Hat. Я взял уже существующую программу для последовательного переключения и перенес ее на Arduino Nano. Этот Nano подключается к Pi 3 через короткий кабель mini-USB. Arduino Nano имеет соединения с макетной платой для включения / выключения реле, которое, в свою очередь, включает / выключает насосы / генератор тумана.

На макетной плате есть три реле с нагрузочными линиями 5В, 12В и 24В каждое. Каждое реле также подключено к отдельному выводу на Arduino (D5, D7 и D8). Обратитесь к схеме реле, чтобы узнать, как подключить контакты реле для некоторых коммутационных действий. A1 / A2 будут линиями от Arduino, тогда как 13+, 14 будут вашими линиями для завершения цепи для нагрузки. Я использую реле для хорошей изоляции, но вы также можете заменить их на транзисторы. Не забудьте иметь общее заземление между нагрузкой и Arduino, чтобы схема работала.

Керамические резонаторы

Керамические резонаторы / пьезоэлектрические преобразователи поставляются с платой драйвера, каждый из которых можно проверить индивидуально на регулируемом источнике питания. Верхняя керамическая поверхность должна контактировать с водой, чтобы образовался туман. После того, как вы протестируете платы драйверов, подключите их напрямую к линии питания 5 В с реле между ними (как указано выше). Когда реле будет включено и цепь замкнута, вы увидите, что вода превращается в туман.

Светодиоды

Светодиоды Neopixel от Adafruit управляются напрямую с помощью линии управления, идущей к Arduino, без использования каких-либо реле. Я разрезал эту длинную полосу на несколько секций по ~ 15 светодиодов в каждой. На этой странице описано, как вырезать и подключать эти светодиоды. После создания нескольких секций светодиодов (как также видно на картинке) я оставил силиконовое покрытие и добавил горячий клей на концах, чтобы все было водонепроницаемым. Я наклеил отдельные секции на дно поддона для дождя для хорошего и равномерного распределения света.

Перистальтические насосы

Как отмечалось ранее, в этом террариуме есть два перистальтических насоса. Дозирующий перистальтик подает небольшое количество воды в генератор тумана. Резервуар для тумана имеет два керамических резонатора, контактирующих с водой, но вода не кончается очень быстро. В результате этот насос не так часто запускается, чтобы заполнить резервуар для тумана водой. (Фактически, я даже удалил его из кода и иногда просто вручную заполнял резервуар для тумана, просто поднимая верхнюю крышку террариума)

С другой стороны, перистальтический канал 24 В, 2200 мл / мин используется для дождя и, следовательно, выбран для такого большого объема. Хотя 24 В сами по себе создают слишком высокую скорость потока для террариума, вы можете изменить напряжение на повышающем преобразователе, чтобы изменить скорость потока этого насоса до оптимальной настройки.

Шаг 5: Сборка и тестирование

Image
Image

сборка

Бурение

Электроника (2 перистальтических насоса, RPi + Voice Hat / Microphone, Nano, платы пьезодрайверов, Relay Protoboard) находится в нижней части террариума размером 6 дюймов. Я собирал ее снизу вверх в соответствии с 3D-моделью. два отверстия (примерно 1/4 дюйма каждое) в задней части нижних секций электроники - одно из отверстий предназначено для силовых линий всех компонентов, а другое - для трубок перистальтических насосов.

Просверлите одно отверстие, выходящее на 1/4 дюйма от верхней крышки, чтобы впустить трубку дождевой воды. Просверлите еще одно небольшое отверстие, чтобы проводка светодиодов выходила и входила в Nano внизу. Проверьте всю электронику в последний раз перед положив их в коробку.

Размещение и гидроизоляция

К настоящему времени все акриловые секции должны были быть закреплены на месте на этапе проектирования корпуса. Поместите вышеупомянутую электронику в нижний корпус и закройте ее крышкой. Важно тщательно закрыть эту крышку, чтобы она была водонепроницаемой. Крышка не плотно прилегает к коробке, чтобы дать немного места, чтобы клей легко стекал и закрыл зазоры. Я использовал эпоксидную смолу, залил ее по сторонам крышки и позволил ей стечь по каркасам, удерживающим крышку. Клей должен растечься и плавно закрыть зазоры. Дайте ему отстояться в течение ночи, а затем, возможно, нанесите еще один слой водонепроницаемости с помощью герметика GE.

Сборка дождя и тумана

Сборка поддона для дождя с резервуаром для тумана (с керамическими дисками на дне) должна была быть собрана на этапе проектирования корпуса. Светодиоды также должны быть прикреплены к нижней части поддона от дождя из предыдущего шага, а провода для керамических резонаторов должны выходить из соответствующего отверстия в верхней / задней части коробки. Вы можете поставить эту сборку для создания дождя и тумана на строительные леса в верхней части коробки. Перед тем, как закрыть верхнюю крышку, протяните трубку насоса через отверстие, просверленное для этой цели над поддоном для дождя. Отрежьте небольшие участки трубок и используйте зазубренные соединители, чтобы создать несколько выпускных отверстий для равномерного распределения воды, когда она поступает в лоток. Так в террариуме дождь будет иметь равномерный вид. Вы можете использовать бутылку с отжимным диспенсером для воды, чтобы добавить воды в резервуар для тумана, прежде чем закрывать крышку для тестирования, когда все будет внутри коробки.

Тестирование

Я подключил питание, которое заставляет RPi подключаться к сети. Ранее он был настроен для подключения к моей локальной сети Wi-Fi. Я могу запросить в сети IP-адрес Pi, после чего я использую встроенное совместное использование экрана на Mac для входа в Pi. Это позволяет мне тестировать и запускать вещи удаленно, и мне не нужно подключать кабель HDMI к коробке. Я использую свои предустановленные программы (см. Шаг «Программное обеспечение» для программ, работающих на Pi / Arduino, для получения информации о компонентах различий), чтобы проверить, все ли на месте, прежде чем переходить к следующим шагам.

Шаг 6: Дизайн террариума (ландшафтный дизайн)

Дизайн Террариума (Ландшафтный дизайн)
Дизайн Террариума (Ландшафтный дизайн)

Это, наверное, самая интересная часть всего процесса. Вы можете охотиться или покупать растения! Я ходил по местным садовым центрам, в том числе в местный Home Depot, соседние магазины растений и даже просто гулял по моему району, где много зеленых насаждений. Поскольку климат в террариуме влажный, закрытый и сильно меняется, я пытался найти устойчивые растения для тропического климата. Чтобы грядка была готова к посадке, вам понадобятся следующие предметы:

  • Чернозем
  • Перлит
  • Гравий
  • Активированный уголь

Вода фильтруется через почвенный слой в резервуар, чтобы снова перерабатывать в виде дождя. Используйте тонкую проволочную сетку (например, сетку из стекловолокна) в качестве основы перед тем, как положить ее на почвенное дно. Разместите активированный уголь самым нижним слоем террариума. Это предотвращает рост плесени внутри террариума, а также сдерживает неприятный запах. Покройте этот слой небольшим количеством гравия, чтобы вода имела еще один слой фильтрации и грязь не могла свободно стекать в резервуар. Смешайте чернозем и перлит в соотношении 1: 1, чтобы получить действительно воздушную и дренажную среду для выращивания. Теперь вы готовы к посадке.

Примечание: чтобы бросить все это в коробку, не касаясь стен, я сделал воронкообразную форму из бумаги и залил материал в коробку через это отверстие, а не бросал его напрямую.

Я собирал небольшие поленья и мох со стволов деревьев в моем районе и другие небольшие тропические растения в местных магазинах растений. Я нашла апельсиновое дерево бонсай, которое соответствовало моим потребностям внешнего вида, и что-то, что могло бы выжить в актуальном климате в Home Depot. Я использую немного листового мха и немного испанского мха (оба обычно встречаются в садовых центрах), чтобы создать естественный зеленый вид над почвой в террариуме.

Что касается посадки, я иду от маленького к большому. Я использую пинцет, чтобы насадить маленькие растения, и просто руками укладывать мох / бревна, пока не добился того вида, который мне наконец понравился. Вам следует один раз слегка полить террариум и дать ему постоять день или два, чтобы растения акклиматизировались и пустили корни в этой новой грядке.

Шаг 7: Программное обеспечение

Эти инструкции по большей части взяты из github здесь со всем кодом. Я все равно оставлю их здесь для завершения. В то время как я использую Google Assistant, как видно на видео, в террариуме также есть Google Voice Hat с микрофоном в самом террариуме, слушающим команды. Вы можете просто использовать AIR Voice Hat в соответствии с приведенными здесь инструкциями.

Прежде чем ты начнешь

DialogFlow / Действия в Google

Следуйте приведенным здесь инструкциям, чтобы создать агент Dialogflow. Мы используем приветственное намерение, которое позволяет пользователю начать разговор с террариумом. У пользователя есть дополнительные намерения, чтобы узнать о погоде в определенном месте, времени (например, «показать мне погоду в Сиэтле») или вызвать явное действие (например, «сделать дождь»).

Вам нужно будет развернуть свои облачные функции, которые сопоставлены с действиями пользователя.

-> Следуйте инструкциям здесь, чтобы включить облачные функции для firebase. -> Шаги по развертыванию функций из интерфейса командной строки находятся в разделе "Развертывание функций с помощью интерфейса командной строки Firebase" по той же ссылке, что и выше.

Cloud PubSub Настройте проект Cloud PubSub, как показано по этой ссылке.

Следуйте инструкциям по созданию темы. В нашем проекте мы создали тему под названием «Погода», в которую добавили наши подписки. В этом проекте мы используем только подписки по запросу. Абонемент террариум назван метеорологом.

Обратите внимание на идентификатор проекта для этого проекта, так как он пригодится для запуска клиента-слушателя позже.

Openweather API Получите свой ключ API с openweathermap.org. Добавьте этот ключ в облачные функции, чтобы эти функции могли пинговать погодные серверы, когда пользователь запрашивает конкретную информацию

Установите NodeJS на свой RPi

Как запустить эти модули

Развертывание функции Dialogflow Cloud

Перейдите в каталог ваших функций и выполните следующие действия по порядку

$ npm install

$ firebase логин

$ firebase init

И, наконец, запустите следующее, чтобы развернуть свои функции:

развертывание $ firebase

Ссылка развернутой функции становится URL-адресом веб-перехватчика для Dialogflow. Cloud PubSub

Перейдите в каталог с файлом subscription.js и package.json и запустите npm install, чтобы установить зависимости. Когда вы будете готовы, запустите узел subscritpions.js listen-messages weather-detail, где weather-detail - это подписка, созданная вами на предыдущем шаге. Тестовое развертывание Google Assistant / AIY Voice Kit

Вы можете использовать Google Home или голосовой набор AIY для взаимодействия с террариумом. Приведенная выше настройка приложения остается одинаковой для обоих.

Следуйте приведенным здесь инструкциям, чтобы протестировать и развернуть свое приложение в Google Assistant. Затем вы можете использовать Google Assistant, связанный с вашей учетной записью, поговорив с ним, чтобы запустить террариум и спросить его о погоде.

Шаг 8: Запустите Террариум

Выполнение всей этой настройки кажется трудным, но на самом деле это весело и увлекательно при работе с растениями. Если все сделано правильно, вы, наконец, сможете сказать что-то вроде

«Окей, Google, какая погода в Сиэтле?», «Эй, Google, пусть идет дождь» и т. Д. И посмотрите на волшебный результат в своем террариуме.

Наслаждайтесь своим новым террариумом и покажите его своим друзьям!

Шаг 9: Авторы / ПРИМЕЧАНИЕ

  • Сделано Харприт Сарин и друзьями из Google Creative Lab.
  • Этот проект следует Принципам сообщества открытого исходного кода Google. Здесь вы найдете лицензию и другие инструкции.
  • Примечание. Это официально не поддерживаемый продукт Google.

Рекомендуемые: