Рабочий цикл и время реакции ПЛК


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

На самом деле ПЛК имеет обычно один процессор и выполняет несколько задач псевдопараллельно, последовательными порция­ми. Время реакции на событие оказывается зависящим от числа одновременно обрабатываемых событий. Рассчитать минимальное и максимальное значения времени реакции, конечно, можно, но добавление новых задач или увеличение объема программы при­ведет к увеличению времени реакции. Такая модель более подхо­дит для систем мягкого реального времени. Современные ПЛК имеют типовое значение времени рабочего цикла, измеряемое единицами миллисекунд и менее. Поскольку время реакции боль­шинства исполнительных устройств значительно выше, с реаль­ными ограничениями возможности использования ПЛК по време­ни приходится сталкиваться редко.

Задачи управления требуют непрерывного циклического конт­роля. В любых цифровых устройствах непрерывность достигается за счет применения дискретных алгоритмов, повторяющихся че­рез достаточно малые промежутки времени. Таким образом, вы­числения в ПЛК всегда повторяются циклически. Одна итерация, включающая замер, обсчет и выработку воздействия, называется рабочим циклом ПЛК. Выполняемые действия зависят от значе­ния входов контроллера, предыдущего состояния и определяются пользовательской программой.

По включению питания ПЛК выполняет самотестирование и настройку аппаратных ресурсов, очистку оперативной памяти данных (ОЗУ), контроль целостности прикладной программы по­льзователя. Если прикладная программа сохранена в памяти, ПЛК переходит к основной работе, которая состоит из постоян­ного повторения последовательности действий, входящих в рабо­чий цикл.

Рабочий цикл ПЛК состоит из нескольких фаз.

1. Начало цикла.

2. Чтение состояния входов.

3. Выполнение кода программы пользователя.

4. Запись состояния выходов.

5. Обслуживание аппаратных ресурсов ПЛК.

6. Монитор системы исполнения.

7. Контроль времени цикла.

8. Переход на начало цикла.

В самом начале цикла ПЛК производит физическое чтение входов. Считанные значения размещаются в области памяти вхо­дов. Таким образом, создается полная одномоментная зеркальная копия значений входов.

Далее выполняется код пользовательской программы. Пользо­вательская программа работает с копией значений входов и выхо­дов, размещенной в оперативной памяти. Если прикладная про­грамма не загружена или остановлена, то данная фаза рабочего цикла, естественно, не выполняется. Отладчик системы програм­мирования имеет доступ к образу входов-выходов, что позволяет управлять выходами вручную и проводить исследования работы датчиков.

После выполнения пользовательского кода физические выхо­ды ПЛК приводятся в соответствие с расчетными значениями (фаза 4).

Обслуживание аппаратных ресурсов подразумевает обеспече­ние работы системных таймеров, часов реального времени, опера­тивное самотестирование, индикацию состояния и другие аппаратно-зависимые задачи.

Монитор системы исполнения включает большое число функ­ций, необходимых при отладке программы и обеспечении взаимо­действия с системой программирования, сервером данных и се­тью. В функции системы исполнения обычно включается: загруз­ка кода программы в оперативную и электрически перепрограм­мируемую память, управление последовательностью выполнения задач, отображение процесса выполнения программ, пошаговое выполнение, обеспечение просмотра и редактирования значений переменных, фиксация и трассировка значений переменных, кон­троль времени цикла и т. д.

Пользовательская программа работает только с мгновенной ко­пией входов. Таким образом, значения входов в процессе выпол­нения пользовательской программы не изменяются в пределах одного рабочего цикла. Это фундаментальный принцип построе­ния ПЛК сканирующего типа. Такой подход исключает неодно­значность алгоритма обработки данных в различных его ветвях. Кроме того, чтение копии значения входа из ОЗУ выполняется значительно быстрее, чем прямое чтение входа. Аппаратно чтение входа может быть связано с формированием определенных временных интервалов, передачей последовательности команд для конкретной микросхемы или даже запросом по сети.

Если заглянуть глубже, то нужно отметить, что не всегда ра­бота по чтению входов полностью локализована в фазе чтения входов. Например, АЦП обычно требуют определенного времени с момента запуска до считывания измеренного значения. Часть работы системное программное обеспечение контроллера выпол­няет по прерываниям. Грамотно реализованная система исполне­ния нигде и никогда не использует пустые циклы ожидания го­товности аппаратуры. Для прикладного программиста все эти детали не важны. Существенно только то, что значения входов обновляются автоматически исключительно в начале каждого рабочего цикла.

Общая продолжительность рабочего цикла ПЛК называется временем сканирования. Время сканирования в значительной сте­пени определяется длительностью фазы кода пользовательской программы. Время, занимаемое прочими фазами рабочего цикла, практически является величиной постоянной. Для задачи средне­го объема в ПЛК с системой исполнения CoDeSys время распреде­лится примерно так: 98% — пользовательская программа, 2% — все остальное.

Существуют задачи, в которых плавающее время цикла суще­ственно влияет на результат, например это автоматическое регу­лирование. Для устранения этой проблемы в развитых ПЛК пре­дусмотрен контроль времени цикла. Если отдельные ветви кода управляющей программы выполняются слишком быстро, в рабо­чий цикл добавляется искусственная задержка. Если контроль времени цикла не предусмотрен, подобные задачи приходится ре­шать исключительно по таймерам.

Время реакции — это время с момента изменения состояния системы до момента выработки соответствующей реакции. Оче­видно, для ПЛК время реакции зависит от распределения моментов возникновения события и начала фазы чтения входов. Если изменение значений входов произошло непосредственно перед фа­зой чтения входов, то время реакции будет наименьшим и рав­ным времени сканирования (рис. 1.5). Худший случай, когда изменение значений входов происходит сразу после фазы чтения входов. Тогда время реакции будет наибольшим, равным удвоен­ному времени сканирования минус время одного чтения входов. Иными словами, время реакции ПЛК не превышает удвоенного времени сканирования.

Рис. 1.5. Время реакции ПЛК

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

Существуют ПЛК, которые реализуют команды непосредственного доступа к аппаратуре входов и выходов, что позволяет обрабатывать и формировать отдельные сигналы с длительностью меньшей длительности рабочего цикла.

Для уменьшения времени реакции сканирующих контролле­ров алгоритм программы разбивается на несколько задач с раз­личным периодом исполнения. В наиболее развитых системах пользователь имеет возможность создавать отдельные программы, исполняемые по прерыванию, помимо кода, исполняемого в рабочем цикле. Такая техника позволяет ПЛК существенно форсировать ограничение реакции временем сканирования при небольшом количестве входов, требующих сверхскоростной реакции.

Время цикла сканирования является базовым показателем быстродействия ПЛК. При измерении времени рабочего цикла пользовательская программа должна содержать 1К логических команд. Для ПЛК, поддерживающих стандарт МЭК 61131-3, используют команды на языке IL. Иногда изготовители приводят несколько значений времени цикла, полученных при работе с переменными различной разрядности.



Дата добавления: 2020-08-31; просмотров: 1352;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.01 сек.