Программа для управления умным домом. Panasonic Home Network: Полная защита на все случаи жизни. Некоторые особенности ПО

Программа Умный дом на ПК

2.9 (57.78%) 9 votes

Что такое ПО для Умного дома?

Программа «Умный дом» - комплекс программных утилит по управлению:

  • электричеством;
  • электроприборами;
  • охранной системой (сигнализацией, видеонаблюдением);
  • климат-контролем.

Система «Умный дом»

Логичное решение – на настольный компьютер. Его объем памяти справляется со всеми задачами по контролю и изменению параметров в доме. Из затрат в этом случае владелец дома тратится только на программу автоматизации, но и от них избавляются. Скачайте программное обеспечение для «умного дома» бесплатно. В интернете имеются демонстрационные версии и свободные для скачки утилиты.

Производители

В интернете существует возможность найти и скачать «умный дом» на бесплатной основе на официальных сайтах следующих производителей:

  • MajorDoMo . Его программа для компьютера является бесплатной и позволяет полноценно управлять всей автоматикой в жилье и мгновенно отображать текущее состояние комплекса. Разработчики ПО утверждают, что их программа «Умный дом» не имеет высоких требований к памяти, типу видеокарты и другим техническим характеристикам настольного ПК. MajorDoMo устанавливается на операционную систему Linux или Windows. Чтобы запустить ее, после скачивания установочного файла требуется его запустить (путь для установки не меняйте, иначе придется в ручном режиме изменить путь для каждого файла MajorDoMo). В MajorDoMo ведется контроль над электроприборами, сигнализацией, освещением и температурой;

Интерфейс программного обеспечения MajorDoMo

  • Home Sapiens . Это программное обеспечение для «умного дома» управляет домом при помощи голоса, предоставляет универсальный пульт для контроля над самыми частыми действиями, а также интегрируется с уже подключенными комплексами автоматизации. Управление Home Sapiens доступно из любой точки мира при помощи компьютера или смартфона. Производитель предоставляет бесплатное использование демоверсии;

  • «Умный дом 1.0» . На сайтах в ее описании сказано, что утилита управляет «умным домом» или офисом, а вся поступающая информация зашифровывается. Разработано оно было в 2008 году и до сих пор используется ввиду простоты интерфейса. Установка такой утилиты на ПК предусматривает ежедневник, который имеет голосовые напоминания, список заданий, пульт с дистанционным управлением для электроприборов, автоответчик для телефона или факса. Предоставляется доступ к электронной почте на сервере;

Системы контроля Умный дом

  • DIVISION Constructor . Этот редактор создает сценарии (управление работой телевизора, кондиционера или ночника), которые управляются посредством нажатия кнопки или работы датчика. После скачивания и создания схем функционирования директория проекта в автоматическом режиме создает файлы для сервера и клиента (владельца). В них имеются данные для управления «умным домом».

Всем добрый день. В качестве хобби написал программу, которую можно использовать как часть системы “умный дом”. Чтобы сразу заинтересовать читателя, продемонстрирую некоторую малую часть сценариев использования ПО:



Вкратце:

1. Основная часть ПО - сервер, который крутится на ОС Windows, написан на C#;
2. Клиент на ОС Android, написан на Java;
3. Планируются клиенты на UWP и IOS, web-клиент.

Некоторые особенности ПО:

1. Конструктор сценариев. Создание сложных сценариев с циклами и условиями;
2. Работа с устройствами ZWave и Modbus;
3. Вложенность сценариев. Можно один сценарий использовать в другом в качестве процедуры;
4. Запуск удаленного сценария. В сценарии текущего сервера можно запускать сценарий удаленного;
5. Возможность добавлять в систему свою функциональность посредством создания модулей;
6. Запуск сценариев с помощью смартфона.

Конструктор сценариев

Программа позволяет создавать как сложный сценарий, так и одиночное действие.

Одиночное действие - это сценарий, который содержит только одно действие. В нем нет возможности создавать циклы и условия, а можно лишь “замапить” определенное действие на кнопку в UI клиента.

В качестве примера приведу свой способ их использования: создал категорию “Розетки”, в ней собрал все лампы, бытовой вентилятор, светильники, телевизор и компьютер. Теперь, чтобы включить одно из этих устройств, следует открыть клиент на андроиде, зайти в категорию “Розетки” и выбрать соответствующий пункт меню.

Обычно, одиночные действия использовать неудобно, так как различные устройства удобно запускать при каком-то условии или хотя бы не по одному. Именно для этого нужен “сложный сценарий”, о чем далее.

Конструктор сложного сценария позволяет создавать сценарии с циклами и условиями. Имеет два режима: просмотр и редактирование.

