PDA

Просмотр полной версии : Выбор протокола для обмена с модулями ввода/вывода (ОВЕН/MODBUS)



@ND
05.03.2015, 08:01
Имею следующую конфигурацию оборудования:
СПК110
МВ110-32ДН
МВ110-8АС
МУ110-16Р
МУ110-8И

С протоколом MODBUS знаком хорошо.
С продукцией ОВЕН только начинаю знакомство.

Собственно вопрос:

Какой протокол лучше и проще использовать для обмена с модулями ввода/вывода?

_Mikhail
05.03.2015, 08:10
с СПК связать модули вы сможете только по протоколу Modbus RTU. Другие протоколы СПК1** не поддерживает.
Посмотрите ветку форума, там все подробно описано http://www.owen.ru/forum/showthread.php?t=19404&highlight=%E1%E8%E1%EB%E8%EE%F2%E5%EA%E8

GoodLuck
05.03.2015, 08:47
_Mikhail , зачем же вы дезинформируете человека?

На СПК110 при желании можно прекрасно организовать обмен на протоколе ОВЕН. Конечно, на Modbus это сделать гораздо проще.

_Mikhail
05.03.2015, 09:49
_Mikhail , зачем же вы дезинформируете человека?

На СПК110 при желании можно прекрасно организовать обмен на протоколе ОВЕН. Конечно, на Modbus это сделать гораздо проще.

А зачем мучиться с организацией обмена по протоколу ОВЕН, если под Modbus есть все шаблоны и С протоколом MODBUS знаком хорошо

GoodLuck
05.03.2015, 09:58
Не спорю, на модбасе организовать обмен гораздо легче.

Просто вы написали, что
с СПК связать модули вы сможете только по протоколу Modbus RTU. Другие протоколы СПК1** не поддерживает. . Хотя на самом деле это не так.
Человек сам выберет, мучиться ему или нет. У меня, например, было несколько проектов, которые можно было реализовать только используя протокол ОВЕН. Мы же не знаем, какую задачу требуется решить @ND .

@ND
06.03.2015, 11:25
Для опроса модулей решил воспользоваться библиотекой ModbusOwenLib. (3.4.0.8)
Нашел там все свои модули кроме МВ110-32ДН.
Есть версия библиотеки с поддержкой моего модуля?

_Mikhail
06.03.2015, 12:57
Для опроса модулей решил воспользоваться библиотекой ModbusOwenLib. (3.4.0.8)
Нашел там все свои модули кроме МВ110-32ДН.
Есть версия библиотеки с поддержкой моего модуля?

Я бы не стал делать опрос через библиотеку. Шаблонами быстрее и проще

@ND
12.03.2015, 09:03
Решил воспользоваться предложенными шаблонами.
Раздал следующие MODBUS адреса:
1 - МВ110-32ДН
2 - МВ110-8АС
3 - МУ110-16Р
4 - МУ110-8И

Скорость 115200
И в итоге получил такой опрос одного цикла по шине:


