УкраїнськаEnglishmRussian
Вход/Новый
В теме много сообщений

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


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

perem.JPG (Тип файла: image/pjpeg, Размер: 35.5 килобайт) — 1961 загрузок
perem1.JPG (Тип файла: image/pjpeg, Размер: 34.43 килобайт) — 1965 загрузок
Сообщение создано: 17. 05. 2011 [07:10]
SergGray
Сергей Гурьянов
Создатель темы
Зарегистрирован(а) с: 02.02.2011
Сообщения: 50
Фокус с разделением контроллера на две части один из которых читает только приоритетные данные с треском провалился. Скорость обмена не стала сильно меньше. Как еще можно сделать? Странность еще одна меня смущает Планирование опроса ставлю 1 сек и 10-3 сек смотрю на контроллере на индикатор обмена а он как мигал примерно раз в секунду так и мигает, и по обновлению данных то же разницы не видно. Если читаю контроллер через другую скаду то такой задежки в обновлении данных нет. Время обмена все время примерно на одном уровне 11-13 сек что очень много.
Сообщение создано: 17. 05. 2011 [08:05]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 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.
Сообщение создано: 17. 05. 2011 [08:08]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3750
"SergGray" wrote:

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

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

"SergGray" wrote:

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

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

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

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

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

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

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

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

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

"SergGray" wrote:

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

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

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



10322