Пример сценария в режиме просмотра
Пример сценария в режиме редактирования





ЕСЛИ и ИНАЧЕ в конструкторе . В данных конструкциях можно создавать цепочки условий с логическими операторами НЕ, ИЛИ, И. Конструктор позволяет создавать группу условий и использовать операторы непосредственно с группой. Если условие остается пустым, то оно автоматом вычисляется как ложь.

Есть некоторое количество встроенных проверок (такие как проверка на дату, время и т.д.), а также некоторое количество в качестве подключаемых модулей.

Цикл ПОКА в конструкторе . Цикл состоит из условия и тела. Условие создается аналогично тому, как он создается в конструкции ЕСЛИ (группы условий, операторы НЕ, ИЛИ, И).


Основное окно конструктора сценариев



Также можно настроить следующие параметры сценариев:

Запуск извне (вкл/выкл), позволяет запретить или разрешить запуск сценария с другой машины или из клиента;
- Автоматический запуск сценария при старте системы;
- Выбор категории сценария, позволяет отображать в UI клиента пункт меню для запуска сценария в определенной категории.

Работа с устройствами ZWave и Modbus

На данный момент система поддерживает устройства ZWave (на основе openzwave) и Modbus RTU (на основе nmodbus).

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

В моей программе модуль ZWave позволяет производить все стандартные операции с устройствами, такие как удаление, добавление устройств, сброс контроллера. Также можно использовать несколько ZWave контроллеров, конечный пользователь не увидит разницы. К примеру, можно осуществить снятие показаний температуры с датчика, который соединён с контроллером «А», и запустить кондиционер с помощью контроллера «Б». Тут нет ни каких ограничений, любое действие и проверка осуществляются стандартными способами и добавляются в конструкторе сценариев.



Рынок ZWave устройств достаточно широк. Имеется множество исполнительных устройств, таких как релейные модули, лампочки, устройства для работы с кондиционером, терморегуляторы, регуляторы теплого пола, розетки, переключатели. Так же существует множество датчиков: датчик открытия двери, температуры, датчик протечки, датчик присутствия и т.д. В качестве контроллера ZWave можно использовать USB stick.


Основное окно ZWave модуля


Окно выбора контроллера и операций с ним


Выбор узла (датчики, переключатели и т.д.)


Выбор параметра узла (включен/выключен, различные числовые параметры, такие как температура, влажность и т.д.)

Modbus - это проводной протокол, применяемый для связи между электронными устройствами, которые его поддерживают. В контексте нашей программы может быть полезен для работы с релейными модулями, для чего я его и использую у себя дома.

Вложенность сценариев

Вложенность сценариев используется для декомпозиции сценариев умного дома. Часто бывают такие ситуации, когда одно действие участвует во многих сценариях (например, отключение всех бытовых устройств может происходить по нажатию на пункт меню в программе, по сценарию выхода всех wi-fi устройств из сети, просто по таймеру), и поэтому каждый раз создавать (или править) одинаковый алгоритм в каждом из сценариев не представляется удобным. Для этого существует такое встроенное действие, которое позволяет запускать уже созданный сценарий в текущем. Также это может быть удобно, когда часто добавляются новые бытовые устройства (или другие частые изменения в алгоритме работы “умного дома”), для изменения работы всех сценариев достаточно будет изменить лишь один сценарий, который используется в них.

Запуск удаленных сценариев

Посредством запуска удаленных сценариев можно запускать сценарий одного сервера в сценарии другого. В качестве примера хочу привести мой вариант использования этого функционала: создал сценарий (на домашнем сервере) под названием “свет+мультимедиа”, который включает свет в помещении, запускает мой десктоп (используя WakeOnLan), включает тв, к которому подключен десктоп и ждет пока на нем (десктопе) запустится экземпляр нашей программы, затем запускает на ней сценарии “включить музыку” и “звук на 20 единиц” с помощью запуска удаленных сценариев.

Написание собственных модулей

Помимо того, что пользователь может создавать сложные сценарии штатными средствами, программа позволяет “расширять” ее пользовательскими модулями на C#. Все элементы действий и проверок в сценариях (такие как “Проверка по дате”, “Показать сообщение”, “Действие Modbus”, “Действие ZWave” и т.п.) это классы, унаследованные от ICustomAction и ICustomChecker. Следуя определенным правилам, любой пользователь может создать свой модуль, который может быть как очень простым (например, озвучивание текущей температуры воздуха за окном), так и сложным, за которым может крыться целый фреймворк. Достаточно наследоваться от интерфейсов ICustomAction или ICustomChecker, расставить несколько атрибутов, скомпилировать DLL и добавить в программу через вкладку “МОДУЛИ” (полная инструкция создания модулей).

