Wiren Board 4 — контроллер для автоматизации

imageГод назад мы выпустили контроллер Wiren Board Smart Home. Благодаря невысокой цене и широким возможностям он имел успех среди энтузиастов.

Поэтому мы решили не останавливаться и выпустили новую версию — контроллер для автоматизации Wiren Board 4, к которому написали и новый софт.

Несмотря на название, покупатели часто использовали Wiren Board Smart Home и для совсем не «домашних» задач: сбора климатических параметров, опроса счётчиков и датчиков, удалённого контроля оборудования — то есть в качестве универсального логического контроллера.

Wiren Board 4 (как в железе, так и в ПО) лучше приспособлен для таких задач. Домашних пользователей это тоже коснулось — контроллер стал надёжнее.

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

Защита входов и общая помехозащищенность. Все входы защищены от случайной подачи напряжения до 24В. Расширен диапазон входного напряжения до 9–24 В, т. е. поддерживается два распространенных стандарта в автоматизации 12 и 24В. Добавлен аппаратный watchdog-таймер. Это важная штука, если контроллер находится далеко от вас. Один из портов RS-485 сделан гальванически развязанным. Защита от заряда аккумулятора при отрицательных температурах. Добавлены входы для «сухих контактов». Подключение счетчиков с импульсными выходами, внешние переключатели и т. д. Убрали CAN с основной платы. Ну и, конечно, разноцветные нажимные клеммы! Монтаж теперь быстрее и надежнее. Производство контроллера даже с минимальными модификациями — очень затратно, как по времени, так и по деньгам. Поэтому что бы сделать его более гибким, оставили место для платки расширения, и выделили для нее 3 клеммы. На разъем расширения выведено питание, UART, I2C, SPI. Сейчас есть платки с RS-232, так же планируются с CAN и DAC (0–10В).

расширение

веб-интерфейс

К релизу Wiren Board 4 мы выпустили новый веб-интерфейс.Изначально мы предполагали, что контроллер будет использоваться со сторонними интерфейсами. Оказалось, что существующие системы подходят плохо — их возможностей или не хватает, или они медленно работают, или их невозможно расширять.

В нашем локальном веб-интерфейсе HomeUI поддерживаются стандартные для автоматизации концепты: «комнаты», dashboard-ы, представление отвязано от физического подключения. Интерфейс написан на Angular с использованием вебсокетов и Bootstrap, быстро работает, не нагружает контроллер и прилично выглядит на мобильных устройствах.

Конечно же, существущие варианты подключения к сторонним системам Majordomo и OpenHAB продолжают работать.

Также мы сделали мощную систему правил wb-rules. Движок правил заслуживает отдельного рассказа, и мы скоро напишем про него статью. Движок позволяет писать правила и сценарии, создавать виртуальные устройства, планировать действия на заданное время, обрабатывать события.Правила пишутся на JavaScript, с ними легко разберётся и человек без навыков программирования.

Пример правил defineRule («motion_detector», { whenChanged: «wb-gpio/D1_IN», then: function (newValue, devName, cellName) { dev[«wb-gpio»][«Relay_2»] = newValue; dev[«wb-mrm2_6»][«Relay 1»] = newValue; } }); defineRule («crontest_hourly», { when: cron (»@hourly»), then: function () { log (»@hourly rule fired»); } });

Много работы сделано в системном ПО — в драйверах встроенных устройств и внешней периферии: драйвер для Modbus-RTU. Modbus — это стандарт для проводных периферийных исполнительных устройств и датчиков. Для многих устройств, с которыми мы тестировали работу, все параметры уже зашиты в драйвер. Пользователю для подключения устройств (например наших) остается добавить в конфиг-файл две строчки: модель устройства и его адрес. в драйвер цифровых входов и выходов мы добавили поддержку импульсных счётчиков. Теперь можно подключать недорогие приборы учёта напрямую к цифровым входам Wiren Board. Пользователю надо указать тип счётчика (вода, газ, электричество), константу (написана на счётчике) и этого достаточно, чтобы смотреть литры или ватты в веб-интерфейсе. поддерживаются и обычные цифровые сигналы: подключение герконов, датчиков движения и т.д. Реакция на события теперь мгновенная благодаря использованию прерываний. Доработан драйвер аналоговых входов. Теперь он поддерживает прямое измерение сопротивлений, что позволяет подключать резистивные датчики. При помощи сообщества пользователей, в драйвере радиомодуля на 433 МГц улучшилась поддержка погодных датчиков Oregon, поддерживаются новые устройства и новые команды для nooLite. В бета-тестировании (тестеры приглашаются): Поддержка Z-wave. Z-wave поддерживается с помощью USB-стиков от z-wave.me, используется их сертифицированное ядро. Устройства интегрируются в нашу стандартную инфраструктуру. Драйвер SmartBus G4 и HDL. Это достаточно дорогие системы проводной домашней автоматизации, Wiren Board 4 позволяет использовать устройства этих стандартов совместно с более дешёвыми в проектах, где это возможно. Локальный веб-интерфейс — это хорошо, но очень часто необходим доступ через Интернет. Для этого мы сделали облачный веб-интерфейс, который работает на наших серверах.С сервером контроллеры Wiren Board обмениваются только данными, поэтому всё работает быстро и даже по GPRS.

Дополнительно можно подключать несколько контроллеров к одному интерфейсу, что например позволяет делать «мини-SCADA» системы для диспетчеризации.

Посмотреть в действии можно здесь: demo.contactless.ru.

Мы сделали скидку 20% на образцы всех устройств нашего производства для разработчиков. Скидка распространяется на 1 экземпляр каждого устройства для физлиц.

Все подробности — на сайте и в центре документации.

Будем рады комментариям!

© Habrahabr.ru