Оглавление:

Alexa IoT TV-Controller ESP8266: 10 шагов (с изображениями)
Alexa IoT TV-Controller ESP8266: 10 шагов (с изображениями)

Видео: Alexa IoT TV-Controller ESP8266: 10 шагов (с изображениями)

Видео: Alexa IoT TV-Controller ESP8266: 10 шагов (с изображениями)
Видео: IRblaster 2024, Ноябрь
Anonim
ТВ-контроллер Alexa IoT ESP8266
ТВ-контроллер Alexa IoT ESP8266
ТВ-контроллер Alexa IoT ESP8266
ТВ-контроллер Alexa IoT ESP8266
ТВ-контроллер Alexa IoT ESP8266
ТВ-контроллер Alexa IoT ESP8266

Недавно я купил Amazon Echo Dot в течение дня Amazon Prime примерно за 20 евро.

Эти небольшие голосовые помощники дешевы и отлично подходят для домашней автоматизации DIY, если вы знаете, что возможно и как создавать умные устройства.

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

  • Включение / выключение телевизора
  • Настройки громкости (вверх / вниз / без звука)
  • Переключитесь на другой источник (порт HDMI, телевизор и т. Д.)
  • Включите Netflix / Amazon Prime / YouTube…

Если у вашего телевизора есть постоянно включенный USB-порт, у вас есть джекпот! В противном случае вы можете использовать длинный USB-кабель или небольшую плату регулятора мощности, которая понижает любое напряжение с 12,5 до 16 В до 5 В. Я использовал это, потому что у меня уже был блок питания 12 В прямо под моей кроватью для некоторых светодиодных лент:)

Другой способ, и именно поэтому я участвую в Battery-Challenge, заключается в том, что в моем корпусе, напечатанном на 3D-принтере, есть место для литий-полимерной батареи емкостью 150 мАч и платы зарядного устройства. Таким образом, вы можете сохранить его полностью без проводов!

