WB5 очень долго считывает состояние модулей RS485


#1

Даже и не знаю как сформулировать вопрос, как то из разряда “Шарик поздравляю …”
вроде все работает. в смысле контроллер и с десяток распределенных реле, RGB, термодатчиков,
ошибок на шине нет
выставили Desired poll interval по шине для всех модулей в соответствие с приоритетом,
скрипты тоже работают
но почему то реакция выключателей подключенных через реле и RGB-модули составляет секунд 30. Там где выключатели управляют реле напрямик внутри модуля и незаметно даже. Ну считал контроллер потом и ладно. Но если кнопка на соседнем модуле … то жать на кнопку надо очень долго.
Вообщем мы в тупике …


#2

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


#3

sasa, добрый день! Еще рекомендую посмотреть на наличие ошибок в файле /var/log/messages. Но для начала проверьте с простым скриптом, как написал Flagman.


#4

в файле /var/log/messages ошибок нет
отключение скриптов ни к чему не приводит.
отключение всех модулей кроме одного снизило время реакции до приемлемых, но подключение модулей к шине (программное) увеличивает время и при 5-6 модулей это уже 2-3 секунды . вообщем как то так получается что при скорости 9600 это 0,5 секунды на каждый модуль на шине


#5

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


#6

Да, именно так и сделайте!
Также поможет увеличение скорости обмена шины до 115200 (если модули поддерживают).


#7

Поменяли/сделали/разделили.
всю отработку отключили. Но радикально не поменялось.
Но се равно как то не серьезно выходит. на 57k при 6 модулях время опроса около 1 секунды. Это 0,2 сек на модуль. КАКИЕ 10мс?
на длинном шлейфе с 20 модулями секунд 5 опрос занимает. При 9600 было секунд 20, в 5 раз подняли скорость в 5 раз сократили время.
и это без алгоритмов. На чистом контроллере.
Вчера поставили новый WB6.Ничего не изменилось. Такого же не может быть.
Ранее строили на Инсайтовском контроллере, он без проблем отрабатывал 20 модулей с периодом 100мс.
Может все таки мы где то не правы? Или это нормальная скорость опроса?


#8

sasa, смотрите, аналогом SM-BUS-устройств, как в инсайтовских решениях, у нас являются боковые модули WBIO. Они шлют прерывания в контроллер и отработка происходит практически мгновенно.
Шина RS-485 имеет один мастер, который по очереди опрашивает все сконфигурированные устройства.
Чтобы сократить скорость, попробуйте оставить в шаблонах устройств только нужные вам регистры, не опрашивайте напряжение питания (или опрашивайте его реже) и т.п.
В реальных измерениях скорость обмена данными на 115200 составила порятка 1500 байт/с. Считайте, что опрос одного холдинг-регистра – это 8 байт запроса и 6 и более байт ответа.


#9

Прошу тогда пояснить :slight_smile:
На Дин линейку входит не очень много модулей. Каким образом перенести правильно перенести на другую линейку или в другой шкаф.
с помощью Преобразователь интерфейсов WB-MIO-E?
А Преобразователь интерфейсов WB-MIO превращает модули контроллера в обычные ModBus устройства с теми же проблемами со временем опроса?


#10

да

Это не проблемы, это, к сожалению, особенности того, как устроен RS-485. Выше предложили два варианта того, как получить быструю реакцию по Modbus: повысить скорость порта и/или оставить только нужные регистры. Что не так?


#11

По исходному вопросу в принципе да, решение есть.
Но если строить домашнюю автоматизацию на базе WB то необходимо что бы проблем задержек для критичных решений не было -т.е. использовать модули контроллера. Они подключаются к контроллеру сбоку, но ширина шкафа обычно не превышает 18 модулей.
Исходя из вышесказанного необходим механизм подключения модулей контроллера с размещением на другой ДИН рейке. У Вас в номенклатуре есть потенциальные решения для этого. И я пытаюсь выяснить какое из предлагаемых Вамb решений поможет решить проблему с задержками. Что не так?


#12

Рекомендованный способ для опроса дискретных входов, когда важна скорость реакции: использовать наши устройства с Modbus RTU (WB-MR6C например) или модули WBIO через WB-MIO, но при этом:

  • делать кастомный шаблон, в котором есть только регистры входов (типа discrete) и всё
  • увеличивать скорость опроса до 115200

когда руки дойдут, напишем пошаговую инструкцию.