вот конфиг для этого сигнала ID:201, Register: 100
Получилось что-то выяснить?
Я воспроизвожу у себя - (если верить скриншоту) с теми же праметрами - работает.
Добрый день! Пришлите, пожалуйста, скрин, где у вас работает…
Если верить настройкам modbus (таблицам регистров), которые вы указываете в документации, то передать что либо в SCADA не получается.
Приходится вручную “методом тыка” находить нужные параметры, которые не соответствуют офиц. документации.
Ниже строчка из офиц. документации:
В основном проблема возникает с Inpur Register. Ниже прикрепляю скрин настройки MAP3E, эти настройки не совпадают с настройками из документации… но с ними приходят верные значения…
Ниже наши строчки подобранные “методом тыка”:
У нас огромный проект, где вручную настраивать каждый регистр - проблема!
Неужели не было таких проблем?
Как я понял, что офиц. таблица неверная? Очень просто, я показания, которые приходят по Modbus с WirenBoard, сравниваю с показаниями во вкладке “Устройства” в вебке.
Прошу помочь разобраться
Забыл указать сообщение выше как ответ.
Счетчик.
Топик /devices/wb-map6s_27/controls/AP energy 1
содержит значение
mosquitto_sub -v -t '/devices/wb-map6s_27/controls/AP energy 1'
/devices/wb-map6s_27/controls/AP energy 1 6e-05
Беру этоn топик и конфигурирую в mbgate так:
{
"topic": "wb-map6s_27/AP energy 1",
"address": 4000,
"unitId": 11,
"meta_type": "power_consumption",
"enabled": true,
"format": "float",
"size": 8,
"max": 0,
"scale": 1,
"byteswap": false,
"wordswap": false
},
Получаю:
modbus_client -mtcp --debug -p502 10.0.0.78 -a11 -t0x04 -o500 -r4000 -c4
Connecting to 10.0.0.78:502
[00][01][00][00][00][06][0B][04][0F][A0][00][04]
Waiting for a confirmation...
<00><01><00><00><00><0B><0B><04><08><0F><3F><10><75><55><4D><69><1D>
SUCCESS: read 4 of elements:
Data: 0x0f3f 0x1075 0x554d 0x691d
Какая таблица?
Таблица чего?
https://wirenboard.com/wiki/WB-MAP3E_Data_Registers_v.2
При настройке мы ориентируемся на эту таблицу
Вопрос в следующем: есть какой-то принцип настройки каналов и регистров в шлюзе MQTT - Modbus RTU/TCP slave? Или это все ручная настройка?
В документе, на который выше ссылку дал, регистр AP energy - u64
little endian, а мы в шлюзе MQTT - Modbus RTU/TCP slave ставим для него - Float
Таблица регистров счетчика не имеет отношения к тому что и как конфигурируется в mbgate.
Это, в общем совсем несвязанные вещи. mbgate отдает значение топиков, указаных в его конфиге, именно в таком виде и по тем адресам что в нем будут настроены.
Таблицы цстройств - совершенно не связаны с их дальнейшим представлением с шлюзе.
Так как вам удобно настраиваются.
Неважно, в шлюз отправляется значение из топика. В топик оно может попадать считываясь из счетчика, может быть каим-то расчетным. И именно значение уже можно представить в удобном виде.
Спасибо за ответ
Это конечно мое личное мнение, но было бы намного удобнее с готовой таблицей для ваших устройств предназначенной для передачи сигналов на верхний уровень. Уходит очень много времени на выставление нужных параметров в конфигураторе, чтобы значения совпадали с реальными.
Как свою таблицу сделаем, сюда прикреплю.
Тут дело в том, что именно требуется передавать на верхний уровень.
Четно говоря если для верхнего уровня подходит таблица регистров устройства “как есть” - то зачем в этой цепочке контроллер? Достаточно шлюза, например Преобразователь интерфейсов WB-MGE v.2 — Wiren Board
Потому что очень часто параметры с удаленных модулей используются в логике (автоматике) и, следовательно, обрабатываются ПЛК. Также данные с этих модулей надо передать в SCADA. Поэтому приходится использовать конфигуратор Modbus RTU/TCP Slave.
Если есть TCP - то, возможно, проще отдавать сразу из MQTT значения? Нет необходимости настраивать дополнительный шлюз.
Наверху (в SCADA) могут принять только Modbus или МЭК-104. Точнее это ТЗ такое у них.
Все решаемо, потом поделюсь файлами, вдруг пользователям будет полезно. Тем более все чаще WB используют в промышленности.
Я сейчас готовлю топик по МЭК104, есть много нюансов, из-за которых WB не пускают на объекты. Попробую описать подробно. Надеюсь, что совместно решим проблему.
Да, это будет весьма полезно.
Эта тема была автоматически закрыта через 7 дней после последнего ответа. В ней больше нельзя отвечать.