Немного о Grafcet. Основы.

Автор Сообщение
#1 / 20.11.2018 07:10
admin

Напоминание принципов языка Grafcet
Язык Grafcet соответствует Языку Схем Последовательностных Функций(SFC), определенному в стандарте IEC 1131-3.

Grafcet используется для представления операций последовательностных управляющих систем в графической структурированной форме.

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

Yapl_vmaZKU.jpg

1. Начальный шаг: описывает начальное положение ПЛК.
2. Переход: соответствующие условия перехода означают логические условия, необходимые для обновления этого перехода.

3. Одновременная активация шагов 3 и 7 (расщепление по И). Шаги 3, 4, 5, 6 и 7, 8, 9 задают две последовательности, которые могут выполняться одновременно.

4. Селекция последовательности (расщепление по ИЛИ) с шага 3 или с шага 4 до шага 5.

5. Окончание селекции последовательности (объединение по ИЛИ) с шага 4 или шага 5 в шаг 6.

6. Окончание последовательности шагов: позволяет синхронизировать одновременно выполняемые последовательности.

7. Одновременная деактивация шагов 6 и 9 (объединение по И).

8. Шаг: связанная с шагом операция выполняется только в том случае, если шаг активирован.

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

Операции, связанные с шагами обозначаются в общей форме типа «что должно быть сделано», когда шаги активированы.

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

Анализ продвижения: макро описание

5Q2DE_H1S8c.jpg
Спецификация

Автоматизируемая система обеспечивает смешение трех материалов. Материалы A и B накапливаются и взвешиваются в бункере B1. Материал C накапливается и взвешивается в бункере B2.

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

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

Анализ функций

YRCzzv91euw.jpg

Описываемое приложение может быть разделено на 4 основных последовательности:

- измерение веса трех материалов,

- наполнение миксера,

- смешивание трех материалов,

- выгрузка смеси.

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

Детальный анализ каждой последовательности производится на диаграммах второго и третьего уровней, вплоть до элементарного уровня, являющимся входным в приложении.

Макро представление

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

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

• Графическое представление

Otu1pCAAGlI.jpg

Спецификация графических символов языка Grafcet
Начальные шаги

lId2XypV7ww.jpg

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

Одиночные шаги

3_RTE7UqmCs.jpg

Обозначает, что система управления находится в устойчивом состоянии.

Все конфигурированные шаги в пределах максимального количества могут быть активизированы одновременно.

Макро-шаги

K1hlTv8rFxY.jpg

Обозначает макро-шаг: определенную последовательность шагов и переходов. Максимальное количество конфигурированных шагов может быть от 0 до 63.

Шаги макро-шага

1ukxZKpWHG4.jpg

Обозначает шаги макро-шага. Максимальное количество шагов для каждого макро-шага, которое может быть сконфигурировано: от 0 до 250. Допускается один IN и один OUT шаг для каждого макро-шага.

Переходы

k45a2dxz-GI.jpg

Используется для перехода от одного шага к другому. Логические условия, связанные с данным переходом определяют условия, необходимые для начальной установки (обнуление) данного перехода. Максимальное число переходов 1024. Это не может быть задано. Максимальное число переходов, которые могут быть установлены одновременно, может быть сконфигурировано.

Разветвление по И

uUX0zKost3E.jpg

Переход от данного шага к нескольким. Допускается активация максимально 11 шагов одновременно.

Объединение по И

1X6XCWT9zYM.jpg

Переход от нескольких шагов к одному шагу. Допускается деактивация максимально 11 шагов одновременно.

Разветвление по ИЛИ

k8KvoA5CM2Q.jpg

.
Переход от одного шага к нескольким шагам. Используется для выполнения выбирающей последовательности максимально к 11 шагам.

Объединение по ИЛИ

rwNYpFxiVJE.jpg

.
Переход от нескольких шагов к одному. Используется для окончания выбирающей последовательности максимально от 11 шагов.

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

OROZRP4XxFA.jpg

