Рубрики
Без рубрики

Голосовые активированные огни с Raspberry Pi и помощником Google

Я настроил свет в комнате моей дочери, что она может включаться с ее голосом. Помечено Raspberry Pi, Google Assistant, Python, A11Y.

Я построил Raspberry Pi-Power Assistant для комнаты Google для моей дочери, чтобы она могла включиться на свет со своим голосом. Но прежде чем я попаду в это, я хочу дать немного фона.

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

Вот моя дочь, демонстрирующая, как это работает:

Я не хотел просто купить дом Google. Вместо этого я купил Raspberry Pi и некоторое другое оборудование:

  • Raspberry Pi 3.
  • Компьютерные колонки
  • Микрофон
  • Провода + светодиодный свет
  • Умные заглушки (я нашел 2-пакет на Amazon)

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

При настройке динамиков и микрофона я должен был изменить Оцените Строка от «16K» до «16000» на этих двух линиях, чтобы избежать неверного ошибки аргумента:

arecord --format=S16_LE --duration=5 --rate=16k --file-type=raw out.raw
aplay --format=S16_LE --rate=16k out.raw

Когда я изначально побежал main.py Сценарий, я получил еще одну ошибку:

TypeError: __init__() missing 1 required positional argument: 'device_model_id'

Это было потому, что, поскольку статья была написана, Google обновил Assistant API. (Google Google.) С момента принятия этих изменений разработчики теперь должны зарегистрировать пользовательские устройства, такие как Raspberry Pi. Пара дополнительных шагов оказалась довольно легко (как документально подтверждено Google на своих документах Python ), а Raspberry Pi вышел и работает как помощник Google.

После указания в руководстве я смог заставить светодиод подключаться только хорошо. Он загорается, когда Pi слушает, а выключается, когда это не так.

Вот где закончился учебник, и мне пришлось выяснить следующие шаги для себя. У меня был мой 2-пакет смарт-заглушек, и, как оказалось, у них есть компаньонное приложение: умная жизнь.

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

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

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

Но этого достаточно этого. Приложение Smart Life было просто средством к концу; Я никогда не хотел контролировать что-либо в квартире из этого приложения на долгосрочной основе. Настоящая цель соединяла устройства к Google Assistant, которое, как оказалось, было так же просто, как исходное обнаружение устройства.

Я открыл приложение Google Assistant и навигацию на настройки> Домашнее управление. Я нажал кнопку голубой «плюс» в правом нижнем углу, чтобы создать новое устройство – скорее в этом случае подключите существующее устройство.

Начиная свежее, не было связанных услуг. Я прокрутил вниз и нашел умную жизнь в списке, что позволит мне получить доступ к двум двум смартвым вилкам из системы Google Assistant. Поскольку помощник настроен на использование моей учетной записи Google как на моем телефоне, так и на Raspberry Pi, я могу контролировать их с любого устройства. (Это включает в себя контроль огней, когда я далеко от дома, а также.)

Номера, настроенные в Smart Life, не относятся к номерам в Google Assistant, поэтому я создал новые номера с теми же именами. Имена двух штекеров, перенесенные из Smart Life: «Лампа» и «Луна».

Вот где все становится сложно, потому что столько, сколько эти цифровые помощники (помощник Google, Siri, Alexa, Cortana и другие) рекламируются как Ai, они все еще не способны к настоящему естественному языку. Это также – по крайней мере, в случае помощника – еще не способно участвовать, как произносить новые слова или имена.

Имя моей дочери – Намын. Это произносится «Nah-Me-Nay». (Десять очков за дом Хогвартса по вашему выбору, если вы можете определить, где он. 😉 Google Assistant произносит его вроде «кандидата», хотя, так что называя лампу «лампы Нашемания», что привело к ассистенту, не распознавая его.

Интересно, что если бы я сказал, что «включил лампу», он включил лампу, но тогда она ответила, «включающуюся на лампу кандидата. «Так что не только там, кажется, не только для того, чтобы учить помощникам, как произносить свое имя, но это также не признало притяжательное существительное. Независимо от того, что, это всегда отвечает, ссылаясь на него как «прозвище». (Даже если я назвал это «моим лампой», он все еще ответил «поворот на моей лампе».)

В результате мне пришлось творчеству с именем. После некоторого проб и ошибки я закончил дать ему фонетический прозвище лампы в комнате Naameenayz ». (Потребовалось несколько попыток произнести имя «Назад» только правильно.)

Несмотря на все это, он до сих пор не распознает команду «Включить лампу Намына», даже если фонетическое имя, которое распознает именно, является именно то, как мы произносите ее имя. С другой стороны, более простая команда «включить лампу» все еще работает. Затем он отвечает «поворот на лампе в комнате Намине», что достаточно приемлемо. Содержание с результатами – или достаточно контента, пока – Я настроил лунный свет на Луну, который висит с ее потолка так же.

Версия этого поста была первоначально опубликована на eichefam.net .

Оригинал: “https://dev.to/peiche/voice-activated-lights-with-raspberry-pi-and-google-assistant-379m”