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

Проблема с UPORT 1650-8 и UPort 1650-16


Recommended Posts

Приветствую! Проблема в следующем, при подключении внешних устройств к MOXA UPORT 1650-16/1650-8 на скорости интерфейса RS-485 4w 921600 бит/с, происходит непрерывный пропуск пакетов, при этом, с каждым последующим подключенным устройством, увеличивается пропуск пакетов и далее датчики перестают определяться.

Более простыми словами. Подключаю датчик №1 к MOXA (тип преобразователя интерфейса RS-485 4w, скорость 921600 бит/с) происходит пропуск пакетов, порядка 5 в 10сек. Далее подключаем датчик №2, пропуск пакетов увеличивается и так далее. Причем после подключения датчика №4 они (датчики) и вовсе перестают определяться.

Link to comment
52 minutes ago, Maxmems said:

Кабелем входящим в комплект Hi-Speed 2.0 в USB компьютера 3.0 

Что то пока идей нет. Серийный номер UPort сможете назвать? Я так понял вы пробовали 2 устройства, 1650-16 и 1650-8? Поведение прям идентичное?

Link to comment
В 20.11.2020 в 16:49, Знайка сказал:

Что то пока идей нет. Серийный номер UPort сможете назвать? Я так понял вы пробовали 2 устройства, 1650-16 и 1650-8? Поведение прям идентичное?

Да, всё верно, имеется 2 преобразователя один на 8 портов, другой на 16 с одинаковой проблемой.

Серийные номера:

 UPort 1650-8 (TBZAB1102264);

 UPort 1650-16 (TBZAB1102309).

p.s. также имеется преобразователь FTDI, с ним проблем не наблюдается.

Link to comment
1 hour ago, Maxmems said:

Да, всё верно, имеется 2 преобразователя один на 8 портов, другой на 16 с одинаковой проблемой.

Серийные номера:

 UPort 1650-8 (TBZAB1102264);

 UPort 1650-16 (TBZAB1102309).

p.s. также имеется преобразователь FTDI, с ним проблем не наблюдается.

Спасибо. Написал разработчикам, посмотрим что ответят.

Link to comment
8 часов назад, Знайка сказал:

Добрый день. Есть мнение попробовать отключить буфер UART FIFO в разделе Ports Configuration. Изменится ли поведение?

Добрый день! К сожалению, не помогло.

Думаю, стоит описать, что нам необходимо прогнать через преобразовать MOXA, для более детального разбора проблемы.

Наш датчик, подключенный к преобразователю MOXA, формирует наборный пакет из n параметров 88 байт ~ 880 бит и итоговая скорость при 1кГц составляет 880000 бит/сек., что составляет ~95,5% от скорости интерфейса MOXA 921600 бит/сек.

Link to comment
1 minute ago, Maxmems said:

Добрый день! К сожалению, не помогло.

Думаю, стоит описать, что нам необходимо прогнать через преобразовать MOXA, для более детального разбора проблемы.

Наш датчик, подключенный к преобразователю MOXA, формирует наборный пакет из n параметров 88 байт ~ 880 бит и итоговая скорость при 1кГц составляет 880000 бит/сек., что составляет ~95,5% от скорости интерфейса MOXA 921600 бит/сек.

Пришлите, пожалуйста, принтскрин раздела Ports Configuration. И вот тут поясните - 880000 бит/сек это конечно хорошо, а с какой бодностью оy отдаёт их  в интерфейс?

Link to comment
25 минут назад, Знайка сказал:

Пришлите, пожалуйста, принтскрин раздела Ports Configuration. И вот тут поясните - 880000 бит/сек это конечно хорошо, а с какой бодностью оy отдаёт их  в интерфейс?

Отправляем пакет 88 байт в 1 мсек

Uport 1650.JPG

Link to comment
5 часов назад, Знайка сказал:

Ага, спасибо. Какую ОС используете? Если оправляете  "88 байт в 1 мсек" то почему используется 921600?

OC Windows.

Возможно мы не совсем понимаем друг друга, но как я писал выше "формирует пакет из n параметров 88 байт ~ 880 бит и итоговая скорость при 1кГц составляет 880000 бит/сек., что составляет ~95,5% от скорости интерфейса MOXA 921600 бит/сек". Т.е. передаётся пакет 88 байт слитно каждую мсек.

Какая по Вашему мнению должна быть скорость?

Также повторюсь, что имеется преобразователь на FTDI "USB2-H-6008-M" с ним проблем нет, работает на 921600бит/сек, и да, если его настроить, допустим, на 500000бит/сек, то также идёт пропуск пакетов. Т.е. по работе MOXA, на первый взгляд, складывается впечатление, что не хватает пропускной способности. 

Link to comment
8 hours ago, Maxmems said:

Возможно мы не совсем понимаем друг друга, но как я писал выше "формирует пакет из n параметров 88 байт ~ 880 бит и итоговая скорость при 1кГц составляет 880000 бит/сек., что составляет ~95,5% от скорости интерфейса MOXA 921600 бит/сек". Т.е. передаётся пакет 88 байт слитно каждую мсек.

Какая по Вашему мнению должна быть скорость?

Также повторюсь, что имеется преобразователь на FTDI "USB2-H-6008-M" с ним проблем нет, работает на 921600бит/сек, и да, если его настроить, допустим, на 500000бит/сек, то также идёт пропуск пакетов. Т.е. по работе MOXA, на первый взгляд, складывается впечатление, что не хватает пропускной способности. 

