Связка MAI2-mini/cc и датчика iON APS200

Добрый день. Подключил датчик, настроил как в документации создал правило, но передает значения в Панель SVG только когда перезагружаю правило, может есть скрипт на периодическое обновление правила?

Добрый день!

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

И еще нужно посмотреть лог wb-rules.service.

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

defineVirtualDevice(deviceName, {
title: {‘en’: ‘Flow pressure’, ‘ru’: ‘Давление фоздуха’} ,
cells: {
line: {
title: {‘en’: ‘Flow’, ‘ru’: ‘Давление бар.’},
type: “value”,
units: “bar”,
// 0-16 bar, 4-20 mA, Modbus ID - 88
value: (dev[“wb-mai2-mini_88/Current input 1 (mA)”] - 4.0) / 1.0,
precision: 0.1,
max: 16,
min: 1
},
}
});

defineRule(“Flow pressure”, {
whenChanged: “wb-mai2-mini_88/Current input 1 (mA)”,
then: function (newValue, devName, cellName) {
dev[“Flow pressure”] = (newValue - 4.0) / 1.0;
}
});
undefined

Сервис диагностики не доступен пишет, в svg передается только когда выключаю и включаю снова правило

defineVirtualDevice("FlowPressure", {
  title: {'en': 'Flow pressure', 'ru': 'Давление воздуха'} ,
  cells: {
    line: {
      title: {'en': 'Flow', 'ru': 'Давление бар.'},
      type: "value",
      units: "bar",
      // 0-16 bar, 4-20 mA, Modbus ID - 88
      value: (dev["wb-mai2-mini_88/Current input 1 (mA)"] - 4.0) / 1.0,
      precision: 0.1,
      max: 16,
      min: 1
    },
  }
});

defineRule("Flow_pressure", {
  whenChanged: "wb-mai2-mini_88/Current input 1 (mA)",
  then: function (newValue, devName, cellName) {
    dev["FlowPressure/line"] = (newValue - 4.0) / 1.0;
  }
});

Как-то так. Не проверял.
И не очень очевидно деление на единицу.

1 лайк

Добрый день!

Проверил код, приведенный @hexprof — значения обновляются.

Спасибо, решение положительное.