Форум TRACE MODE: техническая поддержка   
мой профиль / my profile авторизация / login | регистрация / register | поиск / search | часто задаваемые вопросы / faq | начало / forum home

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » ТЕХНИЧЕСКАЯ ПОДДЕРЖКА / TECHNICAL SUPPORT TRACE MODE 5 » Микро Мониторы Реального Времени / Micro Real Time Monitors » Скорость обмена по M-Link

   
Автор / Author Тема / Topic: Скорость обмена по M-Link
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
Имеем следующую проблему.
С ПЭВМ верхнего уровня по каналу M-Link (COM-порт)опрашивается порядка 100 каналов контроллера. Вроде число каналов невелико для пропускной способности в 115.2 кбит/с, но ужасно медленно происходит передача, где-то за 2 секунды, что неприемлемо. Каким образом можно ускорить обмен?
Заранее спасибо.

Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post 
Обратите внимание на атрибут Достоверность по всем каналам, может у Вас качество связи не совсем хорошее и часто возникают таймауты ожидания ответа с последующей недостоверностью данных?
Какой таймаут задан в настройках СОМ-порта?

Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
Раньше были установлены таймауты 3000 (и на верхнем уровне, и в контроллере). Сейчас установили 500. Ситуация от этого вроде не изменилась. А как следует выбирать значения таймаута?
Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post 
Таймаут - это время ожидания сервером ответа на отправленный запрос данных к устройству, либо подтверждения от устройства на принятые данные, которые передал сервер. Соответсвенно сюда входят: время реакции самого устройства + время на транзакцию данных в коммуникационной линии.
Так как последнее зачастую очень мало, то во внимание принимается первый параметр.

Так что у Вас с Достоверностями по каналам при обмене?

Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
Как показали проверки, все достоверности = 0 (правда в логе протоколируются ошибки чтения порта com2).
Все же непонятно, что является причиной замедления обмена. Период пересчета на нижнем уровне у нас 700 мс, на верхнем 300 мс. Запросы по M-Link происходят по инициативе верхнего уровня, т.е. в течение каждых 300 мс. Как же так ВУ не успевает считать данные из контроллера?! Понимаю, если бы верхний уровень был медленнее нижнего! В чем все-таки причина?

Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post 
Дословный текст ошибки, а еще лучше кусок текста из лог-файла работы узла можете здесь привести?
Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
Привожу фрагмент из лога верхнего уровня Station.txt:
...
RS:COM 2 starting...
DDE:starting...
NETDDE:NDDEAPI.DLL not found
RTM:math kernel starting...
SCREEN load error screen.000
INFO:start time is 0.11 s
INFO:work mode
OUT: 40<@> 01 01 00 43<C> 00 09 00 00 00 00 00 4a<J> 2a<*>
ERR IN0:
RS:COM 2 check error
OUT: 40<@> 01 01 00 4d<M> 00 01 00 00 00 00 00 4c<L> 2a<*>
ERR IN0:
RS:COM 2 check error
OUT: 40<@> 01 01 00 44<D> 00 08 00 00 00 00 00 4c<L> 2a<*>
ERR IN0:
RS:COM 2 check error
OUT: 40<@> 01 01 00 45<E> 00 07 00 00 00 00 00 42<B> 2a<*>
...

Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post 
Судя по логу - вообще нет ответа от узла контроллера.
Линия - чистый RS232? Или RS485? Если последний, то с каким управлением приемо-передатчиком и какое железо исползуется в качестве конвертера?
На самом деле лечше, когда опрашиваемый узел работает в два раза быстрее того, кто опрашивает.

Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
1. Линия у нас - RS485. Управление приемником и передатчиком отсутствует,
т.е. взято по умолчанию. Конвертер - I-7520R.
2. Как может опрашивающий узел быть в 2 раза медленнее?!
Он тогда не сможет отобразить "быстрые" процессы в опрашиваемом узле.
Могут быть пропущены короткие импульсы, в том числе и кратковременные
аварийные сигналы, что крайне нежелательно, да и может быть опасным.
Поэтому я совершенно не согласен с тем, что опрашивающий узел должен быть
медленнее, тем более в 2 раза. Он должен быть быстрее как минимум в 2 раза.
И тогда он сможет отследить все изменения сигналов в опрашиваемом узле.
Но почему в нашем случае все-таки все не так? Не логично! Пропускная
способность канала RS-485 более 100 кбит / сек. Каждый запрос имеет длину 14
байт (по описанию M-Link). Ответ тоже имеет длину 14 байт, т.е. опрос одного
значения с ПЭВМ требует передачи лишь 28 байт. Получается, что ПЭВМ может
опросить более 1000 значений за секунду! У нас же опрашивается менее 100
каналов! В чем все же проблема?

Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post 
Давайте Ваш проект - попробуем запустить у нас и посмотреть причину. Удаленно трудно диагностировать, почему у Вас контроллер не отвечает на некоторые запросы МРВ.
Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
Хорошо. На какой адрес высылать проект? Нужен ли драйвер RWH?
Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
Да, мы пробовали проект и на RS-232, и на RS-485. Эффект сохраняется.
Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post 
На hotline1@adastra.ru
Что за драйвер RWH, без спец оборудования в режиме эмуляции он будет работать?

Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
По идее драйвер должен работать, только значения без нашего контроллера он будет возвращать какие угодно. На работать скорее всего должен. Вышлю проект вместе с драйвером.
Заранее спасибо.

Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post 
Это кто же Вас научил такие разрешения таймера выставлять в настройках узла для цикла пересчета? [Улыбка / Smile]
250 микросекунд на 700 периодов в контроллере - никогда не будет работать под МикроМРВ. Минимальное значение разрешения = 0.001 секунда (1 миллисекунда). Если Вам необходим цикл пересчета базы в 175 миллисекунд, то лучше поставить Разрешение=0.025, а Период=7. А еще лучше - Разрешение=0.05, а Период=3.
Аналогично - 0.00025 и 300 для МРВ тоже работать не будут никогда и не только в ТМ! Под MS Windows минимальное разрешение таймера ОС выставляет всегда в 10 миллисекунд, и нельзя его выставить меньше. Соответственно - Вам нужно подобрать здесь тоже более реальные значения.
Попробуйте для начала выставить в узлах: для контроллера 4 на 0.05 и 2 на 0.05 для МРВ.

