Отчеты к лабораторным работам [Ишимбай] / work1
.docЗадание к лабораторным работам.
Создать на языках, представленных в пакете Concept V2.5 XL, программы, которые реализуют систему управления перемещением горизонтального крана.
Решение задачи должно предусматривать ряд условий:
1) Двигаясь в одном направлении, кран не воспринимает команду изменения направления перемещения. Чтобы изменить направление перемещения, кран необходимо остановить.
2) Одновременная подача единичных изменений на выходы не допускается.
3) Время перемещения в каждом направлении нужно контролировать. Перемещение влево должно прекращаться через 5 с, а перемещение вправо – через 10 с.
4) Направление перемещения изменяется автоматически по истечении указанного времени.
Лабораторная работа №1 «Создание программы на языке FBD»
-
Цель работы:
создание программы в среде Concept V2.5 XL на языке FBD.
-
Ход выполнения работы
1) Запустили Concept. Создали новый проект File → New project. Выполнили конфигурирование контроллера: из PLC Family выбрали Momentum, а из CPU/Executive – 171 CCC 960 30-IEC. Закрыли окно PLC Configuration. Создали новую секцию File → New section…, выбрали язык FBD и ввели имя секции.
2) После появления в редакторе FBD на фоне плоскости окна некоторой логической сетки, начали вставлять FFB в секцию, выбрав команду меню Objects → FFB selection... Диалоговое окно FFBs from Library открыто. С помощью командной кнопки Library... в этом диалоговом окне осуществили выбор библиотеки, из которой выбирали FFB.
Рисунок 1 – Общий вид логической сетки со вставленными в секции FFB
Описание блока RS из группы Bistable библиотеки IEC. Блок RS работает по принципу RS-триггера.
Общий вид блока представлен на рисунке 2.
Рисунок 2 – Общий вид блока RS
Описание параметров блока:
Параметр Тип данных Назначение
S BOOL Установка
R1 BOOL Доминирующий сброс
Q1 BOOL Выход
Описание блока TON. Таймер. Общий вид блока приведен на рисунке 3.
Рисунок 3 – Общий вид блока TON
Описание параметров блока
Параметр Тип данных Назначение
IN BOOL Начало задержки
PT TIME Установка времени задержки
Q BOOL Выход
ET TIME Внутреннее время
3) Базируясь на логике программы, входам/выходам FFB с помощью редактора переменных назначили:
Переменные для трех дискретных входов системы управления («кнопок без памяти»):
ON_LE – начать перемещение влево;
ON_RI – начать перемещение вправо;
STOP – остановить движение;
и для двух целочисленных выходов системы управления:
ET_LE – вывод на дисплей времени движения налево ;
ET_RI. – вывод на дисплей времени движения направо;
и целочисленные константы для двух входов исполнительных механизмов («время задержки»);
а также переменные для четырех выходов для исполнительных механизмов:
TIME_LE – изменение направления налево;
TIME_RI – изменение направления направо;
MOT_LE – перемещение крана влево;
MOT_RI – перемещение крана вправо.
Нелокализованная переменная, назначаемая входу/выходу, использовалась нами как маркер, то есть для создания контуров или для передачи значений между различными секциями. С помощью локализованной переменной, связанной с конкретным адресом, входу/выходу мы назначали сигнал ввода/вывода аппаратного обеспечения.
Для просмотра списка всех объявленных переменных или входов/выходов и выбора из этого списка, использовали командную кнопку Lookup. Вызывали также диалоговое окно Variable Editor для объявления нелокализованных переменных, констант, входных или выходных параметров.
4) Сохранили FBD-секцию с помощью команды меню File → Save project.
Реализация программы представлена на следующих рисунках:
При подаче на вход on_le:
При подаче на вход on_ri:
3. Вывод
Посредством языка FBD создали программу в среде Concept V2.5 XL, реализация которой адекватно представляет перемещения горизонтального крана, направление которых изменяется автоматически по истечении указанного времени.
Ответы на контрольные вопросы
-
Охарактеризуйте язык функциональных блок-схем FBD.
Язык FBD (Function Block Diagram) – графический язык программирования высокого уровня, обеспечивающий управление потоками данных всех типов. Позволяет использовать очень мощные алгоритмы простым вызовом функций и функциональных блоков. Удовлетворяет непрерывным динамическим процессам. Замечателен для небольших приложений. Хорош для сложных вещей подобно ПИД регуляторам, массивам и т. д. Имеет большую библиотеку блоков. FBD заимствует символику булевой алгебры и, так как булевы символы имеют входы и выходы, которые могут быть соединены между собой, FBD является более эффективным для представления структурной информации, чем язык релейно-контактных схем.
-
Что такое EFB, DFB, UDEFB?
EFB (Elementary Function Block) – элементарные функции и элементарные функциональные блоки; они находятся в библиотеках. Логика обработки в EFB (программа) написана на языке С и не может быть изменена в редакторе FBD. Изменять можно только параметры блоков;
DFB (Derived Function Block) – функции и функциональные блоки пользователя; они конструируются пользователем из EFB;
UDEFB (User Defined Elementary Function Block) – разработанные пользователем на языке С; они оформляются как объекты библиотек.
-
Каково назначение входов EN и выходов ENO функциональных блоков?
Все FFB могут быть вызваны с дополнительными (необязательными) формальными параметрами: EN (входом) и ENO (выходом).
Если FFB вызывается с параметрами EN/ENO и при этом значение EN равно нулю, то алгоритмы, определяемые FFB, не будут выполняться. В этом случае значение ENO автоматически устанавливается равным 0. Если же значение EN равно 1, то алгоритмы, определяемые FFB, будут выполнены. После выполнения этих алгоритмов без ошибок значение ENO автоматически устанавливается равным 1. Если же возникает ошибка во время выполнения этих алгоритмов, то значение ENO будет установлено равным 0.
Поведение FFB одинаково как в случае вызова FFB с EN = 1, так и при вызове без параметров EN/ENO.
-
Какую структуру имени, присваиваемого автоматически, имеет FFB?
Имя экземпляра является уникальным идентификатором для функционального блока в проекте. Имя экземпляра создается автоматически и имеет следующую структуру: FBI_n
FBI = Экземпляр Функционального Блока
n = порядковый номер функционального блока в проекте
-
Для чего служат связи?
Связи являются соединениями между FFB.
-
Какое значение назначается по умолчанию несвязанным входам FFB?
Несвязанным входам FFB назначается по умолчанию значение ”0”.