Задержка отправки команды модулю WB-MRGBW из контроллера Овен ПЛК210

сейчас нарисовалась другая проблема! задержка между командами от ПЛК210 и WB-MRGBW порядка 30 сек… это нужно написать в новой теме или можно продолжить в этой? и какое есть средство для лечения?

Может быть я неверно понимаю написанное? То есть - на устройство отправлена команда на запись в регистр и он начинает *считываться с новым, установленным значением через 30 секунд?
А до этого при чтении регистра - значение “старое”?

Да, в ПЛК я вижу уже исполнение команды ( включение света) а WB-RGBW отрабатывает через 30 сёк. Скорость 115200

чт, 17 мар. 2022 г., 22:12 Андрей Радионов через Wiren Board Support <info@wirenboard.ru>:

Здравствуйте! Все-таки перенес эту проблему в новую тему.

А команда модулю точно отправляется по сети? Возможно задержка появляется между инструкцией по отправке команды и реальной отправкой самой командой в сеть. Попробуйте отправить ту же команду с помощью ModbusPoll и сразу же считать значение регистра. Также можно проконтролировать момент отправки команды по миганию зеленого светодиода Status на диммере WB-MRGBW-D или осциллографом.

1 лайк

добрый вечер! попробовал , команда отправляется без задержки… значит где то между OWEN и WB-MRGBW-D … значит есть задержка между программной отправкой ( в программе и визуализации видно присвоение нужных параметров ) и реальной отправкой … куда посоветуете посмотреть?
еще вопрос, WB-MRGBW-D настроен как два канала ССТ как можно использовать входы для кнопок для вкл и выкл 1 и 2 канала?

В ПЛК настраивается частота опроса регистров устройства, я думаю эту частоту надо уменьшить. Ширина шины не бесконечная, на скорости 9600 опрос одиого регистра, то есть оправка запроса и получение ответа занимает 25-40 мс. Если пытаться опрашивать чаще - буфер очереди забивается, то что попадает в него отправляется “по возможности”. Есть способ посмотреть текущую длину очереди даже, по-моему.

Конечно. Для кнопок настройка действий в зависимости от типов нажатия выбирается в регистрах 0x03E8-0x0427

То есть для любого входа можно настроить любое изменение регистров диммера.

не совсем могу понять , как соотнести переменные входов в выходам?..да и входов 3 а канала 4?.. хотя в случае с ССТ+ССТ канала 2 вот я и хочу управлять минуя ПЛК (на всякий случай). как можно включать и выключать каналы с помощью штаных входов?

С прошивки 3.0.0 функциональность диммера значительно расширилась, без контроллера настроить модуль стало сложнее. Чтобы назначить определенную функцию управления выбранным входом выходу нужно следовать описанию и карте регистров, описанным в разделе “Действия по типам нажатий” карты регистров: Карта регистров WB-MRGBW-D для прошивки 3.x — Wiren Board

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

а пример какой ни будь можно?

видимо примеров нет(((

Извиняюсь за долгий ответ. Тут в целом все, как и у других модулей. По карте регистров изучаем адреса и назначение регистров модуля.

Пример конфигурации диммера WB-MRGBW-D fw3 в режим W+W+W+W, также конфигурируем реакцию на короткое срабатывание каждого входа как переключение соответствующего канала. Для этого нужно:
В регистр 1000 записать 12288 (0x3000)
В регистр 1001 записать 12289 (0x3001)
В регистр 1002 записать 12290 (0x3002)
В регистр 4000 записать 0 (0x0)

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

большое спасибо за ответ, теперь есть понимание как это работает, но попробовал написать пример для ССТ … не получилось.( как сделать так , чтобы при одинарном нажатии свет включался, при долгом нажатии регулировалась яркость, а при коротком , а затем долгом менялась цветовая температура?

Для таких настроек:


Нужно записать следующие значения:

1 лайк

добрый вечер! не получается записать код 22 в регистр 4000. может по этому не устанавливаются значения в 1020 и 1060… согласно таблицы при ССТ+ССТ код должен быть 34?

0x22=34
А что за ошибка?
Да, прошивка в диммере точно 3.x?

просто команда не присваивается(

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

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

1 лайк

при записи в 4000 регистр числа 0 записывается 0

при записи 22 ничего не происходит

записываю 34 , успешно