Теперь понятно, почему у Вас не работал обмен по СОМ-порту. Контроллер справедливо не отвечал, потому что 1 миллисекунды разрешения явно не хватало обработчику прерывания СОМ-порта в DOS'е для нормальной работы. Ведь в MS-DOS обработчик СОМ-порта вызывается именно с циклом Разрешения тиков таймера, которое Вы задаете в параметрах узла контроллера в проекте. Думаю, что если Вы поменяете эти настройки на рекомендуемые, проект должен у Вас заработать нормально.

Да - и для СОМ1 в контроллере не забудте тоже таймаут задать, а то он у Вас там нулевой.

Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
В том то и дело, что учить нас некому, т.к. понять из Руководства пользователя ТМ что есть Период и что есть Разрешение таймера практически невозможно и приходится работать методом "научного тыка" :-) Но это уже, правда, отдельная тема - о качестве документации :-( (Кстати, отличный пример оформления Help - MS SQL Server 2000. И теория, и масса реальных примеров, и перекрестные ссылки. По-моему, есть что перенять :-)
И тем не менее ...
Поясните, пожалуйста, что все-таки такое Период. По документации мы поняли (подозреваем, что неправильно), что это рекомендуемое время пересчета базы каналов узла, задаваемое в миллисекундах. И что такое Разрешение? Наконец, по каким критериям нужно выбирать значения этих параметров?

Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post 
Разрешение - это период одного тика аппаратниго таймера в секундах. Для MS Win - от 0.010 до неограниченного значения. Для MS DOS - от 0.001 до 0.055 секунд.
Период - количество тиков таймера в одном цикле.

То есть: Цикл пересчета узла=Период*Разрешение.

Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
Понятно. Спасибо.
1. А что понимается под циклом в определении периода?
2. К сожалению, с рекомендованными Вами настройками периода и разрешения качество связи в нашем проекте только ухудшилось :-( Если с подобранными нами установками связь осуществлялась "через раз", то с рекомендованными - "через 3 раза" :-((

Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post 
1) Цикл пересчета базы каналов узла.
2) В логе также ошибки идут?

Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
Да, ошибки те же ... по порту COM2.
Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post 
Попробуйте отключить от обмена часть каналов и оставить только 10 или больше. Может линия связи или СОМ-порт сбоит?
Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
При снижении числа подключенных каналов скорость обмена растет. С портом вроде все в порядке.
А Вы не можете запустить наш проект у себя? В принципе он должен заработать. Драйвер есть. Только для запуска используйте файл kotel.bat.

Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post 
1) Зачем в контроллере и в АРМе Вы создали такое огромное количество каналов ПУСТОЙ-Key_Read, тем более в контроллере?
2) Что за контроллер Вы используете и почему именно МикроМРВ без поддержки сопроцессора запускаете?

