Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
15
Добавлен:
31.08.2025
Размер:
5.84 Mб
Скачать

Ресурсы

6.7 Конфигуратор задач (Task Configuration)

Обзор

По умолчанию в проекте всегда создается единственная «главная» программа PLC_PRG, выполняемая циклически. Кроме того, вы можете явно определить несколько задач с различными условиями выполнения.

Задача - это единица обработки МЭК программы. Задача имеет название, приоритет и тип. Тип определяет условие вызова задачи. Условием может служить время (циклическое или свободное freewheeling выполнение) или событие, внутреннее или внешнее (например, превышение заданного порога глобальной переменной или прерывание в контроллере).

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

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

Каждую задачу можно разрешить или запретить независимо от других.

Для каждой задачи можно задать сторожевой таймер (контроль времени выполнения). Возможности его использования и настройки определяются целевой платформой.

В режиме Онлайн выполнение задач можно наблюдать в виде графической диаграммы. Помимо этого, существует возможность непосредственно связать системные события System events (т.е. Старт, Стоп, Сброс) с выполнением определенных POU проекта.

Раздел Конфигурации задач (Task Configuration) находится во вкладке Ресурсы (Resources)

Менеджера объектов. Окно Конфигурации задач разделено на 2 части.

Окно Конфигурации задач

CoDeSys V2.3

6-56

Ресурсы

В левой части окна “Конфигурация задач” (Task Configuration) представлены задачи в виде дерева конфигурации. В корневой позиции обязательно присутствует элемент “Конфигурация задач” (Task Configuration). Под ним раскрывается список конкретных задач, представленных по именам. Под каждой задачей раскрывается список включенных в неё программ. Тип каждого элемента определяется специальной иконкой.

В правой части окна показан диалог, соответствующий выбранному элементу в дереве конфигураций. Здесь вы можете конфигурировать свойства задач (Task properties), вызова программ (Program call), задавать связи с системными событиями (System events). Эта возможность зависит от выбора целевой платформы. Она должна быть поддержана в системе исполнения и разрешена в опциях целевой системы. Если стандартный набор настроек расширен специфическими параметрами, они будут представлены на отдельной вкладке 'Parameter' в правой части окна.

Работа в конфигураторе задач

§Наиболее важные команды находятся в контекстном меню (правая клавиша мыши).

§В корневой позиции дерева конфигурации задач находится строка “Конфигурация задач” (Task Configuration). Если перед этой строкой стоит знак "плюс", то список задач закрыт. Открыть этот список можно двойным щелчком мыши или клавишей <Enter>. При этом появится знак "минус". Если щелкнуть мышкой еще раз, то список снова закроется.

§Каждой задаче соответствует список вызовов программ. Открывается и закрывается этот список аналогично.

§С помощью команды "Вставка" "Вставить задачу" ("Insert " "Insert Task") можно вставить задачу.

§Команда "Вставка" "Добавить задачу" ("Insert" "Append Task") добавляет задачу в конец списка.

§Вызов программы в выбранную задачу вставляется командой “Вставка” “Добавить вызов программы” ("Insert" "Append Program Call").

Для каждого выбранного в левой части окна элемента в правой части окна показывается соответствующий диалог настройки. Некоторые опции можно включить/выключить, некоторые из них требуют ввода строки. В зависимости от выбранного элемента диалог может представлять атрибуты задачи 'Taskattributes' (см. 'Insert Task'), определение вызова программы 'Program Call' (см. 'Insert Program Call') или таблицу системных событий 'System events'. Возможности настройки определяются целевой платформой. Изменения в настройках вступают в силу после выбора другого элемента (потери диалогом фокуса ввода).

§Изменить имя задачи или программного вызова можно, нажав клавишу <пробел> или щелкнув мышкой на соответствующем объекте.

§Перемещаться по элементам дерева конфигурации задач можно при помощи клавиш со стрелками (вверх, вниз).

"Вставка" "Вставить задачу" ("Insert" "Insert Task") или "Вставка" "Добавить задачу" ("Insert" "Append Task")

С помощью этих команд можно вставить новую задачу.

Если выделена задача или элемент 'Системные события' (System events), то доступна команда "Вставить задачу" (Insert Task). Используя эту команду, можно вставить новую задачу перед курсором. Если выделена строка “Конфигурация задач” (Task Configuration), то доступна команда "Добавить задачу" (Append Task) и новая задача добавляется в конец списка. После этого будет открыто диалоговое окно для установки атрибутов задачи (См. выше рис. Окно конфигурации задач).

CoDeSys V2.3

6-57

Ресурсы

