Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2158

.pdf
Скачиваний:
11
Добавлен:
07.01.2021
Размер:
3.53 Mб
Скачать

Вкачестве примера примем k=1 Н/м, m=1 кг и запишем матрицы

всвойства блока State-Space (рис. 42).

Вкачестве входного сигнала используем единичное ступенчатое

воздействие 1(t). Так как блок State-Space принимает на вход вектор и выдает также вектор, то для подключения в модели необходимо ис- Спользовать элементы Mux и Demux для входа и выхода соответствен-

но (рис. 43) [1].

иР с. 43. Структурная схема колебательной системы

Из р бАс. 44 в дно, что после подачи единичного импульса на вход в с стеме нач наются незатухающие колебания. Это согласуется с физическ м смыслом подвижного груза на пружине без учета сил трения и рассеивания энергии. Можно сделать вывод, что система неустойчива [1].

Д И

Рис. 44. Сигналы на входе (u) и выходе (y) колебательной системы

41

Для синтеза оптимального параметра регуляторов линейных стационарных систем в Control System Toolbox имеются функции решений уравнений Беллмана (табл. 2).

 

 

 

Таблица 2

 

 

Функции ControlSystemToolbox

 

 

 

 

 

нтакс с

 

Описание

 

[K P e] = lqr(A, B, Q, S)

Синтез непрерывного регулятора

 

[K P e] = lqr(A, B, Q, S, N)

Синтез непрерывного регулятора

 

[K P e] = dlqr(A, B, Q, R)

Синтез дискретного регулятора

 

[K P e] = dlqr(A, B, Q, R, N)

Синтез дискретного регулятора

С

 

 

 

[K P e] = lqrd(A, B, Q, R, Ts)

Синтез дискретного регулятора

 

[K P e] = lqrd(A, B, Q, R, N, Ts)

Синтез дискретного регулятора

иФункц я lqr выч сляет матрицу коэффициентов регулирования K со среднеквадрат чным функционалом качества без терминального члена. Функц я dlqr вычисляет матрицу коэффициентов регулирования по всем переменным состояния K для дискретной системы со среднеквадратичным функционалом качества без терминального члена. Функция lqrd предназначена для синтеза оптимального дискретного регулятора непрерывной системы со среднеквадратичным функ-

ционалом качества [1, 2].

Д

 

Осуществим автоматизированный синтез регулятора с помощью

функции lqrбАв пакете Control System Toolbox.

 

Во-первых, для управления системой необходимо, чтобы все со-

стояния были наблюдаемы. Для этого выведем вторым выходом пе-

ременную состояния z, и тогда новая матрица C запишется в виде

единичной диагональной матрицы [1, 2]

 

 

C

 

1

0

 

.

 

 

 

 

 

 

 

0

1

 

(29)

 

 

 

 

 

 

 

 

 

 

 

 

Функция lqr синтезирует с использованиемИчисленной оптими-

зации стабилизирующий регулятор таким образом, чтобы минимизи-

ровать квадратичную целевую функцию [1, 2]

 

 

 

 

 

 

 

 

 

J xT (t)Qx(t) uT (t)Ru(t)dt min.

(30)

0

 

 

 

 

 

 

42

Матрицы Q и R предназначены для выбора весов (важности) минимизации одного критерия перед другим. Для примера можно выбрать единичные диагональные матрицы Q = R = C = 1.

ледующий код на языке MATLAB запускает функцию lqr:

ввод модели системы в виде пространства состояний

n = 2;%число состояний

A = [0 1; -1 0];

 

B = [0 0; 1 0];

 

 

C = [1 0; 0 1];

 

 

D = [0 0; 0 0];

 

Сс нтез регулятора

 

 

Q = diag(ones(1,n));

%веса выходов

 

R = diag(ones(1,n));

%веса входов

 

 

бА

 

K = lqr(A,B,Q,R) %синтез регулятора

 

и

 

После выполнен я последней строчки кода получаем в консоли

 

MATLAB:

 

 

 

 

K =

 

 

 

 

0.4142

1.3522

 

 

 

0

0

 

Промоделируем систему с отрицательной обратной связью. Для

