Преобразование данных с датчика и отражение преобразованных данных в панели

Здравствуйте! Только разбираюсь с контроллером Wiren Board 7, прошу помощи в следующей задаче:

  1. К контроллеру Wiren Board 7 через модуль аналоговых входов WB-MAI6 подключен поплавковый датчик уровня воды в баке. Датчик аналоговый, двухпроводный, выдает значения от 20 ом - 800 ом, что соответствует уровню бака от 0%-100%. На контроллере измеряемые значения я получаю в корректном виде в топике /devices/wb-mai6_172/controls/IN 2 P Resistance, вывожу его в виджет на панели в натуральном виде (сопротивление в омах)- в этой части вопросов и проблем нет.
  2. Полученные с датчика значения в омах мне надо преобразовать в проценты бака. Для этого я установил Node- RED и создал поток:
    2.1. Получил значение с датчика в омах с помощью нода “in” - вижу что получает в омах
    2.2. С помощью function преобразовал полученные с датчика сопротивление в проценты:
    msg.payload = msg.payload / 800*100;
    return msg;
    Тут тоже все в порядке- в debug вижу корректные значения приходят после function
    2.3. С помощью нода “mqtt in” создаю топик devices/wb-mai6_172/IN 2 P Resistance/transformed и не получаю этот топик ни в каналах MQTT в контроллере ни данные не могу с него получить в виджетах.

Скорее всего надо как-то добавить топик, который я создал с помощью Node-RED в контроллер, чтобы он начал “слушать его”, но информацию о том, как это сделать не могу найти. Node-RED установлен на контроллер и развернут, тут думаю что ошибки нет- т.к. в Node-RED данные с контроллера приходят.

Добрый день
Вам должна помочь статья данная.

Так же хотел бы уточнить, почему выбор пал на node-red? Почему не использовать wb-rules?

1 лайк

Добрый день, удалось ли решить вопрос?