15:12:02.155: RX: 01-03-00-64-00-01-C5-D5
15:12:02.160: RX: 01-03-02-00-04-B9-87
15:12:02.176: RX: 01-03-00-63-00-01-74-14
15:12:02.180: RX: 01-03-02-00-00-B8-44
15:12:02.195: RX: 02-03-01-18-00-01-05-C2
15:12:02.241: RX: 02-03-02-F0-0D-79-81
15:12:02.255: RX: 02-03-01-20-00-02-C4-0E
15:12:02.301: RX: 02-03-04-FF-FF-FF-FF-C8-A7
15:12:02.315: RX: 02-03-01-19-00-01-54-02
15:12:02.361: RX: 02-03-02-F0-0D-79-81
15:12:02.375: RX: 02-03-01-23-00-02-34-0E
15:12:02.421: RX: 02-03-04-FF-FF-FF-FF-C8-A7
15:12:02.435: RX: 02-03-01-1A-00-01-A4-02
15:12:02.481: RX: 02-03-02-F0-0D-79-81
15:12:02.495: RX: 02-03-01-26-00-02-24-0F
15:12:02.541: RX: 02-03-04-FF-FF-FF-FF-C8-A7
15:12:02.555: RX: 02-03-01-1B-00-01-F5-C2
15:12:02.601: RX: 02-03-02-F0-0D-79-81
15:12:02.615: RX: 02-03-01-29-00-02-14-0C
15:12:02.661: RX: 02-03-04-FF-FF-FF-FF-C8-A7
15:12:02.675: RX: 02-03-01-1C-00-01-44-03
15:12:02.721: RX: 02-03-02-F0-0D-79-81
15:12:02.735: RX: 02-03-01-2C-00-02-04-0D
15:12:02.781: RX: 02-03-04-FF-FF-FF-FF-C8-A7
15:12:02.806: RX: 02-03-01-1D-00-01-15-C3
15:12:02.851: RX: 02-03-02-F0-0D-79-81
15:12:02.865: RX: 02-03-01-2F-00-02-F4-0D
15:12:02.911: RX: 02-03-04-FF-FF-FF-FF-C8-A7
15:12:02.925: RX: 02-03-01-1E-00-01-E5-C3
15:12:02.971: RX: 02-03-02-F0-0D-79-81
15:12:02.985: RX: 02-03-01-32-00-02-64-0B
15:12:03.031: RX: 02-03-04-FF-FF-FF-FF-C8-A7
15:12:03.045: RX: 02-03-01-1F-00-01-B4-03
15:12:03.091: RX: 02-03-02-F0-0D-79-81
15:12:03.105: RX: 02-03-01-35-00-02-D5-CA
15:12:03.151: RX: 02-03-04-FF-FF-FF-FF-C8-A7
15:12:03.168: RX: 03-10-00-00-00-10-20-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-90-A4
15:12:03.180: RX: 03-10-00-00-00-10-C0-27
15:12:03.196: RX: 04-10-00-00-00-01-02-00-00-99-00
15:12:03.200: RX: 04-10-00-00-00-01-01-9C
15:12:03.216: RX: 04-10-00-01-00-01-02-00-00-98-D1
15:12:03.222: RX: 04-10-00-01-00-01-50-5C
15:12:03.236: RX: 04-10-00-02-00-01-02-00-00-98-E2
15:12:03.241: RX: 04-10-00-02-00-01-A0-5C
15:12:03.256: RX: 04-10-00-03-00-01-02-00-00-99-33
15:12:03.267: RX: 04-10-00-03-00-01-F1-9C
15:12:03.276: RX: 04-10-00-04-00-01-02-00-00-98-84
15:12:03.282: RX: 04-10-00-04-00-01-40-5D
15:12:03.296: RX: 04-10-00-05-00-01-02-00-00-99-55
15:12:03.301: RX: 04-10-00-05-00-01-11-9D
15:12:03.315: RX: 04-10-00-06-00-01-02-00-00-99-66
15:12:03.323: RX: 04-10-00-06-00-01-E1-9D
15:12:03.335: RX: 04-10-00-07-00-01-02-00-00-98-B7
15:12:03.342: RX: 04-10-00-07-00-01-B0-5D

Из которого видно следующее:

1. Длительность полного цикла опроса 1.187 сек
2. Не используется групповой опрос рядом стоящих регистров.

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

1. DI - 100
2. DO - 50
3. AI - 30
4. AO - 4

Если экстраполировать полученные результаты на эти объекты, то время полного цикла опроса будет около 5 - 7 секунд, что категорически неприемлимо.

Можно ли как то оптимизировать опрос модулей ввода/вывода?

Мой проект во вложении.

Валенок
12.03.2015, 11:46
Можно ли как то оптимизировать опрос модулей ввода/вывода?
Забить на шаблоны и юзать б-ки.
Тут навскидку усредненный цикл опроса - не более 100мс

RV9WFJ
12.03.2015, 12:22
100 мс Валенок ИМХО загнул немного, но несколько раз в секунду через modbus.lib точно опросит.
Только учтите, что МУ110-8И не понимает посылки более 50 байт кажется, т.е. групповой запрос к МВ110-8АС необходимо разбивать на 2 части.

Валенок
12.03.2015, 12:28
Чой-то загнул ?

Чтоб 8И не упал при полном запросе к 8АС (64 байта)- просто перепрошиваем его (8И)

@ND
12.03.2015, 12:40
Забить на шаблоны и юзать б-ки.
Тут навскидку усредненный цикл опроса - не более 100мс

