Язык функциональных блоковых диаграмм (FBD)

Создание новой программы

Создание списка глобальных переменных

Создание нового проекта

Этапы разработки

Разработка прикладного программного обеспечения для промышленных контроллеров в системе UltraLogic выполняется следующим образом:

- создание нового проекта;

- заполнение таблиц глобальных переменных;

- разработка программ;

- конфигурирование контроллера;

- компиляция;

- загрузка и отладка программы.

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

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

Разработка программ производится в разделе Программы менеджера проекта. Для выбора раздела щелкните левой кнопкой мыши на названии раздела Программы.

Для создания списка программ проекта щелкните правой кнопкой мыши в окне проекта на листе с закладкой Список. Появится всплывающее меню:

Новая Программасоздает лист для новой программы;
Редактированиередактирование программы;
Заголовокредактирование заголовка программы;

Переместить вверхпередвинуть программу в списке на позицию вверх;

Переместить внизпередвинуть программу в списке на позицию вниз;

Удалитьудалить программу.

Щелкните левой мышью на строке меню Новая программа. Откроется окно Создание новой программы. Заполните необходимые поля. После этого в разделе проекта Программыпоявится новый лист с закладкой название, а на листе с закладкой Список - название и комментарий, только что введенной программы.

При открывании окна с редактируемой программой автоматически вызывается редактор языка FBD.

Программа на языке FBD может содержать следующие базовые типы объектов:

- функциональные блоки и связи;

- переходы и метки;

- комментарии.

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

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

Имеются следующие формальные правила языка FBD:

- функциональные блоки могут располагаться произвольно в поле программы;

- не может быть свободных (несоединенных) входов и выходов функционального блока;

- любая связь имеет имя и тип;

- входы и выходы функциональных блоков, присоединенные к связям, имеющим одинаковые имена, считаются соединенными;

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

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

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

На входе FBD блока может быть

- константное выражение;

- внутренняяиливходная переменная;

- выходная переменная.

На выходе FBDблока может быть любая внутренняя или выходная переменная.

Метки и переходы можно использовать для управления процессом выполнения программы. Для завершения программы существует оператор RETURN.

Комментарии - это произвольный текст в поле программы. В одной строке комментария может содержаться до 255 символов.

Для написания программы используется панель инструментов редактора FBD. Кнопка вызова панели инструментов Tools находится в окне главного меню системы. Далее показан вид этой панели:

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

Базовые функции языка FBD разделены на следующие группы:

- логические функции;

- функции сравнения;

- арифметические функции;

- функции управления программой и таймерами.

Логические функции в качестве операндов используют переменные типа Boolean. Любой вход и выход логических функций может быть проинвертирован. После инициализации программы, переменные на входах и выходах всех функциональных блоков логических функций принимают значение FALSE, кроме тех глобальных переменных, значения которых при инициализации явно объявлены как TRUE. Кнопка вызова логических функций на панели инструментов вызывает следующее меню:

Все функции сравнения в качестве операндов могут использовать переменные типа INTEGER, FLOAT, TIMER. Входные переменные каждой отдельной функции должны иметь одинаковый тип. На выходах всех функциональных блоков сравнения по результату операции формируются переменные типа BOOLEAN. После инициализации программы эти переменные принимают значение FALSE, кроме тех глобальных переменных, значение которых при инициализации явно объявлены как TRUE. Кнопка вызова функций сравнения на панели инструментов вызывает следующее меню:

Все арифметические функции в качестве операндов могут использовать переменные типа INTEGER, FLOAT, TIMER. Входные переменные каждой отдельной функции должны иметь одинаковый тип. После инициализации программы, переменные на выходах всех арифметических функциональных блоков принимают значение 0, кроме тех глобальных переменных, значение которых при инициализации явно объявлены иначе. Кнопка вызова арифметических функций на панели инструментов вызывает следующее меню: