Просмотр полной версии : Нет обмена по модбасу со сторонними устройствами.
Приобрёл радиомост ZT 2570(https://ipc2u.ru/catalog/zt-2570) и модуль аналогового ввода ZT2017. Создал в кодесисе канал Modbus rtu, ни какого обмена. Обратился в поддержку продавцам, те подключились к модулям http://www.icpdas.com/en/download/show.php?num=1046&root=&model=&kw=DCON%20Utility (DCON_Utility_Pro) и считали в ModBus RTU данные с датчиков на входах. Я после этого подключаю эти модули с СПК 107 м1 и опять ни какого обмена.
Вопрос 1 кто ни будь пользовался этими модулями? 2 Бывают другие, не совместимые друг с другом версии ModBus RTU? 3 Есть какая ни будь утилита для опроса устройства, для определения того, что он точно работает в Modbus RTU а не DCON например? Для проверки верности настроек канала подключал к этому порту на СПК м1 МВ 110 224 8а, работает. Есть идеи куда копать?
Евгений Кислов
24.12.2020, 06:25
Приобрёл радиомост ZT 2570(https://ipc2u.ru/catalog/zt-2570) и модуль аналогового ввода ZT2017. Создал в кодесисе канал Modbus rtu, ни какого обмена. Обратился в поддержку продавцам, те подключились к модулям http://www.icpdas.com/en/download/show.php?num=1046&root=&model=&kw=DCON%20Utility (DCON_Utility_Pro) и считали в ModBus RTU данные с датчиков на входах. Я после этого подключаю эти модули с СПК 107 м1 и опять ни какого обмена.
Вопрос 1 кто ни будь пользовался этими модулями? 2 Бывают другие, не совместимые друг с другом версии ModBus RTU? 3 Есть какая ни будь утилита для опроса устройства, для определения того, что он точно работает в Modbus RTU а не DCON например? Для проверки верности настроек канала подключал к этому порту на СПК м1 МВ 110 224 8а, работает. Есть идеи куда копать?
Судя по документации - ваш модуль поддерживает и Modbus RTU, и DCON, причем по умолчанию включен DCON.
Протокол выбирается DIP-переключателем.
На стороне шлюза тоже, возможно, нужно что-то настроить.
Т.е. после первичного знакомства с документацией - есть ощущение, что опрос вашего модуля с СПК по Modbus RTU настроить можно.
P.S. - может, вас смутила логическая адресация в документе?
30001 означает "регистр 0, функция 04"
Евгений Кислов
24.12.2020, 07:29
Где-то там
Так это же где-то там.
А в документации производителя все прозрачно:
http://ftp.icpdas.com/pub/cd/usbcd/napdos/zigbee/zt_series/document/zt-2017/zt-2017(c)_usermanual_0010_en_20130327.pdf
стр. 65.
Example:
Read the analog input value of the module 01, the following command should be sent
01 04 00 00 00 08 F1 CC
Пробовал в кодсисе указывать сдвиг 0, 30001 и 30000. Дип щёлкал и модбас и дкон. Всё по барабану, статус канала красный треугольник.
Евгений Кислов
24.12.2020, 08:16
Пробовал в кодсисе указывать сдвиг 0, 30001 и 30000. Дип щёлкал и модбас и дкон. Всё по барабану, статус канала красный треугольник.
Судя по документации - после манипуляций с дипами надо перезагружать прибор по питанию.
Я бы вам рекомендовал сначала с ПК опросить модуль любым модбас мастером (Insat OPC, например).
СПК м1 куплен 25 ноября проект сделал в Codesys 3.5SP14p3 . Может Codesys надо другой?
Евгений Кислов
24.12.2020, 08:49
СПК м1 куплен 25 ноября проект сделал в Codesys 3.5SP14p3 . Может Codesys надо другой?
Я думаю, проблема не в СПК и CODESYS, а в особенностях настройки ваших slave-устройств.
Поэтому рекомендую сначала наладить опрос с ПК, без участия СПК и CODESYS.
Для проверки верности настроек канала подключал к этому порту на СПК м1 МВ 110 224 8а, работает.
В итоге пляски с бубном. Выяснил что мв 110 224 8а опрашивается c компа утилитой MBRTU V.1.0.9 успешно.
52756
Также нормально отвечают радимодули ZT
52757
Оба имеют адреса 1.
Подключаю их к портам 1 и 2 панели СПК м1
МВ110 нормально ZT в отвале
52758
ввожу не верные сдвиг в канале МВ 110 десятку, в итоге МВ 110 отваливается от порта.
52759
Для канала с ZT модулями вводил сдвиг 0, 30000, 30001 всё по барабану в отвале. Предполагаю, что дело в сдвиге. Но как узнать какой нужен?
Евгений Кислов
25.12.2020, 14:40
Также нормально отвечают радимодули ZT
При запросе с адресом 1 модуль отвечает, что данный код функции не поддерживается.
При запросе с адресом 2 модуль что-то отвечает, но это не Modbus RTU.
Мне кажется, это нельзя назвать "нормальным".
Я бы рекомендовал вам связаться с техподдержкой ICP DAS, чтобы они продемонстрировали, как в вашей программе на ПК получить корректный ответ от модуля.
Корректность можно проверить онлайн-парсером, например:
http://rapidscada.net/modbus/ModbusParser.aspx
P.S. - попробуйте не 1 регистр прочитать, а 8 (как в примере в документации).
Вдруг по каким-то странным соображениям позволено считывать некоторые параметры только пачками.
И ещё, как то можно узнать код ошибки который возвращает ZT модуль контроллеру?
Евгений Кислов
25.12.2020, 15:08
И ещё, как то можно узнать код ошибки который возвращает ZT модуль контроллеру?
На вашем скриншоте видно, что код ошибки 01 (ILLEGAL FUNCTION).
Обмен заработал. Не пойму как. Спасибо всем кто участвовал.
Евгений Кислов
25.12.2020, 18:49
Обмен заработал. Не пойму как. Спасибо всем кто участвовал.
Жаль, а то было бы интересно узнать, в чем нюанс был.
Теперь я поднял канал с ZT. Но во всех регистрах я вижу нолики, чёрного цвета. Послал в их поддержку вопрос , надеюсь что нибудь подскажут. А может мой порт не красивые биты шлёт?
52790
Евгений Кислов
27.12.2020, 11:56
В первом проекте в Modbus_Slave_COM_Port для параметра Всегда обновлять переменные не установлено значение Вкл. 2.
Так что ничего странного в наблюдаемой ситуации нет.
Гораздо интереснее, какие манипуляции привели к налаживанию обмена с ICP DAS.
Евгений Кислов
27.12.2020, 11:57
Теперь я поднял канал с ZT. Но во всех регистрах я вижу нолики, чёрного цвета. Послал в их поддержку вопрос , надеюсь что нибудь подскажут. А может мой порт не красивые биты шлёт?
52790
Вероятно, дело опять в той настройке, о которой я писал выше:
https://owen.ru/forum/showthread.php?t=28167&p=343792&viewfull=1#post343792
Я создал новый проект в котором создал канал модбас. Подключил к нему модуль мв 110 224 8а. Увидал на модуле моргающую лампочку " обмен по порту" решил, что всё в порядке. Но не смотря на мигающую лампочку обмен не происходил.52791 . Мне нужно было посмотреть ,что за переменные идут (подвела самоуверенность). Я подсоединил к этому каналу , на теже провода ZT 2570 и увидел отсутствие обмена. Когда увидел отсутствие обмена с МВ 110, удивился. Открыл старый проект с работающим обменом, скопировал от туда полностью порт, вставил в новый проект, и обмен пошёл.
52792
Евгений Кислов
27.12.2020, 12:05
Про 8А у меня вопросов нет, интересно как раз про ZT 2570, который
Обмен заработал. Не пойму как
Да нет нолики чёрные и настройку попереключал . И настройки канала ZT пробовал сдвиг 0 ,30000, 30001 функция 4 и 3 (чтение)
Можно как нибудь при обмене с СПК узнать какие ошибки в канале есть или нету? А то обмен без данных никому и не нужен.
Евгений Кислов
27.12.2020, 12:19
Можно как нибудь при обмене с СПК узнать какие ошибки в канале есть или нету? А то обмен без данных никому и не нужен.
Если ровно горит зеленый кружок рядом с модулем - то ошибок нет.
Значит, модуль в ответ действительно присылает нули.
У меня на модуле есть настройка данные HEX и inginiring, я выбрал HEX . Что такое inginiring , я первый раз слышу.
Попробовал данные переключить на ingeeniring канал развалился. Вернул на HEX ? всё позеленело , но данные чёрные нули.
Что при коде функции модбаса 4 мне ставить сдвиг 30001 не нужно? Регистры 0 сдвинут на 30001 естественным образом?
меня смущает таблица https://ipc2u.ru/articles/prostye-resheniya/modbus-rtu/
52794
В кодесисе ведь надо явно указывать сдвиг до нулевого регистра.
Евгений Кислов
27.12.2020, 12:54
Все эти вопросы вам следует задать техподдержке ICP DAS.
Большое спасибо всем участникам. С наступающими праздниками. Оказывается ZT 2017 , без датчиков прекращает обмен с мастером. Гонит кругом нули. Поддержка ICP DAS сама удивилась.
Только служебной информации такой как скорость настройки и т.п. тоже нули
Powered by vBulletin® Version 4.2.3 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot