Подключение счетчика Меркурий 200.02 по Can

Организуйте пожалуйста удалённый доступ (ssh к контроллеру или teamviewer к терминалу) - посмотрим.

Писать в support@contactless.ru

Ну и сейчас у вас вылетает драйвер при старте, потому что вы зачем-то указали protocol: modbus для счётчика:

        {
            "path": "/dev/ttyRS485-2",
            "baud_rate": 9600,
            "parity": "N",
            "data_bits": 8,
            "stop_bits": 1,
            "poll_interval": 10,
            "enabled": true,
            "devices": [
                {
                    "slave_id": "164225",
                    "device_type": "Mercury 200.02",
                    "enabled": true,
                    "protocol": "modbus",
                    "poll_interval": 20
                }
            ],
            "response_timeout_ms": 0
        },
root@wirenboard-ABZ4PE4F:~# cat /var/log/messages | grep serial | tail
<...>
May 18 09:57:35 wirenboard-ABZ4PE4F user.notice serial: FATAL: Error parsing config file: invalid register type: param32 -- Mercury 200.02

он по умолчанию указан. Какой протокол необходим?

По-умолчанию он не добавляется вообще.

Ещё вопрос: /usr/share/wb-mqtt-serial/templates/config-mercury200_02.json или другие темплейты вы вручную редактировали?

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

так, для счётчика вы поставили response_timeout_ms: 0.
Предполагаю, что дело в этом.

Можно узнать, зачем?

я не трогал этот параметр. он по умолчанию ставит 0

Сколько нужно поставить?

Вы неправы. Вы нажали Properties, выбрали response_timeout_ms (а это значит, что вы решили добавить новую сложную настройку, которую мы даже специально убрали с глаз долой), а потом оставили 0. То же самое и с protocol.

Общее правило: не стоит добавлять и трогать настройки, не понимая, что они делают.

Нужно зайти в Properties и убрать эту настройку обратно.

убрал, посыпались ошибки

перестали передавать информацию датчики на RS485

Потому что я их отключил на время тестирования. Убедитесь сейчас, что ничего не “зависает”, потом включите в интерфейсе порт с датчиками обратно.

“Посыпались ошибки” - это симптом того, что плохи дела с физическим подключением. Может быть дело в терминаторе (убрали перемычку), может быть вы подключили плохо или плохим кабелем, может быть ещё куча причин. Кроме этого, вы подключаете счётчик UART-CAN к порту RS-485, это работает по счастливой случайности (частично пересекаются уровни сигналов RS-485 и CAN). В общем случае это работать не должно и для подключения Меркуриев по UART-CAN нужно взять у нас специализированный модуль.

Предвосхищая возможный вопрос: нет, надпись “CAN” на клеммнике про другое. У нас на этом клеммнике настоящий интерфейс CAN, а производители Меркурия под словом “CAN” подразумевают нечто самодельное.

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

подскажите как тестовое логирование счетчика теперь отключить?

галочку с Debug в веб-интерфейсе в настройках драйвера снять. Или в конфиг-файле поменять “debug”:true на “debug”:false

Так есть меркурии с нормальным человеческим RS-485, так что это касается далеко не всех модификаций. Посмотрим как лучше написать.

Понял. Спасибо. Пока все стабильно

Подключил модуль изолированный UART-CAN. Терминатор не снимал, в настройках железа модуль указал. Вопрос следующий. Отвалились все датчики на 1 порту RS485, меркурий так и не появился

May 24 20:24:18 wirenboard-ABZ4PE4F user.notice serial: ERROR Can’t open the device /dev/ttyMOD2 (No such file or directory)
May 24 20:24:18 wirenboard-ABZ4PE4F user.notice serial: FATAL: Serial protocol error: cannot open serial port. Stopping event loops.

  1. Полностью напишите какие настройки вы трогали и что делали
  2. Покажите содержимое файлов /etc/wb-hardware.conf и /etc/wb-mqtt-serial.conf
  3. Покажите пожалуйста вывод команд

dpkg -l wb-configs
dpkg -l wb-hwconf-manager

Особо интересует, откуда взялась вообще строчка “/dev/ttyMOD2”

  1. установил модуль, подключил. прописал тут <img src="/uploads/default/original/1X/e39c538935170a4174a7529b184184a98e0984b6.png" width=“690” height="298»>

и прописал тут

и тут

Спасибо. Ещё пожалуйста покажите вывод

dpkg -l wb-mqtt-serial

и вывод

ls -lh /dev/tty*

P.S. Кирилл, не могли бы вы отвечать одним сообщением, а не разбивать на пять разных? Спасибо.