А можно поподробнее? Что за б-ки?

Валенок
12.03.2015, 12:44
Так модбас.либ для кдс3 вроде есть где-то. Там группами и другими оптимизаторами
Вот почему на выдержке было аж 100мс на 1 запрос ? Многовато как-то

RV9WFJ
12.03.2015, 12:56
Ну или перепрошиваем, хотя не исключено, что этот МУ110-8И потом кто-то поменять захочет в готовом шкафу. А МУ110-8И так и идут с завода с кривой прошивкой.

Валенок
12.03.2015, 14:25
Повод прокатится за отдельную монету ))

@ND
12.03.2015, 14:33
Переделал на опрос с помощью modbus.lib.



16:26:57.831: RX: 01-03-00-63-00-02-34-15
16:26:57.837: RX: 01-03-04-00-00-00-04-FB-F0
16:26:57.851: RX: 02-03-01-20-00-17-05-C1
16:26:57.900: RX: 02-03-2E-FF-FF-FF-FF-C9-57-FF-FF-FF-FF-C9-57-FF-FF-FF-FF-C9-57-FF-FF-FF-FF-C9-57-FF-FF-FF-FF-C9-57-FF-FF-FF-FF-C9-57-FF-FF-FF-FF-C9-57-FF-FF-FF-FF-04-92
16:26:57.922: RX: 04-10-00-00-00-08-10-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-E6-A2
16:26:57.928: RX: 04-10-00-00-00-08-C1-9A
16:26:57.954: RX: 03-10-00-00-00-10-20-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-90-A4
16:26:57.966: RX: 03-10-00-00-00-10-C0-27

Выжал 135 мс на полный цикл, что на много лучше, но хотелось бы еще по-меньше.

Это я так понимаю предел на MODBUSе.
Или есть еще возможность ускориться?

@ND
12.03.2015, 14:35
Почему то аналоговый модуль МВ110-8АС целых 50мс съедает при ответе. Это норм?

Это как то лечится?

Валенок
12.03.2015, 17:48
Про 8АС - в принципе до 32-33мс лечится (и это на 38400 и говорю про кдс2). Но если все 8 входов юзаются - то оцифровка 40мс (РЭ)

"135 мс на полный цикл"
Дальше ускорится можно, но не так значительно как уже получилось.
Для кдс2 последовательный опрос всего всегда - где-то в 80..90мс. Это на 38400. 115200 особливой прибавки не даст. Ну может 10..20%.

Организационно.
8И - быстродействие самих выходов вроде как до 0.5с (к техподержке) - тогда смысл писать чаще ?
16Р - зачем писать одно и тоже каждый цикл опроса ?
16Д - в зависимости от важности того что там висит. Может это самое критичное звено, а может и 1-2с достаточно
..

Нет возможности посмотреть код. Кдс3 - жесть. Скачал. Открывался минут 10. Сказал что что-то не хватает...
Не знаю рабочего цикла и как организуется последовательность запросов. Если автомат - то следующий запрос после окончания текущего в этом же цикле, в самих модулях все дурацкие задержки ответа выставить в 0 и т.п..

А чего надо достичь-то ?

@ND
12.03.2015, 19:52
А чего надо достичь-то ?

На основе этого комплекта оборудования рассматриваю возможность применения контроллеров ОВЕН в нашем производстве.
Я выше указывал по количеству и типу сигналов наши обычные объекты.

Так вот под наши нужды набор модулей ввода вывода будет опрашиваться где то 400 мс. Что подойдет не все объектам.
Хотелось бы чтоб опрос не превышал 200 мс.

Вообще время-зависимый протокол MODBUS не лучшее средство для решения подобных задач.
Не смотрел еще реализацию протокола ОВЕН, может он сможет достичь более лучших результатов?

artvhm
12.03.2015, 20:14
Посмотрите у вас таймаут ответа в 8ас не 50мс, случаем стоит? Также судя по задержкам мастер ждёт 10мс после получения ответа и только потом делает запрос следующему модулю. На ваших скоростях можно смело уменьшить до 2 мс. У вас из 135мс половина уходит на паузы

@ND
12.03.2015, 20:16
Про 8АС - в принципе до 32-33мс лечится (и это на 38400 и говорю про кдс2). Но если все 8 входов юзаются - то оцифровка 40мс (РЭ)


