M340 Modbus Rtu коммуникация через сторонний шлюз |
|
|
|
25.9.2018, 14:54
|
Группа: Участники форума
Сообщений: 41
Регистрация: 22.11.2017
Пользователь №: 332248

|
Есть три устройства, подключённые по CAN шине к шлюзу с конвертером протоколов и интерфейсов. Шлюз коммуницирует по ModBus RTU с M340. Номера устройств прописаны в шлюзе как 4,5,6 Обращаюсь к 4-му устройству. Хочу прочитать 5 регистров, начиная с 700-го.  Получаю на выходе  Вижу, что по коммуникации проблем нет, 16#0000 ( вторая строка в Data managed by the system ), но есть проблема в 1-й строке, в младшем байте, бит активности - 1 (cancel bit). В чём у меня косяк? Пробовал читать и как %IW и как %I, пробовал читать как 30700 и как 40700, не зная в какой области памяти шлюза хранятся эти регистры.
Сообщение отредактировал Retard - 25.9.2018, 14:58
|
|
|
|
|
 |
Ответов
(1 - 8)
|
25.9.2018, 20:24
|
Группа: Участники форума
Сообщений: 172
Регистрация: 19.9.2010
Пользователь №: 72709

|
Добрый день! 1. Как управляете переменной work? 2. Объекты попробуйте '%MW' (если в документации на шлюз внутренние регистры памяти) 3 NUM - начиная с 699 прочитать 7 слов. Были случаи адресации для 700 регистра "какого-то оборудования": - 699; - 700; - 701; - 40699; - 400699 и т.д. Пробуйте. 4. Надеюсь, с "физикой" сети всё по рекомендациям производителей? С настройкой порта и т.д.? 5. Нули в четвёртом слове таблицы параметров говорят о величине принятых/переданных байтов. Ничего не принимается 6. Младший бит - бит активности, а не отмены. Прочтите внимательно и посмотрите в анимационой таблице значение, например, %MW100=1 в десятичном и двоичном представлении. Успехов! С уважением,
|
|
|
|
|
25.9.2018, 22:37
|
Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316

|
Думаю, проблемы с битом активности, опрос нужно делать, когда бит =0. Посмотрите это видео https://youtu.be/2Bd-1Ez1pWE
|
|
|
|
|
26.9.2018, 17:00
|
Группа: Участники форума
Сообщений: 41
Регистрация: 22.11.2017
Пользователь №: 332248

|
Цитата(ogorsv @ 25.9.2018, 20:24)  Добрый день! 1. Как управляете переменной work? 2. Объекты попробуйте '%MW' (если в документации на шлюз внутренние регистры памяти) 3 NUM - начиная с 699 прочитать 7 слов. Были случаи адресации для 700 регистра "какого-то оборудования": - 699; - 700; - 701; - 40699; - 400699 и т.д. Пробуйте. 4. Надеюсь, с "физикой" сети всё по рекомендациям производителей? С настройкой порта и т.д.? 5. Нули в четвёртом слове таблицы параметров говорят о величине принятых/переданных байтов. Ничего не принимается 6. Младший бит - бит активности, а не отмены. Прочтите внимательно и посмотрите в анимационой таблице значение, например, %MW100=1 в десятичном и двоичном представлении. Успехов! С уважением, 1. С панели, это старт/стоп 2. Перепробовал все варианты 3. И форматы представления числа 4. Как уверяет производитель, настроено под меня 5. Понял 6. Ну так это же хорошо, т.е. идёт обмен, но ничего не считывается, т.к. не попал в адрес?
|
|
|
|
|
29.9.2018, 14:36
|
Группа: Участники форума
Сообщений: 172
Регистрация: 19.9.2010
Пользователь №: 72709

