Рейтинг статьи: 5.000/5 (3 голосов).
Создание умных гирлянд - матриц на елку или окна и Гайвер ламп и объединение их в одну сеть с использованием прошивки умного Хаос дома.Спонсор этой страницы:
Описание проекта
Проект описывает возможность объединения до 17 гирлянд или ламп в одну сеть (одна главная и 16 соседей) с возможностью менять эффекты на всех гирляндах или лампах одновременно, выполнять сценарии по времени, управляться с пульта, смартфона, умного дома Алиса, реагировать на движение и так далее.Материалы
ESP-8266 по количеству планируемых гирлянд или ламп.Гирлянды, ленты или матрицы ws2812B 5v, метраж по необходимости.
Разъемы USB-C для подключения зарядки от смартфона или блока питания.
Коробочки.
Зарядные устройства или блоки питания 5V и минимум 2А.
Дополнительные материалы при необходимости:
ИК приемник и ИК пульт, один комплект на комнату, в которой планируется использование.
433 приемник и 433 пульт, один комплект.
Кнопка.
Датчик движения, один комплект на комнату, в которой планируется использование.
Конденсатор (необходим при использовании ИК или 433 приемников для снижения помех).
Пульт выбирался красивый и недорогой.
Примеры гирлянд
Сборка
Пример с ИК приемником.Файл с прошивкой
Умный сетевой хаос дом
esp8266
В случае использования ядра 3.1.2 обновить все модули до последнего, IRremoteESP8266 понизить до 2.7.20
В случае использования ядра 2.7.4 WebSockets понизить до 2.4.0, IRremoteESP8266 понизить до 2.7.20
esp32
IRremoteESP8266 установить последнюю 2.8.6
Настройка и прошивка
в файле define.h выбираем и настраиваем модули
// модуль WS2812
#define WS2812_PIN (D3) //
#define WS2812_MENU "?"
#define WS2812_PAINT "?"
#define COLOR_ORDER (BGR) // порядок цветов на ленте. Если цвет отображается некорректно - меняйте. Начать можно с RGB
// 1 - лента, 2 - матрица
#define WS2812_D 2 // module_WS2812_1D.ino - 1, module_WS2812_2D.ino - 2
У меня получилось на серебристой гирлянде RGB, на темной BGR
На матрице 16x16 - GRB
Оставляем модули Таймера и Будильников.
// модуль module_Alarm.ino
#define MAX_ALARMS 5 // Максимальное количество будильников
#define ALARM_MENU "?"
// модуль module_Timer.ino
#define MAX_TIMER 15 // Максимальное количество таймеров
#define TIMER_MENU "?"
При необходимости дополнительно подключаем модули:
ИК приемника;
// модуль module_IR.ino
#define IR_PIN (D1) // для Wemos Пин D1 для ESP-01 - 2 - GPIO2
// Максимальное количество IR команд (кнопок на пульте). Если пультов много, добавляйте
#define MAX_IR (15U)
#define IR_MENU "?"
433 приемника;
// модуль module_RX433.ino
// #define RX433_PIN (D1) // для Wemos Пин D1 для ESP-01 - 2 - GPIO2
// Максимальное количество команд (кнопок на 433 пультах). Если пультов много, добавляйте
#define MAX_RX433 (15U)
#define RX433_MENU "?"
#define RX433_delay 1000 // ограничение 1 секунда между одинаковыми командами при отключеном повторе
Сенсорные Кнопки.
//#define BTN_PIN (4U) //D2
#define BTN_MENU "?"
#define MAX_G_Button 10 // Максимальное количество действий
При необходимости в module_GButton.ino настройте тип кнопки.
Датчика движения.
// модуль module_SR501.ino
//#define SR501_PIN (13U) // Датчик движения
#define MAX_SR501 (5U) // Количество событий
#define SR501_MENU "?"
Остальные модули отключаем.
Если планируете управлять гирляндами из умного дома Алиса, впишите данные mqtt сервера:
Я настраивал через wqtt.ru.
в файле _chous_home_.inoв void setup() добавляем подключение к серверу по порту, указанному в брокере
hub.mqtt.config("m3.wqtt.ru", 10345, "user_XXXXXX", "PPPPPPPPPP");
Доступ к файловой системе esp8266
В папке, куда установлен Arduino найдите или создайте папку tools.скопируйте туда папку ESP8266LittleFS со всем содержимым.
После перезапуска в инструментах появится ESP8266 LittleFS Data Upload.
Настройка управления по http протоколу.
в файле _chous_home_.ino
#define GH_FILE_PORTAL // включить сайт c flash памяти папка /hub/
Первый запуск
При первом запуске появится точка доступа ESP Config при подключении к которой будет предложено ввести имя и пароль сети.Данные будут записаны в var\portalCfg.dat
В дальнейшем файлы настроек можно подкладывать в новые проекты.
В случае, если esp по какой то причине не нашла сеть, так же запускается точка доступа ESP Config, при этом каждые 5 минут esp пытается подключиться к старой точке доступа.
Например после пропадания питания в квартире ESP загружается до WiFi модема.
Управление со смартфона и компьютера
Управление возможно по http://ip espЧерез приложение Алекса Гайвера GyverHub
Через сайт http://hub.gyver.ru/
Подключение к Алисе
Управление Умным сетевым хаос домом с помощью Алисы через сервер wqtt.ruУправление с пультов
ИК Пульт433 Пульт
Датчик движения
Сенсорная кнопка
Список команд для ws2812
Команды можно посылать по IP на другие гирлянды/лампы.
Сценарии
Сценарии могут быть как и Алиса, так и сценарии Хаос домаДля примера:
Выбираем главную гирлянду, куда подключен пульт.
В закладке IP на добавляем IP адреса других гирлянд.
В закладке Таймеров создаем таймер Цикл, указываем время сменяемости эффектов, например 1 минута.
Команда при старте EFF %d@RND,2,37 запустить случайный эффект с номером от 2 до 37.
Команда при активности CLR %d@CLR+1 каждую секунду увеличивать цвет на 1.
Команда на финише Цикл сменить эффект.
Указываем на какие IP отправляем.
Указываем модули назначения WS2812 и Timer.
Запуск и остановка сценариев по времени
Запуск сценария осуществляется посылкой названия сценария, например Цикл в модуль Timer.Остановка сценария осуществляется посылкой названия сценария и OFF, например Цикл Off в модуль Timer.
Команда P_OFF, отправленная в модули назначения WS2812 и Timer выключает гирлянду и останавливает все сценарии.
Настройка высоты и помощь в развешивании
Указываем высоту и ширину матрицы - гирляндыКнопки цветов для проверки корректности выбора параметра
#define COLOR_ORDER (BGR) // порядок цветов на ленте. Если цвет отображается некорректно - меняйте. Начать можно с RGB
Кнопка Подсказка зажигает верхнюю, среднюю и нижнюю строку, оказывая помощь в развешивании.
Хорошего Нового года!
аппаратура Android Arduino Программирование Умный сетевой хаос дом
Комментариев нет. Станьте первым!