Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
метод.рекомендации к ЛПР_скриншоты.doc
Скачиваний:
22
Добавлен:
06.09.2019
Размер:
6.17 Mб
Скачать
  1. Понятие активности шага.

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

3. Динамические правила языка sfc.

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

2) Переход может быть разрешен, если совместно выполняются два условия: а) условие перехода истинно; и б) все непосредственно предшествующие шаги, присоединённые к нему, активны. Если одно из условий не выполняется, переход запрещён и не может быть произведен.

3) Изменение состояния активности шагов – выполнение переходов немедленно приводит к активному состоянию непосредственно следующих за ним шагов и неактивному состоянию непосредственно предшествующих шагов.

4) Если во время выполнения программы шаг одновременно активизирован и деактивизирован приоритет отдаётся активизации.

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

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

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

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

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

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

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

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

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

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

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

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

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

Puls-действия

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

Синтаксис:

ACTION(P):

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

Non-stored-действия

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

Синтаксис описания Non-stored-действия: ACTION(N):

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

S FC действия

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

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

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