Невероятное открытие удалось открытить на кухни - температура меньше 273 градусов по цельсию
Openhab и алекса. Алекса чё-то глючит минус 280 градусов. Причём нет ошибок и всё впорядке.
Openhab и алекса. Алекса чё-то глючит минус 280 градусов. Причём нет ошибок и всё впорядке.
Если кратко:В общем наигрался я со своим домашним "зоопарком" с broadlink, sonoff, xiaomi, arduino и esp конструкторами iot ... всё это хозяйство можно отчасти назвать "Умным домом", но это будет громко сказано, ибо всё на костылях, а разные производители и соответственно разные приложения для управления этим зоопарком делают "Умный дом" не удобным и разрозненным в плане управления устройствами и получения информации с датчиков и модулей.
— home assistant лучше, чем majordomo, openhab, iobroker...
— чем лучше?
— чем majordomo, openhab, iobroker... )))
Перейти на одного производителя вариант не самый лучший и тем более экономически выгодный. Те же устройства xiomi высоки в цене, broadlink и sonoff не так богаты ассортиментом, а "колхоз" на arduino и esp зачастую не имеет готовых решений под любую задачу...ну и мой внутренний параноик не хочет полностью полагаться на облачные решения "друзей китайцев", по ряду причин, особенно если это касается видео наблюдения в квартире (не улицы) и автоматического управления устройствами повышенной опасности (например тот же обогреватель).
Решение всего выше описанного тут одно - это перейти на одну систему "Умного дома" отвечающую ряду (именно моих) требований (ТЗ):
1) это должна быть Open-source система, т.е. имеющая полностью открытое и бесплатное ПО;
2) в системе должна быть возможность интегрировать весь мой "зоопарк" (broadlink, sonoff, xiaomi, arduino и esp) в неё;
3) система должна работать на Linux и Windows, на случай если Linux ну совсем никак не зайдёт + она должна быть "портативная", точнее легко переносимая с одной системы на другую, т.е. с Linux на Linux, Linux на Windows, с Windows на Linux, это ещё нужно на случай той же вынужденной переустановки системы;
4) система должна быть повторяемая такими же "Чайниками", как я, причём иметь возможность устанавливаться не только на обычные ПК, но и теже одноплатные компьютеры raspberry или orange, да и другие гаджеты с возможностью установки Linux.
5) должна быть возможность интегрирования русского голосового управления, например Алиса от Яндекса;
6) система должна быть развивающейся, адаптивной и гибкой под разные задачи, которых сегодня нет, а завтра они могут появится;
7) желательна, но не обязательна вся документация на русском языке.
На первом этапе выбора я откинул проприетарные и/или не развивающиеся системы и на выбор у меня остались четыре: Majordomo, HomeAssistan, Openhab и ioBroker. Все четыре системы хороши и каждая хороша по своему, что делает выбор между ними сложным и не очевидным.
1) Majordomo - русскоязычная платформа для самостоятельного создания "Умного дома" с открытым исходным кодом.
2) HomeAssistan - домашняя автоматизация с открытым исходным кодом, которая ставит на первое место локальный контроль и конфиденциальность.
3) Openhab -это программное обеспечение для домашней автоматизации с открытым исходным кодом, написанное на Java.
4) ioBroker - это бесплатное программное решение, разработанное на JavaScript, которое объединяет компоненты для автоматизации зданий от широкого круга поставщиков на одной платформе, независимо от производителя и протокола. Отличие ioBroker от других систем автоматизации это модуль web визуализации в браузере — vis. В отличие от других решений, ioBroker не предусматривает ручного редактирования файлов конфигурации.
Почему мой выбор пал не на ioBroker - для сценариев можно использовать визуальный язык Blockly, но более сложное поведение потребует знания Javascript, который мне "Чайнику" кажется более сложным по сравнению с синтаксисом YAML в HomeAssistan, который по внешнему виду кода для меня чем то схож с HTML.
И тут мне ещё не давал (не даёт) покоя вопрос моего внутреннего параноика: - Как будет работать "Умный дом", если мой браузер не поддерживает Javascript если я его отключил (отключу) по определённым причинам...? Наверно никак... На этом дальнейшее изучение возможностей системы было отложено в сторону, хотя она очень понравилась мне в плане визуализации.
Почему выбор пал не на Openhab - читая описания и отзывы об этой системе встретил где-то, что в OpenHAB нельзя добавить камеры (но это не точно)..., а у меня они есть... на этом изучение возможностей этой системы тоже было отложено в сторону. Хотя может мне показалась очень сложной документация к этой системе, которая насыщена непонятной с наскоку терминологией + отпугнул язык Java, на котором написано ПО.
Почему выбор пал не на Majordomo - тут реализовано собственное голосовое управление системой (Встроенный RHVoice — движок голоса), сделан на PHP, а установка сводится к скачиванию готового архива и его распаковке на карту памяти утилитой (в случае с Raspberry)... - сплошные плюсы для начинающих "Чайников" и даже 7 пункт в моём ТЗ (хотелках) закрыт.... Мой выбор не остановился на этой системе наверно только по причине довольно сомнительной безопасности этой системы написанной на PHP, были и ещё причины но они на текущий момент уже решаемы.
Интерфейс и визуализация "Умного дома" у меня не была в приоритете при выбора системы, ибо все эти "красатульки" в оформлении интерфейса "Умного дома" - это конечно хорошо, особенно если требуется показать (похвастаться) его кому-то, но "Умный дом", на то и умный, что должен быть практически автономным и независимым и прежде всего отвечать требованиям локальной безопасности и конфиденциальности, поэтому я пока остановил свой выбор на системе HomeAssistan. Эта система отвечает всем пунктам моего ТЗ (хотелки), кроме последнего, ну это решается переводчиком в браузере. Да, все скрипты и код для автоматизации придётся писать в файлах YAML, где например нужно строго соблюдать отступы..., есть наверно и другие недостатки, как в принципе и у систем затронутых выше, но есть плюс, который помог сделать перевес в сторону моего выбора HomeAssistan:
- это наличие её портативной версии от AlexxIT (HassWP) для Windows, которая позволяет потестить систему и понять на сколько она подходит не покупая для этого отдельный ПК, сервер или Raspberry, скачав и попробовав её даже на стареньком ноутбуке...
Я не претендую на правильность своего мнения и истину моих умозаключений в конечной инстанции, возможно оно (мнение) даже измениться когда-то, например просто прочтения комментариев под своим постом, но на текущий момент оно сформировалось такое...))) На данный момент уже купил б/у неттоп вместо raspberry для сервера под HomeAssistan (думаю почему - это очевидно, если нет, то напишу как-нибудь отдельный пост), поставил на него Ubuntu 20.04 (к другим ОС Linux пока ещё не готов), установил и приступил к изучению и тестированиюHomeAssistan.
Ну а Ваш выбор - остаётся за Вами!
Пишите - какой системой "Умного дома" пользуетесь Вы и почему Ваш выбор пал в её пользу.
Спасибо за внимание!
Всем бобра! )))
После прочтения поста Умный дом на базе xiaomi - а нужен ли он тебе? решил вставить свою лепту в тему умных домов.
Расскажу про свой умный дом и о том как он используется. Идея реализовать умный дом у меня появилась сразу, как была куплена новая квартира в новостройке. В квартире был черновой ремонт, голая штукатурка, что давало мне возможность выбирать как именно реализовать проект. Беспроводные и готовые решения я отбросил сразу - как дорогостоящие, не очень надежные и требующие питания батарейками.
Поиск вариантов решения привел меня на сайт проекта MegaD-2561. Относительно недорогая, простая и гибкая в настройке система, но самое главное - автономная! Меге (далее я так буду называть MegaD-2561) не нужно подключение к интернету (или локалке) чтобы выполнять базовую функцию: включения и выключения нагрузки по командам из выключателей, что повышает надежность и сокращает риск остаться в темноте из-за выхода из строя "мозгов" умного дома.
Остановив свой выбор на меге, как на коммутаторе, я начал прокладку дополнительной проводки 220В от всех ламп в квартире и вентилятора в ванной к щитку в коридоре. А так же сигнальную проводку от каждого выключателя в щиток.
И вот как выглядит щиток
Да, ужасно не аккуратно, но я планирую привести его в порядок.
После переезда в новую квартиру около года назад, первое время умный дом не был умным. Он ничем не отличался от обычных, разве что выключатели были кнопочными - в них пружинка и они возвращаются в начальное положение. Но начало положено...
Следующим этапом нужно было добавить "мозгов". Выбор пал на миниатюрный компьютер Raspberry Pi 3 Model B+ и бесплатное ПО OpenHab. Протянув витую пару от меги в щитке (через кабель канал) к роутеру, заныканному в шкафу вместе с Raspberry, я наконец получил возможность управлять светом и вентилятором через LAN.
Далее, наверное самое сложное во всем этом, настройка OpenHab. Для связи OpenHab-а с мегой был найден и установлен готовый биндинг. В течении нескольких следующих недель я потихоньку добавлял things (так в OpenHab именуются конкретные вещи которые ты автоматизируешь) в OpenHab. Установив на телефон их приложение и связав его с умным домом я смог уже управлять светом дистанционно, в том числе через интернет из любой точки мира.
Главная страницы приложения на Android
А теперь о том что такое умный дом как его использовать. Дистанционное управление это еще не умный дом. Мысль о том что и как автоматизировать приходила со временем. Так, начинаешь понимать что какие-о действия ты повторяешь постоянно: включаешь свет в коридоре после заката, включаешь вентилятор в ванной после душа, ходишь по квартире и выключаешь свет перед уходом из дома... Я начал автоматизировать эти вещи.
Первым делом были установлены датчики температуры и влажности в комнатах и в ванной. Что позволило автоматизировать вытяжку в ванной в зависимости от влажности в ванной комнате и в коридоре. Нет смысла включать вытяжку если и там и там влажность одинаково высокая, например летом.
Потом подключил API ЯндексПогоды, где помимо погоды выдается время восхода и заката, и на основе этих данных автоматизировал настенные бра в коридоре - они включаются после определенного времени после заката, с учетом ясности неба. Датчика освещенности у меня не было, да и данный способ отлично работает. Ну а бонусом погода:
Кстати, еще одна функция дома - отслеживать кто есть дома. Некоторые автоматы не работают если дома никого нет. Например свет в коридоре не включится если дома никого, и сразу включиться при открытии входной двери в квартиру.
На один из выключателей в коридоре, у входной двери, повешена дополнительная функция: если его зажать на пару секунд, запустится скрипт который выключит весь свет в квартире, а также телевизор, к которому тоже нашелся биндинг в OpenHab.
Установка датчика на дверь в ванную/туалет (совмещенный санузел) и датчика движения внутри позволил автоматизировать свет. Он включается когда открывается дверь, и выключается когда дверь закрывается, а в ванне никого нет. Тут есть баговина, из-за задержки датчика движения и калдауна, свет может неожиданно выключится когда кто-то моется в душевой кабине. Стекло не проницаемо для датчика движения.
Благодаря возможности привязать к OpenHab что-то практически через любой протокол, я успешно интегрировал в умный дом Wi-FI реле Sonoff, предварительно перепрошив их от проприетарной экосистемы itead на свободную ПО https://github.com/arendst/Tasmota.
На этом реле меня работает подсветка на кухне, которая управляется тем же выключателем: 1 клик - подсветка, 2 клика - потолочные светильники, долгое зажатие - выключить оба. Блок питания и реле спрятаны в корпус вытяжки, никаких проводов не видно.
Так же, этим реле я автоматизировал простой и дешевый увлажнитель воздуха. Умный дом включает/выключает его в зависимости от влажности в комнате.
Обратите внимание на будильник. Исполнительные блоки MegaD-8I7O-SD, которые у меня, обладают диммируемыми каналами. Свет у меня диммируемый и привязан к будильнику в телефоне. Когда я ставлю будильник, OpenHab подхватывает время и настраивает плавное включение света за 30 минут до будильника. Я обычно просыпаюсь за несколько минут до срабатывания будильника в тлф. Тихое и комфортное пробуждения. Да, в 13 часов дня, я сова. А шторы блэкаут не пропускают солнечного света вообще.
Так же в планах установить датчики дыма и протечки, умное зеркало с экраном чтобы закрыть щиток и выводить всякую информацию, подкрутить к умному дому домофон и т.д.
Умный дом позволяет вам настроить его под ваши привычки и образ жизни. Управляемые програмно релюшки дают безграничные возможности по кастомизации.
Использование свободных решений вроде OpenHab не привязывает вас к производителю, и позволяет сэкономить, но требует определенных навыков. Мне, как IT-шнику, это не было проблемой.
Конечно, не каждый может раздолбить себе стены для прокладки проводки, но если у вас черновой ремонт или в планах провести капитальный - есть смысл задуматься о закладке дополнительной проводки, это того стоит.
Конкурс мемов объявляется открытым!
Выкручивайте остроумие на максимум и придумайте надпись для стикера из шаблонов ниже. Лучшие идеи войдут в стикерпак, а их авторы получат полугодовую подписку на сервис «Пакет».
Кто сделал и отправил мемас на конкурс — молодец! Результаты конкурса мы объявим уже 3 мая, поделимся лучшими шутками по мнению жюри и ссылкой на стикерпак в телеграме. Полные правила конкурса.
А пока предлагаем посмотреть видео, из которых мы сделали шаблоны для мемов. В главной роли Валентин Выгодный и «Пакет» от Х5 — сервис для выгодных покупок в «Пятёрочке» и «Перекрёстке».
Реклама ООО «Корпоративный центр ИКС 5», ИНН: 7728632689
У многих, кто интересуется домашней автоматизацией («Умный дом»), на слуху известные открытые системы автоматизации, на которых можно построить управление: OpenHab, MajorDoMo, Home Assistant, Domoticz, HomeBridge. Но если немного расширить диапазон наблюдения, то можно обнаружить множество программных систем, которые могут предложить схожий функционал, а местами даже больший. Сегодня, расскажем об одной из них — ioBroker.
Расскажем обзорно, без погружения в подробности реализации, т.к. каждый элемент потребует отдельной статьи (если потребуется — будет статья).
Что за зверь?
ioBroker — это система автоматизации, разработанная на платформе Node.js (также как и HomeBridge). Благодаря этому, ее можно развернуть и запустить практически на любой операционной системе или виртуальной машине: Windows, Mac, Linux, в контейнере Docker и даже на Android. Это позволяет масштабировать систему исходя из потребностей: поставить ее на “малину” для дома, квест-комнаты или на сервер для гостиницы.
Система ioBroker, как и большинство систем автоматизации, открытая и расширяемая. Новый функционал или устройства подключаются с помощью добавления “драйвера” или “адаптера” (так называемые плагины ioBroker), который можно установить из официального Store или из git-репозитория.
Большинство действий выполняется из web-интерфейса администрирования и позволяет изменить любые параметры системы (нет необходимости редактировать config-файлы в терминале):
- управление набором драйверов и их параметрами
- мониторинг и изменения объектов системы, состояний и их истории
- разработка сценариев поведения и обработчиков событий
- разработка визуальных Dashboard для управления и представления состояний
и многое другое.
Пример, как выглядит интерфейс администрирования можно посмотреть тут http://iobroker.click
Как это работает внутри?
Подход ioBroker’а заключается в том, что каждое подключенное устройство или сервис, представляется в виде набора состояний, которые могут изменяться устройством или пользователем. Т.е. устройство раскладывается на элементы и дальнейшая работа происходит с ними и их значениями. Работа с устройствами заключается в подписке на изменение состояний и собственно изменение других состояний в зависимости от ситуации.
Так, например, обычную лампочку можно представить в виде одного состояния, которое будет обозначать включена она или нет. Но если лампочка диммируемая, то нужно еще одно состояние — уровень яркости. Для лампочки меняющей цвет — еще состояния оттенка (hue) и насыщенности (saturation). Для более сложных устройств количество наблюдаемых состояний растет.
Некоторые состояния имеют обратную связь и при их изменении со стороны ioBroker (например, пользователь поменял значение или при выполнении скрипта), значение отправляется обратно на устройство или сервис.
Таким образом, например, можно включить лампочку, вручную поменяв ее состояние в объектах, или переключить режим работы термостата.
Все состояния хранятся в древовидном реестре, который очень напоминает подход с протоколом MQTT, где данные соотносятся с топиками. Поэтому, соответствующий драйвер MQTT легко интегрируется с любыми mqtt-серверами (или брокерами). А также сам выступает в качестве MQTT-сервера/брокера для IOT-устройств, поддерживающих этот протокол.
Поддерживаемые устройства и сервисы
В ioBroker есть, активный по умолчанию, драйвер поиска устройств и автоматической установки драйверов для них. Поддерживаются не только устройства, которые стандартно распознаются, через UPnP, но и просто устройства, которые могут быть найдены по IP адресу или подключены к USB порту.
Благодаря открытой архитектуре в ioBroker постоянно появляются новые драйвера. Сейчас в официальном репозитории их насчитывается порядка 200 (http://download.iobroker.net/list.html), а список автоматически обнаруживаемых устройств постоянно пополняется (https://github.com/ioBroker/ioBroker.discovery#automatically...).
При наличии дополнительного оборудования (различные USB-стики или шилды), можно использовать популярные протоколы: Z-Wave, Zigbee, BLE, KNX.
Можно интегрироваться с другими системами “Умного дома”, контроллерами и хабами: OpenHab, MiHome, HomeMatic, MegaD, Home assistant и другими.
Интерфейсы взаимодействия
Пользователь может взаимодействовать с ioBroker несколькими способами.
Vis-интерфейс
ioBroker обладает самыми гибкими возможностями настройки визуального интерфейса среди открытых систем автоматизации. Можно создать несколько страниц со сценами, на страницах расположить виджеты управления, отображения значений и изображения с камеры. Набор виджетов может быть произвольный и устанавливается дополнительными драйверами.
В сети доступен набор страниц визуализации некоторых пользователей, которые поделились ими с разработчиками https://iobroker.click/. Видно, что нет единого подхода к оформлению страницы управления “Умным домом” и каждый делает по своему усмотрению. Это с одной стороны хорошо, т.к. имеется простор для дизайна и нет ограничений. С другой стороны, это сложно неподготовленному пользователю.
инста-видео зеркала с Vis-интерфейсом
Также, благодаря облачному сервису и Cloud-драйверу, можно получить доступ к визуальным интерфейсам ioBroker из глобальной сети без использования специальных средств (VPN, DynDNS и прочему).
Telegram-бот
После появления Telegram-ботов они оказались очень удобным способом взаимодействия с системами “Умного дома”. Бот принимает команды управления и может выводить любые данные, доступные в системе.
Благодаря драйверу text2command можно отправить текстовое сообщение боту и оно будет разобрано и выполнено. Например, текст “включи свет в детской” выполнит включение состояния, которое относится к “освещению” в комнате “детская”. И таких применений множество: шторы, музыка, отопление, охрана, замок и т.п. По функции очень напоминает Siri, но только текстовую.
Также, через Telegram реализуют канал уведомлений о ситуациях, происходящих в системе. Очень удобно.
iOS Homekit
Естественно, у ioBroker есть возможность интеграции в систему Apple HomeKit. Благодаря драйверу Yahka, в системе можно создавать аксессуары, соответствующие требованиям HomeKit и использовать их на iOS устройствах.
Для этого, в настройках драйвера Yahka необходимо создать виртуальные устройства и связать их характеристики с имеющимися в системе состояниями.
Так, например, создав виртуальное устройство “Лампа” и связав его с состоянием, относящимся к включению/выключению реальной лампы, можно сделать кнопку управления лампой в приложении Дом на iOS. А если подключить и другие дополнительные состояния, то можно управлять и диммируемой лампой.
Датчики, сенсоры, камеры, термостаты, вентиляторы… любые устройства можно отобразить в Homekit и управлять ими через приложение Дом или попросить сделать это Siri.
Нужно только, чтобы реальные устройства, которыми будет управлять Siri были заведены в систему и связать соответствующие состояния с виртуальными устройствами Homekit.
Голосовое управление
Коме Siri, управлять устройствами голосом возможно и через популярную на западе Amazon Alexa (жаль только не на русском языке). Для этого, к облачному сервису ioBroker, связанному с вашим локальным сервером, подключается специальный Alexa Skill, который перенаправляет и выполняет команды от вашей Amazon Dot.
Если нет умной колонки, то выполнять команды по-русски можно через приложения Android Tasker и PAW. Через эти приложения можно преобразовать голосовую команду в текст и отправить в ioBroker, где уже упоминаемый драйвер text2command выполнит ее и сообщит о результате.
Дополнительно, интеграция через PAW драйвер, можно выполнять множество обратных команд на Android-устройстве: осуществлять звонки, писать SMS и воспроизводить голосом текст.
Генерации голоса из текста выполняется специальным драйвером SayIt, поддерживающим популярные TTS-движки от Google, Яндекс, Amazon. А вывод получившейся речи можно осуществить через колонки, Chromecast или Sonos.
Также, голосовые команды можно принимать через созданную страницу в Vis-драйвере (в браузере Google Chrome) и принимать там ответные голосовые сообщения от ioBroker.
Сценарии
Одна из самых важных частей автоматизации — сценарии. Это логические блоки управления, которые определяют зависимости, поведение и взаимодействие между устройствами и их состояниями.
“Включить свет при обнаружении движения”, “Добавить температуру отопительного контура, при приближении хозяев к загородному дому”, “Отправить в телеграм список состояний датчиков при получении команды”.
Всё это реализуется сценариями.
Для реализации сценариев могут использоваться либо визуальный язык Blockly, либо Javascript, либо TypeScript, либо очень популярный NodeRed.
Основная задача скриптов — описание реакции на происходящие в системе события. Для этого, в скриптах описываются обработчики изменений состояний. Например, при изменении состояния click, относящегося к беспроводной кнопке, изменить набор состояний, относящихся к модулям sonoff, включающих освещение. А при двойном нажатии — отключать свет.
Но более сложное поведение потребует знания Javascript, т.к. множество примеров выполнено именно на нём. Для реализации нужного функционала можно подключить любой npm-пакет и использовать его в скриптах.
И да, сценарии могут выполняться по расписанию.
Сообщество
Большинство пользователей ioBroker находятся в Европе, в Германии и это отражается на специфике сообщества, материалов, уроков, примеров и документации.
Но в последние два года, началось активное развитие русскоязычного сообщества.
Появился соответствующий раздел на форуме, документация, телеграм-чат.
Заключение (личный опыт by Ilya Kirov)
Признаюсь, это единственная система автоматизации, в которую я глубоко погрузился (хотя смотрел на Hass и MajorDoMo). Это стало моим хобби. ioBroker мне интересен своей архитектурой, возможностями и сообществом. На нем сейчас автоматизирую квартиру и дачу.
Большинство из приведенных выше возможностей мне удалось попробовать на себе. Я разобрался и реализовал как простые варианты, так и более хитрые. Разработал пару драйверов для себя и ими стали пользоваться другие пользователи ioBroker.
Я не стану хаять другие системы и не скажу, что это идеальная система. Я хочу обратить внимание на неё и дать её попробовать другим. Да, порог вхождения в написание скриптов требует базовые знания системы, но это везде так (только языки разные). Да, будут сложности с настройкой некоторых драйверов, но всё решаемо. Если кто-то уже через это проходил, значит и у вас получится.
Зачастую, приемы интеграции с устройствами и примеры кода, могут легко быть адаптированы из одной системы автоматизации в другую. А общие рекомендации подходят всем и каждый увлекающийся автоматизацией сталкивается с ними.
И в одном из русских сообществ это понимают и делятся знаниями независимо от того какую систему автоматизации используют.
by Ilya Kirov