этого добавим в систему блок Gain со свойствами: Д И

Рис. 45. Свойства блока Gain

43

Си бА Д Рис. 47. Сигнал на выходе колебательнойИсистемы

Р с. 46. Структурная схема колебательной системы с регулятором

с регулятором

Рис. 48. Структурная схема колебательной системы с регулятором и усилителем

44

Из рис. 47 видно, что установившееся значение выходного сигнала системы не равно входному. Эта ошибка означает, что коэффициент усиления системы с отрицательной обратной связью отличается от 1. Включив в систему усилитель с коэффициентом 1,412, полу-

чаем в результате систему с единичным коэффициентом усиления [1]: Си бА

Рис. 49. Сигнал на выходе колебательнойДсистемы сИрегулятором и усилителем при подаче на вход единичного ступенчатого воздействия

Для рассматриваемой механической колебательной системы построим модель в SimMechanics.

Построение модели

Построение модели начинаем с размещения в модели блоков

Ground и Machine Environment из библиотеки Simscape / SimMechanics / Bodies. В параметрах Ground устанавливаем Show Machine Environmentport и подключаем к появившемуся порту модуль Machine Environment. Блок Ground моделирует неподвижную систему отсчета [1, 2].

45

Введем в рассмотрение платформу, к которой прикладывается сила и на которой размещен подвижный груз. Для этого добавим в модель компонент Body из библиотеки Simscape / SimMechanics / Bodies. Установим массу (Mass) платформы 100 кг.

Между неподвижной системой отсчета и платформой возможно

С

поступательное движение. Для моделирования этого движения доба-

вим в модель блок Prismatic из библиотеки Simscape / SimMechanics /

Joints [1, 2].

 

и

обеспеч

 

Р с. 50. Структурная схема поступательного

 

движения платформы

Чтобы

ть движение по оси OX необходимо в парамет-

рах Axis of Action [x; y; z] компонента Prismatic задать вектор [1; 0; 0],

 

А

что разрешает движение по OX (по умолчанию [0; 0; 1]).

Необходимое число дополнительных портов можно задать в свойствах блока в поле Number of sensor / actuator ports. Эти порты являются двунаправленными и позволяют выводить состояние соединения – силу, действующую поДоси соединения, или перемещение, скорость, ускорение одного тела относительно другого – и изменять состояние соединения с помощью приложения силы или задания движения (необходимо задать перемещение, скоростьи ускорение)[1, 2].

Для приведения в поступательное движение платформы с помощью блока Prismatic поместим в модель компонентИJoint Actuator из библиотеки Simscape / SimMechanics /Sensors & Actuators. Этот ком-

понент преобразует информационные сигналы Simulink в механический сигнал SimMechanics. Возможно два варианта управления актуатором: с помощью обобщенной силы и векторного сигнала с компонентами: перемещение, скорость и ускорение. Выберем второй вариант управления, задав при этом в свойствах объекта Joint Actuator параметр Actuate with: Motion. Теперь для приведения в движение тел через компонент Joint Actuator необходимо на его вход подать вектор из ускорения, скорости и перемещения, создав его с помощью блока Mux и последовательного интегрирования сигнала ускорения.

46

Источником сигнала ускорения является блок Signal Builder. Для того чтобы переместить платформу на некоторое расстояние, необходимо приложить к ней положительное ускорение (разгон), а потом отрицательное (торможение) [1, 2]:

СиР бАс. 51. Структурная схема поступательного движения платформы с заданным ускорением

Д

Рис. 52. Задатчик ускорения перемещенияИплатформы

Теперь рассмотрим моделирование подвижного груза на пружине. Поместим в модель блоки Prismatic и Body – для представления подвижного груза и пружины, которая обеспечивает еще одну поступательную степень свободы. В соответствии с законом Гука, сила противодействия пружины пропорциональна расстоянию между ее концами. Для моделирования пружины может быть использован блок

47

Prismatic вместе с блоком Joint Spring & Damper из библиотеки Simscape / SimMechanics / ForceElements. Поскольку каждый инфор-