Запуск сценариев с помощью смартфона

*пока только OS Android

Сценарии отображаются на главном экране и в категориях. Категория является виртуальной “папкой”. При запуске сценария обновляется статус соответствующей кнопки.

Экран настроек соединения
Экран с запуском сценариев





Помимо этого, есть возможность запускать сценарии из меню быстрого запуска на PC.
Меню быстрого запуска



В дальнейшем планируется клиент для UWP, IOS, web, а так же голосовой модуль для управления устройствами (планы на ближайшее будущее) и создания сценариев с помощью голоса (стратегические планы).

Видео напоследок:

P.S.: Если нашли ошибку в программе, то пожалуйста, перешлите её на

  1. Проблемы, возникающие на пути
  2. Что в активе

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

Для чего может быть нужен «Умный дом»?

Концепция «умного дома» появилась не вчера и даже не позавчера. Автоматизированное и автоматическое управление домашним хозяйством зародилось в умах людей еще в конце XIX века, когда на смену настоящим лошадиным силам пришли стальные машины в массовом порядке. И именно тогда человек задумался, а ведь можно же объединить все приборы домашнего обихода в единую систему и управлять ими как тому душе захочется. Хочешь включай свет в душе на втором этаже выключателем в сарае, а хочешь включай систему обогрева просто звонком по телефонному номеру.

В умах мечтателей рисовались идиллистические картинки того, как человек, приходя домой, наслаждается комфортом, а все домашние заботы выполняются сами собой. Эти чаяния были воплощены, в том числе, и в многочисленных художественных произведениях, начиная от неподражаемого Чарли Чаплина и заканчивая смелыми произведениями писателей-фантастов. И во многом они предвосхитили будущее развитие домашней техники и ее интеграцию в единые системы. Но история пошла не совсем так, как виделось многим.

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

Умный дом, вполне разумно нагрузить еще и различными охранными функциями. Он должен уметь распознавать своего хозяина и отпугивать чужаков включая свет, бытовые приборы и всячески имитируя присутствие хозяев на объекте. Кстати получая сведения о местоположении своего хозяина, приличный умный дом, к его приходу домой успеет привести микроклимат к заданному состоянию. А в промежутках, когда дома никого нет, дом будет стараться экономить энергию, будь то газ или электричество, по максимуму.

Что еще? Пожалуй, умный дом должен уметь управлять бытовыми приборами, желательно без лишних телодвижений со стороны жильцов. Так, возможно, что для управления телевизором, музыкальным центром и автоматическим пылесосом можно было бы использовать единый пульт или же обойтись вообще без пультов, применяя голосовое управление или жесты. А заодно, некоторым владельцам хотелось бы иметь возможность получать какую-то историческую статистику. Например, как изменялась температура в кладовке в течение года или как коррелируют расход воды и включенный свет в ванной комнате на втором этаже.

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

Методы реализации концепции «Умный дом»

С технической точки зрения тут все просто. Каждый умный дом делится на центральный контроллер, хранящий и обрабатывающий логику событий, датчики, собственно генерирующие события и разнообразные исполнительные устройства обрабатывающие приказы центрального контроллера. Собственно, это и есть система умного дома. В некоторых же случаях, при большом желании, можно еще добавить и некий интерфейс для коммуникации с пользователем. Это может быть пульт или пульты управления, программа на телефоне или планшете, либо вообще отдельное рабочее место, как в сериале Star Track.

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

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

Именно на этом этапе, я хочу сразу заметить, что датчики и исполнительные устройства как-то должны общаться с центральным контроллером. Они должны с ним соединяться, это раз, и пересылать потоки данных в понятном для всех сторон виде, это два. С точки зрения физической организации тут доступно два основных варианта: проводное соединение и беспроводное соединение по радиоканалу. Экзотику типа оптического взаимодействия или передачи данных и команд на перфокартах пневматической почтой мы не рассматриваем. Кстати радиоканал может быть реализован на вполне широком спектре радиочастот, хотя производители оборудования стараются все же ограничиться нелицензируемыми частотами, доступными для гражданского населения.

Проблемы, возникающие на пути

Если бы мы жили в идеальном мире, то у нас не было бы никаких проблем, за исключением одной. Нам было бы слишком скучно жить в таком мире. Поэтому на пути реализации системы умный дом встает множество, вполне преодолимых затруднений, которые наполняют наш мир красками радости бытия, разумеется только в случае их удачного преодоления. А о потенциальных проблемах можно говорить много, долго и нудно.