К сожалению, у меня нет его фотографий, потому что мой iPhone умер во время iOs-Update, и фотографии не были загружены в мой iCloud:(Итак, предоставленные фотографии - только без батареи внутри, которую я подключил после окончательной сборки…

Однако, если вы хотите создать свой собственный контроллер, вам понадобится следующее:

Запасы:

  • Инструменты:

    • Паяльник
    • Горячий клей
    • 3D-принтер (опционально)
    • Термоусадочный
  • Компоненты: (Ссылки приведены только в качестве примера!)
  • 1x плата ESP8266-01s + программатор:
  • 1x NPN транзистор 2N2222A:
  • Резистор 1x 100 Ом:
  • 2 резистора 10 кОм: см. Ссылку выше
  • 1x маленький переключатель (NC - это важно !!):
  • 1x 3 мм ИК-излучатель LED:
  • 1x мини-понижающий преобразователь:
  • 1x гнездовая плата Micro-USB:
  • 1x плата для зарядки TP4056 (опционально):
  • 1x Mini LiPo аккумулятор (опционально):

Дальше:

Для сборки этого проекта вам потребуется система, в которой работает бесплатное программное обеспечение «ioBroker». Это бесплатный MQTT-брокер, который позволяет ESP8266 подключаться к нему и обмениваться данными. У ioBroker также есть Alexa-Adapter, который мы можем использовать для беспроводной связи нашего ESP с Alexa.

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

Еще нужна Tasmota-Прошивка! Вы можете скачать его здесь:

Выберите свой язык

Если вы хотите использовать его с Alexa, вам нужно знать, какое физическое устройство Alexa необходимо! Приложение Alexa не работает! Подключение к Alexa является необязательным - вы также можете включить телевизор, нажав небольшую кнопку MQTT, например эту:

Шаг 1. Запрограммируйте ESP8266

Запрограммируйте ESP8266
Запрограммируйте ESP8266

Поскольку мы собираемся припаять ESP8266 к печатной плате позже, мы должны сначала его запрограммировать. Для этого я рекомендую вам использовать дешевую плату программатора - та, которую я использовал, не рекомендуется! Мне пришлось изменить его, чтобы он работал, поэтому проверьте ссылку вверху (см. Расходные материалы).

Сначала подключите ESP к программатору. Затем запустите Flash-Tool на вашем компьютере. Теперь подключите программатор через USB и нажмите кнопку FLASH на плате во время подключения. Отпустите ее через несколько секунд. Теперь должен быть показан COM-порт в Program-Tool. Выберите его и продолжите, выбрав Tasmota-Firmware. Скорость передачи должна быть 115,000 и выбран режим QIO. Когда закончите, нажмите кнопку Flash на инструменте. Теперь программатор запускается.

Когда закончите, появится надпись DONE.

Теперь вы можете удалить программатор с вашего ПК и вставить его обратно после того, как вы переключили программатор в режим UART (переключатель на печатной плате).

Шаг 2: Настройте ESP - WiFi

Настройте свой ESP - WiFi
Настройте свой ESP - WiFi

Теперь, когда ESP запрограммирован и подключен к вашему компьютеру в режиме UART, перейдите к настройкам Wi-Fi вашего устройства и найдите сеть, которая содержит «tasmota» в SSID (например, «Tasmota-31278D»). Подключитесь к нему, перейдите в свой браузер и перейдите на 192.168.4.1.

Далее я объясню, что вам нужно сделать при настройке:

Настройки Wi-Fi:

  • WLAN1:

    • SSID вашего Wi-Fi-роутера
    • Пароль вашего Wi-Fi-роутера
  • WLAN2:

    • SSID вашего (второго) маршрутизатора (необязательно)
    • Пароль вашего (второго) маршрутизатора (необязательно)
  • Имя хоста: имя, которое отображается в сети - я рекомендую "TV-Remote".

Подтвердите свои настройки, нажав «Сохранить» (зеленая кнопка). Теперь ESP пытается подключиться к вашей сети Wi-Fi.

Если этот процесс не удастся, ESP снова откроет свою собственную сеть Tasmota-Wifi-Network.

Шаг 3: Настройте ESP - Конфигурация модуля

Настройте свой ESP - Конфигурация модуля
Настройте свой ESP - Конфигурация модуля

Когда ваш ESP успешно подключился к вашей домашней сети, вам нужно найти его IP-адрес в меню маршрутизатора.

Введите адрес в свой браузер. Будет показана страница tasmota ESP. Теперь перейдите к модулю настройки параметров и выберите «Generic (18)».

Когда закончите, найдите в раскрывающемся меню GPIO-2 IRsend (8) и выберите его.

Нажмите Сохранить!

Шаг 4: Настройте ESP - MQTT

Настройте свой ESP - MQTT
Настройте свой ESP - MQTT

ESP необходимо подключиться к нашему MQTT-брокеру (ioBroker). Мы можем настроить MQTT-настройки на вкладке SettingsConfigure MQTT. Здесь вы должны ввести свой Broker-IP, Broker-Port, MQTT-User (если вы его не знаете, вы можете найти его в настройках MQTT-адаптера на ioBroker!). Кроме того, вам необходимо ввести MQTT-пароль, имя клиента (как устройство отображается в ioBroker) и тему. Тема - это имя папки в iobroker. Если вы хотите использовать больше MQTT-устройств, я рекомендую объявлять полные темы, такие как гостиная /% topic% или кухня /% topic%. Но вам не нужно этого делать, но это поможет вам позже, когда у вас будет много устройств, подключенных к вашему брокеру!

Не забудьте потом все сохранить!:)

Вот и все! ESP готов к использованию!

Шаг 5: Настройте свой IoBroker

Настройте свой IoBroker
Настройте свой IoBroker

Теперь, когда ESP готов к использованию, нам нужно настроить MQTT-Broker- и, необязательно, Alexa-Adapter.

Перейдите на свою веб-страницу ioBroker (ip-адрес + порт (8081), например 192.168.178.188:8081 в моем случае).

Перейдите в «Адаптеры» и найдите «MQTT Broker / Client» и «Alexa2».

MQTT-адаптер необходим, Alexa не обязателен.

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

Выберите параметры, как показано на рисунке.

Вы можете выбрать MQTT-пользователя и пароль по своему усмотрению!

Как всегда, не забудьте сохранить свои настройки (левый нижний угол).

Шаг 6: Тестирование MQTT-соединения

Тестирование MQTT-соединения
Тестирование MQTT-соединения

Чтобы проверить соединение ESP с брокером, вам необходимо удалить ESP с вашего ПК и снова подключить его с выбранным обычным режимом запуска.

Подождите несколько секунд, проверьте состояние «экземпляров» страницы iobroker и посмотрите на «светлый» символ MQTT-адаптера. Если ваш ESP указан там, он успешно подключен!

Папки MQTT автоматически появятся на странице "Объекты"!

Шаг 7: Создайте MQTT-переменную

Создать MQTT-переменную
Создать MQTT-переменную
Создать MQTT-переменную
Создать MQTT-переменную

