Интервал принудительной публикации значений WBIO-DI-WD-14 по WB-MIO

Добрый день!

У меня есть такая цепочка модулей:
WB6 → Ethernet → WB-MGE → WB-MIO → WBIO-DI-WD-14

Вопрос по WBIO-DI-WD-14 - как мне сделать такую же настройку, какая есть для встроенных в контроллер DI в WB6, которая позволяет указать интервал принудительной публикации значений DI входов, даже если они не менялись (Unchanged value posting interval)?

П.С. Без этого очень плохо работает дашборд в Графане, показывающий разные статусы, которые редко меняются (тревоги, протечки, присутствие сети и пр.)

Добрый день.
Посмотрите параметр max_unchanged_interval для GitHub - wirenboard/wb-mqtt-serial: Wiren Board MQTT serial protocol driver
Но хранить в базе неизменяющиеся значения - ну, так себе идея.

Так это действительно заставит ВСЕ показатели сыпать в MQTT при отсутствии изменений, когда мне нужно всего 3 регистра (или 1 модуль). Для DI модулей висящих прямо на WB есть настройка такая, а на таком же модуле, но висящем на WB-MIO почему-то нет. Может, эту настройку можно выставить где-то не через UI?

Нет, для wb-mqtt-gpio тоже параметр общий для всего драйвера: GitHub - wirenboard/wb-mqtt-gpio: GPIO driver service for Wiren Board
также как и для wb-mqtt-serial.

Да, не совсем корректно сказал, но все же разница радикальная - параметр “Unchanged value posting interval” выставлется для всех GPIO устройств на линии (у меня 2 модуля), а в MQTT драйвере для всех serial устройств, коих у меня окрло 50.
Нет ли возможности выставить этот интервал клнкретно на линии GPIO от WB-MIO? Или как-то еще обеспечить публикацию неизменившихся значений?

Нет, для отдельных устройств не выставляется. Тут довольно простая логика: Это нужно для работы довольно странных scada, в основном устаревших. Все современные - они используют событийную модель, то есть постоянная перепубликация просто не нужна. Ну и, кстати в текущем ПО при работе с Быстрым Modbus перепубликации по таймеру нет.

Хорошо, тогда какой вариант есть сделать этот дашборд адекватным?)
Показания этих входов могут не меняться днями, т.к. с сетью все в порядке. В Графане смотришь за час-день обычно, но не за неделю-месяц.

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

Действительно проблема решалась просто в дашборде, спасибо!

Если кому интересно - можно в панелях задавать свой интервал фильтра по времени (отвязанного от выбранного на весь дашборд). Я, к примеру, сделал принудительно за неделю, и если за неделю есть хоть одно значение - статус (последнее значение) будет получен.


1 Like

Да, это намного эффективнее чем просто повторяющиеся записи. Благодарю что делитесь решениями.