Прежде всего стоит начать именно с физической среды по обмену информацией между центральным контроллером и всей периферией. Если используется радиоканал, то в городской застройке он может работать очень нестабильно из-за сильно загруженного эфира, особенно с учетом того, что многие производители оборудования совершенно игнорируют необходимость наличия гарантированной доставки сообщений. Более того, радиообмен данными потенциально уязвим для злоумышленников, ведь его очень просто прослушать, а меры кодирования передач подвержены компрометации. И вот ладно, если это был сигнал от датчика температуры за окном. А если это была команда отопительной системе? Или замкам на входной двери?

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

Казалось бы, тут решением может быть беспроводное соединение, если особенно дом загородный и плотность радиопомех там минимальна, но не стоит забывать и о питании различных датчиков и устройств. Если некоторые, далеко не все, датчики можно запитать от сменных батарей, то вот с исполнительными устройствами будет все не так просто. Мощные электромоторы требуют подведенного электричества из розетки. И не будет ли вам обидно, что ваш дом замерз только потому, что в кране системы отопления вдруг внезапно сели батарейки? Поэтому даже с беспроводными системами вероятность необходимости мудрить с проводкой остается весьма высокой. И еще немного по батарейному снабжению энергией. Их нужно периодически менять, но делать это будет лень уже после второй итерации. Человеческий фактор как ни крути. По крайней мере мы должны жить, а не заниматься бесконечной заменой элементов питания во всевозможных гаджетах.

Кстати, некоторые исследователи работают в направлении добычи энергии для питания датчиков из окружающего устройства эфира. Так уже представлены публике действующие прототипы датчиков температуры, которые заряжаются от радиоволн Wi-Fi точек доступа, а затем, когда энергии накоплено уже достаточно, подключаются к сети Wi-Fi и отправляют показания исполнительному контроллеру. Плюсом такой системы как раз и является то, что не требуется ни проводов для передачи информации, ни для питания. Но, например, датчик содержания CO 2 в воздухе запитать от точки доступа уже не выйдет, поскольку сам датчик для проведения измерений должен нагреваться до высокой температуры, а на это требуется уйма энергии.

Но и это еще далеко не все проблемы встречающиеся на пути внедрения системы умного дома на практике. В силу неорганизованности рынка, многие игроки на нем были вынуждены разрабатывать собственные стандарты обмена данными между периферией умного дома. Так появились на свет устройства, которые несовместимы друг с другом. И пытаясь автоматизировать свой дом, его владелец становится заложником фирмы производителя, поскольку не может перейти на устройства другого изготовителя по причине отсутствия совместимости. И дело тут далеко не в номенклатуре устройств или их стоимости у одной компании. А что будет если она сойдет со сцены в то время когда системы умного дома должны работать десять и даже двадцать лет? Что делать через 15 лет, если вышел из строя центральный контроллер? Затевать новый ремонт и полностью менять систему умного дома? Вопрос остается без ответа.

Но тут появился свет в конце тоннеля. На свет таки появились и постепенно разрабатываются доступные стандарты. И если даже зайти на русскоязычную версию Википедии, то только там можно насчитать как минимум девять различных стандартов коммуникации. И это не считая фирменных стандартов. Разумеется, пройдет некоторое время, и производители так или иначе примкнут и усилят некоторые стандарты как, например, это произошло с форматами видеодисков (а были DVD, Video Disk, Blue Ray, HD DVD и прочие). Только вот упражняться они будут за счет потребителя (и всегда так было). И в случае ставки не на того жеребца, можно приплыть к некоторому диссонансу уже через пару лет, попытавшись добавить еще один датчик к системе.

А удобство использования? Вот есть кнопка на стене, нажимая на нее я получают четкое действие. Если вместо кнопки там будет дисплей, то вместо единичного нажатия, я, вполне резонно, ожидаю увидеть там меню, которое потребует от меня не только мысленных, но и моторных усилий в виде множества нажатий на экран или клавиатуру. Друзья, это удобно только в космических фантастических фильмах, где герои нажимают тучу кнопочек перед каждой дверкой. А в реальной жизни все должно быть быстро и четко.

В завершение этой сентенции, я хотел бы упомянуть еще об одной проблеме, про которую обычно забывают. По мере усложнении системы она становится все менее и менее надежной. Самая простая система, где присутствует только положительная или отрицательная обратная связь - наиболее надежная. Представьте связку из термостата и газового клапана. Чем выше температура, тем сильнее термостат закрывает газовый клапан понижая тем самым температуру. А если туже функцию поддержания заданной температуры возложить на неизмеримо более сложное устройство, например, на компьютер? UEFI, BIOS, микропроцессор, северный и южный мосты, оперативная память, дисковая подсистема, блок питания, операционная система, программа управления… Чем больше элементов, тем меньше надежность. Ведь даже в теории управления при дублировании систем контроля, при различии их показаний предпочтение отдается тому показанию, которое получено из более простой системы. А что будет если ваш супернавороченный умный дом просто зависнет где-нибудь посредине января?

