Здравствуйте опрашиваем вайренбордом 6.7 модуль овен 2ас через wb-mqtt-serial. На модуле подключен датчик давления (4-20 мА). Работает вроде все хорошо но ровно в раз минуту прилетает значение 0-0.7 хотя такого давления давления там не должно быть. Подключали также генератор токовой петли в диапазоне 15-30 атм. Но ситуация не изменилась. Включил дебаг для wb-mqtt-serial, но таких нулевых значений там нет… Во вложении лог дебага порта serial и лог mosquitto_sub … | ts. В логе mosquitto_sub видно что прилетает значение 0.7 (лог к сожалению обрезан, но таки значения прилетают ровно с интервалом 1 раз в минуту). Лог дебага такие значенич не вылавливает. Версия драйвера wb-mqtt-serial 2.7.1. log_serial.txt (3.5 МБ) mosquitto_sub_0.txt (28.5 КБ) Подскажите что можно сделать?
Добрый день!
- Пожалуйста соберите лог из mosquitto_sub длиннее. Напишите точную команду, которую писали.
- Пожалуйста, приложите лог wb-mqtt-serial за то же самое время, что и mosquitto_sub. У вас сейчас они не пересекаются.
- Приложите пожалуйста конфиг wb-mqtt-serial.conf и кастомные шаблоны, если они были.
- Канал опрашивается почти 100 раз в секунду, судя по выводу mosquitto_sub + ts. Так и задумывалось?
- Лог mosquitto_sub выполнял так:
mosquitto_sub -h 10.59.5.94 -t ‘/devices/wb-modbus-1-0/controls/pressure’ | ts >> /mnt/c/WORK/WB/mosquitto_sub_2510201.txt
.txt - Вложил. Единственное хотел отметить что часовой пояс не настроен и время поэтому отображается некорректно. Местный часовой пояс у нас UTC+5
- Вложил
- Да так и задумывалось. В идеале надо снимать каждые 5 секунд снимать значение этого параметра.log_serial25102021.txt (1.5 МБ) mosquitto_sub_2510201.txt (322.7 КБ) wb-mqtt-serial.conf (2.0 КБ)
"poll_interval": 5,
это 5 миллисекунд, а не 5 секунд
5 миллисекунд надо. Опечатался
гарантированно с такой скоростью вы вряд ли сможете собрать.
Если это поможет то давайте изменим конфиг. Подскажите какие параметры конфига поменять?
- Если надо опрашивать раз в 5 секунд, то
poll_interval
надо ставить равным 5000. - Как вы получили лог от
wb-mqtt-serial
? - Нет ли каких-нибудь правил, которые пишут в этот топик?
- 1 раз в 5мс
- journalctl -u wb-mqtt-serial >> /tmp/log_serial25102021.txt
- Нет этот топик управляет только выходом A2_OUT
Смотрим. В логе брокера видно:
Oct 25 09:53:08 11.32812
Oct 25 09:53:08 0.734375
Oct 25 09:53:09 11.34375
Oct 25 09:53:09 0.703125
Oct 25 09:53:09 11.25
Пытаюсь воспроизвести. А нет ли нигде в скриптах условия?
То есть - если на контроллере есть скрипты - дайте их пожалуйста.
Ну и какой релиз на контроллере?
- Через какое время после запуска wb-mqtt-serial начинаются такие проблемы?
- Можете ещё через top/htop посмотреть какую нагрузку создаёт wb-mqtt-serial?
- Можно ли нам как-то удалённо получить доступ к контроллеру?
Вот как раз покажите этот скрипт.
defineRule(“control_pressure”, {
whenChanged: “wb-modbus-1-0/pressure”,
then: function (newValue, devName, cellName) {
log(“pressure=” + newValue);
if ( newValue > dev[“vdev”][“maxP”]) {
dev[“wb-gpio”][“A2_OUT”] = false; // on A2 (DO2)
log(“newValue ust1 >”);
} else {
log(“newValue ust1 <”);
}
if ( newValue < dev[“vdev”][“minP”]) {
dev[“wb-gpio”][“A2_OUT”] = true; // on A2 (DO2)
log(“newValue ust2 <”);
} else {
log(“newValue ust2 >”);
}
}
});
- Почти сразу. С периодичностью 1 раз в минуту
- Во вложении скрин htop
- Давайте я подумаю как организовать удалённый доступ.
Нужен ли удаленный доступ? Есть ли у Вас публичный vpn сервер чтобы организовать. Можем организовать сами но это займет доп. время.
Доступ нужен. Можете сами организовать vpn?
Пока не смогу нахожусь в командировке… По приезду обязательно сделаем. Можно ли Вам в личное сообщение отправить парамеиры доступа?
Да, конечно, пишите в личку.