RS-485 это асинхронный интерфейс. Для его корректной работы так называемый boudrate на на устройствах не должен отличаться более чем на 3,75%. Если это интересно, то можно почитать про подробности приёма фронта start бита и смещение относительно центра stop бита. Это справедливо для 8-N-1, разумеется. Приводимый здесь величины (880000 и 921600) отличаются друг от друга на ~9,55%. Такой интерфейс корректно работать не будет.

Забыл ещё одну мысль: если реальный boudrate 880000, как заявлялось ранее, то почему вы открываете COM на 921600? По идее, UPort 1650 поддерживают работу с нестандартными boudrate, попробуйте работать на 880000.

Link to comment
3 часа назад, Знайка сказал:

Шикарный ответ :):):) Я возьму на вооружение :D А можно чуточку подробнее?

:D Windows 10 Pro x64.

3 часа назад, Знайка сказал:

RS-485 это асинхронный интерфейс. Для его корректной работы так называемый boudrate на на устройствах не должен отличаться более чем на 3,75%. Если это интересно, то можно почитать про подробности приёма фронта start бита и смещение относительно центра stop бита. Это справедливо для 8-N-1, разумеется. Приводимый здесь величины (880000 и 921600) отличаются друг от друга на ~9,55%. Такой интерфейс корректно работать не будет.

Забыл ещё одну мысль: если реальный boudrate 880000, как заявлялось ранее, то почему вы открываете COM на 921600? По идее, UPort 1650 поддерживают работу с нестандартными boudrate, попробуйте работать на 880000.

Причина не в этом, т.к. датчики с пакетом в 32 байта, т.е. меньшего размера, но при остальных равных параметрах, работают нормально. 

Скинул Вам в лс протокол взаимодействия с изделием, которое подключаем к UPort 1650-8/16.

Link to comment

То есть 880000 это параметр Fвых? Или что это? Бит, который определяет скорость основного интерфейса в каком значении стоит? 0? Я тогда не очень понимаю, как на USB2-H-6008-M могут данные на 500000 бод приниматься вообще?

Link to comment
27 минут назад, Знайка сказал:

как на USB2-H-6008-M могут данные на 500000 бод приниматься вообще

Это я писал как пример того, что если ограничить скорость на USB2-H-6008-M до значений 500000 бит/сек, то будет ситуация с пропуском пакетов, аналогичная той, которая наблюдается на UPort-1650. 

 

Link to comment

Каким образом производится ограничение? Это мне просто интересно. А по ситуации я задал вопрос разработчикам, пока думают, я думаю что попрошу их провести нагрузочное тестирование с целью понять реальную пропускную способность.

Link to comment

У нас своё ПО в котором задаётся скорость интерфейса подключения к датчику из числа стандартных значений. В отправленном протоколе есть инфа по ним (значениям).  

Link to comment
17 часов назад, Знайка сказал:

Задаётся скорость на интерфейсе или ПО само как то осуществляет фильтрацию? Что то я пока ничего не понимаю :ph34r:

На интерфейсе задается baudrate 921600. На нашем устройстве тоже задается baudrate 921600. Каждую 1 мс с устройства отправляется пакет в 88 байт. При настройках порта, указанных на скрине получается, что каждую 1 мс  идет передача 880 бит (88*8=704 бита – данные + 88*2=176 стартовый и стоповый биты каждого передаваемого байта).

 

В теории между пакетами всегда остается еще ~45мкс, но периодически возникает ситуация, что последние 1-2 байта пакета на ПК не принимается. И тем больше таких пропусков, чем больше портов на uport 1650-8 работает. То есть, если подключено одно наше устройство, потери возникают на 1-2 пакетах в секунду. Но если таких устройств 8, на каждом из открытых портов uport 1650-8 каждую секунду теряются данные в 50-100 пакетах.

Инт.jpg

Link to comment
14 минут назад, Знайка сказал:

Это понятно. Поясните пожалуйста, как осуществляется ограничение до 500000 бит/сек при использовании USB2-H-6008-M?

 

20 часов назад, Maxmems сказал:

Это я писал как пример того, что если ограничить скорость на USB2-H-6008-M до значений 500000 бит/сек

Слово "ограничить" можно взять в ковычки) Это просто как пример, видимо неудачный:D

Link to comment

Я подразумевал просто задать одинаковый baudrate со стороны ПК и устройства, при котором данные не будут успевать проходить. В данном случае при 500000 880 бит в 1мс проходить не будут. Неудачно сформулировал, наверное.

Никакой магии с программным ограничением битрейта мы не творили:D

Вся проблема здесь:

5 часов назад, Maxmems сказал:

На интерфейсе задается baudrate 921600. На нашем устройстве тоже задается baudrate 921600. Каждую 1 мс с устройства отправляется пакет в 88 байт. При настройках порта, указанных на скрине получается, что каждую 1 мс  идет передача 880 бит (88*8=704 бита – данные + 88*2=176 стартовый и стоповый биты каждого передаваемого байта).

 

В теории между пакетами всегда остается еще ~45мкс, но периодически возникает ситуация, что последние 1-2 байта пакета на ПК не принимается. И тем больше таких пропусков, чем больше портов на uport 1650-8 работает. То есть, если подключено одно наше устройство, потери возникают на 1-2 пакетах в секунду. Но если таких устройств 8, на каждом из открытых портов uport 1650-8 каждую секунду теряются данные в 50-100 пакетах.

Инт.jpg

Весь вопрос состоит в том, какая загрузка канала при 921600 на практике является предельной чтобы не было потерь. И можно ли ее как-то повысить. Так что ждем ответа от разработчиков:)

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...