Подбираемся к практической реализации

В процессе реализации проекта по микросерверу я долго размышлял, для каких целей я могу использовать концепцию «Умный дом» в приложении к своему дому. Эти размышления так или иначе приводили меня к решению, что централизованный умный дом мне не нужен. Система отопления замечательно регулируется промышленным контроллером отопительного котла с выносным блоком от Siemens. И делает он это замечательно. Простота контроллера не позволяет ему зависнуть в самый неудобный момент. И эта простота проверена годами. И даже когда вышел из строя один из температурных датчиков, отопление не пропало, хотя и работало по весьма чудному алгоритму. Что, впрочем, честно отображалось и на контроллере.

Следить за температурой в доме и управлять некоторыми устройствами мне помогает система Кситал . И в случае чего, это простая система, мне подаст соответствующий тревожный сигнал. Не о том, что у меня заклинил шаровой кран на управлении отопления, а о том, что в помещении под контролем опасно понизилась температура. И сообщит мне об этом в виде SMS-ки. Система работает несколько лет без сбоев. Что еще нужно?

Охраной занимается отдельная система, вызывающая в случае чего вооруженную поддержку, а заодно оповещает и меня о несанкционированном доступе. И интегрировать ее с чем-то еще не стоит явно. Включать и выключать свет по расписанию, конечно, здорово. Но там, где мне нужно включить свет, когда кто-то есть, работает совершенно автономный датчик движения с реле. Выключать свет на удалении можно при помощи проходных выключателей , как раз и разработанных для длинных коридоров или лестниц. Такой выключатель позволяет включать и отключать свет или другую нагрузку из любой точки, нужно только грамотно развести проводку. Надежнее решения не придумать. А с имитацией присутствия успешно справляются автономные таймеры, управляющие нагрузкой.

Конечно, я подумывал о дистанционном включении насоса для полива огорода, либо об автоматизированном управлении ставнями и жалюзи. Но для полива достаточно лишь радиореле, которое способно подключать или отключать нагрузку по сигналу с брелока. А от идеи с управлением ставнями пришлось отказаться лишь только как я прикинул, что придется сделать, сколько стен вскрыть и сколько кабеля проложить, лишь только для того, чтобы подвести электропитание в нужные места. Получалась почти половина ремонта.

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

И вот зачем портить надежно и стабильно работающую систему ради какой-то непонятной идеи? Зачем собственноручно понижать надежность системы, ошибка в которой приведет к весьма существенным затратам? Вот и мне показалось, что совсем незачем и лучше не нагружать микросервер функциями «Умного дома».

Что в активе

Тем не менее, я все же прошелся по самым доступным, если не по всем, системам для автоматизации домашнего быта на основе Ubuntu или совместимых систем. Представленный ниже текст сократит время на поиск чего-то интересного для реализации в своих проектах.

CCU.IO

Весьма продвинутый фронт-энд и контроллер бизнес-логики от какого-то немецкого инженера. За время написания статьи, продукт лишился своего собственного домена и переехал на GitHub . Но, всем при том, система заслуживает внимания, поскольку имеет русскоязычную документацию и форум.

Технологически система реализована на языке JavaScript и библиотеке Node.js, что автоматически означает очень гибкую возможность по реализации каких-то своих функций или изменению стандартных механизмов. Только для этого требуется быть программистом, чего явно не хватает многим, очень многим. Хотя конфигурировать систему могут и обычные пользователи, если ознакомятся с документацией.

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

CCU.IO взаимодействует с внешними системами, датчиками и исполнительными устройствами посредством драйверов. Мне удалось насчитать более тридцати драйверов для различных устройств, начиная от взаимодействия с базами данных MySQL и электронной почтой, и вплоть до управления умными лампами Phillips или подключения к ресиверам Onkyo. Среди поддерживаемого оборудования можно найти, разумеется, 1-Wire, HomeMatic и некоторые другие.

В целом CCU.IO - настоящий комбайн, который может делать почти все и работает на почти любом оборудовании, начиная с Windows и Linux и заканчивая различными одноплатными компьютерами.

Domoticz

А это уже чистая система , центральный контроллер, предназначенный для создания системы класса «Умный дом». Domoticz выпускается под эгидой Open Source, поэтому может модифицироваться и дорабатываться без особых затруднений, что очень важно когда первоначальному автору просто надоест ее поддерживать. Как и CCU.IO Domoticz работает на всем, начиная от Windows и Linux, и заканчивая всевозможными встраиваемыми устройствами.

