Стартовая страница › Форумы › Взаимодействие с устройствами › Modbus › Modbus TCP через GPRS Datakom D100
Помечено: GSM, MBAP header, Modbus TCP
- В этой теме 14 ответов, 4 участника, последнее обновление 4 года, 11 месяцев назад сделано Mikhail.
-
АвторСообщения
-
01.05.2019 в 18:25 #11526GeorgeУчастник
Добрый день.
Столкнулся со следующей проблемой при опросе контроллера ДГ Datakom D100 — при соединении коммуникатора в режиме ТСР сервер со встроенным gprs модемом устройства при каждом опросе возникает следующая ошибка:
2019-05-01 18:15:13 Сеанс связи с КП 106 «Datakom D100», тип: ScadaCommCommon, адрес: 1
Запрос значений группы элементов «Mains voltage»
Отправка (12): 00 00 00 00 00 06 01 03 28 00 00 01
Приём (7/7): 44 59 30 39 44 35 30
Некорректные данные MBAP Header!
Запрос значений группы элементов «Mains voltage»
Отправка (12): 00 00 00 00 00 06 01 03 28 00 00 01
Приём (7/7): 30 01 00 D1 59 00 01
Некорректные данные MBAP Header!При этом, с тем же драйвером опрос устройства через com-порт происходит нормально.
Так же при подключении к RS-485 порту контроллера стороннего 3g модема опрос через gsm так же происходит нормально. К сожалению логи нормального опроса сейчас приложить не могу, но по памяти помню что строка «отправка» выглядит аналогично, а вот строки «приём» следуют две подряд.
Аналогичная ситуация с еще одним контроллером того же производителя.
Подскажите, пожалуйста, куда копать.
Проблема во встроенном модеме?
Либо с настройками что-то не то? Может связано со «слабой» скоростью gprs? Задержку может нужно добавить какую?
Надеюсь на вашу помощь.01.05.2019 в 20:19 #11527RomirosУчастникНа сайте RapidScada есть онлайн модбас парсер. Используйте его для разбора.
Я не эксперт в модбас, но похоже у вас нестыковка с протоколами. Modbus TCP ожидает 8 байт а у вас приходит 7.
Проверьте настройки.01.05.2019 в 20:48 #11528manjey73УчастникБлин, где-то выкладывал драйвер Modbus который меняет MBAP хидер случайным образом.
Ща гляну на почте, может остался…https://cloud.mail.ru/public/7×72/T9uX5wYpj
протестируйте с данным драйвером Modbus
- Этот ответ был изменен 4 года, 12 месяцев назад от manjey73.
02.05.2019 в 10:53 #11532GeorgeУчастникДобрый день.
Спасибо за реакцию.
Напомню что напрямую через ком порт, либо 3g модем всё читается нормально. Значит с протоколами всё должно быть ок. Возможно штатный 2g модем что-то искажает.
Касательно замены драйвера- попробовал, результат ниже.2019-05-02 10:43:50 Сеанс связи с КП 106 «Datakom D100», тип: KpModbus, адрес: 1
Запрос значений группы элементов «Mains voltage»
Отправка (12): EC 78 00 00 00 06 01 03 28 00 00 01
Приём (0/7):
Ошибка связи!
Запрос значений группы элементов «Mains voltage»
Отправка (12): EC 78 00 00 00 06 01 03 28 00 00 01
Приём (7/7): 44 59 30 39 44 35 30
Некорректные данные MBAP Header!
Запрос значений группы элементов «Mains voltage»
Отправка (12): EC 78 00 00 00 06 01 03 28 00 00 01
Приём (7/7): 30 01 00 D1 59 00 01
Некорректные данные MBAP Header!
Запрос значений группы элементов «Mains voltage»
Отправка (12): EC 78 00 00 00 06 01 03 28 00 00 01
Приём (7/7): 00 01 3F 00 01 F6 01
Некорректные данные MBAP Header!
Запрос значений группы элементов «Mains voltage»
Отправка (12): EC 78 00 00 00 06 01 03 28 00 00 01
Приём (7/7): 35 00 33 00 0E 51 4D
Некорректные данные MBAP Header!2019-05-02 10:44:57 Сеанс связи с КП 106 «Datakom D100», тип: KpModbus, адрес: 1
Запрос значений группы элементов «Mains voltage»
Отправка (12): EC 78 00 00 00 06 01 03 28 00 00 01
Приём (7/7): 44 59 30 39 44 35 30
Некорректные данные MBAP Header!
Запрос значений группы элементов «Mains voltage»
Отправка (12): EC 78 00 00 00 06 01 03 28 00 00 01
Приём (7/7): 30 01 00 D1 59 00 01
Некорректные данные MBAP Header!
Запрос значений группы элементов «Mains voltage»
Отправка (12): EC 78 00 00 00 06 01 03 28 00 00 01
Приём (7/7): 00 01 3F 00 01 F6 01
Некорректные данные MBAP Header!
Запрос значений группы элементов «Mains voltage»
Отправка (12): EC 78 00 00 00 06 01 03 28 00 00 01
Приём (7/7): 35 00 33 00 0E 51 4D
Некорректные данные MBAP Header!
Запрос значений группы элементов «Mains voltage»
Отправка (12): EC 78 00 00 00 06 01 03 28 00 00 01
Приём (7/7): 50 33 35 30 20 00 00
Некорректные данные MBAP Header!02.05.2019 в 11:31 #11536manjey73Участника лог при работе через другой модем ?
02.05.2019 в 12:08 #11538GeorgeУчастникК сожалению сейчас не имею возможности изменить подключение к устройству. Как только появится такая возможность — обязательно выложу. Старые логи не сохранил.
02.05.2019 в 12:17 #11540GeorgeУчастникНашел логи при работе через 485-usb конвертер:
2019-04-17 13:01:23 Инициализация линии связи 11 «Modbus RTU»
2019-04-17 13:01:23 Загрузка шаблона устройства из файла KpModbus_D500.xml
2019-04-17 13:01:23 Запуск линии связи 11 «Modbus RTU»2019-04-17 13:01:23 Открытие последовательного порта COM3
2019-04-17 13:01:23 Сеанс связи с КП 105 «Datakom D500», тип: ScadaCommCommon, адрес: 1
Запрос значений группы элементов «Mains voltage»
Отправка (8): 01 03 28 00 00 01 8D AA
Приём (5/5): 01 03 02 00 00
Приём (2/2): B8 44
OK!
Запрос значений группы элементов «Battery volts»
Отправка (8): 01 03 28 65 00 01 9D B5
Приём (5/5): 01 03 02 04 CA
Приём (2/2): 3A D3
OK!
Запрос значений группы элементов «Unit mode»
Отправка (8): 01 03 29 6C 00 01 4C 4B
Приём (5/5): 01 03 02 00 00
Приём (2/2): B8 44
OK!
Запрос значений группы элементов «Run hours»
Отправка (8): 01 03 29 7E 00 01 EC 4E
Приём (5/5): 01 03 02 01 F7
Приём (2/2): F8 52
OK!02.05.2019 в 13:18 #11541manjey73УчастникRTU все же не TCP.
02.05.2019 в 15:26 #11542MikhailМодераторДобрый день!
Попробуйте при работе по TCP также использовать режим Modbus RTU (в свойствах КП).
02.05.2019 в 16:56 #11544GeorgeУчастникПоставил Modbus RTU:
2019-05-02 16:51:23 Соединение с клиентом 46.211.27.89
2019-05-02 16:51:23 Сеанс связи с КП 106 «Datakom D100», тип: ScadaCommCommon, адрес: 1
Запрос значений группы элементов «Mains voltage»
Отправка (8): 01 03 28 00 00 01 8D AA
Приём (5/5): 44 59 30 39 44
Некорректный адрес устройства!
Запрос значений группы элементов «Mains voltage»
Отправка (8): 01 03 28 00 00 01 8D AA
Приём (5/5): 35 30 30 01 00
Некорректный адрес устройства!
Запрос значений группы элементов «Mains voltage»
Отправка (8): 01 03 28 00 00 01 8D AA
Приём (5/5): D1 59 00 01 00
Некорректный адрес устройства!
Запрос значений группы элементов «Mains voltage»
Отправка (8): 01 03 28 00 00 01 8D AA
Приём (5/5): 01 3F 00 01 F6
Некорректный код функции PDU
Запрос значений группы элементов «Mains voltage»
Отправка (8): 01 03 28 00 00 01 8D AA
Приём (5/5): 01 35 00 33 00
Некорректный код функции PDU2019-05-02 16:52:15 Сеанс связи с КП 106 «Datakom D100», тип: ScadaCommCommon, адрес: 1
Запрос значений группы элементов «Mains voltage»
Отправка (8): 01 03 28 00 00 01 8D AA
Приём (5/5): 00 00 00 00 00
Некорректный адрес устройства!
Запрос значений группы элементов «Mains voltage»
Отправка (8): 01 03 28 00 00 01 8D AA
Приём (5/5): 00 00 00 00 00
Некорректный адрес устройства!
Запрос значений группы элементов «Mains voltage»
Отправка (8): 01 03 28 00 00 01 8D AA
Приём (5/5): 00 00 00 00 00
Некорректный адрес устройства!
Запрос значений группы элементов «Mains voltage»
Отправка (8): 01 03 28 00 00 01 8D AA
Приём (5/5): 00 00 00 00 00
Некорректный адрес устройства!
Запрос значений группы элементов «Mains voltage»
Отправка (8): 01 03 28 00 00 01 8D AA
Приём (5/5): 00 00 00 00 00
Некорректный адрес устройства!2019-05-02 16:53:07 Сеанс связи с КП 106 «Datakom D100», тип: ScadaCommCommon, адрес: 1
Запрос значений группы элементов «Mains voltage»
Отправка (8): 01 03 28 00 00 01 8D AA
Приём (5/5): 44 59 30 39 44
Некорректный адрес устройства!
Запрос значений группы элементов «Mains voltage»
Отправка (8): 01 03 28 00 00 01 8D AA
Приём (5/5): 35 30 30 01 00
Некорректный адрес устройства!
Запрос значений группы элементов «Mains voltage»
Отправка (8): 01 03 28 00 00 01 8D AA
Приём (5/5): D1 59 00 01 00
Некорректный адрес устройства!
Запрос значений группы элементов «Mains voltage»
Отправка (8): 01 03 28 00 00 01 8D AA
Приём (5/5): 01 3F 00 01 F6
Некорректный код функции PDU
Запрос значений группы элементов «Mains voltage»
Отправка (8): 01 03 28 00 00 01 8D AA
Приём (5/5): 01 35 00 33 00
Некорректный код функции PDU02.05.2019 в 18:39 #11546manjey73Участникпохоже действительно встроенный модем 2G что-то не так делает…
02.05.2019 в 21:33 #11552MikhailМодераторпохоже действительно встроенный модем 2G что-то не так делает…
Согласен. Ответы прибора некорректные, вообще не похожие на нужные.
03.05.2019 в 00:17 #11558GeorgeУчастникВсем спасибо за участие.
Я тоже склонен к версии с модемом. Попробую выяснить у производителя. Если что узнаю- сообщу.03.05.2019 в 17:17 #11572GeorgeУчастникУточнил у производителя — их встроенный модем работает по своему уникальному протоколу. Выход — использование сторонних модемов. Тему можно закрывать.
04.05.2019 в 10:30 #11579MikhailМодераторУточнил у производителя — их встроенный модем работает по своему уникальному протоколу.
Избретение своих велосипедов — излюбленное занятие производителей 🙂
-
АвторСообщения
- Вы должны авторизироваться для ответа в этой теме.