Автоматизация измерений, контроля и испытаний. Лабораторный практикум. Учебное пособие
.pdf
большее HIGH, то выход равен FALSE. В пределах от LOW до HIGH значение выхода не изменяется.
LIMITALARM
Функциональный блок, контролирует принадлежность значения входа IN заданному диапазону. Входы LOW и HIGH задают границу диапазона. Входы IN, HIGH и LOW типа INT, выходы O, U и IL типа BOOL. Если значение на входе IN превышает предел HIGH выход O = TRUE; меньше предела LOW выход U = TRUE; лежит в пределах между LOW и HIGH (включительно) выход IL = TRUE.
Пример FBD:
Регуляторы
PD
Функциональный блок реализует ПД закон регулирования:
где Y_OFFSET – стационарное значение;
KP – коэффициент передачи;
TV – постоянная дифференцирования;
e(t) - сигнал ошибки (SET_POINT-ACTUAL).
Входы и выходы функционального блока представлены в табл. 4.
31
|
|
|
|
|
|
|
|
Таблица 4 |
||
Наименование |
Тип |
|
|
|
|
|
Описание |
|
|
|
ACTUAL |
REAL |
|
Текущее |
|
|
значение |
|
контролируемой |
||
|
|
|
переменной |
|
|
|
|
|
||
SET_POINT |
REAL |
|
Задание |
|
|
|
|
|
|
|
KP |
REAL |
|
Коэффициент |
передачи |
|
|
|
|||
TV |
REAL |
|
Постоянная дифференцирования, в секундах |
|
||||||
|
|
|
(т.е. "0.5" для 500 мс) |
|
|
|
||||
Y_MANUAL |
REAL |
|
Определяет |
|
|
значение |
выходаY, |
если |
|
|
|
|
|
MANUAL = TRUE |
|
|
|
||||
Y_OFFSET |
REAL |
|
Стационарное |
значениеY |
|
|
|
|||
Y_MIN, |
REAL |
|
Значение |
выходаY ограничено Y_MIN и |
|
|||||
Y_MAX |
|
|
Y_MAX. |
При |
достижении Y |
границ |
||||
|
|
|
ограничения, выход LIMITS_ACTVE, |
|
|
|||||
|
|
|
(BOOL) |
|
принимает |
значение TRUE. |
||||
|
|
|
Ограничение работает только приY_MIN < |
|||||||
|
|
|
Y_MAX |
|
|
|
|
|
|
|
MANUAL |
BOOL |
|
Значение TRUE, включает |
режим |
ручного |
|
||||
|
|
|
регулирования по входу Y_MANUAL |
|
|
|||||
RESET |
BOOL |
|
TRUE |
сбрасывает регулятор; в это время |
|
|||||
|
|
|
Y = Y_OFFSET |
|
|
|
|
|
||
Y |
REAL |
|
Выход |
регулятора |
|
|
|
|||
LIMITS_ACTIVE |
BOOL |
|
TRUE означает, что Y ограничивается |
|
||||||
|
|
|
пределами (Y_MIN, Y_MAX) |
|
|
|
||||
Y_OFFSET, |
Y_MIN |
и Y_MAX используются |
при |
|||||||
необходимости ограничения допустимого диапазона значений |
||||||||||
выхода. Если ограничение выхода |
не |
требуется, Y_MIN и |
||||||||
Y_MAX должны быть равны 0. P-регулятор получается из PD установкой TV в 0.
Пример FBD:
32
PID |
|
|
|
|
Функциональный |
блок |
реализует |
ПИД |
за |
регулирования: |
|
|
|
|
где Y_OFFSET – стационарное значение;
KP – коэффициент передачи;
TN – постоянная интегрирования;
TV – постоянная дифференцирования;
e(t) - сигнал ошибки (SET_POINT-ACTUAL).
Входы и выходы функционального блока представлены в табл. 5.
|
|
|
|
|
|
|
Таблица 5 |
||
Наименование |
Тип |
|
|
|
Описание |
|
|
|
|
ACTUAL |
REAL |
Текущее |
|
значение |
|
контролируемой |
|||
|
|
переменной |
|
|
|
|
|
||
SET_POINT |
REAL |
Задание |
|
|
|
|
|
|
|
KP |
REAL |
Коэффициент |
передачи |
|
|
|
|||
TV |
REAL |
Постоянная дифференцирования, в секундах |
|
||||||
|
|
(т.е. "0.5" для 500 мс) |
|
|
|
|
|||
TN |
REAL |
Постоянная интегрирования, в секундах(т.е. |
|
||||||
|
|
"0.5" для 500 мс) |
|
|
|
|
|||
Y_MANUAL |
REAL |
Определяет |
|
значение |
выходаY, |
если |
|
||
|
|
MANUAL = TRUE |
|
|
|
|
|||
Y_OFFSET |
REAL |
Стационарное |
значениеY |
|
|
|
|||
Y_MIN, |
REAL |
Значение |
выходаY ограничено Y_MIN и |
|
|||||
Y_MAX |
|
Y_MAX. |
При |
достижении Y |
границ |
||||
|
|
ограничения, выход LIMITS_ACTVE, |
|||||||
|
|
(BOOL) |
|
принимает |
значение TRUE. |
||||
|
|
Ограничение работает только приY_MIN < |
|||||||
|
|
Y_MAX. |
|
|
|
|
|
|
|
MANUAL |
BOOL |
Значение TRUE, включает |
режим |
ручного |
|
||||
|
|
регулирования по входу Y_MANUAL |
|
|
|||||
RESET |
BOOL |
TRUE |
сбрасывает |
регулятор; в это время |
|
||||
|
|
Y = Y_OFFSET |
|
|
|
|
|
||
Y |
REAL |
Выход |
регулятора |
|
|
|
|
||
LIMITS_ACTIVE |
BOOL |
TRUE |
означает |
что Y |
ограничивается |
|
|||
|
|
пределами (Y_MIN, Y_MAX) |
|
|
|
||||
|
|
|
|
|
|||||
OVERFLOW |
BOOL |
TRUE – признак переполнения |
|
|
|||||
|
|
|
|
|
|
|
|
|
|
33
Механизм ограничения выходаPID аналогичен PD регулятору. |
|
||||
Неправильная |
настройка |
регулятора |
|
может |
вызв |
неограниченный |
рост |
интегральной |
составляющей. Для |
|
|
обнаружения такой ситуации предназначен выходOVERFLOW. |
|
||||
При переполнении он принимает значениеTRUE, одновременно |
|
||||
останавливается |
работа |
регулятора. Для |
его |
включения |
|
необходимо использовать рестарт.
Пример FBD:
PID_FIXCYCLE
Функциональный блок PID_FIXCYCLE.
Отличается от PID тем, что время цикла не измеряется автоматически встроенным таймером, а задается дополнительной переменной CYCLE, в секундах.
Задания
1.Разработать алгоритм управления(аналоговое управление)….
2.Разработать алгоритм блокировки(дискретное управление)….
34
Порядок выполнения работы
1. Создаем проект нажатием кнопки«Создать» на панели основного меню главного окна. В диалоговом окне«Настройки
целевой |
платформы» |
выбираем |
тип |
промышленного |
||
контроллера, |
для |
которого |
будет |
написана |
управляющая |
|
программа. Затем подтверждаем настройки целевой платформы. В диалоговом окне«Настройки целевой платформы» выбираем тип промышленного контроллера PLC-63L. Затем подтверждаем настройки целевой платформы.
2.В диалоговом окне«Новый программный компонент (POU)» выбираем язык реализацииFBD и подтверждаем настройки основного программного компонента.
3.Затем во вкладке«Ресурсы» организатора объектов выбираем пункт меню«Конфигурация ПЛК» и обозначаем входные и выходные переменные проекта.
4. Подключаем к проекту библиотеку функций Util.lib. Это можно сделать с помощью «Менеджера библиотек».
35
5. В соответствии с заданием дискретное управление
реализуем |
с |
помощью |
одной |
из |
функций |
аналоговог |
компаратора библиотеки Util.lib. |
|
|
|
|
||
6. В соответствии с заданием аналоговое управление реализуем с помощью одной из функции ПИД-регулятора библиотеки Util.lib.
36
Содержание отчета
1.Задание.
2.Цель работы.
3.Порядок выполнения (со скриншотами результатов при работе с CoDeSys).
4.Выводы.
|
|
Контрольные вопросы |
|
|
|
1. |
Каким |
образом |
добавляется |
|
библиотека |
дополнительными функциями? |
|
|
|
||
2. |
Какие |
функции |
используются |
при |
дискретном |
управлении? |
|
|
|
|
|
3. |
Какие |
функции |
используются |
при |
аналоговом |
управлении? |
|
|
|
|
|
4. Как определить тип сигнала, подаваемого с датчика?
37
Лабораторная работа № 6.
БАЗОВЫЕ ЭЛЕМЕНТЫ СОЗДАНИЯ ВРЕМЕННЫХ ПРОГРАММ В СРЕДЕ ПРОГРАММИРОВАНИЯ CoDeSys
Цель работы: овладение приемами и навыками работы с базовыми элементами создания временных программ в среде программирования CoDeSys, а именно использование функций таймеров библиотеки Standart.lib для дискретного изменения параметров через временные промежутки.
Теоретические сведения
Функциональный блок таймер (TP)
TP(IN, PT, Q, ET) Входы IN и PT типов BOOL и TIME
соответственно. Выходы Q и ET аналогично типов BOOL и TIME. Пока IN равен FALSE, выход Q = FALSE, выход ET = 0.
При переходе IN в TRUE выход Q устанавливается в TRUE и таймер начинает отсчет времени (в миллисекундах) на выходе ET до достижения длительности, заданной PT. Далее счетчик не увеличивается. Таким образом, выход Q генерирует импульс длительностью PT по фронту входа IN.
Временная диаграмма работы TP:
38
Пример FBD:
Функциональный блок «Таймер с задержкой включения»
(TON)
TON(IN, PT, Q, ET) Входы IN и PT типов BOOL и TIME
соответственно. Выходы Q и ET аналогично типов BOOL и TIME. Пока IN равен FALSE, выход Q = FALSE, выход ET = 0.
Как только IN становится TRUE, начинается отсчет времени (в миллисекундах) на выходе ET до значения, равного PT. Далее счетчик не увеличивается. Q равен TRUE, когда IN равен TRUE и ET равен PT, иначе FALSE. Таким образом, выход Q устанавливается с задержкой PT от фронта входа IN.
Временная диаграмма работы TON:
Пример FBD:
39
Функциональный блок «Таймер с задержкой выключения»
(TOF)
TOF(IN, PT, Q, ET) Входы IN и PT типов BOOL и TIME
соответственно. Выходы Q и ET аналогично типов BOOL и TIME. Если IN равен TRUE, то выход Q = TRUE и выход ET = 0.
Как только IN переходит в FALSE, начинается отсчет времени (в миллисекундах) на выходе ET. При достижении заданной длительности отсчет останавливается. Выход Q равен FALSE, если IN равен FALSE и ET равен PT, иначе - TRUE. Таким образом, выход Q сбрасывается с задержкойPT от спада входа
IN.
Временная диаграмма работы TOF:
Пример FBD:
|
|
|
|
Задания |
|
|
|
|
1. |
Разработать |
алгоритм |
управления |
логической |
||||
переменной |
_____ |
с |
помощью |
таймера |
ТР |
с |
временным |
|
интервалом ______. |
|
|
|
|
|
|
||
2. |
Разработать |
алгоритм |
управления |
логической |
||||
переменной |
____ |
с |
помощью таймера ONТ |
с |
временным |
|||
интервалом _______. |
|
|
|
|
|
|||
40
