Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Раздел 2. Методы программирования контроллеров.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
1.66 Mб
Скачать

2.8.1.3. Описание действий внутри шагов.

Описание действий выполняемых во время активности шага называют вторым уровнем шага SFC. Такое описание выполняется с использованием обычно языка ST (хотя и возможно использование и других языков) и дополнительных возможностей языка SFC так называемых текстовых возможностей. К ним относятся:

  1. булевы действия

  2. puls-действия

  3. non-stored-действия

  4. SFC-действия

Булевы действия

Они присваиваются булевой переменной значение активности шага.

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

Синтаксис основных булевых действий следующий:

<boolean_variable>(N) присваивает переменной сигнал активности шага

<boolean_variable>; тот же самый эффект (атрибут N является необязательным)

/<boolean_variable>; присваивает переменной отрицание сигнала активности шага

<boolean_variable>(S) устанавливает переменную в TRUE, когда сигнал активности шага становится TRUE.

<boolean_variable>(R) сбрасывает переменную в FALSE, когда сигнал активности шага становится TRUE

Временные диаграммы, поясняющие принцип работы

PULS-действия

Это список команд на языке ST или IL, которые выполняются только один раз в момент активизации шага.

Синтаксис описания puls-действий

ACTION(P);

Операторы языка ST или IL;

END_ACTION;

NON-STORED-действия

Это список команд на языке ST или IL, которые выполняются на каждом цикле работы контроллера в течении всего периода активности шага.

Синтаксис

ACTION(N);

Операторы языка ST или IL;

END_ACTION;

Кроме puls и non-stored действий в стандарте определены (но не поддерживаются ISaGRAF) следующие классификаторы действий:

  1. S – сохраняемое. Действие активируется и остается активным до сброса.

  2. R – сброс. Действие деактивируется.

  3. L – ограниченное по времени. Действие остается активным заданное время, но не дольше чем шаг.

  4. SL – сохраняемое и ограниченное по времени. Действие остается активным заданное время, вне зависимости от шага.

  5. D – отложенное. Действие активируется через заданное время после активации шага.

  6. DS – отложенное сохраняемое. Действие активируется через заданное время после активации шага и остается активным до сброса.

  7. SD – сохраняемое отложенное. Действие активируется через заданное время после активации шага, даже если шаг уже не активен.

SFC действия

Это дочерняя последовательность на языке SFC, запускаемая или уничтожаемое в соответствии с изменением сигнала активности шага. Кроме указанных возможностей в каждом шаге может осуществляться вызов подпрограмм, написанных на любом из остальных языков.

В отличии от макрошага, который пока не выполнится до конца, не происходит дальнейшего перехода, SFC-действие сразу прекращается при выполнении условия перехода.

SFC-действие может иметь один из следующих спецификаторов: N (“non-stored”), S (установки) или R (сброса).

Основные SFC-действий:

<child_program>(N); запускает дочернюю последовательность, когда шаг становится активным и уничтожает дочернюю последовательность, когда шаг становится неактивным

<child_program>; выполняет то же самое, что и предыдущее действие (атрибут N является необязательным)

<child_program>(S); запускает дочернюю последовательность, когда шаг становится активным - ничего не делается, когда шаг становится неактивным

<child_program>(R); уничтожает дочернюю последовательность, когда шаг становится активным - ничего не делается, когда шаг становится не активным