WB-MGE и несколько клиентов


#1

Здравствуйте.
К адаптеру WB-MGE со стороны RS-485 подключена шина с несколькими устройствами, управляемыми по modbus. Со стороны Ethernet несколько клиентов, которым надо общаться каждому со своим устройством. Адаптер работает в режиме TCP-сервер. Проблема заключается в том, что когда WB-MGE держит соединение с несколькими ip-клиентами, то ответы от устройств, которые сидят на serial-порту, он шлёт всем, независимо от того, кто данные запрашивал.
В мануале на базовый модуль USR-K2 эта проблема описана и в качестве решения предлагается использовать режим INDEX, когда устройство добавляет к заголовку пакета порядковый номер клиента. Но при активации этого режима на WB-MGE, адаптер вообще перестаёт отвечать на запросы.
Единственное найденное на данный момент решение - это работать с железкой по UDP, тогда вроде бы отвечает только тому, кто запрашивал.

Вопрос 1: почему не работает INDEX режим?
Вопрос 2: как ещё можно определять ответ на чей запрос адаптер в данный момент прислал?


#2

Боюсь, писать надо сразу в поддержку USRiot.

Можно ещё попробовать модули USR-K3 - это следующее поколение от USRiot, они немного дороже, но софт там другой. У нас есть образцы на складе, можем собрать с ними модуль и дать вам попробовать.


#3

Коллеги, спасибо за ответ. Но поддержка USR как раз и пишет, что проблема решается галочкой INDEX. А в WB-MGE она не работает. Мой вопрос в том, надо ли пробовать добиваться этого режима работы или эта функция не поддерживается на вашем устройстве?


#4

Этот кусок полностью реализуется на USR K2, так что всё-таки к ним. Мы, к сожалению, в этом режиме не проверяли устройство.

Можно ещё попробовать запросить у USRiot более свежую прошивку, если есть - может поможет.