8 980 590-57-10
Ваш город — Эль-Монте?
Заявка

Что такое Abrom Soft?


AbromSoft — движок правил для Linux-контроллеров умного дома. Он превращает набор датчиков, реле и панелей в связную систему: получает данные с устройств, применяет пользовательские правила и отдаёт команды исполнителям. Работает на любом контроллере под Linux.

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

Обзорное видео

За семь минут показываем систему в работе: установку на контроллер, библиотеку шаблонов, настройку выключателя и типов нажатия, сцены и мастер-кнопку, страницу устройств с мониторингом. Если предпочитаете смотреть, а не читать — начните с видео, текст ниже разбирает то же самое подробнее.

Что такое AbromSoft? Быстрая настройка Умного дома.

Таймкоды:

  • 00:00 — Что такое AbromSoft и зачем он нужен
  • 00:16 — Стандартизация: почему это упрощает обслуживание
  • 00:34 — Скорость на примере панели управления
  • 01:15 — Установка: подключение к контроллеру и одна команда
  • 02:20 — Обзор интерфейса и шаблоны правил
  • 02:33 — Пример: настройка датчика двери
  • 02:58 — Гибкие правила: конструктор условий
  • 03:14 — Привязываем выключатель к свету (перевод входов в режим push)
  • 03:59 — Несколько типов нажатий: одиночное, двойное, долгое
  • 04:56 — Сцены и мастер-кнопка по долгому нажатию
  • 05:30 — Страница устройств: топики, сервисы, контроль интернета
  • 06:11 — Типы отображения и виджеты
  • 06:32 — Категории и вложенность на больших объектах

Зачем нужен отдельный движок

Wirenboard из коробки транслирует состояния подключённых устройств в брокер mosquitto и предоставляет собственный движок wb-rules на JavaScript. Это мощный инструмент, но по сути обычное программирование: код тяжело масштабируется, плохо переиспользуется и не даёт готовых шаблонов под типовые задачи автоматизации. С ростом системы правила превращаются в разрастающийся код, который тяжело поддерживать.

AbromSoft закрывает три задачи. Первая — собирать автоматизацию из готовых блоков, а не писать код: вы задаёте параметры сценария, а саму логику берёт на себя движок. Вторая — переиспользовать типовые логики через готовые типы правил: термостат, сцена, кнопка, уведомление. Третья — держать всю конфигурацию в одном месте и обновлять её на лету, без перезапуска сервиса.


Скорость на объекте

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

Поэтому базовые вещи в AbromSoft делаются в несколько кликов. Панель управления, например, подключается так: запитали, включили в сеть, открыли веб-интерфейс, вписали её адрес — и сразу назначаете ей задачи. Никакой предварительной подготовки конфигов.

Стандартизация и обслуживание

Второй мотив — обслуживание. Когда автоматизация написана кодом, каждый объект получается авторским: один интегратор решил задачу одним способом, другой — другим. Через пять лет вы приезжаете на объект, открываете список скриптов и заново разбираетесь в чужой логике.

С типовыми правилами объекты становятся похожими друг на друга. Приехали через несколько лет — те же самые типы правил, та же структура, то же расположение настроек. Перенастроили, обслужили, доработали, обновили и уехали.

Из чего состоит система

Контроллер — основа. AbromSoft работает на любом Linux-контроллере; чаще всего это Wirenboard. На контроллере запущены mosquitto как MQTT-брокер, штатный веб-интерфейс и сервис AbromSoft. Датчики, реле, диммеры и панели OpenHASP подключаются к контроллеру и общаются с ним через MQTT.

Правило — это то, что вы создаёте: набор топиков (входы и выходы) плюс тип, который задаёт логику. Например, правило типа «кондиционер» связывает датчик температуры, IR-передатчик и настройки в одну готовую логику управления климатом — вам остаётся указать нужные топики и параметры.

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

Установка

Установка занимает одну команду. Подключаетесь к контроллеру по SSH — нужен только его IP-адрес и стандартные учётные данные, — вставляете команду из документации, нажимаете Enter. Сервис поднимается сам.

После установки список правил пустой. Начинать удобнее не с чистого листа, а с раздела шаблонов.

