Контроллер LighthHub это полностью OpenSource решение многофункционального контроллера Умного Дома (открыт как исходный код прошивки так и схема)

Основные функции :

 

  • Управление освещением (Цветное LED освещение, диммируемое освещение)
  • Подключение выключателей и регуляторов плавного управления освещением
  • Управление теплом (теплые полы, радиаторное отопление)
  • Контроль протечек, расхода воды
  • Подключение датчиков движения, открытия дверей
  • Контроль температуры, влажности, CO2, управление вентиляцией
  • Локальное управление и внешнее управление с использованием открытого протокола MQTT

Текущая и наиболее совершенная версия контроллера: 2.2

Отличия железа версии 2.2 от версии 2.1

Отличия железа версии 2.1 от версии 2.0

Отличия железа версии 2.0 от версии 1.0

История изменений прошивки

 

 

Информация для заказа изделия 

Документация (WIKI)

Информация по подключению - внимательно изучите этот раздел перед подключением устройства

Пример настройки - скопируйте данный пример в Личный кабинет для быстрой настройки устройства

 

Контроллер LighHub позволяет подключить к себе :

  • Выключатели и другие контактные датчики (например, датчики открывания окон/дверей)
  • Аналоговые датчики (регуляторы, датчики протечки) - до 12-ти штук
  • До 20-ти Реле, позволяющие включать/выключать силовую нагрузку (лампы, теплые полы, нагреватели и пр)
  • До 20-ти  1-Wire датчиков температуры DS18b20 на шлейфе до 100 метров
  • До 512-ти каналов освещения (как LED так и AC) через стандартный DMX модуль
  • Modbus RTU  устройства (сейчас реализованы: AC Диммеры и приточная вентиляция)
  • До 12-ти аналоговых устройств со входами 0-10В через внешние преобразователи ШИМ в 0-10В
  • Датчики CO2, температуры, влажности
  • Сенсорные стеновые панели с выходом DMX для локального управления LED освещением 

Контроллер обеспечивает как автономное локальное управление (например, свет переключается выключателями или температура теплого пола поддерживается на заданном уровне) так и одновременное управление и мониторинг со стороны внешнего ПО (Протестировано с  Openhab, Domotics, NodeRed, IOBroker, HomeAssistant) с компьютера или мобильного приложения.

 

Более того, этих контроллеров в доме может быть установлено столько, сколько необходимо и они прекрасно взаимодействуют друг с другом по локальной сети с использованием MQTT

Недавно открыл для себя HomeRemote — замечательное мобильное приложение + ПО дизайнера интерфейса, которое нормально работает с LightHub через  MQTT 

Чем хорош OpenSource в отличии от закрытых решений:

  • Проект никогда не останется брошенным, если компания-производитель решит далее не развивать бизнес, сменить линейку продуктов или продаться Гуглу. Сколько у вас уже устройств, которые заброшены производителями и не обновляются? Какая вероятность, того, что купленные сейчас дорогие устройства, на которых вы построите свой Умный Дом через несколько лет просто перестанут работать?
  • Если у проекта есть Сообщество разработчиков - кто-то из них, практически, наверняка, сможет поддержать вашу систему или доработать необходимую функцию, даже если компании-поставщика уже нет на рынке.
  • Можно что-то доработать самому. Это вполне увлекательно )
  • Особо важна открытость, если речь идет про облачные решения. (Вспомним, как было отключено облако компании Nest, послее ее покупки компанией Google).

Вот хорошая статья на эту тему

  • Да, для настройки LightHub тоже разработан облачный портал, но никто не мешает перенастроить домашний контроллер на другой сервер или поднять все что надо дома на Raspberry PI или еще чем-то. 

 

 

 

Физически, контроллер Умного Дома "LightHub" представляет из себя совокупность из следующих компонент:

  • Arduino Mega 2560 или Arduino DUE (рекомендуется)
  • LightHub - Shield (плата, на которой смонтированы аппаратные интерфейсы LAN, мост интерфейса 1-Wire и три преобразователя RS-485 для обслуживания DMX-512 и Modbus, опторазвязки входных сигналов, защита входов TWS диодами, система питания и пр.)
  • Стандартный корпус для крепления на DIN рейку

Периферия  (см Компоненты с Aliexpress):

  • Внешний релейный модуль
  • 1-Wire датчики температуры
  • DMX-512 диммеры для управления LED или AC220В освещением, а также, реле, для отключение неиспользуемых блоков питания
  • Модули расширения формата UEXT, позволяющие подключить к контроллеру самую разнообразную периферию: сенсоры, радиомодули, GSM модемы, GPS, дисплей и многое другое  (поддержка на уровне прошивки будет реализовываться по мере необходимости)
  • Датчики температуры, влажности, CO2
  • Счетчики воды, оборудованные контактами
  • Сенсоры протечки
  • Управляемые краны перекрытия воды (Оттестировано совместно с кранами Aqualock Bugatti)