|
1. А с панелью таки получилось связаться? Вроде жаловались на отсутствие связи? Что же не отписались о результатах? 2. Я бы сперва поставил передний фронт %S6 последовательно с отсутствием бита активности, как Александр (san) посоветовал, на запуск READ_VAR. А, убедившись в нормальном чтении, уж потом панель подключал - так будет логичнее. 3. Когда всё перепробовано, а ничего не получается, хочется таки взглянуть на: - документацию на шлюз - схему вашего подключения - архивный или экспортный вариант программы (.sta/.zef/.xef)
Чудес не бывает: или оборудование исправно, но кто-то что-то сделал не так, или оборудование неисправно и нужно обращаться в поддержку производителя шлюза
4. Да, еще конфигурацию самого шлюза тоже посмотреть хотелось бы - в смысле введённые настройки
|
|
|
|
|
3.10.2018, 0:52
|
Группа: Участники форума
Сообщений: 41
Регистрация: 22.11.2017
Пользователь №: 332248

|
Цитата(ogorsv @ 29.9.2018, 14:36)  1. А с панелью таки получилось связаться? Вроде жаловались на отсутствие связи? Что же не отписались о результатах? 2. Я бы сперва поставил передний фронт %S6 последовательно с отсутствием бита активности, как Александр (san) посоветовал, на запуск READ_VAR. А, убедившись в нормальном чтении, уж потом панель подключал - так будет логичнее. 3. Когда всё перепробовано, а ничего не получается, хочется таки взглянуть на: - документацию на шлюз - схему вашего подключения - архивный или экспортный вариант программы (.sta/.zef/.xef)
Чудес не бывает: или оборудование исправно, но кто-то что-то сделал не так, или оборудование неисправно и нужно обращаться в поддержку производителя шлюза
4. Да, еще конфигурацию самого шлюза тоже посмотреть хотелось бы - в смысле введённые настройки Да с панелью связался, напортачил в настройках. Ничего криминального, но пока нашёл своё косяк, убил уйму времени. Чтение тоже стартануло, но что самое обидное, я могу спокойно прочитать регистры с данными, кроме COILS. Условно говоря, в функции чтения указываю %MW, 48 регистр и читать всего 2, он показывает мне данные в регистре, это то, что я вижу на оборудовании. Но стоит начать читать с 0 по 10-й регистр флагов, он может отдать какую-то херь, либо нули, а там как бы должны быть только 0 или 1.
|
|
|
|
|
3.10.2018, 1:16
|
Группа: Участники форума
Сообщений: 41
Регистрация: 22.11.2017
Пользователь №: 332248

|
Залезаю модбас полом на устройство,всё читается, всё замечательно, но этот же кусок фекалий (М340) никак не хочет работать по-людски.
|
|
|
|
|
3.10.2018, 2:31
|
Группа: Участники форума
Сообщений: 41
Регистрация: 22.11.2017
Пользователь №: 332248

|
Объясните мне, что я не так понимаю в адресации M340? Область %М - это 0x, 1x, значит прося процедуру Read_Var прочитать мне у слейва с адресом 0.0.0.2 область %M начиная с 1 регистра по 10-й он должен отдать мне показания Coils, он показывает что функция запущена, показывает время, показывает количество прочитанных байт и ничего из того, что я должен увидеть. Может есть какой-то сдвиг в адресации? Этот контроллер мне все нервы вымотал. Осталось только попросить выдать его все значения в 1000 регистров
Сообщение отредактировал Retard - 3.10.2018, 2:33
|
|
|
|
|
3.10.2018, 10:07
|
Группа: Участники форума
Сообщений: 41
Регистрация: 22.11.2017
Пользователь №: 332248

|
В первом регистре отображается 256, остальные по нулям, хотя функция говорит, что читает 2 бита. В двух регистрах должны быть 1-цы, в 9-м и 10-м
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
Реклама
ООО «Арктика групп» ИНН: 7713634274
ООО "Русич" ИНН 9721068883 / ЕРИД 2VtzqvMjLF8
ООО «УНИСПЛИТ» ИНН: 6453155081 erid:2VtzqxXgvJi
Реклама: ООО «СибСтронг» | ИНН 6670013662 | ERID: 2VtzqwyM2dc
Последние сообщения Форума
|