 Использование редактора SFC

Язык SFC используется для описания операций последовательного процесса. Он использует простое графическое представление для различных шагов процесса и условий, позволяющих изменить активный шаг. Вход в программу SFC осуществляется при помощи графического редактора SFC. SFC - это ядро стандарта IEC 1131-3. Остальные языки обычно описывают действия внутри шагов и логические условия для совершения переходов. Графический редактор SFC позволяет пользователю создавать завершённые программы на SFC. Он совмещает возможности редактирования как текста, так и графики. Таким образом, возможен ввод диаграмм SFC, соответствующих им действий и условий.

Основные разделы языка SFC

Создание диаграмм SFC

Работа с существующей диаграммой SFC

Ввод программ 2-уровня

Вставка имени переменной

Вставка блока импульсных действий в шаг

Вставка блока Несохранённых действий в шаг

Новые P0 и P1 определители действий

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

Действия SFC

Переходы, написанные на ST

Переходы, написанные на Quick Ladder

Команды меню "Инструменты"

Использование галлереи SFC

Вызов других инструментов ISaGRAF

Остальные команды меню Файл

Обновление дневника программы

Выбор переменной из словаря


Использование редактора SFC
Основные раздела языка SFC

Язык SFC используется для представления последовательного процесса. Он разделяет цикл процесса на несколько строго определённых последовательных шагов ( автономных ситуаций ), разделённых переходами. Обратитесь к Руководству по Языкам ISaGRAF за более подробной информацией о языке SFC.

Схождения и расхождения

Прыжок на шаг

Макрошаг

Компоненты SFC объединены ориентированными линиями. По умолчанию, ориентация линии - сверху вниз. Вот основные графические компоненты, используемые для построения диаграмм SFC :

Начальный шаг

Шаг

Переход

Прыжок на шаг

Макрошаг

Начальный макрошаг

Конечный макрошаг

Программирование на SFC обычно разделяется на два различных уровня. 1-Уровень показывает графические диаграммы, номера ссылок на шаги и переходы и комментарии, присоединённые к ним. 2-Уровень - это программирование действий внутри шага или условий, присоединённых к переходу, на ST или IL. Подпрограммы, написанные на других языках (FDB, ST, LD или IL) могут обращаться к этим действиям или переходам. Ниже приведён пример 1-Уровня и 2-Уровня программирования :

Программа шага на 2 уровне создаётся при помощи текстового редактора. Программа может содержать блоки, написанные на ST или IL. Программа переходов 2 уровня может быть создана на языках ST или IL, или при помощи редактора Quick LD.


Схождение и расхождение

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

Двойное Схождение представляет параллельные процессы.


Прыжок к шагу

Редактор SFC позволяет пользователю рисовать связи только в направлении сверху вниз. Прыжок к шагу может быть использован для представления связи с верхней частью диаграммы. Следующие диаграммы эквивалентны :

Прыжок к переходу запрещён и должен представляться двойным (И) Расхождением.


Макро шаги

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

Детальное представление шага макроса должно быть описано в той же SFC - программе. Символ шага макроса должен иметь тот же номер ссылки, что и начальный шаг макроса. Описание макро шага может содержать другой макро шаг.


Создание диаграмм SFC

Для того, чтобы изобразить диаграмму SFC, пользователю просто нужно ввести основные  компоненты диаграммы. Все одиночные линии, соединяющие два элемента ( горизонтальные или вертикальные ) рисуются редактором SFC автоматически. Для вставки символа выберите в редакторе панель инструментов и щёлкните мышью в области диаграммы, в которую нужно произвести вставку. Символы вводятся в текущей позиции. Могут использоваться следующие горячие клавиши:

Ввести начальный шаг

Ввести одиночный шаг

Ввести переход

Ввести прыжок на шаг

 	Ввести OR схождение или расхождение / Добавить ветвь

 	Ввести AND схождение или расхождение / Добавить ветвь

Вставить макрошаг

 	Ввести начальный или конечный шаг для тела макрошага

(Символ " [image] " определяет комбинацию с клавишей SHIFT)

Сетка редактирования показывает центр каждой ячейки редактируемой матрицы. Опции редактора позволяют изображать и убирать сетку во время ввода диаграммы. Сетка очень полезна для изначального расположения диаграммы SFC или выбора её части. Используйте команду Опции / Настройки для того, чтобы изобразить или убрать сетку.