А что он оцифровку делает только в момент опроса?
ИМХО оцифровку делать постоянно, чтоб не тратить драгоценное время при опросе.

Валенок
12.03.2015, 20:28
Данные на модуле обновляются 40мс. Поэтому и читать чаще нет смысла большого

@ND
13.03.2015, 04:43
Данные на модуле обновляются 40мс. Поэтому и читать чаще нет смысла большого

Да я бы с удовольствием их читал хотя бы раз в 40мс, но чаще чем раз в 135мс никак.
Причем не только аналоговый модуль, а любой модуль в моем случае чаще чем раз в 135 мс не опрашивается.
Не забывайте, что у нас последовательный интерфейс, а не параллельный.

@ND
13.03.2015, 06:04
Посмотрите у вас таймаут ответа в 8ас не 50мс, случаем стоит? Также судя по задержкам мастер ждёт 10мс после получения ответа и только потом делает запрос следующему модулю. На ваших скоростях можно смело уменьшить до 2 мс. У вас из 135мс половина уходит на паузы

Стоит 100 мс.
Но причем тут таймаут?!
Таймаут это время ожидания телеграммы.
В случае, если ответ не пришел в течении таймаута, то система переходит к следующему устройству.
Если я поставлю 2 мс, то я на аналоговый модуль вообще ответ не зафиксирую.

artvhm
13.03.2015, 06:27
Не так выразился. Речь про задержку ответа для 8ас. И про время между фреймами для мастера

Валенок
13.03.2015, 08:14
На модулях все задержки ответа выставить в 0. Ни к чему они вообще


их читал хотя бы раз в 40мс,
п#18, организационная часть


Не забывайте, что у нас последовательный интерфейс, а не параллельный.
Что-такое я подозревал

А какое время рабочего цикла ?

@ND
13.03.2015, 08:14
Чтоб 8И не упал при полном запросе к 8АС (64 байта)- просто перепрошиваем его (8И)

Кстати обнаружил у себя, что иногда тупит модуль 8И (не отвечает на запрос), тем самым останавливая общий опрос примерно на 700 мс.
Время между его "затуплениями" не постоянно, может варьироваться от 5 сек до 5 мин.
Прошивка у него v1.11.

Я правильно понял, что если модуль 8И видит в шине любую телеграмму больше 50 байт, не обязательно ему адресованную, то он затыкается?

Существует ли более новая прошивка исправляющая это дело?
Если да, то где её взять?

@ND
13.03.2015, 09:44
В общем удалось добиться полного опроса за 70 мс.

Для этого я сделал:

1. Установил задержку ответа на модулях в 0. (Кстати на аналоговом модуле 8АС, она по умолчанию стояла 45 мс, на остальных 2 мс)
2. В настройке мастера время между фреймами 10 мс
3. На всех каналах время цикла 10 мс.



11:39:02.355: RX: 01-03-00-63-00-02-34-15
11:39:02.357: RX: 01-03-04-00-00-00-04-FB-F0
11:39:02.374: RX: 02-03-01-20-00-17-05-C1
11:39:02.379: RX: 02-03-2E-41-D7-AC-D0-55-B4-FF-FF-FF-FF-55-B4-FF-FF-FF-FF-55-B4-FF-FF-FF-FF-55-B4-FF-FF-FF-FF-55-B4-FF-FF-FF-FF-55-B4-FF-FF-FF-FF-55-B4-FF-FF-FF-FF-5E-83
11:39:02.395: RX: 03-10-00-32-00-01-02-00-00-BB-22
11:39:02.403: RX: 03-10-00-32-00-01-A1-E4
11:39:02.417: RX: 04-10-00-00-00-08-10-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-E6-A2
11:39:02.424: RX: 04-10-00-00-00-08-C1-9A

Затупления модуля 8И пропали, так и не понял с чем это было связано.

Пока работает всё стабильно

lara197a
13.03.2015, 10:38
модуль 8АС
Его вообще можно опрашивать отдельно раз в 5-10с.
температура и датчики очень инертны. Изменений в течении микросекунд не получите.

artvhm
13.03.2015, 10:44
А теперь время между фреймами убавить до 2. И получите ещё минус 30мс

