Modbus TCP через GPRS Datakom D100

Помечено: , ,

Просмотр 15 сообщений - с 1 по 15 (из 15 всего)
  • Автор
    Сообщения
  • #11526
    George
    Участник

    Добрый день.

    Столкнулся со следующей проблемой при опросе контроллера ДГ 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? Задержку может нужно добавить какую?
    Надеюсь на вашу помощь.

    #11527
    Romiros
    Участник

    На сайте RapidScada есть онлайн модбас парсер. Используйте его для разбора.
    Я не эксперт в модбас, но похоже у вас нестыковка с протоколами. Modbus TCP ожидает 8 байт а у вас приходит 7.
    Проверьте настройки.

    #11528
    manjey73
    Участник

    Блин, где-то выкладывал драйвер Modbus который меняет MBAP хидер случайным образом.
    Ща гляну на почте, может остался…

    https://cloud.mail.ru/public/7×72/T9uX5wYpj

    протестируйте с данным драйвером Modbus

    • Этот ответ был изменен 4 года, 12 месяцев назад от manjey73.
    #11532
    George
    Участник

    Добрый день.
    Спасибо за реакцию.
    Напомню что напрямую через ком порт, либо 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!

    #11536
    manjey73
    Участник

    а лог при работе через другой модем ?

    #11538
    George
    Участник

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

    #11540
    George
    Участник

    Нашел логи при работе через 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!

    #11541
    manjey73
    Участник

    RTU все же не TCP.

    #11542
    Mikhail
    Модератор

    Добрый день!

    Попробуйте при работе по TCP также использовать режим Modbus RTU (в свойствах КП).

    #11544
    George
    Участник

    Поставил 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
    Некорректный код функции PDU

    2019-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
    Некорректный код функции PDU

    #11546
    manjey73
    Участник

    похоже действительно встроенный модем 2G что-то не так делает…

    #11552
    Mikhail
    Модератор

    похоже действительно встроенный модем 2G что-то не так делает…

    Согласен. Ответы прибора некорректные, вообще не похожие на нужные.

    #11558
    George
    Участник

    Всем спасибо за участие.
    Я тоже склонен к версии с модемом. Попробую выяснить у производителя. Если что узнаю- сообщу.

    #11572
    George
    Участник

    Уточнил у производителя — их встроенный модем работает по своему уникальному протоколу. Выход — использование сторонних модемов. Тему можно закрывать.

    #11579
    Mikhail
    Модератор

    Уточнил у производителя — их встроенный модем работает по своему уникальному протоколу.

    Избретение своих велосипедов — излюбленное занятие производителей 🙂

Просмотр 15 сообщений - с 1 по 15 (из 15 всего)
  • Вы должны авторизироваться для ответа в этой теме.