Медленное срабатывание whenChanged

Как ускорить срабатывание правила с whenChanged?

Такая конструкция

defineRule({
    whenChanged: "wb-mr6c_28/Input 3",

работает медленнее, чем

setInterval(send_data_fast, 50);
function send_data_fast() {
    if (dev["wb-mr6c_28/Input 3"]

Добрый день.
Проверил утверждение, набросав примитивный скрипт:

//01_17_test_01.js
defineVirtualDevice("pemp1", { //создаём виртуальное устройство
    title: "pemp1", //имя вирт устройства
    cells: { 
        "tesr1": {
            type: "value", //тип его текст поле
            value: 0,
            readonly: false
        },
        "sw1": {
            type: "switch",
            value: 0,
            readonly: false
        },
    }
});

defineRule("WindowSwitch", {
  whenChanged: 'pemp1/sw1',
  then: function(value) {
    dev['pemp1/tesr1']++;
  }
})

Проверяю:

20240117-13:39:54.448042 /devices/pemp1/controls/tesr1 22
20240117-13:39:54.449039 /devices/pemp1/controls/sw1 1
20240117-13:40:01.519794 /devices/pemp1/controls/sw1 0
20240117-13:40:01.523023 /devices/pemp1/controls/tesr1 23
20240117-13:40:01.701640 /devices/pemp1/controls/sw1 1
20240117-13:40:01.703377 /devices/pemp1/controls/tesr1 24
20240117-13:40:01.873747 /devices/pemp1/controls/sw1 0
20240117-13:40:01.875375 /devices/pemp1/controls/tesr1 25
20240117-13:40:02.042282 /devices/pemp1/controls/sw1 1
20240117-13:40:02.044977 /devices/pemp1/controls/tesr1 26
20240117-13:40:02.234037 /devices/pemp1/controls/sw1 0
20240117-13:40:02.236851 /devices/pemp1/controls/tesr1 27
20240117-13:40:02.405049 /devices/pemp1/controls/sw1 1
20240117-13:40:02.407060 /devices/pemp1/controls/tesr1 28
20240117-13:40:02.575181 /devices/pemp1/controls/sw1 0
20240117-13:40:02.577660 /devices/pemp1/controls/tesr1 29
20240117-13:40:02.753406 /devices/pemp1/controls/sw1 1
20240117-13:40:02.756682 /devices/pemp1/controls/tesr1 30
20240117-13:40:02.925229 /devices/pemp1/controls/sw1 0
20240117-13:40:02.927307 /devices/pemp1/controls/tesr1 31
20240117-13:40:03.111730 /devices/pemp1/controls/sw1 1
20240117-13:40:03.114322 /devices/pemp1/controls/tesr1 32
20240117-13:40:03.289406 /devices/pemp1/controls/sw1 0
20240117-13:40:03.292452 /devices/pemp1/controls/tesr1 33
20240117-13:40:03.462168 /devices/pemp1/controls/sw1 1
20240117-13:40:03.467086 /devices/pemp1/controls/tesr1 34
20240117-13:40:03.633824 /devices/pemp1/controls/sw1 0
20240117-13:40:03.636255 /devices/pemp1/controls/tesr1 35
20240117-13:40:03.800506 /devices/pemp1/controls/sw1 1
20240117-13:40:03.802477 /devices/pemp1/controls/tesr1 36
20240117-13:40:03.977047 /devices/pemp1/controls/sw1 0
20240117-13:40:03.979523 /devices/pemp1/controls/tesr1 37
20240117-13:40:04.140880 /devices/pemp1/controls/sw1 1
20240117-13:40:04.142833 /devices/pemp1/controls/tesr1 38
20240117-13:40:04.295366 /devices/pemp1/controls/sw1 0
20240117-13:40:04.297135 /devices/pemp1/controls/tesr1 39

Не вижу задержек более 2-4мс.

Да вижу, спасибо, видимо показалось.

Сколько максимально доп. портов rs485 можно установить?

Требуется максимальное быстродействие по modbus, скорость 115200 уже выставлена.

Модулями расширения можно добавить еще три.

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

С некоторых пор количество модулей на шине перестало влиять на быстродействие, если соблюсти условия:

  1. Отсутствие ошибок на шине, смотреть в логах.
  2. Последние версии прошивок в устройствах.
  3. Свежий релиз ПО в контроллере.

Подробнее: Быстрый Modbus ⚡ — Wiren Board

2 сообщения были перенесены в новую тему: Ошибка записи в несуществующий контрол