EnglishУкраїнськаmRussian
Login/New
Topic with many replies

Как прочитать данные с одного контроллера с разным временем опроса.


Author Message
Written on: 17. 05. 2011 [06:07]
SergGray
Сергей Гурьянов
Topic creator
registered since: 02.02.2011
Posts: 50
Уточняю скада 0.7.0.3 с контроллера читается 20 параметров из них 4 рабочих (приоритетных) и остальные справочные. Как организовать так опрос одного контроллера чтобы приоритетные опрашивались 3 раза в секунду а остальные раз в 2-3 секунды. Пытался решить эту задачу ускорением общего обмена, ставлю галку "Обьединить фрагменты данных" получаю ошибку, превышено время ожидания, не успевает контроллер видно ответить, по 4 параметра в блоке успевает, а больше почему то спотыкается.Время опроса ставил разное. В результате общее время опроса всех параметров 11 сек. Для отображения время приемлимое, для управления медленно. Если бы можно было ставить время опроса для каждого параметра то проблему как мне кажется можно было решить. Пока же вижу решение создать в скаде два контроллера один контроллер будет опрашивать только эти 4 параметра с максимальной скоростью, а второй контроллер будет опрашивать уже справочные параметры с другим временем опроса. Может еще есть какие то варианты? Какие есть идеи.
Attachment

perem.JPG (File type: image/pjpeg, Size: 35.5 kilobytes) — 1982 downloads
perem1.JPG (File type: image/pjpeg, Size: 34.43 kilobytes) — 1994 downloads
Written on: 17. 05. 2011 [07:10]
SergGray
Сергей Гурьянов
Topic creator
registered since: 02.02.2011
Posts: 50
Фокус с разделением контроллера на две части один из которых читает только приоритетные данные с треском провалился. Скорость обмена не стала сильно меньше. Как еще можно сделать? Странность еще одна меня смущает Планирование опроса ставлю 1 сек и 10-3 сек смотрю на контроллере на индикатор обмена а он как мигал примерно раз в секунду так и мигает, и по обновлению данных то же разницы не видно. Если читаю контроллер через другую скаду то такой задежки в обновлении данных нет. Время обмена все время примерно на одном уровне 11-13 сек что очень много.
Written on: 17. 05. 2011 [08:05]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"SergGray" wrote:

Уточняю скада 0.7.0.3 с контроллера читается 20 параметров из них 4 рабочих (приоритетных) и остальные справочные. Как организовать так опрос одного контроллера чтобы приоритетные опрашивались 3 раза в секунду а остальные раз в 2-3 секунды. Пытался решить эту задачу ускорением общего обмена, ставлю галку "Обьединить фрагменты данных" получаю ошибку, превышено время ожидания, не успевает контроллер видно ответить, по 4 параметра в блоке успевает, а больше почему то спотыкается.

Опять!
Что-за модуль опроса?
Какой протокол опроса?
Какой транспорт?
Могу предположить, что это ModBus/RTU на Serial. Если это так то читайте здесь: http://wiki.oscada.org/Doc/Serial#h835-5

"SergGray" wrote:

Время опроса ставил разное. В результате общее время опроса всех параметров 11 сек.

Анализируйте обмен: http://wiki.oscada.org/Doc/ModBus#h592-12
И опять! Настройки исходящего транспорта какие?

P.S. Скрины вложенные тут к чему?

Learn, learn and learn better than work, work and work.
Written on: 17. 05. 2011 [08:08]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"SergGray" wrote:

Фокус с разделением контроллера на две части один из которых читает только приоритетные данные с треском провалился. Скорость обмена не стала сильно меньше.

Естественно, ибо горлышко это последовательный интерфейс, который не работает параллельно!

"SergGray" wrote:

Странность еще одна меня смущает Планирование опроса ставлю 1 сек и 10-3 сек смотрю на контроллере на индикатор обмена а он как мигал примерно раз в секунду так и мигает, и по обновлению данных то же разницы не видно.

