Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Климашин_Курсач.docx
Скачиваний:
38
Добавлен:
29.05.2015
Размер:
729.05 Кб
Скачать

2.1.5. Описание языка программирования fbd

ISaGRAF — комплекс программного обеспечения для автоматизации процессов управления, который применяется в самых различных областях техники и использует стандарт IEC 61131. ISaGRAF позволяет ускорить разработку и внедрение проектов, уменьшить время их выхода на рынок.

Ядро ISaGRAF реализует поддержку стандартных языков программирования, типового набора функций и функциональных блоков и драйверов ввода/вывода. Задача связи обеспечивает поддержку процедуры загрузки пользовательского ISaGRAF-приложения со стороны программируемого контроллера, а также доступ к рабочим переменным этого приложения со стороны отладчика системы разработки ISaGRAF. Взаимодействие систем разработки и исполнения осуществляется по протоколу MODBUS, что дает возможность доступа к данным контроллера не только отладчику ISaGRAF, но и любой системе визуализации и управления данными (SCADA). Драйверы устройств сопряжения с объектом организуют прозрачный доступ к аппаратуре ввода/вывода. Функции пользователя реализуют процедуры и алгоритмы функций, не представленные в стандартном варианте поставки системы ISaGRAF. Системные функции предназначены для описания специфики конкретной операционной системы, реализованной на данном типе контроллеров.

В ISaGRAF заложена методология структурного программирования, позволяющая пользователю представить автоматизируемый процесс в наиболее легкой и понятной форме. Стандартом МЭК 61131-3 определяется пять языков: три графических (SFC, FBD, LD) и два текстовых (ST, IL). Помимо этих языков, ISaGRAF предлагает язык блок-схем (FlowChart). Все эти языки программирования интегрированы в единую инструментальную среду и работают с едиными объектами данных. SFC - графический язык последовательных функциональных схем (Sequential Function Chart). Язык SFC предназначен для использования на этапе проектирования ПО и позволяет описать "скелет" программы - логику ее работы на уровне последовательных шагов и условных переходов. Более подробно остановимся на языке FBD.

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

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

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

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

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

  • входной переменной и входа функционального блока;

  • выхода функционального блока и входа другого блока;

  • выхода функционального блока и выходной переменной.

Связи ориентированы, это означает, что данные передаются с левого конца к правому. Левый и правый концы связи должны быть одного типа [4].