ISaGRAF. Version 3.4

         

Компоненты проекта


Компоненты проекта называются программами. Программа - это логический объект, который описывает часть выполнения управления. Глобальные переменные ( такие как переменные ввода-вывода ), могут использоваться в любой программе приложения. Локальные переменные могут использоваться только в одной программе. Программы перечислены в иерархическом дереве, разделённом на логические разделы.

Окно показывает программы и связи между ними. Программы “Верхнего уровня” появляются слева в иерархическом дереве.

        Программы верхнего уровня

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

·  ( Чтение ввода )

·  Выполнение программ верхнего уровня раздела BEGIN

·  Выполнение программ верхнего уровня раздела SEQUENTIAL

·  Выполнение программ верхнего уровня раздела END

·  ( Обновление вывода )

Программы разделов «Begin» и «End» описывают циклические операции. Они не зависят от времени. Программы раздела «Sequential» описывают последовательные операции. При этом временные переменные явно фигурируют для разделения основных операций. Главные программы раздела «Begin» систематически выполняются в начале каждого рабочего цикла. Главные программы раздела «Sequential» в соответствии с главными правилами языка SFC и должны быть написаны на SFC. Программы циклического раздела не могут быть написаны на SFC. Любая программа в любом разделе может иметь одну или более подпрограмм.

        Функции и функциональные блоки

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


не могут быть написаны на SFC.

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

        Подпрограммы


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

        Дочерние SFC и FC программы


Дочерняя SFC-программа - это параллельная программа, которая может быть запущена или закрыта своей родительской программой. Родительская и дочерня программа должны быть написаны на SFC.

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

Любая FC

программа секции sequential может управлять другими FC подпрограммами. Родительская FC программа блокируется (ждет) пока исполняется дочерняя FC подпрограмма. Не могут исполняться одновременно операции в родительской FC программе и в одной из ее дочерних FC подпрограмм.

       
Связь между программами и подпрограммами:

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

        Языки программирования


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


Доступные графические языки : SFC (последовательные функциональные диаграммы), FBD (диаграммы функциональных блоков) и LD

(релейные диаграммы). Доступные текстовые языки : ST (структурированный текст), IL (список инструкций). Язык SFC зарезервирован для главных и дочерних программ последовательного раздела. Язык каждой программы показан в виде иконы возле имени программы в окне Менеджера Программ. Ниже приведены иконы, используемые для представления языков :

 SFC............. Sequential Function Chart

........................... (Последовательные Функциональные Схемы)

 FC............... Flow Chart (Потоковые Диаграммы)

 FBD............. Functional Block Diagram

........................... (Функциональные Блочные Диаграммы)

 LD............... Ladder Diagram (вводятся с помощью редактора Quick LD)

........................... (Релейные Схемы)

 ST............... Structured Text (Структурный Текст)

 IL................. Instruction List (Список Инструкций)


Содержание раздела