Оглавление:
- Шаг 1. Краткая история умных кроликов
- Шаг 2: Набазтаг 2.0
- Шаг 3: Bunny Chop
- Шаг 4: говорить и слушать
- Шаг 5. Читаем как кролики
- Шаг 6: что сказать?
- Шаг 7: шляпа для RabbitPi
- Шаг 8: камера и настройки
- Шаг 9: что такое Cookin 'Doc? Рецепты IFTTT
- Шаг 10: Сборка и тестирование
- Шаг 11: Готовый кролик?
- Шаг 12: Набазтаг вернулся
Видео: RabbitPi - Alexa Enabled, IFTTT Connected, шевелящий ухом помощник IoT: 12 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Это устаревший «умный кролик» Nabaztag 2005 года, который я перестроил в современный IoT Assistant с помощью Raspberry Pi 3 и Adafruit Motor HAT, с микрофоном веб-камеры и динамиком Philips Soundshooter, содержащимся в симпатичном оригинальном футляре. Кнопка инициировала голосовые команды с помощью голосовой службы Amazon Alexa, зачитывая ответы через встроенный динамик. Голосовые команды также используются для запуска рецептов IFTTT (If This Then That) для взаимодействия с другими подключенными к Интернету устройствами, такими как интеллектуальные розетки и мобильные телефоны. Недостаточно? Помимо запуска событий IFTTT, он также получает их через Gmail, используя механизм преобразования текста в речь Ivona для чтения электронной почты, текстовых сообщений и других уведомлений, например предупреждений о пыльце или уведомлений с домашней камеры безопасности. у вас визуальная обратная связь со светодиодами и моторизованными ушами? О, и у него в брюхе есть камера V2 Raspberry Pi для загрузки голосовых селфи в Twitter. Трудно описать привлекательность RabbitPi словами, посмотрите видео, чтобы увидеть его в действии!
Шаг 1. Краткая история умных кроликов
Оригинальный «первый умный кролик» Nabaztag был выпущен в 2005 году и позиционировался как домашний помощник (звучит знакомо, Amazon и Google?) - возможно, это был первый «Интернет вещей» и во многих отношениях он опередил свое время. Я купил одну сразу. Он сидел на нашей каминной полке и зачитывал ежедневные прогнозы погоды и периодические уведомления, но никогда не обладал широкими возможностями, полагаясь на WEP-соединение Wi-Fi и проприетарное программное обеспечение и серверы для предоставления услуг преобразования текста в речь (TTS). Сейчас это сложно представить, но в то время было не так много возможностей для подключения, социальные сети были почти пустяком, Nokia управляла миром смартфонов, а светодиодные лампы были дорогостоящей новинкой.
В последующие годы последовали еще две версии, Nabaztag: Tag и Karotz, обе предлагали улучшенную функциональность, но ни одна из них не нашла свою нишу на рынке, в конечном итоге подведенная аппаратными и программными ограничениями. Позор заключался в том, что как только поддерживающие серверы были отключены, ранее умные кролики превратились в не более чем украшения. Несколько проектов сообщества пытались заменить услуги «официальных» серверов, и мы действительно какое-то время использовали «OpenKarotz», но, похоже, он тоже умер год или два назад, оставив моих кроликов молчаливыми и неподвижными на моих колонках.
В любом случае урок истории окончен! В результате мы с любовью вспоминаем присутствие Набазтага в нашей гостиной, и я хотел его вернуть, но как полноценное современное устройство IoT.
Шаг 2: Набазтаг 2.0
Я был вдохновлен наконец запустить RabbitPi, когда прочитал в марте, что голосовая служба Amazon Alexa стала доступной для Raspberry Pi - ключом к этому была кнопка, необходимая для активации «прослушивания» - это идеально подходило для Nabaztag., так как у него есть кнопка заподлицо с вершиной его блестящей головки. Я разобрал своего кролика, и вскоре на моем Pi 3 работал отличный код AlexaPi Сэма Мачина, активируемый нажатием кнопки кролика. В этот момент я полностью отвлекся на сборку AlexaPhone, но сразу же прыгнул обратно в умную кроличью нору, как только она была закончена. Мне нужно было, чтобы мой новый улучшенный Набазтаг был как минимум таким же умным, как оригинал, поэтому я хотел, чтобы он:
Выполняйте голосовой поиск и зачитывайте результаты
Прочитать уведомления
Двигайте его ушами и мигайте светодиодами
Сделайте фотографии и разрешите удаленный мониторинг
Взаимодействовать с умными розетками, лампочками и т. Д.
Шаг 3: Bunny Chop
Первым делом нужно было разобрать Набазтаг и посмотреть, какие части можно использовать повторно. Уши спроектированы так, чтобы быть взаимозаменяемыми и удерживаться только на магнитах, так что это было легко, а основная крышка держалась только двумя (причудливой треугольной формы) винтами. Это обнажило все схемы и компоненты, построенные вокруг центральной пластиковой стойки. На одной стороне располагалась основная схема и светодиоды, на другой - динамик и кнопки / моторы, встроенные в стойку наверху.
Поскольку я только планировал оставить моторы, я перерезал большую часть кабелей и начал вынимать винты. Здесь я получил настоящий сюрприз! За «мозговой» схемой кролика был слот по всей высоте стойки, в котором находилась полноразмерная карта Wi-Fi PCMCIA, вроде той, которую вы использовали в старых ноутбуках. Я предполагаю, что в то время это был компромисс с дизайном или совместимостью, но сравнение его размера с современным USB-ключом действительно показало, насколько сильно сократились технологии за 10 лет.
Остальные детали были легко удалены, оставив только голую пластиковую опорную стойку, вокруг которой наверняка много места?
Шаг 4: говорить и слушать
У вас не может быть говорящего кролика с голосовым управлением без динамика и микрофона, поэтому я в первую очередь разобрался с этим. На самом деле мне не пришлось очень сильно стараться, Pi кажется очень гибким в отношении USB-микрофонов, и я просто использовал старую веб-камеру MSI StarCam Clip для входа, отрегулировав уровень звука до максимального в настройках звука Pi. Чтобы сэкономить место, я разобрал веб-камеру, выбросив объектив камеры и чехол. Я просверлил отверстие в основании для микрофона и подключил его к USB Pi, проложив кабели как можно аккуратнее.
Я использовал динамик KitSound MiniBuddy в AlexaPhone, поскольку он оказался действительно эффективным, но когда я пошел покупать его для этого проекта, я обнаружил, что дизайн был изменен, и они больше не заряжаются с помощью разъема micro-USB! Я поискал что-то подобное и нашел Philips SoundShooter, маленькое устройство, похожее на ручную гранату. Я надеялся, что он поместится в корпусе без демонтажа, но он был слишком большим, поэтому вышла отвертка, чтобы его разобрать. В процессе мне удалось защелкнуть провода динамиков, поэтому я припаял перемычки, чтобы упростить повторное подключение. Эта часть динамика была приклеена к корпусу в том же месте, что и оригинальный динамик, а схема и батарея закреплены на маленькой полке под ней.
Оглядываясь назад, мне жаль, что я просто не использовал внутреннюю часть док-станции с питанием от сети или что-то в этом роде, так как заряжать динамик не идеально - тем не менее, он работает очень долго и отлично звучит, и в качестве основного покрытия легко взлетает, это не такая уж проблема.
Шаг 5. Читаем как кролики
Теперь, когда часть Alexa заработала, я перешел к решению следующей проблемы: как заставить кролика зачитывать уведомления? Преобразование текста в речь оригинального Набазтага было на удивление хорошим, хотя я помню, что он всегда озвучивал мои подписи (MM) как «Миллиметры», а мою жену (CM) как «Сантиметры» - я хотел использовать современный и Естественно звучащий движок, который правильно интерпретирует такие вещи, как символ "&", и понимает простые смайлы вроде:).
Как и все, что есть на Raspberry Pi, существует множество различных вариантов, и я изучил несколько, прежде чем выбрать Ivona, который, похоже, является тем же базовым движком, который используется службой Alexa. Для меня это был лучший вариант, поскольку есть ряд доступных голосов и параметров конфигурации - также большим плюсом было то, что Zachary Bears предоставил удобную оболочку Python для сервиса Pyvona.
Чтобы начать работу с Ivona, вам сначала необходимо настроить учетную запись разработчика, а затем, как и в случае с настройкой Alexa, вам будут предоставлены учетные данные для использования в вашем приложении, в данном случае скрипт для чтения уведомлений. Вам разрешено 50 000 поисков в месяц с одной из этих учетных записей, что, безусловно, для меня достаточно.
Настройка Pyvona была действительно простой, через несколько минут у меня был сценарий Python, созданный из предоставленного примера, который считывал любую введенную мной фразу. текстовые, но динамические входящие уведомления.
Шаг 6: что сказать?
Итак, у меня теперь был кролик (разбросанный по всей скамейке), который мог говорить, но ему нужен был механизм, чтобы получать уведомления и передавать их в службу Ivona для прочтения. Я рассмотрел возможность обмена текстовыми сообщениями через онлайн-сервис или адаптер SIM-карты, а также Twitter и Dropbox для доставки текстовых строк / файлов, но в конце концов решил использовать imaplib, средство на основе Python для взаимодействия с учетными записями электронной почты IMAP. Я выбрал этот вариант в основном потому, что он хорошо интегрирован с сервисом IFTTT, вы можете проявить творческий подход к форматированию электронных писем с уведомлениями. Также это означало, что я мог отправлять электронные письма прямо на RabbitPi для чтения вслух.
Я просмотрел множество примеров imaplib python в Интернете, и после объединения кусочков и работы с документацией imaplib мне удалось получить скрипт, который проверял Gmail на наличие непрочитанных сообщений через регулярные промежутки времени и печатал на экране различный текст в зависимости от содержимого тема сообщения. Это было действительно удобно, так как я мог адаптировать оператор «IF» в коде так, чтобы он работал только в том случае, если электронное письмо пришло от меня, а затем заменить действие «Печать» на код, вызывающий службу Ivona.
Я потратил довольно много времени, пытаясь адаптировать код imaplib и Pyvona для чтения тела писем, но это оказалось чрезвычайно сложным - вскоре я узнал, что основные поля электронной почты (От, Кому, Тема и т. Д.) Отформатированы очень просто, но основной текст электронного письма может быть структурирован по-разному. В конце концов, это не имело большого значения, я смог добиться того, что мне было нужно, используя тему электронного письма в качестве поля, из которого будет читаться текст уведомления.
Затем я адаптировал пример кода imaplib так, чтобы вместо остановки после каждой проверки электронной почты он бесконечно зацикливался, проверяя электронные письма несколько раз в минуту и зачитывая любые новые практически по мере их поступления. Это было полезно для тестирования, но на практике я бы, вероятно, стал проверять его немного реже. Также стоит отметить, что скрипт хранит пароль в виде обычного текста, поэтому в какой-то момент потребуется добавить шифрование.
Я на 100% уверен, что это может быть достигнуто гораздо более элегантно и эффективно на Python, но было весело и сложно заставить его вообще работать - на этой неделе я позаимствовал «Python для детей» из библиотеки, так что мой код, надеюсь, улучшится. как я узнаю больше.
Работая с базовым сценарием получения электронной почты и чтения, я добавил дополнительные биты кода, которые заставляли уши кролика двигаться и светодиоды загорались при чтении уведомлений. Код, который я использовал, находится на GitHub, но, пожалуйста, имейте в виду, что я сейчас не умею работать с Python!
Шаг 7: шляпа для RabbitPi
Одной из самых знаковых особенностей Набазтага было то, как он двигал ушами при поступлении уведомления. Их можно было настроить на определенную ориентацию, перемещая их вручную или задав положение с помощью управляющего программного обеспечения - моей целью было просто чтобы заставить их двигаться.
Раньше я не использовал моторы с Raspberry Pi, поэтому это была еще одна новая тема для меня - сначала мне нужно было выяснить, с какими моторами я имею дело, все, что я знал, это 2 мотора, каждый с 2 проводами. Читая онлайн, я пришел к выводу, что это, должно быть, простые двигатели постоянного тока, а не шаговые, и этот факт подтверждается фантастически полезной инструкцией «Взломайте Набазтаг» от Liana_B, которую я хотел бы прочитать примерно на месяц раньше.
Еще раз, благодаря гибкости Pi, есть много разных способов управления двигателями, но я решил использовать плату Adafruit DC & Stepper Motor HAT. Раньше я использовал экраны и безделушки Adafruit, и мне нравятся подробные инструкции и примеры, которые входят в стандартную комплектацию.
Использование платы со стандартом HAT (Hardware Attached on Top) означало, что контроллер двигателя будет аккуратно помещаться поверх Pi, занимая минимальное пространство, а поскольку он использует интерфейс I2C, он оставил свободными контакты GPIO, которые мне нужны для Alexa / Clap. кнопка и светодиоды.
Как и ожидалось, спаять шляпу вместе оказалось очень просто, и вскоре я установил ее на PI и подключил к двум ушным моторам. Я планировал запускать моторы от USB-блока питания, так что мне нужна была только одна вилка питания, но этого оказалось недостаточно, он даже не загорелся светодиодом «Работает» на шляпе. Вместо этого я решил использовать адаптер питания постоянного тока для работы шляпы и ушей, у меня под рукой был один из этих универсальных адаптеров со сменными наконечниками. Чего у меня не было, так это розетки постоянного тока для подключения адаптера к HAT. Я собирался уехать в Норвич-Маплин (снова), когда вспомнил после разборки, что оригинальный шнур питания Nabaztag был стандартной вилкой постоянного тока - поэтому я мог просто повторно подключить оригинальную розетку к HAT - аккуратно! В конце концов, я также повторно использовал оригинальный блок питания Nabaztag, так как он обеспечивал необходимое количество энергии.
Когда все подключено и выбрано разумное напряжение, я предварительно запустил пример Python, включенный в DC Motor Hat, образец кода, который постоянно менял скорость и направление двигателя, чтобы проиллюстрировать различные варианты управления. Я был так взволнован, когда он заработал, мой первый двигатель с Pi-управлением! Но потом я кое-что заметил - действительно громкий пронзительный вой, будто кто-то водит мокрым пальцем по бокалу. Это было совершенно бесполезно, я хотел, чтобы уши шевелились во время чтения уведомлений, и хотя это не оглушало, но было действительно заметно. Я пробовал разные напряжения, но без изменений. Обратившись в Google, я обнаружил, что это может произойти из-за ШИМ (широтно-импульсной модуляции) и что одним из способов решения проблемы может быть припайка небольших конденсаторов на клеммах двигателя. Глядя на двигатели, они уже были на месте. Я также экспериментировал с изменением частоты ШИМ, но все равно без изменений. Поэкспериментировав, я понял, что воет только тогда, когда скорость двигателя изменялась кодом с низкой на высокую, поэтому установка постоянной высокой скорости полностью устранила скуление - уф!
Я создал пару тестовых скриптов Python на основе примеров Adafruit, один для движения во время уведомлений, а другой для того, чтобы заставить уши выполнять полную «схему» при запуске, стремясь скопировать рабочий код из них в основные скрипты, используемые для обработки Взаимодействие Alexa и Gmail / Ivona.
Шаг 8: камера и настройки
Перед началом сборки все протестировал. По возможности в этой сборке я использовал перемычки для соединения отдельных компонентов вместе, если прошлые сборки научили меня чему-то, так это планировать будущий демонтаж! Я также нарисовал схему подключения, показывающую, какого цвета и куда идут кабели, соединительные кабели отличные, но иногда их легко отсоединить, когда компоненты втиснуты в ограниченное пространство!
Я решил довольно далеко в сборку также включить модуль Pi Camera, только что была выпущена 8-мегапиксельная версия 2, и как что-то еще новое для меня, я подумал, что это станет хорошим дополнением. Последняя версия кролика Кароца включала в себя веб-камеру в животе, но это никогда не работало так хорошо, я думал, что камера Pi будет интересна для голосовых селфи и, возможно, даже для удаленного мониторинга, если Pi сможет справиться с запуском кода на в то же время, что и все остальное.
Я построил кронштейн для камеры из покрытого пластиком конструктора и сначала вставил его в корпус, а затем очень тщательно измерил, где мне нужно просверлить потайное отверстие в корпусе. Это определенно был случай «отмерь дважды, отрежь один раз», поскольку отверстие в неправильном месте было бы катастрофой. К счастью, он оказался в мертвой точке и немного завышен, поэтому я смог компенсировать это, добавив шайбы между кронштейном камеры и основанием.
На этом этапе я также добавил кабель питания Pimoroni Dual Micro USB Power Cable - это дало мне хорошее гнездо micro-USB на задней панели корпуса и обеспечило второй разъем питания. Я намеревался использовать дополнительный штекер для зарядки аккумулятора динамика и сломал его, чтобы я мог подключить оригинальный переключатель «без звука» на Набазтаге для управления зарядкой.
Шаг 9: что такое Cookin 'Doc? Рецепты IFTTT
Феноменальная вещь в создании устройства IoT прямо сейчас - это огромное количество доступных веб-сервисов, и сервис IFTTT (If This Then That) отлично справляется с задачей, связывая их все вместе в простой и функциональный пакет. Если вы еще не использовали его, это онлайн-сервис, и как только вы зарегистрируетесь, вы можете подключить к нему все свои другие веб-материалы, такие как Gmail, Facebook, Twitter и (как вы уже догадались) Amazon Alexa. На выбор предлагается полный набор услуг, в том числе опции управления интеллектуальными приборами, такими как лампочки, термостаты и розетки.
Правила IFTTT устанавливаются в «рецептах» - вроде как правило Outlook или оператор IF в SQL или Visual Basic, например, у меня есть рецепт, в котором говорится: «ЕСЛИ кто-то отмечает меня на фотографии в Facebook, ТО отправьте мне электронное письмо. с темой «Святое гуакамоле, [имя пользователя] только что отметил вас на фотографии в Facebook» - потому что это отправлено мне с моего собственного адреса, RabbitPi затем зачитывает текст темы.
Еще одно отличное использование IFTTT - это голосовая служба Alexa - для части рецепта IF вы можете настроить фразу, например, «лазер», и если вы затем скажете Alexa «Trigger the laser», она передаст запрос IFTTT, который запустит THEN часть рецепта, в этом случае активируя удаленную розетку, подключенную к диско-лазеру.
Это даже выходит за рамки «умных вещей» - если на вашем телефоне установлен IFTTT (у меня версия для Android), вы можете взаимодействовать с ним в обоих направлениях, рецепт, используемый в видео: «ЕСЛИ я говорю:« Trigger Chas & Дэйв "Алекса", ЗАТЕМ воспроизведите определенную песню "Rabbit" на моем телефоне с Android. Это также работает наоборот - универсальное приложение дистанционного управления AnyMote на моем телефоне можно настроить так, чтобы определенная кнопка с запуском части "IF" рецепта - поэтому у меня есть кнопка на моем экране, которая запускает RabbitPi, чтобы сделать селфи и загрузить его в Twitter.
Другая функция позволяет RabbitPi зачитывать мои текстовые сообщения, на моем телефоне есть рецепт: «ЕСЛИ я получу новое SMS-сообщение, ТО отправьте себе электронное письмо со следующей темой» Эй! [отправитель текстового сообщения] говорит [текст сообщения]"
Он прост в использовании, доставляет массу удовольствия и хорошо работает, уведомления передаются туда и обратно очень быстро, особенно на переключатель WeMo Insight, который у меня есть, который работает практически мгновенно. Наличие IFTTT и RabbitPi значительно упрощает подключение вещей и сервисов.
Шаг 10: Сборка и тестирование
А теперь самое сложное - втиснуть все компоненты в корпус! Я был почти уверен, что все подойдет, но сборка была действительно сложной, я хорошо использовал некоторые хирургические инструменты и пинцет, чтобы протыкать кабели через крошечные зазоры.
Как только все было надежно установлено, я добавил несколько самоклеящихся оснований кабельных стяжек, чтобы можно было аккуратно стянуть множество проводов - это было действительно важно, поскольку я не хотел случайно отключать какой-либо из них при сборке корпуса.
Шаг 11: Готовый кролик?
Теперь, когда вся физическая сторона здания была завершена, пришло время «перерезать шнур», вытащив RabbitPi из удобного кабеля Ethernet, монитора и клавиатуры в мастерской, чтобы я мог закончить код в другом месте через SSH (беспроводной сигнал действительно слабый там!)
Устроившись на столе в своем офисе, я загрузил кролика и - вообще никакого Wi-Fi, ничего. Я знал, что должен быть сигнал, так как мой телефон работал нормально - была ли проблема с сетевым адаптером на Pi 3, о которой я не слышал? Быстрый поиск в Google сообщил мне, что Pi 3 найдет сигнал Wi-Fi только в том случае, если маршрутизатор транслирует каналы 1-11 - мой был настроен на канал 13! Несколько доработок спустя, и мы соединились, вздохнув с облегчением.
Затем я разобрался с различными сценариями. Сначала я изменил скрипт main.py кода AlexaPi, добавив дополнительные строки, чтобы RabbitPi не только мигал светодиодами при запуске, но и хорошо покачивал уши. Я также заменил стандартное сообщение «Hello» на шутливый звуковой эффект «boing» для развлечения.
Второй сценарий называется rabbit.py (SWIDT?) И содержит весь код для получения сообщений Gmail и их чтения с помощью Pyvona. Я также добавил код Twython, адаптированный из учебника Raspberry Pi «Tweeting Babbage», что позволило RabbitPi сделать снимок и загрузить его в свою учетную запись Twitter (@NabazPi). Я добавил немного движения ушей и мигания светодиодов, чтобы дать вам четкое предупреждение, когда фотография будет сделана, а также шум затвора и подтверждение твита, прочитанного Pyvona.
Наконец, я добавил оператор IF к коду imaplib gmail, чтобы, если тема электронного письма была «селфи», RabbitPi делал бы свое селфи, но в противном случае считывал бы тему письма как обычно.
Код, который я использовал, доступен на GitHub - пожалуйста, прочтите файл ReadMe!
В качестве последнего штриха я распечатал логотип Raspberry Pi на прозрачной бумаге и приклеил его внутрь корпуса RabbitPi, чтобы белый светодиод на животе освещал изображение через его полупрозрачную кожу.
Шаг 12: Набазтаг вернулся
Когда все было сделано, оставалось только снять видео. Было очень весело тестировать RabbitPi на камере, единственным недостатком было редактирование HD-видео на моем старом ноутбуке позже. Для некоторых уведомлений (в основном текстовых сообщений из-за моего ужасного сигнала Vodafone) я сократил паузы между действием и уведомлением, иначе это было бы долгое и скучное видео, но большинство из них показывает истинную скорость ответа.
Я экспериментировал с использованием датчика хлопка для запуска службы Alexa (как видно из видеоролика Alexa Snap to it), но не включил его в окончательную сборку, поскольку он был недостаточно надежен при наличии фонового шума. Я знаю, что другие мастера работают над использованием ИК-пультов, контроллеров Wii и даже активного прослушивания с кодом AlexaPi, так что есть множество вариантов на будущее.
Я надеюсь добавить неопиксельное кольцо adafruit для замены светодиода на животе, так как это сделает визуальные уведомления намного лучше, а также я хотел бы учесть «отключение» голосовых уведомлений ночью. Мои дети тоже дали несколько отличных предложений, и теперь, когда мне немного удобнее работать с Python, мы будем работать вместе, чтобы расширить диапазон уведомлений, например, чтобы текст подтверждения селфи был взят из списка значений наугад., и поэтому кролика можно проинструктировать, чтобы он попытался танцевать макарену ушами и светодиодами.
У меня здесь есть еще один Набазтаг, а также более поздний кролик Кароц, так что я вполне могу построить с ними что-нибудь еще - заманчиво поэкспериментировать с удаленным мониторингом и всеми видами датчиков! Это идеальная аппаратная платформа для Pi с его корпусом идеального размера, моторами и кнопкой. Интересно, есть ли где-нибудь у оригинальных производителей запас непроданных набазтагов, например, на свалке Atari? Несомненно, с помощью 3D-печати для установки камеры и PI и специальной шляпы для запуска двигателей, светодиодов и звука они станут идеальным комплектом для создания Raspberry Pi, который должен быть в каждом клубе кодирования!
Если вам нравится этот проект и вы хотите увидеть больше, вы можете зайти на мой веб-сайт, чтобы узнать о текущих обновлениях проекта по адресу bit.ly/OldTechNewSpec, присоединиться к Twitter @OldTechNewSpec или подписаться на растущий канал YouTube по адресу bit.ly/oldtechtube - дайте некоторые из ваших старых технологий - новые спецификации!
Финалист конкурса «Интернет вещей 2016»
Рекомендуемые:
Помощник по погоде своими руками: 6 шагов
DIY Weather Assistant: в прошлый раз я использовал ESP32, чтобы сделать метеостанцию, которая может транслировать текущую погоду. Если вам интересно, вы можете проверить предыдущие инструкции. Теперь я хочу сделать обновленную версию, в которой я назначу город, чтобы проверить, что мы
Помощник Google без рук для Raspberry Pi: 14 шагов (с изображениями)
Hands Free Google Assistant для Raspberry Pi: Здравствуйте и добро пожаловать в мой первый Instructable! В этой инструкции я собираюсь показать вам, что я считаю самым простым способом установить все поющий, все танцующий Google Assistant на Raspberry Pi. Она полностью свободна от рук с OK Googl
R.O.B. Помощник по уведомлению по телефону: 13 шагов
R.O.B. Помощник по уведомлению по телефону: Помощник по уведомлению на настольном телефоне с роботизированным оператором (R.O.B.)
D4E1 Левая камера-помощник. Расширенная версия: 7 шагов
D4E1 Левая камера-помощник. Расширенная версия. В 2012 году Аннелис Роллез, Сезар Вандевельде и Джастин Кутюрон разработали левую ручку для цифровой камеры Barts (Grimonprez). Мы рассмотрели дизайн и параметризовали его, чтобы его можно было изготовить в рамках гибкого производственного процесса. Таким образом, левый ок
Сделайте наушники с внутренним ухом для Oculus Rift всего за 160 йен: 5 шагов
Сделайте наушники с внутренним ухом для Oculus Rift всего за 160 иен: оригинальный комплект гидафона для внутреннего уха Oculus стоит 5800 иен (около 50 долларов). Я сделал дешевые наушники с этим предметом