Среди поддерживаемых устройств и протоколов я насчитал почти сорок наименований, хотя среди них встречались и такие редкости как Logitech Media Server или SolarEdge Inverter. Тем не менее, найти то с чем можно спарить Domotics можно без особого труда.

К одной из наиболее интересных возможностей я бы отнес наличие возможности графического построения логики процессов работы контроллера. Подобная возможность позволяет создавать обратную связь на различные события в системе без использования тяжкого труда разработчика.

В целом, система сформирована весьма цельной и достойна тщательного с ней знакомства. Я даже установил ее на один из своих NAS-ов и мониторил его температуру на протяжении полугода. Тольку от этого никакого не последовало.

Jarvis

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

MajorDoMo

Еще один конструктор для создания контроллера умного дома, но уже от русскоязычных разработчиков. Система реализована на языке PHP, но допускает свою доработку, вернее доработку внутренней логики, на языке визуального построителя, JavaScript, Dart, Python или XML. Хотя, как разрабатывать логику на XML, лично мне не очень понятно.

Проект разрабатывается весьма активно, имеет обширную community и поддерживает порядка двух десятков различных систем и протоколов. Сам же MajorDoMo распространяется под открытой лицензией MIT, это значит систему можно свободно распространять и модифицировать как угодно, не стоит только забывать оставлять уведомления об авторстве. Систему однозначно стоит рассмотреть, возможно, как одного из главных кандидатов.

Оборудование

Что касается периферии, то тут с одной стороны все радужно, есть множество различных устройств от разных производителей, но с другой, если вспомнить о совместимости, то становится уже грустнее. Особенно, если учесть, что далеко не все что совместимо будет работать. Но что-то на рынке, тем не менее есть, на что стоило бы обратить внимание.

Белорусские товарищи разработали и активно продают свою систему класса умный дом F&Home . В систему входят как отдельные устройства, которые можно применять раздельно от всего, так и интегрирующие комплексы, позволяющие связывать все в единую систему.

Специалисты Z-Wave.me предлагают великое множество устройств для автоматизации домашнего дома. Разумеется, вся их продукция совместима с протоколом Z-Wave и может применяться в умных домах, построенных на указанной платформе. У ребят встречаются и настоящие редкости, например, адаптер для считывания оборотов вращения с механического счетчика электроэнергии. Что уже не мало, особенно в плане апгрейда существующей системы электропитания.

Итоги

И подходя к завершению повествования хочется подвести итог. Итог всему, что было сказано в рамках проекта «Домашний микросервер». Мое мнение таково - домашнему микросерверу быть. Это центр развлечений вашего дома и с течением времени он будет все больше и больше обрастать дополнительными функциями. А по прошествии расчетного времени использования, его заменит новый сервер, более производительный, более надежный и более энергосберегающий.

Получен ли какой-то зримый экономический эффект, если сравнить самосборный микросервер с готовыми комплектами? С одной стороны - да, оборудование и программы обошлись в вчетверо меньшую сумму, чем соразмерный по производительности «готовый» NAS или сервер. С другой, пришлось потратить изрядно времени на установку и настройку всего этого добра. А время ресурс ой какой дорогой.

А получилось ли расширить функционал, как планировалось в самом начале? А вот это да. В плане функциональности свобода была получена феноменальная. Созданный микросервер можно грузить любой задачей, и он справится.

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

Очень быстро я выяснил, что в мире нет единого стандарта, либо же «эталонного» производителя умных устройств и мне придется объединить в одну экосистему «зоопарк» из нескольких десятков гаджетов от разных производителей. Nest делает лучшие в мире термостаты и умные камеры, китайцы производят отличные розетки с кучей полезных функций, ABB и Schneider производят лампочки - список можно продолжать долго и об этом речь пойдет в следующей статье. Самый важный момент состоит в том, что каждый из производителей предлагает соственный софт для управления своими гаджетами и какого-то простого решения, чтобы управлять ими централизованно просто нет.

Я начал искать способы, как можно объединить все лучшие в своем классе гаджеты в единую систему и «общаться» с ними через смартфон. Я являюсь скорее продвинутым пользователем, чем разработчиком и надеюсь, что мой практический опыт будет интересен всем, кто интересуется темой умных домов и его смогут повторить рядовые пользователи.

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

После двух дней изучения вопроса у меня осталось три варианта для создания умного дома.

  1. Оплатить услуги специализированной компании и не погружаться в суть процесса
  2. Купить все необходимые устройства и настроить их на базе либо полноценного сервера, либо Arduino\ Raspberry PI
  3. Самостоятельно нарисовать приложение для управления умным домом на базе мессенджера Sender и прописать логику работы гаджетов на облачной ОС Corezoid