Судя по объему базы каналов+два СОМ порта на скорости 115.2+RWH-драйвер - у Вас МикроМРВ без сопроцессора не потянет такую задачу. Да и аппаратная платформа нужна тоже не слабая.
Сейчас пытаюсь запустить Ваш проект - похоже что драйвер Ваш не заработал у нас...

Чуть позже будут результаты испытаний.

Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post 
Результаты вполне соответсвуют тому, о чем я уже сказал выше. На моем тестовом контроллере Теконик с ЦПУ Intel486 75Мгц, Ваш проект с отключенным обменом с внешним драйвером и DK8070 под обычным МикроМРВ требует как минимум 500 мс времени на пересчет всей базы. Скорее всего у Вас действительно система не успевает обрабатывать запросы по M-Link от АРМа, потому как у Вас идут постоянные превышения цикла пересчета.
Что показывает в контроллере канал подтипа СИСТЕМНЫЙ_время пересчета, попробуйте его по M-Link в АРМ запросить?

Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
СИСТЕМНЫЙ_Время пересчета мы выводим на DK-8070. Он показывает 385 мс.
Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 5 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post 
А цикл для узла какой сейчас задан?
Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
Имеете в виду период пересчета узла?
Мы задавали его от 500 до 750 мс (пробовали разные значения, меняли разрешение и период в настройках обоих узлов). В принципе, удалось добиться более-менее хорошей связи при 700 мс в контроллере и 200 в ПЭВМ верхнего уровня. Но все равно верхний уровень может пропускать значения с контроллера, правда, теперь не каждое второе, а где-то каждое пятое. С уменьшением периода контроллера до 500 процент пропускаемых значений в ПЭВМ возрастает. Если ставить меньше 500, то уже перестает обновляться экран DK8070.
PS: Процессор контроллера у нас на 300 МГц.

Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post 
Это на обычном МикроМРВ - не mrt86 который?
Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
Да, это на микроМРВ.
Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post 
Я имел в виду МикроМРВ, который с поддержкой сопроцессора: mrt_e.exe или mrt.exe?
Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
mrt86_e
Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post 
Почему Вы используете mrt86_e.exe? Это МикроМРВ без поддержки сопроцессора, предназначен для старых конфигураций ЦПУ, в которых нет сопроцессора. У Вас же нормальная процессорная система - используйте обычный МикроМРВ - он гораздо быстрее безсопроцессорного варианта!
Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
Спасибо. Проверим работу системы с mrt7.exe. Похоже, мы упустили этот модуль
из виду и использовали медленный безсопроцессорный mrt86.exe.

Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
zotov
Forum Member / Участник форума
Участник № / Member № 1113


Icon 1 отправлено / posted      Профиль для / Profile for zotov           Редактировать/удалить сообщение / Edit/Delete Post 
Да. С mrt7.exe обмен работает стабильно при периодах контроллера даже в 0.3 сек. Спасибо.
PS: Будем внимательнее читать readme [Улыбка / Smile]

Сообщения / Posts 58 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
   

   Закрыть тему / Close Topic   Feature Topic   Переместить топик / Move Topic   Удалить топик / Delete Topic Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
 - Printer-friendly view of this topic
Перейти к / Hop To


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2