Перезапускать задачу контроллера после смены планирования нужно. Он разве в статусе не пишет текуший период опроса?

Learn, learn and learn better than work, work and work.
Written on: 17. 05. 2011 [08:20]
SergGray
Сергей Гурьянов
Topic creator
registered since: 02.02.2011
Posts: 50
И снова я на те же грабли наступаю, обмен по ModBus/RTU, через Socket. Перезапускаю контроллер после смены периода вопроса обязательно, период опроса в статусе конечно написан. Анализ проведу обязательно, просто если в будущем будет возможность в контроллере для разных данных ставить разное время опроса наверное это не будет лишним. Спасибо.
Written on: 17. 05. 2011 [08:26]
SergGray
Сергей Гурьянов
Topic creator
registered since: 02.02.2011
Posts: 50
Скрины вложил из другой промышленной скады, там время опроса ставится для каждого параметра. Раз там такое есть значит это не просто мой каприз, а реальная потребность. И может быть в Скаде может пригодится. Мы все только стремимся к совершенству.
Written on: 17. 05. 2011 [08:47]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"SergGray" wrote:

Скрины вложил из другой промышленной скады, там время опроса ставится для каждого параметра. Раз там такое есть значит это не просто мой каприз, а реальная потребность. И может быть в Скаде может пригодится. Мы все только стремимся к совершенству.

Не вижу в этом ни малейшего смысла, если учесть что это решается созданием другого объекта контроллера, и у меня нет такой потребности. Скорее вижу кучу скрытых проблем и ограниченность такого решения. Кроме того это ни разу не решает проблемы разделения по приоритету, особенно на последовательных интерфейсах. Разберитесь в особенности их природы и попробуйте timeline себе представить!

Learn, learn and learn better than work, work and work.
Written on: 17. 05. 2011 [11:31]
SergGray
Сергей Гурьянов
Topic creator
registered since: 02.02.2011
Posts: 50
Посмотрел отчет обмена по модбасу, ошибок не обнаружил. Ошибка появляется только когда поставлю обьединять фрагменты данных (Нелегальное значение данных в запросе). Отключил опрос всех параметров кроме одного, время опроса 1 сек. странно, период опроса 1e-3. При опросе моего физического контроллера через com port (не опенскадой) скорость опроса 260 параметров в секунду.
Written on: 17. 05. 2011 [11:34]
SergGray
Сергей Гурьянов
Topic creator
registered since: 02.02.2011
Posts: 50
"SergGray" wrote:

Посмотрел отчет обмена по модбасу, ошибок не обнаружил. Ошибка появляется только когда поставлю обьединять фрагменты данных (Нелегальное значение данных в запросе). Отключил опрос всех параметров кроме одного, время сбора данных 1 сек. странно, период опроса 1e-3. При опросе моего физического контроллера через com port (не опенскадой) скорость опроса 260 параметров в секунду.
Written on: 17. 05. 2011 [11:55]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"SergGray" wrote:

Посмотрел отчет обмена по модбасу, ошибок не обнаружил. Ошибка появляется только когда поставлю обьединять фрагменты данных (Нелегальное значение данных в запросе).

Устройство не позволяет запрашивать блоки с недопустимыми регистрами, что и предусматривается этой опцией, поскольку она объединяет не смежные блоки. Про это в документации написано! Смежные блоки по умолчанию запрашиваются. Я Вам ссылку на анализ запроса дал что-бы Вы проверили корректность запросной посылки, проанализировали результат и сделали выводы!

"SergGray" wrote:

Отключил опрос всех параметров кроме одного, время сбора данных 1 сек. странно, период опроса 1e-3. При опросе моего физического контроллера через com port (не опенскадой) скорость опроса 260 параметров в секунду.

Таймауты исходящего транспорта. Второй раз уже прошу настройки его указать! И даже ссылку уже дал где особенность их настройки детально описана!

Learn, learn and learn better than work, work and work.



15994