Файл: Методические указания к выполнению курсовой работы для студентов образовательной программы.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 10.01.2024
Просмотров: 50
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
1
МОДЕЛИРОВАНИЕ И ИДЕНТИФИКАЦИЯ ОБЪЕКТОВ
УПРАВЛЕНИЯ
Методические указания к выполнению курсовой работы для студентов образовательной программы
6В07108 – «Автоматизация и управления»
–
Алматы 2022
Некоммерческое акционерное общество
АЛМАТИНСКИЙ
УНИВЕРСИТЕТ
ЭНЕРГЕТИКИ И
СВЯЗИ имени
Гумарбека Даукеева
Кафедра Автоматизации и управления
2
СОСТАВИТЕЛЬ: Ибраева Л.К. Моделирование и идентификация объектов управления. Методические указания к выполнению курсовой работы для студентов образовательной программы 6В07108 – «Автоматизация и управления» – Алматы: АУЭС, 2022.
Методические указания предназначены для выполнения курсовой работы по дисциплине «Моделирование и идентификация объектов управления». В курсовой работе исследуется задача динамики каскада резервуаров.
Цель работы: привитие навыков получения физико-математической модели объекта управления, анализа динамических характеристик объекта, навыков моделирования объекта управления на ЭВМ.
Математическая модель объекта в виде системы дифференциальных уравнений выводится на основе аналитических методов моделирования. Для имитационного моделирования поведения рассматриваемой системы и моделирования управления объектом применяются пакет моделирования динамических систем Simuink и пакет проектирования событийно-управляемых систем Stateflow системы MatLab.
3
Содержание
Введение
4 1 Задание на курсовую работу
5 2 Описание объекта исследования
6 3 Алгоритм работы системы
7 4 Составные блоки подсистемы двух баков
8 5 Реализация модели в среде Simulink программы MatLab
8 6 Управление объектом
10 6.1 Подсистема Statefiow пакета Simulink
10 6.2 Создание диаграммы контроллера
14 7 Проведение имитационных экспериментов на модели
17 8 Варианты заданий
9 Требования к отчету по работе
17 10 Контрольные вопросы
18
Список литературы
20
4
Введение
В курсовой работе исследуется задача динамики каскада резервуаров.
Математическая модель объекта в виде системы дифференциальных уравнений выводится на основе аналитических методов моделирования.
Для имитационного моделирования поведения рассматриваемого объекта и управления объектом применяются пакеты Simulink и Stateflow системы
MatLAB.
Пакет моделирования динамических систем Simulink предназначен для математического моделирования линейных и нелинейных динамических систем и устройств, представленных своей функциональной блок-схемой, именуемой моделью.
Для построения функциональной блок-схемы моделируемых устройств Simulink имеет обширную библиотеку блочных компонентов и удобный редактор блок-схем. Последний основан на использовании графического интерфейса пользователя и, по существу, является средством визуального программирования. Используя палитры компонентов
(наборы) блок-схем, пользователь с помощью мыши переносит нужные компоненты на рабочий стол пакета и соединяет линиями входы и выходы блоков. Таким образом создается блок-схема модели.
Simulink автоматизирует следующий наиболее трудоемкий этап моделирования: он составляет и решает сложные системы алгебраических и дифференциальных уравнений, описывающих заданную функциональную схему (модель), обеспечивая удобный и наглядный визуальный контроль за поведением созданного пользователем виртуального устройства. Ценность
Simulink заключается и в обширной библиотеке компонентов (источники сигналов с любыми временными зависимостями, преобразователи с разнообразными формами передаточных характеристик, интегрирующие и дифференцирующие блоки и т.д.). Также в библиотеке имеется набор регистрирующих устройств.
Важное достоинство пакета - возможность задания в блоках произвольных математических выражений. Как программное средство Simulink
- типичный представитель визуально-ориентированного языка программирования. На всех этапах работы пользователь не имеет дела с обычным программированием. Программа автоматически генерируется в процессе ввода выбранных блоков компонентов, их соединений и задания параметров компонентов.
Пакет проектирования событийно-управляемых систем
Stateflow представляет собой графический инструментарий для проектирования сложных систем управления и является самым значительным дополнением к среде
Simulink. Он дает возможность моделировать поведение сложных событийно- управляемых систем.
Процесс создания модели системы управления в Statefiow обычно подразумевает следующие этапы:
5
- создание новой модели управляемого объекта в Statefiow или использование уже существующей модели;
- создание диаграммы в Statefiow;
- добавление к Statefiow-блоку интерфейса событий и данных;
- откладка модели;
- генерация кода.
Для создания Statefiow-диаграммы необходимо сначала создать модель в
Simulink или открыть уже существующую. Затем нужно выбрать в библиотеке блок, обозначающий диаграмму Statefiow, и перенести его в свою модель.
После двойного щелчка по нему мышью, откроется окно Statefiow (Chart), в котором, пользуясь меню и панелью инструментов, можно описывать сами состояния, связи между ними, определять переменные, условия переключения и другие, необходимые для управления элементы.
1 Задание на курсовую работу
1.1 Ознакомиться с объектом исследования. Обосновать вывод уравнений математической модели объекта.
1.2 Определить перечень входных и выходных переменных математической модели. Разработать подробный алгоритм работы объекта.
1.3 Для исследования поведения рассматриваемой динамической системы использовать пакет Simulink системы MatLab. Собрать блок-диаграмму модели в пакете Simulink в соответствии с логикой работы системы.
1.4 Используя графический инструментарий для проектирования систем управления Statefiow, провести моделирование управления объектом.
1.5 Провести имитационные эксперименты для исследования поведения рассматриваемой системы (параметры объекта выбираются по варианту).
1.6 Оформить отчет по работе.
6 2 Описание объекта исследования
Исследуемая система представляет собой два цилиндрических бака, расположенных вертикально на разной высоте таким образом, что дно первого бака находится на расстоянии H=0,310 м от дна второго (рис. 2.1). Баки имеют одинаковую высоту h=1 м и различные диаметры: первый – D
1
=12 см, второй –
D
2
=5 см. Система имеет входную трубу, находящуюся в первом баке на расстоянии h от его дна. Баки соединены трубой, являющейся выходной трубой первого бака (и расположенной у самого его дна) и входной трубой второго бака (расположенной на расстоянии Н от его дна).
Рисунок 1 - Система двух баков
Также система имеет выходную трубу, расположенную у самого дна второго бака. Входная труба системы снабжена входным краном V
input
, который открывается мгновенно, и скорость входного потока воды определяется как
(л/ч)
,
400
,
,
0
открыт
V
если закрыт
V
если dt dV
input input input
(1)
Краны V
1
и V
2
являются медленными устройствами, они открываются и закрываются с одной и той же постоянной скоростью, так что от момента начала открытия (закрытия) до полного открытия (закрытия) требуется 80 с. Их
7 открытие и закрытие контролируется задвижкой, меняющей свое положение от значения Р=0 (полное закрытие в условных единицах) до Р=80 (полное открытие).
Управление открытием/закрытием кранов V
input
, V
1
и V
2 осуществляется специальным контроллером.
Если через А
1
и А
2
обозначить площади оснований баков, то система уравнений для уровней воды в баках h
1
и h
2 запишется так
),
(
1
);
(
1 12 2
2 12 1
1
dt dV
dt dV
A
dt dh dt dV
dt dV
A
dt dh out input
(2) где dt dV
12
- скорость протекания воды по трубе между баками, dt dV
out
- скорость вытекания воды из системы.
Скорость протекания воды между баками зависит от уровней воды h
1
и h
2
, значения Н и положения задержки Р
1
в кране V
1
:
,
)
(
;
,
)
(
)
(
2 1
1 1
2 2
1 1
1 12
H
h h
P
K
H
h
H
h h
P
K
dt dV
(3)
Скорость вытекания воды из системы зависит от уровня воды во втором баке h
2
и положения задвижки Р
2
на кране V
2
:
Индивидуальные свойства кранов определяются функциями:
3 Алгоритм работы системы
Работа всей системы описывается следующим алгоритмом
В исходном состоянии все краны закрыты и оба бака пусты. В процессе заполнения баков, уровень воды во втором баке должен удовлетворять
(5)
(4)
(6)
8 следующему требованию: он не должен опускаться ниже установленного уровня L_min и превышать также заранее заданный уровень L_plus.
В начальный момент контроллер посылает сигнал входному крану V
input
, тот мгновенно открывается и в течение времени Time1 [с] наполняется только первый бак.
По истечении времени Time1 контроллер посылает команду открыть кран
V
1
, и вода начинает поступать во второй бак. Второе состояние сохраняется на протяжении Time2 [с].
По истечении времени Time2 начинает контролироваться положение крана
V
2
. А именно, если контроллер обнаруживает, что уровень воды во втором баке опустился ниже значения L_min [м], поступает команда закрыть выходной кран, если вода во втором баке превышает уровень L_plus [м] - выдается команда открыть выходной кран.
Аварийными считаются ситуации, когда переполняется один из баков или происходит периодическое открытие и закрытие выходного крана.
Нормальным режимом системы считается состояние, когда все краны открыты, и вода протекает через систему с постоянной скоростью.
Сигналы о значениях V
input
, V
1
, V
2
подаются от контроллера. Эти переменные являются входами модели.
4 Составные блоки подсистемы двух баков
Система двух баков должна реагировать на сигналы контроллера, а именно: управлять открытием/закрытием кранов, а также отслеживать ситуацию, когда вода во втором баке поднимается выше уровня Н, и при возникновении такой ситуации изменять скорость поступления воды во второй бак. Также система должна отслеживать ситуацию переполнения баков и должным образом на нее реагировать.
Исходя из этих требований, можно провести декомпозицию системы на несколько частей, а именно:
- выделить элемент, отвечающий за открытие/закрытие крана V
input
; назовем эту подсистему (реализуется блоком Subsystem) Vin_Control;
- выделить элемент, отвечающий за открытие/закрытие выходного крана; назовем эту подсистему Vout;
- выделить элемент, управляющий открытием/закрытием задвижек Р
1
и
Р
2
; это будут подсистемы K1_Control и K2_Control;
- в качестве еще одного элемента системы можно выделить сами два бака, на которые возлагается задача отслеживания аварийной ситуации переполнения баков и ситуации, когда вода во втором баке поднимается выше уровня Н.
9 5 Реализация модели в среде Simulink программы MatLab
Чтобы построить диаграмму модели, необходимо выделить в системе отдельные относительно независимые элементы и определить, каким образом они взаимосвязаны между собой.
В рассматриваемой задаче в первую очередь можно выделить два основных элемента: саму систему из двух баков и устройство, управляющее открытием/закрытием кранов (контроллер). В первую очередь необходимо создать блок-диаграмму системы из двух баков.
В дальнейшем все блок-диаграммы модели, содержащие несколько составных элементов, оформляются как подсистемы. Начнем с самых простых уравнений.
Подсистема определения скорости входного потока. Для определения скорости входного потока используется одна из формул уравнения (1) в зависимости от значения сигнала контроллера V
input.
Подсистема для такого расчета содержит в себе функциональную схему, состоящую из стандартного блока Switch и двух экземпляров стандартного блока Const, содержащих в себе значения, соответствующие скорости входного потока воды в систему двух баков, когда входной бак открыт и закрыт.
Переключение между этими значениями происходит в блоке Switch в зависимости от значения, поступающего на вход блока от контроллера.
Соответствующее значение выходного сигнала подается на выход.
После реализации требуемой диаграммы по уравнению 1, необходимо ее оформить в виде подсистемы (рисунок 2).
Рисунок 2 – Блок подсистемы определения скорости входного потока
Эта подсистема имеет один вход и один выход. Сигнал на вход подсистемы поступает с контроллера. В зависимости от сигнала кран открыт, либо закрыт.
Подсистема определения скорости вытекания воды из системы.
Для определения скорости вытекания воды из системы используем формулу (4). Чтобы рассчитать V
out
, необходимо вначале вычислить функцию
K
2
(P
2
). Эта функция рассчитываются по формулам (6) в зависимости от величины, поступающей на вход подсистемы от контроллера. В выражении (4) помимо функции K
2
(P
2
) используется текущее значение h
2
. То есть, полученные после интегрирования дифференциальных уравнений значения уровней в баках необходимо подать на вход подсистемы расчета правых частей этих уравнений.
Диаграммы расчетов K
2
(P
2
) и h
2
будут рассмотрены ниже.
10
После реализации требуемой диаграммы оформите ее, как подсистему рисунка 3.
На вход подсистемы поступают значения K
2
, h
2
. В подсистеме вычисляется значение скорости вытекания воды из системы.
Рисунок 3 – Блок подсистемы для определения скорости вытекания воды из системы
На вход блока Vout поступают значения К
2
и h2. Для объединения этих значений в один вектор используется стандартный блок Мuх. С этого блока вектор поступает на вход стандартного блока Fсn, в котором происходит вычисление выходной величины Vout (формула (4)).
Блок Vout имеет два входа и один выход.
Подсистемы управления краном между баками (Рисунки 4 и 5).
Чтобы рассчитать скорость протекания воды между баками используются формулы (3) - два варианта выражений для двух возможных ситуаций (h
2
>H; h
2
<=H). Предварительно необходимо вычислить функцию K
1
(P
1
). Эта функция рассчитываются по формулам (5) в зависимости от величины, поступающей на вход подсистемы от контроллера. В выражении (3) помимо функции K
1
(P
1
) используются текущие значения h
1
и h
2
. То есть, полученные после интегрирования дифференциальных уравнений значения уровней в баках необходимо подать на вход подсистемы расчета правых частей этих уравнений.
Создаются две подсистемы V12(1) и V12(2) для вычисления выходной величины V12 - формула (3).
Составной блок V12(1) имеет функциональную схему, состоящую из стандартного блока Мuх, объединяющего в один вектор значения Кl, h l
и h
2
, которые поступают на его вход, и подающего этот вектор на вход стандартного блока Fen, в котором происходит вычисление выходной величины V12. Блок
V12(1) имеет три входа и один выход.
Реализованная диаграмма оформляется в виде следующей подсистемы
(рисунок 4).
Рисунок 4 – Блок подсистемы определения скорости воды между баками при
Составной блок V12(2) имеет функциональную схему, состоящую из стандартного блока Мuх, который объединяет в один вектор значения Кl и h
1
,
11 поступающие на его входы, и подающего этот вектор на вход стандартного блока Fсn, в котором происходит вычисление выходной величины V12
(оформите реализованную диаграмму в виде подсистемы рисунка 5).
Рисунок 5 - Блок подсистемы определения скорости воды между баками при
Подсистемы управления краном между баками и выходным краном.
Блоки, где рассчитываются K
1
(P
1
) и K
2
(P
2
), назовем K1_Control и
K2_Control – это окончательные подсистемы.
Они имеют идентичные функциональные схемы, различающиеся только значением коэффициентов в уравнении - формулы (5). Функциональная схема каждого из них состоит из следующих элементов:
- двух экземпляров стандартного блока Switch, один из которых необходим для переключения между положениями кранов V
1
/V
2
открыто/закрыто, а второй для отслеживания ситуации, когда параметр Р становится равным 80, и соответствующего переключения между значениями функции К(Р);
- двух экземпляров стандартного блока Const, содержащих в себе значения 1 и -1, эти значения необходимы для выполнения интегрирования, и еще один блок Const для присвоения значения 0 функции К(Р) в ситуации, когда Р>=80;
- стандартного блока Integrator, интегрирующего поступающее от переключателя значение (1 или -1) в пределах от 0 до 80 с начальным значением интегрируемой величины 80 (выход этого блока поступает на вход второго переключателя);
- стандартного блока Fсn, в котором происходит вычисление значения функции К1(Р)/К2(Р).
Переключения в блоке Switch происходят в зависимости от величины, поступающей на вход блока K1_Control/K2_ControI от контроллера.
Соответствующее значение Кl/К2 подается на выход.
В окончательном виде схема представляется в виде подсистем
K1_Control/ K2_Control, которые имеют один вход и один выход.
На вход подсистемы K1 Control поступает сигнал от контроллера. В зависимости от этого сигнала кран либо открывается, либо закрывается.
Открытие крана будем моделировать положительной константой (+1), а закрытие моделируем отрицательной константой ( -1).
Диаграмма подсистемы K1 Control строится следующим образом.
Если от контроллера поступает значение 1, в блоке Switch оно сравнивается с «0». Так как 1>0, то со Switch на интегратор должно поступать