Перейдите на вкладку «Объекты» в ioBroker.

Откройте папку mqtt.0 / YourTopic / cmnd.

Внутри этой папки cmnd (команды) вы должны создать новую точку данных. Вы можете сделать это, нажав на символ + (плюс) вверху.

Имя: IRsend

тип: Datapoint

datapointtype: строка

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

Шаг 8: пайка и печать

Пайка и печать
Пайка и печать
Пайка и печать
Пайка и печать
Пайка и печать
Пайка и печать

Софт готово - дальше пайка!

Печатная плата должна иметь круглую форму диаметром 50 мм.

Спаяйте все вместе, как показано на прилагаемой схеме. Убедитесь, что вы не подключаете ИК-излучатель в обратном порядке! Возможно, светодиод этого не выдержит.

Я использовал небольшие 2-контактные разъемы для ИК-светодиода, переключателя и Micro-USB-Power-Board. Если вы тоже хотите это сделать, не забудьте отметить свои + и - соединения на боковой стороне разъема. Ориентация переключателя не имеет значения!

Если у вас под рукой есть 3d-принтер, вы можете использовать предоставленные мной файлы - это простой корпус толщиной 3 см, который прекрасно подходит для всех компонентов!

Внутрь поместится даже небольшой аккумулятор и плата для зарядки!

Я напечатал его с помощью Anycubic I3-Mega и Black Anycubic Filament:)

Я приклеил PCB, ИК-светодиод, переключатель и USB-порт внутрь с помощью горячего клея. Кроме того, я приклеил корпус за своим телевизором с помощью двустороннего скотча. Хорошо работает!

Чтобы запустить устройство сейчас, вам нужно нажать кнопку во время подключения в течение нескольких секунд. Переключатель отключает ИК-светодиод от GPIO-2 при нажатии, чтобы ESP мог запуститься. Tasmota поддерживает только GPIO-2 и GPIO-0 на ESP-01 для IRSender, поэтому мне нужно было сделать это таким образом. Отпустите кнопку после прибл. 5 секунд…

Шаг 9: Время автоматизации:)

Время автоматизации:)
Время автоматизации:)

Теперь все аппаратное закончено.

Программное обеспечение автоматизации сейчас:)

Чтобы сделать классную автоматизацию, нам нужно загрузить «Сценарии» адаптера в ioBroker. После того, как вы его установили, слева появится новое поле с названием «Сценарии». Откройте его и создайте новый Blockly-Script - это способ очень простого программирования с использованием функциональных блоков.

Чтобы управлять телевизором, вам необходимо знать его ИК-коды. Вы можете легко найти их в Интернете - поищите свою модель + ИК-коды. Коды для своего телевизора я тоже нашел в Интернете. Но вы можете легко их декодировать с помощью ИК-приемника и Arduino! Если вы не знаете, как это сделать, поищите в Instructables;)

В моем случае сигнал включения / выключения телевизора - «0xE0E040BF». Теперь нужна переменная IRsend, которую мы создали ранее. Приведенный пример программы записывает код в переменную. Но до и после IRsend устанавливается в 0 с некоторыми задержками. Это очень важно, потому что иначе телевизор ничего не сделает.

Вам необходимо использовать этот Формат для IRsend: {"Протокол": "NEC", "Биты": 32, "Данные": YourIRCode}

Триггером для включения телевизора может быть любая переменная в вашем ioBroker. Если вы хотите сделать это с помощью Alexa, просто создайте новую процедуру в приложении Alexa на своем смартфоне и назовите ее, например, «Включи телевизор».

Вы можете найти эту переменную в папке адаптера Alexa на вкладке «Объекты» вашего ioBroker. Эта переменная должна быть выбрана в качестве триггерного события в верхней части моего примера сценария (условие if).

Если у вас есть смарт-телевизор, вы также можете запустить, например, Netflix, Amazon Prime, YouTube и т. Д.

Вы должны перемещаться по телевизору шаг за шагом, как если бы вы делали это с помощью пульта дистанционного управления. Не забывайте устанавливать IRsend на 0 между командами с небольшой задержкой. Задержки должны работать со значениями от 500 до 1000 мс. Просто попробуйте:)

Шаг 10: Есть вопросы?:)

Надеюсь, вы понимаете все шаги, необходимые для создания моего Smart-IR-Controller.

Если у вас есть вопросы, не стесняйтесь спрашивать меня в комментариях:) Надеюсь, вам понравился мой проект: D

Кстати. извините за мой плохой английский, я из Германии: p

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