Оглавление:

Умный дом своими руками с Google Assistant и Arduino: 6 шагов
Умный дом своими руками с Google Assistant и Arduino: 6 шагов

Видео: Умный дом своими руками с Google Assistant и Arduino: 6 шагов

Видео: Умный дом своими руками с Google Assistant и Arduino: 6 шагов
Видео: УМНЫЙ ДОМОФОН ЗА ВЕЧЕР.УДИВИ СОСЕДА И ГОСТЯ. 2024, Июль
Anonim
Image
Image
Умный дом своими руками с Google Assistant и Arduino
Умный дом своими руками с Google Assistant и Arduino

Кому не нужен умный дом? Одна из самых приятных вещей, которые вы можете сделать, - это включить в доме свет или другие приборы с помощью голосового управления. С помощью приложения Google Home и помощника Google это действительно несложно ……

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

Запасы

1 Умный динамик, например Google Nest Mini.

2 Компьютер Arduino MKR1000 для преобразования голосовых команд в команды переключения.

3 Одно или несколько переключающих реле на 5 В, по одному на каждую лампу, которой нужно управлять.

4 USB-источник питания для Arduino MKR1000 с разъемом micro-USB.

5 Магистральная проводка (1,5 кв. Мм) и розетки для безопасного подключения светильников и других приборов.

6 Смартфон Android для приложения Google Home.

Шаг 1. Командный процесс через Интернет

Командный процесс через Интернет
Командный процесс через Интернет

На этом изображении вы можете шаг за шагом увидеть, как работает весь процесс.

Включение и выключение с помощью голосовых команд полностью осуществляется через Интернет. Для этого требуются три (!) Облачных сервиса… Вы должны создать учетную запись для каждой облачной службы… Это немного громоздко, но работает!

Для начала вам понадобится приложение Google Home. Загрузите его из Playstore на свой телефон Android и установите приложение. Понимание ваших собственных голосовых команд с помощью Google Home работает только с английским языком. Поэтому установите английский язык через настройки / дополнительные настройки / помощник / языки, а затем выберите английский (США).

Google Nest Mini слышит голосовую команду, например «Окей, Google, включи свет номер один». Этот аналоговый аудиосигнал оцифровывается и отправляется в облако Google Assistant. Затем он пересылается в облако IFTTT, где и делается ответ. IFTTT (If This Than That или «если вы сделаете одно, произойдет другое») - это своего рода промежуточная станция, которая анализирует команду, дает ответ и перенаправляет действия в следующее облако, Adafruit IO. Если команда полностью понята, ответ от IFTTT будет возвращен в цифровом виде в Google Nest Mini, где он будет преобразован в аудиосигнал. Если команда не понята, Google Assistant вернет другой ответ, чтобы прояснить, что никаких действий по переключению не последует. Хорошо понятная команда будет перенаправлена IFTTT на веб-сайт Adafruit. Adafruit - поставщик электроники, поддерживающий веб-сайт для хранения данных интеллектуальной коммутации. Они называют это «Feed». IFTTT отправляет в этот канал код, связанный с командой (в нашем случае «one_on»). Arduino MKR1000 запрограммирован на регулярную проверку этого веб-сайта, считывание данных в ленте, а затем включение или выключение соответствующего переключающего реле. Канал Adafruit защищен по соображениям безопасности с помощью имени учетной записи и уникального IOKEY Adafruit, известных только владельцу учетной записи.

Шаг 2: Программирование Arduino MKR1000

Программирование Arduino MKR1000
Программирование Arduino MKR1000
Программирование Arduino MKR1000
Программирование Arduino MKR1000

Используйте стандартную среду IDE с веб-сайта Arduino. Поместите следующие библиотеки в среду IDE (с помощью: tools / manage libraries): ArduinoJson и WiFi101.

Если вы ранее не программировали MKR1000, вы должны сначала сделать эту плату доступной в среде IDE. Загрузите файл платы «Платы Arduino SAMD» через меню инструменты / доска / менеджер плат, после чего вы можете выбрать плату MKR1000.

В скетче также используется дополнительный файл arduino_secrets.h.

Это текстовый файл, который можно создать с помощью блокнота. Этот файл содержит используемые коды доступа к сети Wi-Fi (сетевой SSID и пароль) и коды входа на веб-страницу Adafruit IO (имя учетной записи и код IOKEY). Сохраните этот файл в каталоге библиотеки arduino на вашем ПК с именем arduino_secrets.h в отдельном каталоге. Перед сохранением замените все «xxx» на данные вашей собственной сети и Adafruit. Это должно быть в файле arduino_secrets.h:

#define SECRET_SSID «xxx»

#define SECRET_PASS «xxx»

#define IO_USERNAME «xxx»

#define IO_KEY «xxx»

Скопируйте эскиз Arduino ниже и загрузите его в MKR1000 через программу Arduino IDE.

Шаг 3. Лента Adafruit

Лента Adafruit
Лента Adafruit

Создайте учетную запись на сайте www.io.adafruit.com. Adafruit - поставщик электроники, поддерживающий веб-сайт для хранения данных интеллектуальной коммутации.

Создайте фид ON_OFF, в котором команды будут сохранены позже. У Adafruit есть обширное руководство, показывающее, как это сделать:

learn.adafruit.com/adafruit-io-basics-feeds/creating-a-feed

Лучше всего установить «канал» в истории каналов в положение «ВЫКЛ.», Нет необходимости запоминать команды переключения. (настройки находятся в правой части страницы).

Шаг 4: Настройки IFTTT

Настройки IFTTT
Настройки IFTTT
Настройки IFTTT
Настройки IFTTT
Настройки IFTTT
Настройки IFTTT
Настройки IFTTT
Настройки IFTTT

Создайте учетную запись на сайте www. IFTTT.com. Перейдите к «исследовать» (вверху справа) и затем выберите «создавать свои собственные апплеты с нуля». Нажмите «ЭТО» и выполните поиск в Google. Выберите Google Ассистента. Затем выберите первый вариант «скажи простую фразу». Затем введите желаемое описание команды и ответ, который нужно дать.

(В нашем случае «включи все фары» и «ОК. Я включу все фары. Осторожно!»). Затем нажмите «создать триггер» и на следующем экране нажмите «ТО». Затем выберите Adafruit и нажмите «отправить данные в adafruit IO». Подача ВКЛ-ВЫКЛ появляется в первом поле, а затем введите желаемый код во втором поле (здесь в качестве примера «все включено»).

Наконец, нажмите «Создать действие», а затем «Готово».

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

Если вы хотите управлять несколькими источниками света или другой бытовой техникой, вам необходимо создать апплет IFTTT для каждой команды, а коды, хранящиеся в фиде Adafruit, должны соответствовать кодам в скетче Arduino.

Шаг 5. Проверьте соединения и программное обеспечение

Проверьте соединения и программное обеспечение
Проверьте соединения и программное обеспечение

Для тестирования системы вы можете сделать тестовую установку со светодиодами вместо реле:

Шаг 6: Подключение бытовой техники

Подключение бытовой техники
Подключение бытовой техники
Подключение бытовой техники
Подключение бытовой техники

Для переключения бытовой техники необходимо подключить переключающие реле к портам Arduino MKR1000 вместо тестовых светодиодов. Используйте провод 1,5 мм2 со стороны источника питания для безопасного соединения устройств и контактов реле.

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