Язык функциональных блоковых диаграмм (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, кроме тех глобальных переменных, значение которых при инициализации явно объявлены иначе. Кнопка вызова арифметических функций на панели инструментов вызывает следующее меню:
|