- PVSM.RU - https://www.pvsm.ru -
Всем привет!
Мы давно не писали на Хабр (который уже не тот), но в конце прошлого года выпустили новую версию Wiren Board — контроллера для автоматизации с открытым ПО, и сегодня расскажем о ней (под катом есть скидка!)
Чтобы исправить то, что не нравилось пользователям и нам самим:
Также мы добавили несколько модных фишек:
Про это (и про важные изменения в ПО) подробнее ниже.
Если очень кратко, то Wiren Board 5 — устройство, которое работает как центральный контроллер в системе автоматизации или мониторинга.
Например в "умном доме" контроллер может управлеять освещением и климатикой, снимать показания с датчиков климата и охранных датчиков. Для этого контроллер может работать с разными внешними устройствами, может выполнять разные правила и сценарии, занимается сохранением и визуализацией данных.
В типовых задачах диспетчеризации и мониторинга контроллер выступает как продвинутое УСПД: собирает данные с различных устройств, например приборов учёта, хранит локальную историю, показывает мнемосхему для локального управления, отправляет данные наверх.
Контроллер построен на мощном процессоре, работает под управлением Linux, имеет множество встроенных проводных и беспроводных интерфейсов и портов для связи с внешними устройствами и внешним миром.
Естественно всё это industrial-grade: корпус на DIN-рейку, большой диапазон входного питания, широкий температурный диапазон, надёжная память, защита всех портов и т.д.
На картинках ниже видно, что есть в контроллере:
Модульность конструкции всегда имеет как плюсы (гибкость под конкретную задачу), так и минусы (увеличение стоимости). Но модульность очень сильно ускоряет процесс выпуска версий с небольшими изменениями. Производство контроллера даже с небольшими изменениями печатной платы — хлопотное дело на несколько месяцев. Совсем другое дело — установить маленькую платку внутрь корпуса.
В предыдущей версии контроллера был один слот для модуля расширения. В Wiren Board 5 модули устанавливаются внутри корпуса вертикально, поэтому нашлось место для двух модулей. На разъем для модулей выведены интерфейсы I2C, SPI, UART. Распиновка разъема близка к распиновке Raspberry Pi, что позволяет устанавливать некоторые шилды. Кроме того, под каждый модуль расширения отведено три клеммника: если, например, вы решите добавить порт RS-485, то вам не придётся тянуть провода шины к платке модуля внутри корпуса — вы сможете зажать их в обычные клеммники. Уже есть модули:
Для любой проводной инсталляции контроллер должен иметь много вводов (входы выключателей, датчиков движения, открытия, сигнализации) и выводов (отдельное управление каждой светильником или исполнительным устройством). При этом нужный набор контактов сильно варьируется.
Раньше единственным нашим решением для этого были периферийные устройства, подключаемые по RS-485. Но с ними много хлопот — требуется отдельное физическое подключение, отдельное питание, в ПО нужно выставлять адрес устройства.
Поэтому мы сделали боковые модули ввода-вывода для Wiren Board 5, которые устанавливаются очень просто — стыкуются с контроллером на DIN-рейке- и сразу работают. Всего так можно подключить до 8 модулей: до 4 модулей ввода и до 4 модулей вывода. Если сборка не влезает в шкаф по ширине, можно использовать специальный шлейф для переноса модулей на следующую рейку.
Так как в модулях нет встроенной логики, они получаются заметно дешевле внешних RS-485 Modbus-устройств: например, дополнительные 8 релейных выходов сейчас стоят 2200 рублей.
Модули подключаются к процессору по шине I2C, а их сигналы обрабатываются драйвером в ядре Linux по прерыванию. Благодаря этому, задержка между, например, срабатыванием входа на модуле расширения и детектированием сигнала в ПО не превышает 1мс, что на два-три порядка быстрее чем при работе по Modbus.
Сейчас в наличии пять модулей:
Многие бытовые устройства управляются пультами ДУ (например, для большинства бытовых кондиционеров это вообще единственный способ, кроме отключения питания). Мы добавили в Wiren Board 5 порт для внешнего выносного ИК-приёмника / передатчика.
К сожалению, готового приемопередатчика найти не удалось. Доступны по отдельности приемники и передатчики с разъемом jack 3.5 мм, но к счастью у них удачная распиновка — в один разъем можно подключать и тот, и другой.
Для удобства работы мы разработали свой приемопередатчик, с паразитным питанием микросхемы приёмника. С его помощью вы сможете получать сигналы с пультов (и использовать их в своих правилах — про них читайте ниже), а также сможете посылать сигналы на свою бытовую технику.
Программная составляющая контроллера тоже сильно улучшилась. Напомним, что на контролерах Wiren Board стоит операционная система Linux Debian, а всё специальное ПО нашей разработки открыто и доступно в репозитории Github для изучения.
Всё конфигурирование сейчас происходит через веб-интерфейс.
Ещё мы добавили драйверы для самых популярных счётчиков электроэнергии с интерфейсами RS-485 — Меркурий 230 и Милур 305, поддержку датчиков ИВТМ и разных других устройств [1]. При их подключении (а также при подключении нашей периферии) достаточно лишь выбрать название устройства в списке и ввести его адрес:
Много изменений внесено в движок правил (мы называем его wb-rules). Он позволяет пользователям писать сценарии на языке JavaScript. Выполнение правил привязывается или к времени (по расписанию), или к выполнению определённых условий (датчик температуры показал выше 25°C, сработал датчика движения и т.д.). Из правил можно управлять всеми выходами контроллера и модулей расширения (например, переключать реле), а также посылать команды по RS-485, посылать СМС или email уведомления.
Правила создаются целиком через веб-интерфейс контроллера.
Чтобы вам было проще разобраться с языком правил, мы постоянно пополняем раздел с примерами в документации [2], а некоторые пользователи делятся своими правилами на нашем форуме [3].
Отдельный очень частый тип правил — просто отправка уведомления при какой-то нештатной ситуации. Чтобы не писать для этого специальное правило, мы сделали отдельным модуль Alarms, который настраивается очень просто: выбирается параметр, за которым нужно следить, условие срабатывания (например: выход значения датчика температуры за заданные пределы, срабатывание датчика движения), действие (отправка СМС или email), текст оповещения.
Первыми покупателями первых версий Wiren Board были энтузиасты с Хабра. К сожалению, синхронно с развитием возможностей железа и ПО росла и цена, особенно в рублях.
Кажется, мы придумали, как снова пойти навстречу сообществу и, при этом, не разориться самим. Получилось что-то вроде групповых покупок: в ближайшее время мы запускаем в производство очередную партию, и если вы присоединитесь к ней (на условиях предзаказа), то мы дадим вам скидку. Для нас это получается как будто оптовый заказ, соответственно мы даём оптовую скидку и ещё немного сверху, итого 20%.
Чтобы поучаствовать в предзаказе, введите код WB5-APR16-HABR при покупке в нашем интернет-магазине.
Мы собираем предзаказы до 1 мая, устройства будут готовы не позже 15 июня. При этом запас контроллеров есть на складе прямо сейчас, но со склада они продаются без скидки.
В ближайшее время в нашем блоге мы планируем подробнее рассказать про аппаратную часть Wiren Board 5, про новые периферийные устройства, показать, как пользоваться нашим ПО и т.д.
Ссылки:
Страничка Wiren Board 5 на сайте [4]
Документация [5]
Комьюнити [6]
Будем рады комментариям!
Автор: Wiren Board
Источник [12]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/avtomatizatsiya/118378
Ссылки в тексте:
[1] разных других устройств: http://contactless.ru/wiki/index.php/%D0%9F%D0%BE%D0%B4%D0%B4%D0%B5%D1%80%D0%B6%D0%B8%D0%B2%D0%B0%D0%B5%D0%BC%D1%8B%D0%B5_%D1%83%D1%81%D1%82%D1%80%D0%BE%D0%B9%D1%81%D1%82%D0%B2%D0%B0
[2] раздел с примерами в документации: http://contactless.ru/wiki/index.php/%D0%94%D0%B2%D0%B8%D0%B6%D0%BE%D0%BA_%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB_wb-rules
[3] нашем форуме: http://forums.contactless.ru/t/dvizhok-pravil-primery-koda/483/8
[4] Страничка Wiren Board 5 на сайте: http://contactless.ru/wiren-board-5/
[5] Документация: http://contactless.ru/wiki/index.php/Wiren_Board_5
[6] Комьюнити: http://forums.contactless.ru/
[7] Wiren Board 4 — контроллер для автоматизации: https://habrahabr.ru/company/contactless/blog/257977/
[8] Как собрать умный дом: https://habrahabr.ru/company/contactless/blog/258677/
[9] Наши устройства для управления освещением в умном доме : https://habrahabr.ru/company/contactless/blog/255657/
[10] Мониторинг серверных с Wiren Board NetMon-1 : https://habrahabr.ru/company/contactless/blog/259493/
[11] Наш контроллер для умного дома: https://habrahabr.ru/company/contactless/blog/213243/
[12] Источник: https://geektimes.ru/post/274530/
Нажмите здесь для печати.