Jump to content
Форум по продукции MOXA

RS232->TCP server , приходит только первая часть данных


Recommended Posts

MOXA 5210.

 

При отправке данных с RS232 -> TCP порт данные уходят без искажения, но только первые 3-5 символов. Далее сколько бы не TCP CLIENT их ждал, оставшаяся часть не приходит.

 

 

При отправке данных с TCP порт -> RS232 данные приходят корректно в полном объеме.

 

 

 

Есть подозрение, что TCP CLIENT должен работать с MOXA не совсем прозрачно, а делать какие-то манипуляции после каждого принятого куска данных.

 

Вот пример обмена:

RS232: отправлено [ENQ]

TCP client: получено[ENQ]

TCP client: отправлено [ACK]

RS232: получено[ACK]

RS232: отправлено [sTX]1Haa2234234234232349||||||||HOST||P|1|20130111161701[CR][ETX]20[CR][LF]

TCP client: получено[sTX]1Ha

 

и оставшаяся часть сообщения больше не приходит, хотя TCP client продолжает ждать данные с TCP порта.

 

пробовал как на скорости 9600, так и на 57600, как с Xon/Xoff так и без, все равно приходит только начало пакета((

Хотя во вкладке Monitor->Async

 

 

Async

Port TxCnt RxCnt TxTotalCnt RxTotalCnt DSR CTS DCD 1 1 76 1 76 ON OFF OFF 2 0 0 0 0 OFF OFF OFF

 

видно, что принято не 5-6 байт, а 76. Но в TCP порт уходит только 5.

Пробовали протестировать на другой MOXa, аналогичная ситуация, так-что аппаратную ошибку можно исключить.

 

Причем, в обратную сторону все работает нормально.

 

 

 

В чем может быть проблема?

 

 

Немного удалось разобраться, но не до конца.

Проблема решается изменением Baud rate и Force transmit

 

Baud rate=9600

Force transmit=0 ---приходит только первая часть

 

 

Baud rate=9600

Force transmit=1 ---приходит только первая часть

 

Baud rate=57600

Force transmit=1 ---приходит все верно

 

 

Baud rate=9600

Force transmit=10 ---приходит все верно

 

 

Baud rate=57600

 

 

Force transmit=0 ---приходит только первая часть

Link to comment

Здравствуйте!

Да, рекомендуем Вам использовать функцию Force Transmit. На скоростях свыше 9600 обычно достаточно указать Force Transmit = 2~3 ms. На более низких скоростях COM-порта - чуть побольше. Подробнее про функцию Force Transmit мы постарались описать здесь.

Корректно ли у Вас работает при Force Transmit = 2~3 ms?

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...