Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
20.11.2017, 16:39:02
 
Начало Помощь Поиск Войти Регистрация
Новости: Форум обновлен

+  Форум АО "ВЗЛЕТ"
|-+  Приборы ЗАО "Взлет"
| |-+  Отдел программистов
| | |-+  MBServer свойства...?
0 Пользователей и 1 Гость смотрят эту тему. « предыдущая тема следующая тема »
Страниц: [1] Печать
Автор Тема: MBServer свойства...?  (Прочитано 2373 раз)
resident
Пользователь
**

Харизма: 0
Офлайн Офлайн

Сообщений: 22


« : 24.09.2010, 23:27:39 »

Здравствуйте.
Меня интересуют два свойства сервера связи это InterByte (межбайтный интервал COM порта в миллисекундах) и AnsverDelay (задержка первого байта).
В данный момент использую значения свойств по умолчанию.
Как влияют эти два свойства на процесс обмена данными?

С Уважением "resident"
Записан
Sefko
Наш человек
***

Харизма: 6
Офлайн Офлайн

Сообщений: 220


« Ответ #1 : 25.09.2010, 13:32:15 »

InterByte
Если после получения очередного байта прошел заданный интервал времени и ничего не пришло, то приемник считает, что ждать больше нечего - сообщение полностью получено, - и он начинает его обрабатывать. Например, проверять контрольную сумму.

Считается, что InterByte достаточно установить равным времени, необходимому для передачи трех байтов информации. Так, например, при скорости передачи 19200 бод достаточно 2 мс, а при скорости передачи 4800 бод нужно уже 7 мс (хотя здесь тоже применяют термин "байт", он несколько больше, чем 8 битов).
Обычно устанавливается значение немного большее, чем время передачи трех байтов, потому как хуже не будет (если, конечно, не хулиганить).

AnsverDelay
После получения запроса прибор отвечает не сразу, а выжидает AnsverDelay мс.
 
Этот параметр важен при обмене через RS-485.
Интерфейс RS-485 полу-дуплексный - по линии связи можно передавать информацию либо в одном, либо в другом направлении, но не в обоих одновременно.
Поэтому оборудование должно переключаться между режимами приема и передачи.

Обычно это делается так.
Только один агент в сети является активным в информационном смысле. Он может инициировать обмен информации в произвольный момент времени. Все остальные пассивны - молчат, пока их не спросят. А когда спросят, то отвечают не сразу - вопрошающему нужно дать время на переключение в режим приема. Это время зависит от...

Поскольку заранее не известно. с чем будет связан прибор, то значение по умолчанию ставится с заметным запасом - 50 мс (в некоторых приборах и того больше). Лично мне кажется, что вполне достаточно и 20 мс. Но, с другой стороны, что такое как бы лишних 30 мс? Ну, вот при чтении из прибора 33-х строк архива общее время обмена увеличится аж на 1 (одну) секунду.Кому от этого холодно или жарко? А вот если установить слишком малую задержку, то прибор может начать посылать свой ответ, когда вопрошающий еще не готов его выслушать. Тут облом.

Уменьшать значение этого параметра бывает нужно, но уж в очень специальных случаях. И делать это должен только тот, кто хорошо понимает, что и зачем он делает. Просто экспериментировать, по принципу "а вдруг поможет" категорически нельзя. Не только не будет решена имеющаяся проблема, но добавится новая, которую решить не так и просто. Точно не просто для человека, который не разбирается в этих вопросах.

Для обмена по RS-232 такая задержка ответа не нужна - интерфейс дуплексный. В тех приборах, которые умеют обмениваться только по RS-232, если параметр присутствует, его значение по умолчанию равно нулю. Потому как кроме задержки обмена (пусть и незначительной) никакой пользы от ненулевого значения в этом случае нет.
Записан
resident
Пользователь
**

Харизма: 0
Офлайн Офлайн

Сообщений: 22


« Ответ #2 : 26.09.2010, 19:19:05 »

Спасибо. Отличные пояснения.
Записан
Страниц: [1] Печать 
« предыдущая тема следующая тема »
Перейти в:  


Войти

© 1990—2016, АО «Взлет».
Все права защищены.
Контактная информация
Powered by SMF 1.1.13 | SMF © 2006-2011, Simple Machines LLC
Материалы, размещенные на сайте, охраняются законодательством об авторском праве. Перепечатка материалов допускается только со ссылкой на сайт.