В структуре системы есть два узла. К узлу контроллера (промышленный компьютер SPC4\300 – плата Roсky 512 с микроTraceMode) через четыре СОМ-порта (плата C-134S MOXA)подключены УСО - всего 33 шт. Связь с УСО осуществляется по протоколу ModBus RTU. Полный цикл опроса всех устойств УСО должен составлять 2 сек. Данные с устройств по Ethernet передаются на узел МРВ. Временные параметры блочного запроса одного устройства для скорости 19200 б\сек следующие : Длительность запроса – 4 мсек. Задержка ответа – 35-50 мсек. Длительность ответа – 17 мсек. Пауза между запросами устройств на одной "линейке"– 100 мсек. Таймаут – 100 мсек. Таким образом, суммарное время опроса одного устройства составляет примерно 170 мсек. и теоретически мы должны успевать опросить все устройства за один цикл опроса УСО по каждому порту, при условии что опрос в программе для все 4-х портов осуществляется паралельно. Но судя из лог-файла ххх.txt микроМРВ опрашивает все каналы последовательно в соответствии с их индексами – сначала каналы устройств первого порта, потом - второго и т.д. Подскажите как нам лучше организовать связь устройст УЗА по всех портах платы C-134S MOXA для описанной выше структуры и какие временные параметры установить для узла контроллера и его каналов.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Пересчет каналов также как и любые процессы в компьютерной технике выполняется последовательно. Другое дело, что обмен по СОМ-портам производится асинхронно относительно цикла пересчета, поэтому процедура разнесения трафика на разные СОМ-порты теоретически должна несколько понизить нагрузку на обмен, увеличив тем самым скорость опроса всех модулей по последовательному интерфейсу. Но это не означает, что время опроса будет понижаться прямо пропорционально увеличению количества СОМ-портов.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Исходя из параметров, рекомендую попробовать поднять скорость обмена, поставить таймаут по СОМ-портам в 200 мсек, и замедлить индивидуальные циклы по каналам, которые опрашивают аналоговые модули. Какой цикл пересчета узла задан у Вас сейчас?
Posted by bogdem (Участник № / Member № 1076) on :
цикл пересчета каналов узла задан равным около 4 сек.
Posted by bogdem (Участник № / Member № 1076) on :
согласен что прямой зависимости скорости отклика системы от роста количества СОМ портов быть не может, но... 1. Реально ли "заставить" ТМ увеличить скорость отклика, увеличивая количество СОМ портов и уменьшая таким образом количество устройст на одной "линейке"?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Только если Вы и цикл пересчета будете уменьшать при этом, то есть - увеличивать скорость пересчета базы каналов.
Posted by bogdem (Участник № / Member № 1076) on :
я представил всю информацию по временных параметрах устройства, поэтому вопрос стоит так: например, какие конкретно?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Конкретно все равно не получится сказать - это по большей части экспериментальные данные. Для начала начните с цикла узла в 200-250 мсек. Затем видно будет куда лучше двигаться - в сторону увеличения скорости обмена, уменьшения цикла пересчета или и то и другое вместе...