Редактор SFC ISaGRAF всегда показывает текущую позицию в матрице. Текущая ячейка отмечена серым. Маленький квадрат в нижнем правом углу может быть использован для свободного изменения размеров ячеек. Отношение X/Y может быть, также изменено.


 	Создание Схождения или Расхождения

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


   	Добавление ветви Схождения

Позиции start и stop каждой дополнительной ветви размещаются на линии Схождения или Расхождении при помощи кнопок панели. Левый угол Схождения или Расхождения должен быть выбран перед вставкой новой ветви. Правый угол имеет тот же стиль ( одиночный или двойной ), что и главный левый угол. Правый угол не может быть вставлен, если не добавлен левый.


Вставка макро шага

Эта кнопка используется для вставки макро шага в главную диаграмму. Тело макро шага должно быть описано где-либо в этой же SFC программе.


 	Тело макрошага

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


Работа с существующей диаграммой SFC

Для выбора прямоугольной области в схеме Вы можете использовать либо мышку, либо стрелки клавиатуры. Выбранная область помечается серым цветом. Тогда используются команды меню "Редактор":

  	Крманды вырезать  / копировать / удалить / вставить

Двигать элементы

Перенумеровать шаги и переходы

Прямой доступ к шагу или переходу

Найти и заменить текст


 	Команды Вырезать / Копировать / Удалить

Следующие команды доступны в меню Редактор  при выборе кнопки стрелка в панели редактирования  :

Вырезать	переместить выделенный прямоугольник с экрана в буфер SFC

Копировать	скопировать выделенный прямоугольник с экрана в буфер SFC

Удалить	Очистить (удалить) выделенный прямоугольник

Вставить	Вставить содержимое буфера SFC в текущей позиции

Редактор / Копировать копирует буфер SFC на экран. Команда Копировать / Вставить как с диаграммами SFC, так и с шагами/переходами программ 2-уровня. Кроме того, можно скопировать диаграмму в программе и вставить её в другую SFC программу. Элементы вставляются перед текущей позицией.


Сдвиг элементов

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

Область назначения должна быть свободна. Во время сдвига SFC символов ввод невозможен.


Перенумерация шагов и переходов

Каждый шаг или переход идентифицируется логическим номером в SFC диаграмме. Команда Редактор/Перенумеровать позволяет пользователю автоматически установить последовательно нумерацию ссылок для любого шага или перехода в текущей SFC программе. Когда номер шага изменяется, номера всех переходов к этому шагу автоматически обновляются (тоже самое применимо к макро шагам и начальным шагам ).


Прямой доступ к шагам или переходам

Команда "Редактор / Перейти " позволяет пользователю попадать на существующий шаг или переход. Позиция скроллирования автоматически адаптируется так, чтобы шаг или переход были видны.


Найти и заменить текст

Команда Редактор/Заменить может быть использована для нахождения или замены текстовых строк в законченной программе (все шаги и переходы). Диалоговое окно Заменить используется для ввода искомого текста и открывает уровень 2, в котором находится текст.


Ввод программ 2-уровня

Для ввода программы 2-уровня пользователю нужно дважды щелкнуть мышью на прямоугольнике шага или перехода. Программа 2 уровня появляется справа в окне SFC. Линию раздела между схемой SFC и программой уровня 2 можно свободно перемещать.

Вы можете открыть одновременно 2 области уровня 2. Можно использовать следующие команды клавиатуры, мышки или меню "Редактор":

Клавиатура	Мышь	Меню "Редактор"

Открыть в последнем окне	Enter	Double Click	Редактировать

уровень 2

Открыть в отдельном окне	Ctrl+Enter	Ctrl + DoubleClick	Редактировать

уровень 2

в отдельном

окне

Когда видны два окна уровня 2, разделение между ними может свободно перемещаться. Кнопка вправо уровня 2 используется для закрытия окна уровня 2.

По умолчанию для написания программ 2-уровня используется язык ST. Для переходов 2-уровня может быть использован редактор Quick LD. Откроется независимое окно для ввода программы.  Используйте кнопку "ST/LD" в полосе заголовка уровня 2 для смены активного языка. Эта команда действительна только тогда, когда окно программирования уровня 2 - пусто.

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

Команда "Опции / Обновить" может быть использована, когда открыты окна уровня 2, для перерисовки схемы SFC с модифицированными программами уровня 2.

Вставка имени переменной