@ND
13.03.2015, 12:42
Его вообще можно опрашивать отдельно раз в 5-10с.
температура и датчики очень инертны. Изменений в течении микросекунд не получите.

Температура тоже может быстро меняться в некоторых технологических процессах, а про давление я вообще молчу.

@ND
13.03.2015, 13:03
А теперь время между фреймами убавить до 2. И получите ещё минус 30мс

Убавил время между фреймами до 2 мс - почти не изменилось.
Теперь опрос 67 - 68 мс

Валенок
13.03.2015, 13:27
Его вообще можно опрашивать отдельно раз в 5-10с.

8AC не 8A
...

Валенок
13.03.2015, 13:51
Теперь опрос 67 - 68 мс
А тут говорили что я загнул с 100мс

Время рабочего цикла какое ?

@ND
13.03.2015, 13:57
Время рабочего цикла какое ?

MainTask Интервал = t#5ms

Под этим понимается время рабочего цикла?

@ND
13.03.2015, 14:04
Выставил:
1. MainTask интервал = 3мс
2. Время между фреймами = 3 мс

В итоге получил опрос 48 мс ! :D


16:01:42.763: RX: 01-03-00-63-00-02-34-15
16:01:42.766: RX: 01-03-04-00-00-00-04-FB-F0
16:01:42.773: RX: 02-03-01-20-00-17-05-C1
16:01:42.778: RX: 02-03-2E-41-D7-4C-D0-6D-70-FF-FF-FF-FF-6D-70-FF-FF-FF-FF-6D-70-FF-FF-FF-FF-6D-70-FF-FF-FF-FF-6D-70-FF-FF-FF-FF-6D-70-FF-FF-FF-FF-6D-70-FF-FF-FF-FF-2E-5D
16:01:42.788: RX: 03-10-00-32-00-01-02-00-00-BB-22
16:01:42.797: RX: 03-10-00-32-00-01-A1-E4
16:01:42.804: RX: 04-10-00-00-00-08-10-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-E6-A2
16:01:42.811: RX: 04-10-00-00-00-08-C1-9A

Валенок
13.03.2015, 14:09
MainTask интервал = 3мс
А поставь его 0

Время между фреймами
Для 115.2 - 1.75мс согласно протоколу. Хотя иногда и на это можно положить
Ломай б-ку и делай свою если хочешь быстрее.

@ND
13.03.2015, 14:25
Поставив MainTask интервал на 0 мс, у меня MainTask вообще перестал обрабатываться, предупреждение при компиляции об этом свидетельствовало :)


Поставив MainTask интервал на 1 мс, время между фреймами 1 мс, получил затык модуля 8И.
Он перестал отвечать


16:18:12.594: RX: 01-03-04-00-00-00-04-FB-F0
16:18:12.604: RX: 02-03-01-20-00-17-05-C1
16:18:12.609: RX: 02-03-2E-41-D6-8C-D0-F0-C9-FF-FF-FF-FF-F0-C9-FF-FF-FF-FF-F0-C9-FF-FF-FF-FF-F0-C9-FF-FF-FF-FF-F0-C9-FF-FF-FF-FF-F0-C9-FF-FF-FF-FF-F0-C9-FF-FF-FF-FF-2F-32
16:18:12.620: RX: 03-10-00-32-00-01-02-00-00-BB-22
16:18:12.628: RX: 03-10-00-32-00-01-A1-E4
16:18:12.632: RX: 04-10-00-00-00-08-10-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-E6-A2
16:18:13.244: RX: 01-03-00-63-00-02-34-15
16:18:13.248: RX: 01-03-04-00-00-00-04-FB-F0
16:18:13.254: RX: 02-03-01-20-00-17-05-C1
16:18:13.259: RX: 02-03-2E-41-D6-79-9C-F1-0A-FF-FF-FF-FF-F1-0A-FF-FF-FF-FF-F1-0A-FF-FF-FF-FF-F1-0A-FF-FF-FF-FF-F1-0A-FF-FF-FF-FF-F1-0A-FF-FF-FF-FF-F1-0A-FF-FF-FF-FF-2C-3D
16:18:13.270: RX: 03-10-00-32-00-01-02-00-00-BB-22
16:18:13.278: RX: 03-10-00-32-00-01-A1-E4
16:18:13.282: RX: 04-10-00-00-00-08-10-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-E6-A2
16:18:13.894: RX: 01-03-00-63-00-02-34-15