Максимально возможное число задач определяется целевой системой. Обратите внимание, что некоторое число задач может оказаться уже зарезервировано для модулей Конфигурации ПЛК (определено в cfg-файле).

Диалог атрибутов задачи включает:

Имя (Name): Имя отражает задачу в дереве конфигурации. Для редактирования имени нужно щелкнуть по нему мышью или выбрать элемент и нажать <пробел>.

Приоритет (Priority) (0-31): (число от 0 до 31 со следующими значениями: 0 - самый высокий, 31 – самый низкий приоритет)

Тип:

Циклическая (cyclic) : задача вызывается циклически через заданный интервал времени

(Interval) (см. ниже).

Свободная (freewheeling) : задача вновь вызывается сразу же после окончания в непрерывном цикле, без задания каких-либо интервалов.

По событию (triggered by event) : задача вызывается по фронту значения логической переменной, определенной в поле “Событие” (Event).

По внешнему событию (triggered by external event) : задача вызывается по событию, ко-

торое определено в поле “Событие” (Event) . Список доступных событий зависит от целевой платформы.

Свойства:

Интервал (Interval) (для задач типа 'cyclic'): период времени, после которого задача должна быть вызвана в очередной раз. Справа от поля ввода значения задаются единицы измерения. Это могут быть миллисекунды [ms] либо микросекунды [µs]. При установке миллисекунд значение должно быть дано в формате TIME (например, "t#200ms"). При вводе микросекунд используется числовая форма представления (например, "300").

Событие (Event) (для задач типа 'triggered by event' и 'triggered by external event'): глобальная переменная инициирующая запуск задачи передним фронтом. Используйте кнопку ... или Ассистент ввода <F2>. Некоторые целевые системы поддерживают Singleton Events. Это события, которые позволяют запустить только одну единственную задачу, что контролируется при компиляции проекта. При контроле используется адрес переменной, но не ее имя. Например: если в целевой системе определены %MX1.1 и %IB4 как Singleton-Events, то следующее объявление вызовет 2 ошибки (a и b так же, как c и d, занимают одинаковые адреса):

VAR_GLOBAL

a AT %MX1.1: BOOL; b AT %MX1.1: BOOL;

c AT %MB4: BOOL; d AT %MD1: BOOL;

END_VAR

Если в обоих полях 'Interval' и 'Event' ничего не задано, то время цикла определяется системой исполнения. Например, для CoDeSys SP NT V2.2 и старше время цикла будет 10 ms.

Сторожевой таймер (Watchdog):

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

Активировать сторожевой таймер” (Activate watchdog): если сторожевой таймер вклю-

чен, то задача будет прервана с установленным статусом ошибки, если её выполнение заняло больше времени, чем задано в поле 'Время' (Time) (см. ниже).

CoDeSys V2.3

6-58

Ресурсы

Внимание: система исполнения CoDeSys SP 32 Bit Full отключает сторожевой таймер автоматически при выходе в точку останова.

'Время' (Time) (например.: t#200ms): время сторожевого таймера; если задача не завершила работу в течение этого времени, сторожевой таймер «срабатывает». В некоторых целевых платформах время вводится в процентах от интервала задачи. В этом случае селектор единиц измерения показан серым цветом и отображает "%".

'Восприимчивость' (Sensitivity): чувствительность, допустимое число превышений времени сторожа без формирования признака ошибки. По умолчанию устанавливается значение ‘1’. Это означает, что уже первое превышение порога приведет к срабатыванию сторожевого таймера. Если задать значение ‘0’, то механизм сторожевого таймера будет отключен.

Вспомогательные специфические атрибуты:

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

"Вставка" "Вставить вызов программы" ("Insert" "Insert Program Call") или "Встав-

ка" "Добавить вызов программы" ("Insert" "Append Program Call")

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

При использовании команды "Вставить вызов программы" (Insert Program Call) можно вставить новый программный вызов перед курсором, "Добавить вызов программы" (Append Program Call) позволяет добавить вызов в конец существующего списка.

Диалоговое окно ввода вызова программы

В поле “Вызов программы” (Program Call) нужно написать имя программы, которая есть в проекте, или с помощью кнопки Select выбрать его из списка предложенных. Если программа имеет входные параметры, то они приводятся в скобках как при обычном вызове программы (например, prg(invar:=17)).

Порядок выполнения программ в задаче определяется их последовательностью в списке (сверху вниз).

Системные события

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

Присваивание системных событий POU выполняется в Конфигураторе задач. Диалог 'Системные

события' '(System Events) открывается при выборе элемента 'Системные события' (Systemevents) в дереве конфигурации:

CoDeSys V2.3

6-59