Автоматизированное автономное управление ролл-шторой на ESPHome
Описание проекта
.Это интеллектуальная система управления рулонными шторами, построенная на базе ESPHome и может интегрироваться с Home Assistant. Проект позволяет автоматически и вручную управлять шторой в зависимости от времени суток, положения солнца или пользовательских настроек, с поддержкой энергосберегающего режима глубокого сна. Идеально подходит для умного дома, обеспечивая комфорт, безопасность и энерго-эффективность. Без подзарядки обеспечивает автономную работу 1-2 месяца при ежедневном использовании. При замене шагового двигателя с драйвером на более мощные варианты способен работать с тяжелыми шторами.
На что способно данное устройство:
Автоматическое управление: Штора управляется по расписанию (по введенному времени открытия и закрытия) или по положению солнца (восход/закат) с корректировкой угла положения солнца, всегда поддерживая нужное состояние.
Ручное управление (и ввод настроек): Через кнопку, ИК-пульт, Home Assistant, Яндекс (Алиса), Web страница.
Энергосбережение: Глубокий сон ESP32-C3 с пробуждением по таймеру или кнопке.
Безопасность: Предохранитель от перегрева мотора и тайм-аутов.
Мониторинг: OLED-дисплей показывает статус, батарею, время и причины пробуждения.
Интеграция: Полная совместимость с Home Assistant для удаленного управления и мониторинга.
Разберем подробнее возможности настроек:
Режим «Солнце»: Штора работает по восходу и закату (с настраиваемым оффсетом угла солнца).
Режим «Время»: Устанавливаемое время открытия и закрытия (например, 07:00–18:00).
Авто/Ручной режим: Включение/отключение автоматического управления. В ручном режиме управляет шторой только при пробуждении по таймеру.
Глубокий сон: ESP32 засыпает до следующего события, экономя батарею.
Автокоррекция: Возможность коррекции положения шторы по геркону при открытии.
Как можно управлять устройством:
Физическая кнопка: Многофункциональная (открытие/закрытие, стоп, сон, справка, обучение).
ИК-пульт: Программируется под любой код на любом ИК-пульте.
Home Assistant: Полный контроль через API (открытие, закрытие, позиция).
Яндекс (Алиса): При подключении через Home Assistant управление пробуждением через ИК датчик, затем любое действие (открытие, закрытие, позиция).
web страница: Удаленное управление из любого места через любой браузер по ip адресу устройства.
Обучение: Калибровка конечных точек шторы (открыто/закрыто).
Безопасность и Мониторинг
Предохранитель: Мониторинг тока (INA226) и тайм-аутов для предотвращения перегрева.
Геркон: Датчик положения (для остановки при закрытии).
RTC DS1307: Точное время даже без Wi-Fi.
OLED-дисплей: Информация о статусе, батарее, времени до сна и причинах пробуждения.
Журнал загрузок: История причин пробуждения (таймер, кнопка и т.д.).
Инфо о ESP: Информация о ESP (причина перезагрузки, свободная память и т.д.).
Как обеспечивается автономность и энергосбережение:
Батарейное питание (18650) с мониторингом напряжения.
Wi-Fi может включать при необходимости.
Deep Sleep с пробуждением по таймеру или GPIO длится до следующего события (восход/закат или пользовательское время). Без подзарядки (солнечная батарея или USB-C) работает до 2 месяцев
Основные компоненты устройства:
Микроконтроллер: ESP32-C3 (низкое энергопотребление, Wi-Fi/BLE).
Шаговый двигатель: 28BYJ-48 5в в режиме биполярного подключения.
Контроллер заряда: TP4056 -Контроллер заряда с защитой.
Драйвер двигателя: драйвер A4988 (управление направлением, шагом, сном.
Дисплей: OLED SSD1306 I2C (128x64, для отображения статуса).
Сенсоры:
INA226(INA219): Мониторинг тока и напряжения мотора.
ADC: Напряжение батареи.
DS1307: RTC для автономного времени. Корректируется по времени из Home Assistant.
Питание: Батарея 18650 (3.7V) с DC-DC преобразователем и возможностью зарядки через USB-C
DC-DC 3,7->8-12в: Повышающий регулятор напряжения.
DC-DC 3.3в: Понижающий линейный регулятор напряжения HT7333.
Мосфеты: Полевые транзисторы с обвязкой согласно схемы.
Солнечная панель: Солнечная панель 5,5-6в с током зарядки от 10мА.
Дополнительно: ИК-приемник (отключаемый), кнопка, ИК-пульт (опционально).
Теперь посмотрим на схему устройства:
Несколько фото - как выглядит устройство в сборе:
Более подробное описание возможностей устройства можно посмотреть в двух видео
График напряжения 18650 в течение 10 дней, без подзарядки. Работа по солнцу, 2 раза в день, и несколько раз в день включения по ИК.
Файлы для печати корпуса на 3D принтере можно найти тут
Код в формате YAML немаленький (почти 1500 строк) и удобнее для просмотра тут.
Итак в результате из самых широко распространенных элементов мы может собрать интересное и полезное устройство управления рулонными шторами, способное функционировать в автономном режиме без дополнительного питания и необходимости в wifi и пр.