Охарактеризуйте язык функциональных блок-схем FBD.
Филиал «МГУТУ» в г. Мелеузе
Отчет по лабораторным
Работам
«Интегрированные системы проектирования и управления»
Выполнили студенты:
Лабораторная работа №1
«Создание программы на языке FBD»
Создадим программу на языке FBD согласно условиям задачи:
1. Время перемещения в каждом направлении нужно контролировать. Перемещение влево должно прекращаться через 5 с, а перемещение вправо – через 10 с.
2. Направление перемещения изменяется автоматически по истечении указанного времени.
Запустим Concept. Создадим новый проект File → New project. Выполним конфигурирование контроллера. Создадим новую секцию File → New section…, выберем язык FBD и введм имя секции, которое должно быть уникальным для всего проекта и должно удовлетворять соглашениям стандарта IЕС 61131-3 по имени, в противном случае появится сообщение об ошибках. В результате описанных выше действий появится поле для размещения блоков из 23 строк и 30 столбцов.
В редакторе FBD на фоне плоскости окна видна некоторая логическая сетка. В процессе конфигурирования каждый FFB размещается в ячейках этой сетки. Если FFB помещаются вне ячейки сетки или в случае перекрытия их с другими FFB, то появляется сообщение об ошибке и FFB не будет размещен в этой ячейке. Внешние параметры, задаваемые в явном виде на входах/выходах FFB, могут пересекаться другим объектом, но не должны нарушать границы ячеек сетки.
Если линия связи, обеспечивающая соединение с другим FFB, зафиксирована, то это соединение будет контролироваться редактором FBD. Если же подобное соединение запрещено, то будет выдано сообщение о его запрещении и линия связи не будет сгенерирована. В процессе формирования связей между FFB допускаются перекрытия и перекрещивания с другими связями и FFB.
Базируясь на логике программы, входу/выходу FFB с помощью редактора переменных можно назначить: переменную, константу, литерал, прямой адрес. Окно, изображенное на рисунке 1, выводится по двойному щелчку левой кнопки мыши на входе FFB.
Объявим переменные и их начальные значения в редакторе переменных Project → Variable Editor...
Создадим логику программы.
Сохраним SFC-секцию с помощью команды меню File → Save project.
Для проверки правильности выполнения данной задачи воспользуемся эмулятором Simulator 32-Bit.
Контрольные вопросы
Что такое EFB, DFB, UDEFB?
EFB (Elementary Function Block) – элементарные функции и элементарные функциональные блоки; они находятся в библиотеках. Логика обработки в EFB (программа) написана на языке С и не может быть изменена в редакторе FBD. Изменять можно только параметры блоков;
DFB (Derived Function Block) – функции и функциональные блоки пользователя; они конструируются пользователем из EFB;
UDEFB (User Defined Elementary Function Block) – разработанные пользователем на языке С; они оформляются как объекты библиотек.
Для EFB, DFB и UDEFB принято общее обозначение – FFB (Functions/Function Block).
Для чего служат связи?
Разработка программы для ПЛК осуществляется с помощью графического редактора FBD посредством формирования блок-схемы из перечисленных FFB, которые объединяются друг с другом либо посредством внешних (фактических) параметров FFB (переменные, соответствующие входам и выходам FFB), т. е. таблично, либо непосредственно линиями связи – графическими связями.
Связи являются соединениями между FFB. Несколько связей могут быть соединены с FFB выходом. Пункты любого такого соединения отмечаются жирной точкой. Входы/выходы, которые будут соединены, должны иметь соответствующие типы данных. Связи могут быть отредактированы в режиме Выбора. Перекрывание с другими объектами разрешается. Связи не могут использоваться для конфигурации контуров, потому что не возможно ясно определить порядок обработки в секции. Контуры должны решаться с помощью фактических параметров.
Лабораторная работа №2
«Создание программы на языке LD»
Задание 4
Создать программу на языке ST согласно условиям задания 1.
VAR
FBI_1_10:TON;
FBI_1_15:RS;
FBI_1_9:TON;
FBI_1_3:RS;
END_VAR
FBI_1_3(S:=on_le AND NOT mot_ri OR time_ri, R1:=stop OR time_le);
mot_le:=FBI_1_3.Q1;
FBI_1_9(IN:=FBI_1_3.Q1,PT:=t#5s);
time_le:=FBI_1_9.Q;
et_le:=TIME_TO_INT(IN:=FBI_1_9.ET);
FBI_1_15(S:=on_ri AND NOT mot_le OR time_le, R1:=stop OR time_ri);
mot_ri:=FBI_1_15.Q1;
FBI_1_10(IN:=FBI_1_15.Q1,PT:=t#10s);
time_ri:=FBI_1_10.Q;
et_ri:=TIME_TO_INT(IN:=FBI_1_10.ET);
Запускаем Concept. Создаем новый проект File → New project. Выполняем конфигурирование контроллера. Для создания секции используем команду меню File → New Section... и введим имя секции.
При создании программы используем команду VAR...END_VAR для объявления функциональных блоков и блоков DFB. Объявим переменные и их начальные значения в редакторе переменных.
Для проверки правильности выполнения данной задачи воспользуемся эмулятором Simulator 32-Bit.
Контрольные вопросы
Филиал «МГУТУ» в г. Мелеузе
Отчет по лабораторным
Работам
«Интегрированные системы проектирования и управления»
Выполнили студенты:
Лабораторная работа №1
«Создание программы на языке FBD»
Создадим программу на языке FBD согласно условиям задачи:
1. Время перемещения в каждом направлении нужно контролировать. Перемещение влево должно прекращаться через 5 с, а перемещение вправо – через 10 с.
2. Направление перемещения изменяется автоматически по истечении указанного времени.
Запустим Concept. Создадим новый проект File → New project. Выполним конфигурирование контроллера. Создадим новую секцию File → New section…, выберем язык FBD и введм имя секции, которое должно быть уникальным для всего проекта и должно удовлетворять соглашениям стандарта IЕС 61131-3 по имени, в противном случае появится сообщение об ошибках. В результате описанных выше действий появится поле для размещения блоков из 23 строк и 30 столбцов.
В редакторе FBD на фоне плоскости окна видна некоторая логическая сетка. В процессе конфигурирования каждый FFB размещается в ячейках этой сетки. Если FFB помещаются вне ячейки сетки или в случае перекрытия их с другими FFB, то появляется сообщение об ошибке и FFB не будет размещен в этой ячейке. Внешние параметры, задаваемые в явном виде на входах/выходах FFB, могут пересекаться другим объектом, но не должны нарушать границы ячеек сетки.
Если линия связи, обеспечивающая соединение с другим FFB, зафиксирована, то это соединение будет контролироваться редактором FBD. Если же подобное соединение запрещено, то будет выдано сообщение о его запрещении и линия связи не будет сгенерирована. В процессе формирования связей между FFB допускаются перекрытия и перекрещивания с другими связями и FFB.
Базируясь на логике программы, входу/выходу FFB с помощью редактора переменных можно назначить: переменную, константу, литерал, прямой адрес. Окно, изображенное на рисунке 1, выводится по двойному щелчку левой кнопки мыши на входе FFB.
Объявим переменные и их начальные значения в редакторе переменных Project → Variable Editor...
Создадим логику программы.
Сохраним SFC-секцию с помощью команды меню File → Save project.
Для проверки правильности выполнения данной задачи воспользуемся эмулятором Simulator 32-Bit.
Контрольные вопросы
Охарактеризуйте язык функциональных блок-схем FBD.
FBD (Functional Block Diagram) – аналогичен функциональной схеме электронного устройства с использованием логических элементов;
Язык FBD – это полностью графический язык высокого уровня, обеспечивающий управление потоками данных, включающих все типы. Позволяет использовать очень мощные алгоритмы простым вызовом функций и функциональных блоков, имеет большую библиотеку блоков, удовлетворяет непрерывным динамическим процессам, хорош для сложных вещей подобно ПИД-регуляторам (ПИД – пропорционально-интегрально-дифференциальный регулятор, PID-регулятор), массивам и т. д.
FBD заимствует символику булевой алгебры и, так как булевы символы имеют входы и выходы, которые могут быть соединены между собой, FBD более эффективен для представления структурной информации, чем язык релейно-контактных схем. FBD удобен для небольших приложений.
Что такое EFB, DFB, UDEFB?
EFB (Elementary Function Block) – элементарные функции и элементарные функциональные блоки; они находятся в библиотеках. Логика обработки в EFB (программа) написана на языке С и не может быть изменена в редакторе FBD. Изменять можно только параметры блоков;
DFB (Derived Function Block) – функции и функциональные блоки пользователя; они конструируются пользователем из EFB;
UDEFB (User Defined Elementary Function Block) – разработанные пользователем на языке С; они оформляются как объекты библиотек.
Для EFB, DFB и UDEFB принято общее обозначение – FFB (Functions/Function Block).