Поставив MainTask интервал на 1 мс, время между фреймами 2 мс, 8И стал отвечать стабильнее, но всё же, примерно раз в 15 сек тупит (не отвечает).

Поставив MainTask интервал на 1 мс, время между фреймами 3 мс, тут всё стабильно


По ходу для данного набора модулей это предел, ну что ж, 48 мс это уже неплохо :)

Lyohin
13.03.2015, 21:52
16:18:12.594: RX: 01-03-04-00-00-00-04-FB-F0
16:18:12.604: RX: 02-03-01-20-00-17-05-C1
16:18:12.609: RX: 02-03-2E-41-D6-8C-D0-F0-C9-FF-FF-FF-FF-F0-C9-FF-FF-FF-FF-F0-C9-FF-FF-FF-FF-F0-C9-FF-FF-FF-FF-F0-C9-FF-FF-FF-FF-F0-C9-FF-FF-FF-FF-F0-C9-FF-FF-FF-FF-2F-32
16:18:12.620: RX: 03-10-00-32-00-01-02-00-00-BB-22
16:18:12.628: RX: 03-10-00-32-00-01-A1-E4
16:18:12.632: RX: 04-10-00-00-00-08-10-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-E6-A2
16:18:13.244: RX: 01-03-00-63-00-02-34-15
16:18:13.248: RX: 01-03-04-00-00-00-04-FB-F0
16:18:13.254: RX: 02-03-01-20-00-17-05-C1
16:18:13.259: RX: 02-03-2E-41-D6-79-9C-F1-0A-FF-FF-FF-FF-F1-0A-FF-FF-FF-FF-F1-0A-FF-FF-FF-FF-F1-0A-FF-FF-FF-FF-F1-0A-FF-FF-FF-FF-F1-0A-FF-FF-FF-FF-F1-0A-FF-FF-FF-FF-2C-3D
16:18:13.270: RX: 03-10-00-32-00-01-02-00-00-BB-22
16:18:13.278: RX: 03-10-00-32-00-01-A1-E4
16:18:13.282: RX: 04-10-00-00-00-08-10-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-E6-A2
16:18:13.894: RX: 01-03-00-63-00-02-34-15




А где можно просматривать данные запросы?

@ND
14.03.2015, 19:22
А где можно просматривать данные запросы?

Существует много программ для работы с последовательным портом, на любой цвет и вкус.
Эту я написал сам, в том виде который удобен мне.

Lyohin
24.03.2015, 15:49
У меня 8 модулей и СПК207. Добился более менее нормальной скорости. Но для ускорения перебросил 2 модуля на другой COM порт RS485. Теперь время опроса еще меньше. @ND, подскажите пожалуйста, где можно скачать программку для регистрации посылок по протоколу Modbus, уж очень хочется измерить время цикла.
У меня такие параметры:
скорость - 115200 бит/с
MainTask интервал - 10ms
Время между фреймами -5ms
Таймаут отклика - 30ms

При значении Таймаут отклика <30ms шина modbus работает не стабильно, аналоговые модули отваливаются.

@ND
02.04.2015, 09:34
@ND, подскажите пожалуйста, где можно скачать программку для регистрации посылок по протоколу Modbus, уж очень хочется измерить время цикла.

Вот моя программа:

Lyohin
08.04.2015, 13:01
Спасибо! Думаю, разберусь, как ней пользоваться

@ND
13.04.2015, 14:05
У меня 8 модулей и СПК207. Добился более менее нормальной скорости. Но для ускорения перебросил 2 модуля на другой COM порт RS485. Теперь время опроса еще меньше. @ND, подскажите пожалуйста, где можно скачать программку для регистрации посылок по протоколу Modbus, уж очень хочется измерить время цикла.
У меня такие параметры:
скорость - 115200 бит/с
MainTask интервал - 10ms
Время между фреймами -5ms
Таймаут отклика - 30ms

При значении Таймаут отклика <30ms шина modbus работает не стабильно, аналоговые модули отваливаются.

Слишком маленький таймаут смысла ставить нет.
А можно поподробнее, что за модули, как вы их опрашиваете?
Какое получилось время опроса всех модулей?