ModBus кнопки и возможные задержки

Приветствую.

Рассматриваю вариант организации умного дома на основе протогола modbus и контроллера WB 6.

Но возник вопрос по поводу возможности использования таких кнопок:

Был ли у кого опыт использования?

Какова возможная зарержка от нажатия кнопки до непосредствено включения лампочки?

Предполагаю на одну шину посадить кнопки а на другую исполнительные устройства. и там и там 115000 скорость. Кол-ко панелей с кнопками около 20. Исполнительных устройств до 40.

Спасибо за помощь!

Добрый день!
Примерно можно оценить так:
Будет идти последовательный опрос всех регистров панелей, в среднем можно считать, что на опрос одного регистра в линию передаётся 8 байт данных. Если 20 панелей, в них условно 100 кнопок. Чтобы просто опросить состояния кнопок, понадобится 8100=800 байт, то есть на один цикл опроса уйдёт 8008/115200 = 56 мс - это если опрашивать только кнопки (а бывают ещё регистры управления подсветкой и так далее)

Спасибо за ответ, я считал аналогичным способом. но боюсь по незнанию особенностей работы WB мог подсчитать неправильно.

в настройках WB можно задать отдельно период опроса по 2 линиям? или он делает один опрос по всем устройствам в системе?

Период задаётся отдельно по каждому порту. Если ничего дополнительно не указывать, то опрос будет начинаться сразу после завершения предыдущего цикла.

1 лайк

Это хорошая новость.

А были вообще проекты где использовались кнопки (может по z-wave)?

Хочется найти решение которое точно работает.
Кнопки-сухие контакты не предлагать)

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

Я бы несколько поправил ваши расчеты. В одном байте можно передать состояние 8 кнопок, командой 2 (Read Discrete Inputs). Поэтому примерно надо 8 байт на одну панель или 160 байт на все. Плюс лаг 5-8 мс переключения между панелями
Максимальная скорость панелей по ссылке с али - 19200, то есть цикл опроса - 8208/19200+0,005*20 = 170 мс
Если лаг в 50 мс еще не сильно заметен, но уже есть, то 170 - это очень много.
К вопросу о решении, которое точно работает -
В одном проекте мы скрестили оборудование WB c Crestron. От Crestron - панели (C2NI-CB они удобно кастомизируются) с контроллером, а от WB силовая часть - реле, диммеры и датчики. Малая часть реле висит на сухих контактах (кнопках), а остальные, с диммерами и прочим, управляются с панелей C2NI через 485 порт крестрона.
Используется на одной шине порядка 20 устройств, цикл опроса порядка 2-х секунд на скорости 9600. Не все опрашиваются, реле штор например просто переключаются.
При нажатии кнопки на панели C2NI цикл опроса приостанавливается, отправляется команда на включение/выключение реле, и после исполнения команды продолжается. Задержки исполнения команды не заметны.
А вот отслеживание включения реле и отображение этого на айпаде (если включение реле происходит с кнопки / сухого контакта и контроллер про это ничего не знает) составляет как раз порядка секунды-двух. Так как цикл опроса самописный, мне ничего не мешает опрашивать определенные устройства несколько раз в течение цикла, сокращая задержку за счет удлинения опроса других модулей. Но пока это не понадобилось, кроме того, что были мысли повесить на сухие входы реле датчики движения. Из-за задержек решили отказаться и использовать для отслеживания датчиков те же панели C2NI, благо на каждой есть два входа для сухих контактов.

Крестрон использует у себя для опроса своих устройств собственных протокол на 485 шине (он называется Crestnet). Я внутрь не заглядывал, но судя по всему, он явно не “один ведущий, все ведомые”, либо используется динамический поллинг, так как для подобных инсталляций в 30-40 панелей/исполнительных устройств (в том числе датчиков движения) на одной шине, задержки бывают единичными случаями.

Насчет кнопок/сухих контактов - зря вы их отрицаете. Стоит один раз проложить под них кабель, лучше всего витую пару на 4 пары, как потом нет проблем с подключением чего либо. Хотите - кнопку, можно - две кнопки, или - панель 485 с питанием, а может - панель KNX, или даже айпад. Полная свобода и высокая скорость работы.

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

Если рассматриваете беспроводные кнопки - можете посмотреть в сторону DeLUMO, но с интеграцией туговато. Или nooLite - с ним попроще, но сами пульты/панели простенькие и не всем по нраву.

3 лайка

Спасибо за развернутый ответ.

Если ставить knx панели, то нужен модуль работы с knx или можно сделать распиновку какую-нибудь?

Интересные девайсы. Вот только 115200 не поддерживают - Baud rate: 9600/19200, 8 data bits, no parity, 1 stop bit, но это не страшно. По опыту могу сказать, что задержка включения совершенно не заметна, хуже другое - при использовании дискретных входов с модбасом на кнопках требует частого поллинга, чтобы успеть поймать момент нажатия. По опыту для стабильной работы когда стоял модуль входов на WB - хватало 10-20мс, когда перенес на iobroker - почему-то стало хватать и 50мс. При 100 уже случались пропуски нажатий. При этом схема работы такая - модуль дискретных входов с 485 - шлюз - iobroker - шлюз - исполнительные устройства. Даже при такой “длинной” схеме задержки не ощущаются.

Всем добрый день!
Кстати, @Kallyan опубликовал статью на Хабре по сенсорным выключателям: https://habr.com/company/wirenboard/blog/417093/

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

Думаю, это нужно спросить у автора статьи - либо на форуме, либо в комментария к статье на Хабре.

каким образом кастомизировать при заказе сам выключатель?

а что именно кастомизировать? Выключатель работает по протоколу modbus. Вы пишите скрипт на любой сценарий и все

Морду лица кастомизировать… Все, уже разобрался и обсудил с продавцом. Делают под любой дизайн панельки - с разными цветами стекла, числом кнопок (до 8), иконками покупателя, разными цветами подсветки кнопок и панели. Жаль, что нет возможности ставить и управлять RGB подсветкой. С размерами хуже, их только 2 - 86х86 и 86х105. Есть еще 86х172 - но это под большие заказы. Да, и еще можно впихнуть цифровой индикатор, например для термостата.