Цитата Сообщение от energvk Посмотреть сообщение
Ну почему? Если например модуль МВ8А опрашивать чаще чем раз 3-5 секунд нет смысла,то период опроса в данном случае актуален. Или нет?
Если речь об экономии трафика не идёт, то в чистом виде не актуален.

Допустим, вместе с МВА8 (модуль А) вы опрашиваете какой-нибудь 2АС (модуль Б), который обновляется каждые 5 мс. Можно сделать как обычно - опрашивать Б по 20 мс и раз в 3 секунды прерывать его на опрос А. Получается высокая средняя частота опроса Б, но на практике почти всегда важнее минимальная установившаяся частота, и она будет гораздо ниже средней из-за паузы на опрос А. Даже такой примитивный кейс проявит себя, например, на "плотности" графика, который строится по показаниям Б - на нём будут дыры, и нельзя будет сказать, что период дискретизации этого графика 20 мс.

В реальности всё ещё сложнее, то есть модулей больше и периоды их опроса ближе. Без достаточно изощрённого тайминга тут начинаются всякие некрасивые вещи — периоды плывут друг от друга, модули пропускают свою очередь по несколько раз и т.п.

Поэтому я с modbus.lib (в частности) не использую периодический опрос. Вместо этого я включаю модули в последовательность нужное количество раз. Если, допустим, у меня есть 2 шт МВА8 (X и Y) и 1 шт 2АС (Z), то я просто опрашиваю их XZYZXZYZ без пауз. И я с уверенностью могу сказать, что Z опрашивается с такой-то частотой уже без запинок.