Вставка блока импульсных действий в шаг

Вставка блока не сохранённых действий в шаг

 	Новые P0 и P1 определители действий

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

Действия SFC

Переходы, написанные на ST

Переходы, написанные на Quick Ladder


Вставка имени переменной

При программировании на каком-либо языке нажмите эту кнопку для выбора переменной, объявленной в словаре проекта, и вставки ее имени на текущую позицию курсора. При использовании Quick LD нажмите эту кнопку для выбора переменной, которую следует присоединить к выделенному контакту или блоку параметров ввода/вывода.


Вставка блока импульсных действий в шаг

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

Action (P) :

ST statement;

...

End_Action;

Импульсное действие - это инструкции, которые исполняются только один раз, когда шаг становится активным. Обратитесь к руководству по языкам ISaGRAF за более подробным описанием программирования на языке SFC.


Вставка блока Не сохранённых действий в шаг

При программировании шага 2-уровня используйте эту кнопку для вставки шаблона блока не сохранённых действий на текущую позицию курсора. Ниже приведен формат блока:

Action (N) :

ST statement;

...

End_Action;

Не сохранённые действия  - это инструкции, которые выполняются в каждом цикле PLC при активизации шага. Обратитесь к руководству по языкам ISaGRAF за более подробным описанием программирования на языке SFC.


 	Новые P0 и P1 определители действий

ISaGRAF поддерживает новые определители действий P0 и P1. При программировании 2-уровеня шага пользуйтесь этими кнопками для вставки шаблонов блока действий P0 или P1 на текущую позицию курсора. Ниже приведен формат такого блока:

Action (P0) :	Action (P1) :

ST statement;	ST statement;

...	...

End_Action;	End_Action;

Действия P1 - это инструкции, которые выполняются только один раз при активации шага (также, как и для Импульсного). Действия P0 - это инструкции, которые выполняются только один раз при деактивации шага. Обратитесь к руководству по языкам ISaGRAF за более подробным описанием программирования на языке SFC.


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

Другая текстовая семантика применима непосредственно к действиям над булевыми переменными в соответствии с активностью шага. Эти действия состоят из присоединенных к внутренним булевым переменным или булевым переменным вывода сигналов активности шага. Вот синтаксис основных булевых действий:

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

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

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

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

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

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


Действия SFC

Другая текстовая семантика доступна для управления выполнением дочерней SFC программы. Действие SFC - это дочерняя SFC последовательность, начатая или завершенная в соответствии с условиями сигнала активности шага. Действия SFC могут иметь следующие определители: N (Не сохраненное), S (установить) или R (сбросить). Вот синтаксис основных действий SFC:

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

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

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

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

SFC последовательность, объявленная как действие должна быть существующей дочерней программой SFC для редактируемой программы, созданной Менеджером Программ ISaGRAF.


Переходы, написанные на ST

Переход 2-уровня - это булево выражение. Для того, чтобы задать его на языке ST. Просто введите булево выражение в соответствии с синтаксисом ST. При желании можно добавить точку с запятой в конце выражения.


Переходы, написанные на Quick Ladder

Редактор Quick LD доступен для программирования условий перехода 2-уровня. В этом случае диаграмма состоит из одной ступени с ровно одним витком, представляющим переход. Имя перехода не повторяется на символе витка. Ниже приведен пример условия перехода, написанный на Quick LD:

При программировании на Quick LD используйте стрелки клавиатуры для перемещения по логической сетке и используйте горячие клавиши для вставки символов:

F2:	вставить контакт после выделенного символа/инициировать ступень

F3:	вставить контакт перед выделенным символом

F4:	вставить контакт параллельно выделенному символу

F6:	вставить блок  после выделенного символа

F7:	вставить блок перед выделенным символом

F8:	вставить блок параллельно выделенному символу

Кроме этого вы можете щелкнуть мышью на функциональной кнопке на панели внизу окна программы 2-уровня вместо функциональных клавиш.

Нажмите [RETURN] при выделенном контакте или параметре блока ввода/вывода для выбора переменной или ввода константного значения. Нажмите [RETURN] при выделенном функциональном блоке для выбора его типа. Кроме того вы можете дважды щелкнуть мышью на символе для достижения того же эффекта.

Нажмите [SPACE] при выделенном контакте для выбора или изменения его типа (прямой, обратный или Pulse Detection). Обратитесь к разделу Использование редактора Quick LD этого документа за более подробным описанием возможностей Quick LD.