Биты для обозначения шагов %Xi, макро-шагов %XMi, и шагов макро-шагов %Xj.i, %Xj.IN и %Xj.OUT

• Они находятся в состоянии 1, когда шаги активны.

• Эти биты могут быть проверены всеми задачами, однако запись в них может быть выполнена только головной задачей (головной диаграммой) на фазе предобработки. Проверка и программирование этих битов выполняется на Языке Лестничной Логики, Языке Списка Инструкций или Языке Структурированного Текста.

• Эти биты не могут быть индексированы.

Слова активного времени для шагов %Xi.T и шаги макро-шагов %Xj.T, %Xj.IN и %Xj.OUT

• Они инкрементируются каждые 100 мсек. и имеют значения от 0 до 9999.

• Слово инкрементируется в течение активности соответствующего шага.

• При деактивации шага, содержимое слов замораживается.

• При активации шага, содержимое перезаписывается, а затем инкрементируется.

• Количество слов активного времени не может быть конфигурировано, одно слово резервируется для каждого шага.

• Эти слова не могут быть индексированы.

Описание диаграмм языка Grafcet
Начало и конец выбора последовательности

0ptH7cBT2FA.jpg

• Количество переходов в верхней части конца выбора последовательности (объединение по ИЛИ) или нижней части начала выбора последовательности (разделение по ИЛИ) не должно превышать 11.

• Выбор последовательности может быть ориентирован слева направо.

• Выбор последовательности, в общем, может включать окончание выбора последовательности.

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

Одновременная активация и одновременная деактивация шага

gKYCicq1hvo.jpg

• Количество шагов в нижней части одновременной активации (объединение по И) или в верхней части одновременной деактивации (разделение по И) не должно превышать 11.

• Одновременная активация в общем случае может включать одновременную деактивацию шагов.

• Одновременная активация всегда представлена слева направо.

• Одновременная деактивация всегда представлена справа налево.

Использование соединителей

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

NC60BuRdDLE.jpg

• На диаграмме с использованием соединителей могут быть обозначены циклические возвраты (например, возврат с шага 18 к шагу 0).

• Последовательность может быть возобновлена и использованием соединителей (например, с шага 10 к шагу 1 или с шага 8 к шагу 2).

• Соединители используются также в случаях, когда ветвь является более длинной, чем размер страницы (например, с шага 9 к шагу 10).

Макро-шаги
Макро-шаг является обозначением в виде одного символа последовательности шагов и переходов. Он характеризуется входным и выходным шагом.

Принципы

Макро-шаг является графическим представлением последовательности. Его отличительным знаком являются две горизонтальные черты на графическом элементе.

Qv1VRNbgLCA.jpg

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

Когда макро-шаг активирован, выполнение Grafcet-диаграммы подчиняется всем ранее описанным правилам.

ohFNeC139Dc.jpg

Макро-шаг М1 активирован, когда шаг 1 активирован и его условия перехода в нижней части являются истинными.

Он деактивируется, когда его выходной шаг активирован, и условие перехода М1>2 является истинным.

Далее активируется шаг 2.

Действия, связанные с шагами
Каждый шаг связан с действиями, которые могут быть запрограммированы на Языке Лестничной Логики, на Языке Списка Инструкций и на Языке Структурированного Текста. Эти действия сканируются только в том случае, если шаг, с которым они связаны, является активным. В системе PL7 предусмотрено три типа действий:

действия по активации: действия, выполняемые однократно после активации шага, с которым они связаны.

действия по деактивации: действия, выполняемые однократно после деактивации шага, с которым они связаны.

непрерывные действия: действия, выполняемые в течение времени активности шага, с которым они связаны.

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

Действия по активации или деактивации

Эти действия повторяются и выполняются при однократном сканировании. Они применяются при вызове подпрограмм, инкрементировании счетчика и т.д.

Примеры:

• Вызов подпрограмм:

wVxkSsU1P10.jpg