Теперь я хочу пройтись по порядку по каждому из трех вариантов и пояснить логику своего выбора.

Вариант 1. Заплати и свободен

По отзывам большинства опрошенных мной экспертов, лучше всего проектировать «умный дом» на этапе строительстве или ремонта помещения. Это нужно для того, чтобы «зашить» в стену все необходимые кабели, завести резервные источники электропитания и водоснабжения, установить датчики на трубы и котлы, и так далее. Это наиболее дорогой, но в то же время функциональный вариант. Вот краткий перечень его возможностей.
  • регулировка температуры в помещении и освещения, в зависимости от погоды, времени суток и наличия хозяев дома
  • автоматическое открытие и закрытие штор, жалюзи, шлагбаума
  • включение/выключение системы обогрева пола, ступенек, подъезда к гаражу, полива газона
  • контроль работы всех электроприборов, инженерных систем и экономия электроэнергии
  • предотвращение утечек газа и воды
  • удаленный прогрев сауны или бани
  • переход на резервные источники электроэнергии
  • защита от перенапряжения, и утечки газа
  • датчик заполнения выгребной ямы и забивки слива
  • пожарная сигнализация
  • удаленный контроль видеокамер, умная система безопасности
Такая система требует серьезного проектирования и самостоятельно расписать концепт «умного дома» – задача малореальная. Как я уже писал выше, в США и Европе производители оборудования разрабатывают решения под каждый конкретный случай и контролируют процесс монтажа. Стоимость «под ключ» начинается от нескольких тысяч тысяч евро и зависит от площади помещения и количества используемых датчиков. По этой ссылке можно почитать про решения от Siemens. Похожие комплексы предлагают IBM, Bosch, Cisco, Panasonic, Logitech, ABB, Philips и другие бренды.

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

Вариант 2. Умный китайский дом

В Китае можно купить решительно все – начиная от брелков-шпионов (за которые в Украине почему-то сажают в тюрьму) и заканчивая атомными батарейками. На alibaba.com , aliexpress.com , dx.com , taobao.com и прочих подобных сайтах можно купить как готовые системы, так и их отдельные элементы. Большинство китайских гаджетов встраиваются в уже готовые дома и перепланировка для их установки не нужна.

Как пример «коробочного решения» можно привести «умный дом» от Meizu. Это совокупность гаджетов от разных компаний, которые объединены программным комплексом LifeKit. Это весы RyFit, лампа X-Light Plus, очиститель воздуха Air Cube, розетки и другие устройства. Аналогичную систему недавно выпустил и Xiaomi.

Что касается одиночных «девайсов», то здесь все еще интереснее. На китайском аналоге Kickstarter – площадке Demohour регулярно появляются просто потрясающие вещи. Недавно «умная розетка» Smart Plug K установила рекорд китайского краудфандинга и собрала около $270 000. Розетка поддерживает все популярные типы вилок, умеет удаленно включать и выключать любую технику, поддерживает доступ по 3G и Wi-Fi и работает как Wi-Fi повторитель для усиления сигнала. Хороший набор устройств предлагает и китайская компания BroadLink. На Amazon.com можно купить набор нужных гаджетов и собрать с их помощью собственную версию «умного дома». По этим ссылкам ( , , ) можно почитать и про другие устройства.

Минус этого варианта заключается в том, что на рынке единого простого решения, которое позволит объединить все доступные на рынке гаджеты в единую систему. Приходится делать выбор – покупать набор гаджетов от одного производителя, либо покупать устройства разных брендов и управлять каждым из них по-отдельности. Первый вариант плох тем, что в мире нет «эталонного» разработчика «умных домов», который производит лучшие в своем классе гаджеты, а второй тем, что управление каждым из устройств по отдельности противоречит самому принципу умного дома.

На Хабре описаны десятки способов самостоятельно создать «умный дом» на основе Linux-подобных систем, Arduino, Raspberry PI или полноценных серверов. Это отличное решение, но я являюсь скорее продвинутым пользователем, чем разработчиком и вряд ли смогу воплотить в жизнь подобные схемы. Я решил найти способ, который не требует специфических знаний.

Вариант 3. Сделай сам

