Найти в Дзене
Электроника, ESP32, Arduino

Управление голосом самодельным светильником на ESP8266 с помощью Алисы без посредников!

Дано: самодельный, встроенный светодиодный светильник, управляемый с помощью WEB интерфейса с любого устройства внутри домашней сети.

Самодельный встроенный настенный светильник
Самодельный встроенный настенный светильник
Электрическая принципиальная схема самодельного светодиодного светильника
Электрическая принципиальная схема самодельного светодиодного светильника

Светильник можно включать/выключать с помощью выключателя, и дополнительно включить/выключить если питание с помощью выключателя уже подано, с помощью WEB интерфейса.

WEB интерфейс самодельного светильника
WEB интерфейс самодельного светильника

Подробную логику работы и код вы сможете найти в другой статье на моем канале,

а в этой статье речь пойдет об одном из вариантов, как прикрутить подобную самоделку к голосовому помощнику Яндекс Алиса.

Светильник управляет 2-мя самодельными светодиодными лампами подключенными:

  • GPIO5
  • GPIO4

с помощью GET запросов внутри домашней сети:

  • http://192.168.1.17/update?output=5&state=1 включить
  • http://192.168.1.17/update?output=5&state=0 выключить
  • http://192.168.1.17/update?output=4&state=1 включить
  • http://192.168.1.17/update?output=4&state=0 выключить

Создадим на ESP32 устройство которое будет прикидываться бытовой техникой управляемой по ИК каналу с помощью устройства Яндекс.Пульт, и перенаправлять эти ИК команды в домашнюю сеть Wi-Fi в виде GET запросов.

Схема управления ESP8266 с помощью Алисы и устройства Яндекс.Пульт
Схема управления ESP8266 с помощью Алисы и устройства Яндекс.Пульт

Собираем прототип:

Схема устройства для переадресации запросов с помощью Яндекс.Пульт в локальную сеть
Схема устройства для переадресации запросов с помощью Яндекс.Пульт в локальную сеть
Прототип устройства на макетной плате
Прототип устройства на макетной плате

С помощью ИК светодиода будет происходить запись ИК команды через Яндекс.Пульт в "экосистему" умного дома Яндекс. Через ИК приемник будет происходить прием ИК команды от Яндекс и переадресация её в локальную сеть. ESP32 будет прикидываться устройством SAMSUNG с адресом 0х1, синий светодиод будет использоваться для проверки связи с устройством.

Голосовые команды для светодиода:

  • светодиод включи
  • светодиод выключи

Светильник на стене состоящий из 2-х одинаковых секций будет управляться тремя голосовыми командами:

  • стена включи
  • стена пополам
  • стена выключи

Код для ESP32 в среде Arduino IDE:

Определение переменных
Определение переменных
Секция установки (подключение к домашней сети)
Секция установки (подключение к домашней сети)
Управление светодиодом и самодельным светильником на ESP8266
Управление светодиодом и самодельным светильником на ESP8266
Секция предназначенная для программирования пульта от Яндекс
Секция предназначенная для программирования пульта от Яндекс
Функция предназначенная для управления светильником на ESP8266. Сюда необходимо внести данные для подключения к домашней сети Wi-Fi.
Функция предназначенная для управления светильником на ESP8266. Сюда необходимо внести данные для подключения к домашней сети Wi-Fi.

Яндекс пульт программируется с помощью монитора порта для среды Arduino IDE - отправкой символов 1....5

Подробный алгоритм был описан в этой статье.

В "экосистеме" умного дома от Яндекс создаем два "виртуальных" устройства:

Делаем два виртуальных устройства
Делаем два виртуальных устройства

С помощью этих кнопок можно управлять светильником прямо из приложения Яндекс на смартфоне:

Виртуальное устройство стена
Виртуальное устройство стена

или использовать предустановленные голосовые команды на устройствах где живет Алиса:

Голосовые команды для устройств с Алисой
Голосовые команды для устройств с Алисой

Модифицировав данный код, можно прикрутить к Алисе любую самоделку. При этом:

  • если пропадет Интернет - управление устройством будет доступно через WEB интерфейс внутри локальной сети;
  • все устройства остаются внутри домашней сети и недоступны для управления извне - внешнее управление ограничивается экосистемой умного дома Яндекс;
  • не нужны сервера внутренние (например Малина) или внешние (например Blynk) ;
  • самоделки на ESP8266 обойдутся дешевле покупных умных устройств для умного дома, и легко ремонтируется;
  • систему легко расширить до любого количества устройств.

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

Код устройства качайте по этой ссылке:

В ближайших планах сделать проброс ИК команд через сеть Wi-Fi в другую комнату (удлинитель ИК пульта), что избавит от необходимости покупать другие Яндекс пульты.

Полный список статей доступен по этой ссылке:

Всем удачи.