• Инкремент слова %MW10, и обновление %MW0 и %MW25:

Lq7oth9pCrQ.jpg

Непрерывные действия

• Условные действия

Пример:

Бит %M10 управляется по входу %I2.5 или внутреннему биту %M9 по схеме И с входом %I1.2. Пока шаг 2 активен и эти условия существуют, %M10 установлен в 1. Последнее состояние считывается на фазе деактивации и запоминается в памяти, поскольку связанное с ним действие больше не сканируется.

В связи с этим необходимо сбросить бит %M10 в 0, в действии, например, по деактивации шага.

f2KUg6eu2T0.jpg

• Условное действие зависящее от времени

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

Пример:

Управление битом %M12 продолжается до тех пор, пока активное время шага 3 меньше, чем 10 секунд (временная база: 100мсек.).

4RL1e3KO49o.jpg

• Эти действия могут быть и безусловными.

Порядок выполнения действий

В ниже приведенном примере, на одном сканировании, порядок выполнения действий следующий:

Когда шаг 51 активирован, действия выполняются в следующем порядке:

действие по деактивации шага50,
2. действие по активации шага 51,

3. непрерывное действие шага 51.

rK41IqkCm7I.jpg

Когда шаг 51 деактивирован, соответствующее непрерывное действие более не сканируется.

Условия, связанные с переходами
• Каждый переход имеет связанные с ним условия, которые могут программироваться на Языке Лестничной Логике, Языке Списка Инструкций и на Языке Структурированного Текста.

• Условия перехода сканируются только тогда, когда переход, с которым они связаны, разрешен.

• Условия перехода соответствуют ступеням, списку инструкций или выражению структурированного текста, составляющих последовательность проверок бит или/и слов.

• Если условия перехода не запрограммированы, то всегда предполагается, что условия перехода ложны (false).

Правила программирования на Языке Лестничной Логики

Условия, связанные с переходом, программируются в форме ступени, содержащей зону проверки и зону действия.

Структура ступени аналогична той, которая используется в программном модуле.

Допускается использование только следующих элементов:

• графические элементы проверки: контакты (%Mi, %I, %Q, %Tmi.D, и т. д.), блоки сравнения,

• графические элементы действия: только катушки условий перехода (другие катушки в этом случае не допустимы).

5Su6D2G_aIc.jpg

Правила программирования на Языке Списка Инструкций

Условия перехода программируются в форме списка инструкций, содержащего только проверочные инструкции.

Список инструкций для записи условий перехода отличается от стандартного списка инструкций в следующем:

• по общей структуре:

- отсутствуют метки (%L).

• по списку инструкций:

- отсутствуют инструкции действия (битовые объекты, слова, функциональные блоки),

- отсутствуют переходы и вызовы подпрограмм.

X_mO0KX4lJs.jpg

Правила программирования на Языке Структурированного Текста

Условия перехода программируются в форме булевских выражений или арифметических выражений или в их комбинациях.

Выражения для записи условий перехода отличаются от строк Языка Структурированного Текста в следующем:

• по общей структуре:

- отсутствуют метки (%L),

- отсутствуют выражения действия, условные выражения, итеративные выражения.

• по списку инструкций:

- отсутствуют действия над битовыми объектами,

- нет переходов и вызовов подпрограмм,

- нет переходов и инструкций действия в блоках.

08pu9k6ay5k.jpg

Условия перехода, использующие время активности шага

В некоторых применениях, действия управляются неконтролируемыми по обратной связи данными (конец перемещения, датчик и т.д.).

Продолжительность шага в этом случае зависит от времени: языки системы PL7 разрешают использование на каждом шаге, связанного с ним активного времени.

Пример:

Если пользователь хочет оставаться на шаге на 3 в течение 15 секунд, то условие для перехода между 3 и 4 шагом будет иметь вид (для примера – на Языке Структурированного Текста):

4Pzq_US9Ugs.jpg

Источник: РД Schneider Electric

Сообщения: 463