[Из песочницы] Умный дом, начало

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

Выбор был сделан на 99% в сторону проводных устройств, плюс все устройства должны быть максимально бюджетные. Изначально планировал делать все на микроконтроллерах, но узнав о существовании Arduino выбор пал именно на нее, т.к. упрощалось изготовление конечных устройств, не нужно было изготавливать платы самостоятельно.

На этапе ремонта была проложена витая пара по всем возможным направлениям — освещение, окна, двери, радиаторы, водосчетчики, теплосчетчики, электросчетчик, домофон, телевизор, компьютер, проектор, кондиционер, подъездный щиток, датчики движения, балкон, ко всем выключателям и розеткам…

Была переделана силовая проводка. Я отказался от распредкоробок, и вся проводка от каждой люстры, выключателя, розетки стянуты вместо установки электрощита. Дополнительно силовая проводка протянута к каждому окну, для питания контроллеров и питания электроприводов рулонных штор. Всего на двухкомнатную квартиру ушло около 1 километра различных проводов.

Электрощит
b2e3acfad55f490f9f1ab4cfe3764456.jpg


Сердцем системы выступает сервер на базе неттопа Asus EeeBox, на котором крутится iobroker. Все контроллеры общаются с сервером по протоколу MQTT.

В каждом окне стоит комнатный контроллер построенный на Arduino UNO + Ethernet Shield W5100 каждый из них собирает следующую информацию:

Контроллер в оконной раме
328c542e7c254d3f86c42a2cad0906c4.jpg

d7a902eb946745d2968801ebf2aefc95.jpg


  • температура радиатора (DS18b20)
  • температура и влажность помещения (DHT22)
  • уровень освещенности (фоторезистор)
  • датчик СО (MQ7, планируется замена на более достоверный датчик)
  • датчики объема (DSC LC-100PI, переделанный под питание 5В, в который встроены датчик освещенности и датчик СО)
    Датчик объема
    c4cf2a6a4808443fa975d311030da23a.jpg
  • в спальне и гостиной дополнительно датчики температуры DS18b20, которые установлены внутри приточных клапанов КИП-125
  • управление сервоприводом (SG90) который установлен на заслонки приточного клапана КИП-125
    Сервопривод заслонки КИП-125
    d661ba288c3646358387d6753121c37c.jpg
  • датчик открытого окна (геркон)


Освещением управляет отдельный контроллер, построенный на Arduino Mega + Ethernet Shield W5100.

Контроллер освещения в сборе
94b11174deb24ca9870885123239beb1.jpg


В качестве выключателей стоят обычные перекидные Schneider Electric из серии Unica с переделанной подсветкой под 5В. Подсветка запитана через полевой транзистор от ШИМ контроллера освещения (КО).

Выключатель
2426b34c04fb4d39ba58d33dbe10502a.jpg


Переделка подсветки выключателя под 5В
e6ca225ce1ff40268d7558fe0561253a.jpg


Выключатели коммутируют 12В которые через делитель поступают на вход КО. Программа КО инвертирует состояние выхода при переключении выключателя т.е. если свет горел то переключив выключатель свет отключится и наоборот. Минус этого решения, что выключатели не имеют положения выключено\включено, а из плюсов легкая организация аварийного режима, при котором выключатели коммутируют реле (Finder) освещения напрямую минуя КО.

Плата аварийного режима
8a39cfd27d2740b8bc8596b75c9071f2.jpg


Реле управления освещением
a64f803993f34f92a85a30e60ca89e04.jpg


В ванной помимо обычного выключателя стоит счетчик посетителей на ИК датчиках. Если посетителей больше 1 то свет горит.

Счетчик посетителей в ванную
b104b51e26044db98066f4f55df7385d.jpg


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

  • Телевизор (LG, не смарт) не управляется по Ethernet, но управляется по RS232. Для управления поставил Arduino UNO + Ethernet Shield W5100.
    Заголовок спойлера
    77a07d46fdf442ac86c16cf15e39ed97.jpg
  • Проектор (BENQ) аналогично телевизору.
  • Ресивер ONKYO управляется как по Ethernet так и по RS232, в iobroker есть драйвер для управления ресиверами ONKYO по ethernet, так что работает из «коробки».
  • управление домофоном (Cyfral, координатный). Организовано открытие подъездной двери (на реле) и контроль звонка домофона, при звонке домофона на телевизоре включается изображение с подъездной камеры, на телефон приходит сообщение в котором содержится ссылка для открытия двери.
    Управление домофоном
    88d04d3551e1447898f5a3325e6d4ac1.jpg

    40e8da1344724edea1ef5fc6a0e5fde6.jpg


  • управление водонагревателем (Termex). Управление и контроль организован на Arduino pro mini + NRF24, питание от встроенной платы управления водонагревателем. Реализовано включение, отключение, переключение режима нагрева и установка температуры. Переключение кранов только руками, горячую воду не так часто отключают, а тратить ~5 т.р. на краны с приводом нет желания, так что не напрягает. Как отключат горячую воду, хочу провести эксперимент энергоэффективности, поддерживать заданную температуру воды круглосуточно либо отключать водонагреватель или понижать заданную температуру на ночь и на время отсутствия.
    Управление водонагревателем из веб морды
    cd839838cc484cd0ba5cddc6bfc7d773.jpg
  • управление системой защиты от протечек (Аквасторож). Организовано на связке Arduino pro mini + NRF24.
    Управление аквасторожом
    5e855a7dd9ce4ad883300810f4980fc2.jpg
  • счетчики расхода воды (Счетчики с импульсным выходом). Импульсы подсчитываю Arduino pro mini и отдаю данные по UART контроллеру «ванной» (Arduino UNO + Ethernet Shield W5100).
    Счетчик расхода воды
    6b833014adf947448f7a8c1339a1101b.jpg
  • счетчик электроэнергии (с импульсным выходом). Импульсы считаю аналогично счетчику воды


Управление УД организовано через web как с компьютера так и с телефона или планшета. Плюс организовано управление голосовыми командами через телефон с помощью приложения Tasker.

Шкаф автоматики
Рабочий хаос.

dbdfaf3eabf045c98b83f18546d8cfc4.jpg


Еще немного фото
34d8c8f3ec754c49b772adf4b91e75b7.jpg

6a51628e2e1149e6b3a92f26b5ee4089.jpg


P.S. Это первая итерация моего УД и еще не все доделано. Если какие-то моменты будут интересны читателям, то раскрою более подробно в следующих статьях.

© Geektimes