мационный выход Prismatic также является и входом, то с помощью одного соединения между Prismatic и Joint Spring & Damper можно промоделировать пружину: на вход Joint Spring & Damper поступает перемещение, с выхода – сила противодействия на Prismatic. Для задания жесткости пружины установим Spring Constant k в 1 в парамет-

рах блока Joint Spring & Damper [1, 2].

ледует замет ть важное правило при построении модели: нель-

зя подключать одно тело к другому телу (осуществлять прямую связ-

ку между двумя блоками Body); связь между двумя телами может

С

 

быть выполнена только через блоки соединений из библиотеки

Simscape / SimMechanics / Joints. Аналогично нельзя подключать ме-

жду собой два соед

(связывать два блока типа Joint).

Положен е конца пружины и скорость его перемещения могут

быть получены з

лока Prismatic с помощью подключения его до-

нения

бА

полнительного выхода к локу Joint Sensor из библиотеки Simscape / SimMechanics / Sensors & Actuators. Добавив блок Joint Sensor в мо-

дель, выберем в свойствах Position и Velocity. В результате на его выходе будет вектор из двух компонентов с текущим положением и скоростью тела на конце пружины. Это сигнал Simulink, и он может быть подключен к осциллографу Scope [1, 2].

В результате получаем окончательнуюДмодель системы.

вобозначениях SimMechanicsИ

Врезультате моделирования (рис. 54) получаем следующие переходные процессы, которые согласуются с физическим смыслом данной системы – тело на пружине без учета трения переходит в гармонические колебания при возмущении [1, 2].

48

С

Р с. 54. Граф ки изменения положения (s) и скорости (v)

перемещения колеблющегося тела

Можно получ ть анимацию этой модели. Рассмотрим, как сде-

лать это самыми тривиальным

. Для этого необходимо в ме-

способом

ню Simulink вызватьАокно настройки параметров модели пункт

Simulation / Configuration Parameters..., далее в левой части окна в дереве выбрать Simscape \ SimMechanics и установить Visualization \ Show animation during simulation.ДПосле проделанных действий при запуске моделирования автоматически откроется окно Machine for model с анимацией положения всех тел модели. Чтобы представить подвижные тела модели в виде сфер (эллипсоидов – в зависимости от их тензора инерции), необходимо выбрать в меню окна анимации пункт Model / Body Geometries / Ellipsoids. ля замедления анимации можно вызвать окно параметров через меню Simulation / ControlAnimationSpeed и установить там задержку Delayperframe (ms).

Обратите внимание, что картинку анимации можно приближать или отдалять мышкой при выборе пункта меню View / Zoom или можно

воспользоваться View / Fittoview [1].

И

 

Порядок моделирования

1.Ознакомиться с понятием «Колебательная система».

2.Собрать математическую модель колебательной системы (рис. 53) при помощи пакета Simulink, получить графики выходных

49

значений при подаче на вход ступенчатых воздействий разных амплитуд.

3.

интезировать регулятор и собрать математическую модель

колебательной системы, получить графики выходных значений при

подаче на вход ступенчатых воздействий разных амплитуд. Получить

С

графики выходных значений без ошибки регулирования, если она бу-

дет.

 

4.

обрать математическую модель колебательной системы при

помощи пакета SimMechanics, получить графики изменения положе-

ния

 

и скорости перемещения колеблющегося тела при различных па-

раметрах модели.

 

 

Содержание отчета

1.

колебательной

 

Назван е ла ораторной работы и ее цель.

2.

Определен е коле ательных систем и их классификации.

3.

Схема механ ческой

системы.

4.

Зав с мости, описывающие поведение колебательной сис-

темы.

А

 

 

5.

Структурная схема модели механической колебательной сис-

темы в виде вход – состояние – выход.

 

6.Структурная схема коле ательной системы.

7.Сигналы на входе (u) и выходе (y) колебательной системы.

8.Анимация модели.

КонтрольныеДвопросы и задания

1.Что такое колебательная система?

2.Как классифицируются колебательные системы с точки зрения энергетических потерь?

3.Изобразите уравнение динамики колебательной системы в матричном виде.

4.Каково назначение функций lqr и lqrd?И

50

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]