В процессе поиска мне попалась на глаза разработка украинских программистов - мессенджер Sender. Принцип работы Sender схож с китайским WeChat, он позволяет создавать полноценные мобильные приложения с помощью простого конструктора форм. Сам конструктор далек от идеала, но кое-что с его помощью сделать уже можно. На выходе у меня должно получиться «приложение в приложении», которое получает данные от устройств через встроенный API и выводит их на экран смартфона. Логику работу гаджетов я хочу описать с помощью облачной операционной системы Corezoid, которая не требует знаний языков программирования и позволяет автоматизировать практически любой процесс, в том числе и поведение устройств в умных домах. Добавить метки

Программа для управления всеми системами Умного Дома. Устанавливается на планшетный компьютер на Windows, Android, iOs. Подключается к контроллеру через Wi-Fi или интернет (протокол связи ModBus TCP).
Работает с практически любыми промышленными контроллерами, в том числе Beckhoff и ОВЕН.

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

Функции программы EasyHome:

  • управление системами освещения (в том числе разноцветными светодиодными лентами и лампами с изменяемой яркостью свечения)
  • управление климатом каждого помещения
  • связь с системеми охранной и пожарной сигнализации
  • связь с системами вентиляции и кондиционирования
  • контроль потребляемой мощности по нескольким фазам с автоотключением неприоритетных нагрузок
  • управление розетками и прочими электроприборами
  • установка на любое количество устройств, управление через Wi-Fi или интернет
  • контроль и предотвращения аварий: протечка воды, утечка газа, электроаварии
  • сбор информации со счётчиков воды, газа и электричества
  • управление по сценариям и предустановкам
  • доступ к контроллеру через локальную сеть или через внешний IP адрес (автовыбор при запуске программы)
  • отображение изображения с IP видеокамер (в версии для Windows, поддерживается видеопоток MJPEG и H264, не все модели камер)
  • возможность запуска разных интерфейсов (запрос при запуске программы)

И многое другое!

Скачать EasyHome для iOS (iPhone и iPad):

Чтобы загрузить DEMO версию интерфейса приложения надо в окне добавления конфигурации набрать адрес:

http://сайт/downloads/EH_DEMO.ehpa

Новое в версии EasyHome 7.9.5 для iOS (январь 2018):

  • Добавлен удобный контрол светодиодной ленты RGB с выбором цвета
  • Уоучшена функция автомасштабирования элементов
  • Исправлен адрес скачивания Демо интерфейса (сайт был переведен на защищенный протокол https)
  • Улучшена панель аварийных сообщений
  • Множество мелких улучшений и исправлений в работе программы

Новое в версии EasyHome 7.9.1 для iOS (апрель 2017):

  • Загрузка файлов конфигурации через интерфейс самой программы
  • Выбор конфигурации при запуске и быстрая смена интерфейса
  • Новый контрол управления RGB лентами
  • Функция автоповорота экрана (удобно для iPhone)
  • Прочие мелкие улучшения и исправления

Как пользоваться ДЕМО версией:

1. Скачать архив

2. Распаковать архив в любое место (например, на рабочий стол)

3. Запустить файл EasyHomeEditor.exe

В ДЕМО версии можно делать всё, что угодно: менять интерфейс, двигать элементы, перемещаться между окнами и т.д. Но поскольку связи с контроллером нет, то икноки не будут меняться при нажатии, а все значения (температуры, токи, состояния) будут равны нулю. Для возможности подключения к контроллеру надо приобрести лицензию (информация о цене - внизу этой страницы).

Новое в версии EasyHome 7.8 (апрель 2017):

  • Возможность отправки контроллером произвольных смс-сообщений на русском языке для контроллеров ОВЕН (ранее было доступно только для Beckhoff)
  • Появились свободные функции. Можно задавать любую логику работы входов и выходов через интерфейс EasyHome. Ранее это было доступно только через изменение кода контроллера нашим инженером.
  • Появились мультисцены
  • Добавлен удобный драйвер для работы с инфракрасными передатчиками по интерфейсу RS485. 4 режима управления любыми кондиционерами через ИК-команды.
  • Возможность подключения инмерителя параметров электросети к контроллеру ОВЕН на одну или три фазы.
  • Можно подключать до 10ти модулей расширения ОВЕН в любой комбинации, общее количество дискретных входов и выходов может быть теперь до 255.
  • Появился астрономический датчик освещённости по высоте солнца.
  • Всякие мелкие улучшения.

Новое в версии EasyHome 7.7 (декабрь 2016):

  • Многочисленные улучшения интерфейса
  • Увеличение скорости работы на системах Windows 10 и iOS 9
  • Появилась возможность перекрывания разных стояков водоснабжения при срабатывании разных датчиков протечки воды
  • Появилась возможность постановки на охрану произвольного набора датчиков движения
  • Появилась функция мультиинтерфейс - предзагрузочное графическое меню в котором можно выбрать, какой именно интерфейс запустить