Прошивка контроллера обладает следующей функциональностью:

  • Подключение к брокеру сообщений MQTT (Mosquitto) через проводное Ethernet соединение. Контроллер подписывается на соответствующие топики MQTT, что позволяет управлять устройствами, например, при помощи системы OpenHab, NodeRed) или мобильных приложений
  • Опрос 1-Wire термодатчиков. В зависимости от настройки системы, значения термодатчиков передаются в шину MQTT для внешнего мониторинга, а также, и используются для управления локальными нагревателями (теплые полы, калориферы)  через релейный модуль
  • Управление светодиодным или 220В освещением по протоколу DMX-512 при помощи внешних плат управления
  • Управление Modbus устройствами (сейчас это  AC диммеры и частотник приточной вентиляции)
  • Прием входящих воздействий (датчики, выключатели, кнопки), использование значений для локального управления и передача их в шину MQTT 
  • Управление задвижками центральной вентиляции/кондиционера при помощи конвертеров ШИМ в аналоговый сигнал 0-10В
  • Контроль протечек. При обнаружении - поступление воды перекрывается вне зависимости от наличия связи и Интернета. Информирование и управление клапанами можно настроить, например, на системе NodeRed
  • Опрос датчиков температуры, влажности, CO2
  • Одним выключателем, уходя из дома, вы можете выключать весь свет и приточную ветиляцию, одним потенциометром регулировать яркость освещения всей гостиной, включая LED и люстру и пр.

Также, в отличие от похожих решений, прошивка обладает массой полезных особенностей-рефлексов, которые упрощают управление контроллером извне. Например:

  • Возможность собирать каналы управления в группы. При поступлении команды на групповой канал, она транслируется всем участникам группы. 
  • Наличие команд HALT и REST, дополняющих OFF и ON. Команда HALT выключает устройство (аналогично, команде OFF) а вот команда REST включает только те устройства, которые были реально выключены командой HALT. Это позволяет легко реализовывать, например Мастер-выключатель перед входом в дом. Он выключает все, но при включении, восстанавливает все устройства в первоначальное состояние
  • Также, при выключении устройства, контроллер запоминает такие параметры как уровень/яркость/цвет. После получения команды на включение они будут восстановлены
  • После холодного старта, контроллер восстанавливает значения всех устройств из сервиса MQTT.

Это не полный перечень "полезностей" 


Конечно, все это управляется и мониторится удобно при помощи "родного" OpenHab мобильного приложения.
Конечно, поведение всех этих устройств можно диспетчеризировать как при помощи встроенных скриптов OpenHab так и с помощи сторонних систем типа NodeRed (например, управлять задвижками вентиляции, потоком и нагревом внешнего воздуха, температурой теплых полов в зависимости от температуры на улице и в комнатах, времени суток и сезона; управлять освещением в зависимости от высоты солнца над горизонтом и фазы луны, если кому такое надо))

Система получилась достаточно надежной и масштабируемой (для доп. надежности задействован встроенный Watchdog а масштабируемость обеспечивается тем, что кол-во устройств не ограничено. Дополнительный контроллер просто ставится в удобном месте помещения и подключается к локальной сети ) 
Также, как писал, контроллер является абсолютно настраиваемым. 

При старте, контроллер пытается загрузить настройки с нашего сервера. (Вы можете его легко заменить на свой). Настройки хранятся в файле стандарта JSON. Их можно редактировать прямо из браузера в Личном Кабинете, добавляя столько контроллеров сколько вам надо по их MAC адресу.

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

Первые инсталляции работают в продуктиве 24х7 с августа 2016 года, код прошивки постепенно дописывается и улучшается, обрастая все новыми функциями. За это время, мы выпустили три версии платы LightHub Shield. 


Мы надеемся на ваш вклад в этот открытый проект. Технически, решение уже достаточно зрелое, но Проекту очень нужно документирование, обзоры, примеры.  Пробуйте (см. статью Как начать), пишите вопросы или просто про ваш опыт использования на форуме. Если освоили наше решение - будем благодарны если пополните руководство в нашем WIKI.


 

 

 

 

 

Комментарии   

+2 #1 make 06.11.2017 23:12
Есть более современный шилд Ethernet-2 на чипе w5500. Почему бы не использовать его?
0 #2 Super User 06.11.2017 23:33
Цитирую make:
Есть более современный шилд Ethernet-2 на чипе w5500. Почему бы не использовать его?

