Siemens — 3.1.2 Приоритеты и очереди для исполнения событий

Основы ПЛК 3.1 Исполнение программы пользователя Контроль времени цикла Время цикла – это время, которое необходимо операционной системе CPU для исполнения циклической фазы режима RUN. CPU предоставляет два способа для контроля времени цикла: ● Максимальное время цикла ● фиксированное минимальное время цикла Контроль времени цикла начинается после завершения запуска. Запроектировать эту функцию в CPU можно через "Device Configuration > Cycle time [Конфигурация устройств > Время цикла]". CPU постоянно контролирует время цикла и реагирует, если максимальное время цикла превышено.

Если установленное максимальное время цикла превышено, то генерируется ошибка, которая обрабатывается одним из следующих двух способов: ● Если OB 80 отсутствует, то CPU генерирует ошибку и продолжает исполнять программу пользователя ● Если OB 80 присутствует, то CPU исполняет OB 80 Команда RE_TRIGR (перезапустить контроль времени цикла) позволяет сбросить таймер, измеряющий время цикла. Однако эта команда действует только в том случае, если она исполняется в OB программного цикла; команда RE_TRIGR игнорируется, если она исполняется в OB 80.

Если максимальное время цикла превышено дважды в одном программном цикле, и при этом команда RE_TRIGR не исполняется между этими двумя превышениями времени, то CPU немедленно переходит в STOP. Повторное исполнение команды RE_TRIGR может создать бесконечный или очень длинный цикл. Обычно цикл исполняется как можно более быстро, и следующий цикл начинается, как только заканчивается предыдущий. Однако в зависимости от программы пользователя и коммуникационной нагрузки время цикла может варьироваться. Для устранения таких колебаний CPU поддерживает необязательное фиксированное минимальное время цикла (называемого также фиксированным циклом).

Если эта функция активизирована, и фиксированное минимальное время цикла задано в мс, то CPU соблюдает это минимальное время цикла с точностью ±1 мс для каждого цикла. Если CPU выполняет цикл быстрее, чем определено минимальным временем цикла, то CPU использует оставшееся время для диагностики ошибок во время исполнения и/или обработки коммуникационных запросов. Таким образом, CPU всегда занимает для каждого цикла фиксированное время. Если цикл не завершается в течение заданного минимального времени цикла, то он выполняется нормально до конца (включая обработку коммуникационных запросов), и превышение минимального времени цикла не приводит ни к каким реакциям со стороны системы.

В следующей таблице представлены диапазоны и настройки по умолчанию для функций контроля времени цикла. 1 Максимальное время цикла всегда активизировано. Установите время цикла от 1 до 6000 мс. Значение по умолчанию составляет 150 мс. 2 Фиксированное минимальное время цикла необязательно и по умолчанию деактивировано. Если необходимо, установите это время от 1 мс до максимального времени цикла. Программируемый контроллер S7-1200 54 Системное руководство, 11/2009, A5E02669003-02 Время цикла Диапазон (мс) Значение по умолчанию Максимальное время цикла1 от 1 до 6000 150 мс Фиксированное минимальное время цикла 2 от 1 до максимального времени цикла деактивировано