Вызов других инструментов ISaGRAF

Проверить (компилировать) программу

 	Симулировать или отлаживать приложение

Редактирование словаря переменных


Проверка ( компиляция ) программ

Команда Файл / Проверить запускает генератор кода ISaGRAF для проверки синтаксиса редактируемой программы. Если она написана на языке SFC, то проверяются как 1-уровень, так и 2-уровень. Когда проверка синтаксиса завершена, окно генерации необходимо закрыть для продолжения редактирования. Если приложение состоит только из одной программы ( редактируемой в данный момент ), то, при отсутствии ошибок, будет создан код приложения. Команда Создать / Опции компилятора используется для установки параметров компиляции и оптимизации. Обратитесь к разделу Использование Генератора Кода этого раздела за более подобной информацией о генерации кода и компиляции.


 	Симуляция или отладка приложения

Команды Файл / Симулировать и Файл / Отладка запускают графический отладчик ISaGRAF как для режима Симуляции, так и для реального соединения. Они переоткрывают программу на SFC в режиме отладки. В режиме отладки в программе нельзя произвести никаких изменений.


Редактирование словаря переменных

Команда Файл / Словарь используется для редактирования словаря переменных текущей программы или текущего приложения. Таким же способом можно редактировать макросы. Описатель локальный и макросы относятся к текущей программе.


Остальные команды меню Файл

Следующие команды доступны из меню Файл любого программного редактора.

Открыть другую программу

Печать программы


Открытие другой программы

Команда Файл / Открыть позволяет закрыть редактируемую программу и начать редактирование  другой программы того же проекта на том же языке. Новая программа заменяет текущую в окне редактирования.


Печать программ

Команда Файл / Печать выводит редактируемую программу на принтер. Эта команда создаёт эскиз листинга программы. Более подробная информация по этому вопросу получается при использовании генератора документов проекта.

Для графических программ ( SFC, FBD и Quick LD ) Вы можете воспользоваться командой Редактор / Копировать рисунок (метафайл) для копирования в буфер изображения диаграммы в формате метафайла. Оно может быть вставлено в другое приложение как в текстовом процессоре. Для программ SFC только 1-уровень информация ( диаграммы, нумерация и комментарии 1-уровня )может быть помещена в метафайл.


Обновление дневника программы

Файл дневника, присоединённый к редактируемой программе, может быть введён вручную при помощи команды Файл / Дневник. Файл дневника обновляется автоматически при компиляции. Вывод компилятора снабжается временной отметкой / отметкой даты.

Если в меню Опции выбран режим Обновить дневник, то при каждом сохранении программы на диск появляется окно диалога

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


Выбор переменной из словаря

При редактировании текстовой программы ( IL или ST ) Редактор / Вставить переменную позволяет выбрать объявленную ранее переменную для вставки на текущую позицию курсора. При редактировании программ FBD или LD требуется для описания контактов, витков, параметров блоков ввода/вывода или переменных FBD. В обоих случаях появляется окно диалога .

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

Boolean

Integer / Real

Timer

Message

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


Команды меню Инструменты"

Следующие команды имеются в меню Инструменты всех языковых редакторов. Они используются для вывода информации в маленькие текстовые списки внизу окна редактирования, и используют ее для просмотра программы.

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

"Найти в диаграмме"	находит вхождения текста в редактируемой программе, и представляет их в окне вывода. Для языков SFC and FC, эта команда ищет по всем программам уровня 2.

"Скрыть список вывода "	закрывает окно вывода

Если сообщение об ошибке или вхождении появляются в окне вывода, то двойной щелчок в строке передвигает выделение на соответствующую позицию. Для языков SFC и FC, эта команда открывает соответствующее уровню 2 программное окно.


Использование галереи SFC

Редактор ISaGRAF SFC управляет галереей SFC: это набор структур SFC, которые могут быть введены в любую схему SFC. Элементы галереи SFC могут дополнительно включать программы шагов и переходов уровня  2. Используйте следующие команды меню "Инструменты":

Копировать в галерею SFC 	копировать выделенные элементы в галерею SFC

Вставить из галереи SFC	вклеить элемент галереи SFC в текущую позицию

При копировании в галерею SFC (т.e. при создании нового элемента галереи SFC), вы можете дополнительно потребовать встроить программу уровня 2 выбранных символов SFC.