Во всех последних версиях использую именно 5500. Мощнее, компактнее, менее энергозатратно
0 #3 instalator 08.11.2017 18:43
Присоединяйся к группу по автоматизации https://t.me/SmartsHome
0 #4 Netwizard 23.11.2017 23:48
Здравствуйте,

как я понял из описания контроллера и статьи на хабре, конфигурация контроллера подгружается при старте и пишется в еепром. в конфиге указаны маппинги "датчик/исп.устройство - mqtt topic" ? есть-ли возможность так-же на уровне конфигов сцепить те-же самые датчики и локально исполняемые сценарии? например:
1. поддержание уровня воды в емкости по 2м датчикам.
2. Простенькая вентиляция по уровню CO2 и температуре
3. Поддержание температуры в помещении в заданных пределах
и т.д. Цель преследуется простая - с случае "смерти" центрального контроллера на OpenHAB'e, "интеллект" и умного дома может и отвалиться, но вот безусловные рефлексы работать должны от слова всегда ;)
0 #5 Super User 25.11.2017 14:57
Добрый день.
Да, основная идея была в том, чтобы такие вещи как локальное управление (например, выключатель - свет) а в особенности, поддержание температуры (связь термодатчик - реле нагревателя) управлялись только локально контроллером и не были никак завязаны на сервер.

По простой автоматики наполнения бака, также, можно задать локальный маппинг - например, замыкание контакта 1 передает объекту (item) "реле" команду ON а замыкание контакта 2 - команду OFF. (Неплохо бы еще датчиком протечки на OFF продублировать.)
Такой простой уровень автоматизации настраивается локально.

Относительно CO2 и вентиляции - так как тут к надежности, все-же меньше требований, я реализовал управление при помощи более гибкой связки:
1. Датчик CO2, температуры, влажности, подключеный через WiFi к шине MQTT (готовое изделие, заказанное в Барнауле примерно за 3 тыс руб)
2. NodeRed (о нем я тоже писал - штука удобнее, да и надежнее чем правила OpenHab, и работает с ним в паре. Там можно визуально задать самые невероятные сценарии, включая PID регулирование)
3. Контроллер LightHub
4. Приточка, воздушные задвижки (тоже писал тут про нее)

При желании, (Точнее, если нет желания городить приточку) просто-вентилятором можно управлять, например, с реле, подключенного к контроллеру.
0 #6 killeo 19.12.2018 23:05
Цитата:
HomeRemote...
есть свой mqtt брокер, как его добавить в приложение? Подскажите, пожалуйста!
0 #7 Super User 25.12.2018 23:04
Цитирую killeo:
Цитата:
HomeRemote...
есть свой mqtt брокер, как его добавить в приложение? Подскажите, пожалуйста!
Ничего сложного:
1. В Project/Devices добавляется новый Device - MQTT Broker. В Property прописываются адреса-пароли брокера

2. Тут же в этой же вкладке, создаются Variables. Для них прописываются топики MQTT на которые они подписываются и куда публикуют изменения.

3. Имена этих переменных используются в визуальных обьектах:
переключатели: Propety: Common/States/State Variable
(не забудьте указать OffState = "OFF", OnState="ON")

Cлайдеры: Common/Value Variable
(не забудьте указать Maximum = 100
0 #8 killeo 27.12.2018 17:33
Цитирую Super User:
Цитирую killeo:
Цитата:
HomeRemote...
есть свой mqtt брокер, как его добавить в приложение? Подскажите, пожалуйста!

Ничего сложного:
1. В Project/Devices добавляется новый Device - MQTT Broker. В Property прописываются адреса-пароли брокера

2. Тут же в этой же вкладке, создаются Variables. Для них прописываются топики MQTT на которые они подписываются и куда публикуют изменения.

3. Имена этих переменных используются в визуальных обьектах:
переключатели: Propety: Common/States/State Variable
(не забудьте указать OffState = "OFF", OnState="ON")

Cлайдеры: Common/Value Variable
(не забудьте указать Maximum = 100
Спасибо, всё получилось!
А не доводилось в HomeRemote push-уведомления добавлять?
0 #9 Андрей 12.04.2019 22:22
Цитирую killeo:
[quote name="Super User"][quote name="killeo"]
Спасибо, всё получилось!
А не доводилось в HomeRemote push-уведомления добавлять?

Насколько я помню, там нет Push
Долгое время я использовал NodeRed+Telegram. Но так как Telegram сьехал с SOCK5 прокси, сейчас работает не стабильно. Перешел на Home Assistant + Node Red

You have no rights to post comments

0
0
0
s2sdefault