Подробнее Настройка ПО Абром Софт

Шаблоны правил

В разделе шаблонов лежат готовые сценарии, которыми мы пользуемся сами на реальных объектах. Список пополняется на стороне сервиса — чтобы получить новые шаблоны, обновлять сам движок не нужно.


Работает это так: выбираете нужный сценарий — скажем, датчик двери с блокировкой или без — указываете реле света и вход датчика, и система сама подставляет необходимые условия и создаёт правило. Если стандартной логики мало, тот же сценарий открывается в полном конструкторе, где доступны все параметры.

Типовые задачи на практике


Настройка входов: switch и push

Реле Wirenboard серии MR6C из коробки работают в режиме switch: чтобы получить нужное поведение, кнопку приходится удерживать. В AbromSoft режим входов меняется прямо из интерфейса — указываете адрес устройства и номера входов, переводите их в push, запускаете. Порт вводить не обязательно, он определяется автоматически. Несколько входов настраиваются одной операцией.

Типы нажатий

Вход, привязанный к выходу напрямую, отрабатывает мгновенно, но умеет только один тип нажатия. Чтобы получить больше, вход переводится в режим кнопки (mapping button) и связывается с нужным выходом: одиночное нажатие включает свет, а вместе с этим появляются двойное и долгое нажатие как отдельные события.

Плата за это — небольшая задержка: контроллер начинает обрабатывать вход, чтобы различить типы нажатия. Это нормальный компромисс, о котором стоит знать заранее и применять режим кнопки там, где дополнительные жесты действительно нужны.

Сцены и мастер-кнопка

Групповое отключение делается в два шага: сначала создаётся сцена, которая гасит нужные группы света, затем сцена привязывается к долгому нажатию любой кнопки. Получается мастер-выключатель — вышли из квартиры, задержали кнопку у двери, всё погасло. Та же сцена доступна и из веб-интерфейса.

Страница устройств и мониторинг

Вторая крупная страница интерфейса — устройства и состояние системы. Она отвечает на вопрос «всё ли живо» до того, как этот вопрос задаст заказчик.

  • Ошибки в правилах. Если у правила один из топиков недоступен, правило подсвечивается как ошибочное. Ненужное или временно мешающее правило можно отключить, не удаляя.
  • Состояние сервисов. Перечисленные системные службы контролируются на предмет падений.
  • Свежесть топиков. Видно, какие топики перестали обновляться. Их можно привязывать к правилам и вешать на них уведомления.
  • Наличие интернета. Отдельный и на практике очень важный пункт: когда провайдер отваливается или контроллер уходит в автономный режим, это видно сразу — вместо того чтобы полдня искать причину «странного» поведения системы.

Отображение и виджеты

Устройства выводятся списком, плиткой или по категориям — на выбор. Управление собрано в виджеты: кондиционер, например, включается и выключается прямо с карточки, там же режимы и температура.

Категории и вложенность

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

Какие сценарии закрывает

Отопление и климат: термостат с гистерезисом, отопление по таймеру и расписанию, управление кондиционерами по IR или по родному протоколу, учёт погоды на улице.

Освещение и сцены: кнопки с разными типами нажатия, диммируемые группы света, RGB-ленты, сцены на нескольких устройствах одновременно.

Уведомления: сообщения в Telegram, VK и на почту при заданных условиях — от протечки воды до подъёма температуры в морозильнике.

Панели и интерфейсы: страницы OpenHASP с кнопками, переключателями и слайдерами, привязанными к устройствам системы.

Мониторинг: слежение за здоровьем системных сервисов и за свежестью данных в MQTT-топиках — если датчик замолчал или служба упала, система об этом сообщает.

Как правило начинает работать

Правило считывает список входных сигналов и подписывается на них. Как только приходит новое значение — по кнопке, с датчика или из веб-интерфейса — правило пересчитывает своё состояние и отправляет команды на выход. Никаких периодических опросов: движок реактивный, работа идёт по событиям.

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

Что дальше

Установку, настройку конкретных сценариев и справочник по типам правил разбираем в соседних статьях каталога. Вопросы по видео и по системе — в комментарии, отвечаем.


    Еще никто не написал комментариев.

    Написать комментарий

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