doc - Hot.ee

advertisement
Таллиннский Технический Университет
Домашняя Работа № 2 по предмету “Automaatjuhtimissüsteemid”
Автопилот автомобиля на основе оптимального регулятора
Студент:
LAS 52
Преподаватель:
A. Rähni
Таллинн 2002






Описание работы:
Необходимо вычислить такой регулятор, чтобы все параметры системы не превышали
допустимые значения и при этом имели запас не менее 30%.
Выяснить при каком отклонении получится реализовать данные настройки
автопилота.
Выяснить допустимое значение помехи.
Исходные данные модели:
U – скорость движения автомобиля вперёд;
Cf, Cr – коэффициенты трения покрышек;
X(t) характеризует состояние системы в момент времени t.
x1 – угол поворота передних колёс;
х2 – скорость, перпендикулярная направлению движения;
х3 – скорость поворота;
х4 – положения центра тяжести относительно желаемой траектории;
х5 – угол поворота автомобиля;
Пояснение параметров, использованных в эксперименте:
X(0) – состояние системы в начальный момент времени.
Все значения X(0) равны нулю, кроме отклонения от желаемой траектории, х4 = 4 м
Xs – состояние системы, которое необходимо получить.
Все значения Xs равны нулю.
Ограничения системы:
Максимальный угол поворота передних колёс х1  20;
Отклонение от желаемой траектории x4  4 м;
Угол поворота автомобиля x5  20;
Максимальное управляющее напряжение U = 24 В;
Пояснения к работе:
Матрица А – это матрица состояния, матрица В – входная, матрица С – выходная,
матрица G – входная матрица помехи состояния (olekuhäiringu sisendmaatriks),
матрица D – матрица прямой связи, в данной системе отсутствует, матрица Ad –
матрица состояния для дискретной системы, матрица Вd – входная для дискретной
системы, td – шаг дискретизации. Значения всех матриц приведены далее (распечатка
из MATLAB’а).
Регулятор находится при помощи функции lqr для постоянной системы и dlqr для
дискретной, K = lqr(A, B, Q, R), Kd = dlqr(Ad, Bd, Q, R). Матрицы А и В даны, Q и R
подбираются опытным путём. Ad и Bd находятся при помощи команды [Ad, Bd] =
c2d(A, B, td).
Восстановитель состояния вычислялся при помощи функции place, L = place(A’, C’,
[Pot])’
Результат:
В результате проведённых экспериментов были получены следующие данные:
Eksperimentides saavutatud väärtused
 |20|,  |4|, 
Valitud ja arvutatud väärtused
 |24|
kiireim
[rad]
|20|
[V]
[º], [m], [º]
q11,…q55
r11
U1 max
Y1,3, 4 max
treg
dx5 max
/Z1,2,3,4,5
-1.1158
-11.9145
300; 0;
-0.02220.03i
-1.7899
4
0; 1; 50
5
2.1655
0.015
-10.0349
-0.01240.0107i
-0.0007
-11.62
300; 0;
0.5
4
2.2
0.013
-0.64200.2872i -0.2667
0; 1; 50
-10.027
-0.83470.1221i
-1
-9.55
-1
0.5
-0.1759
4
3.827
-3.17932.8996i
-12.953
-15.2857
В первой строке значения, полученные для системы с постоянным временем, вторая
для дискретной системы, третья для системы с восстановителем состояния.
Для восстановителя состояния была так же получена таблица значений x1 и x2 для
собственных значений матрицы А, смещённых на определённую величину:
ex^(t) max
ex^(t) koondumise kiirus
Olekutaastaja arvutuse
300; 0;
0; 1; 50
valikud
Х1
Х2
OT1,2,3,4,5
eig(A) – 1
10.2385 -55.614
3.1
6.7
eig(A) – 0.99
-250.87
76.48
5.8
1.8
eig(A) – 1.01
59.385
-53.98
4.8
5.5
 Вычисления:
Необходимый результат мы можем получить, выбирая соответствующие весовые
коэффициенты R и Q. Пользуясь правилом qii  1/xi2 max , rii  1/Uj2 max можно выбрать
соответствующие коэффициенты, учитывая все требования и ограничения. Опытным
путём для системы постоянного времени были подобраны следующие коэффициенты:
300 0 0 0 0
 0 0 0 0 0


Q   0 0 0 0 0
R  5


 0 0 0 50 0
 0 0 0 0 1
При помощи команды K = lqr(A, B, Q, R) был найден регулятор:

K 
При данном регуляторе выполняются все условия и ограничения, описанные в
задании. При помощи схемы для системы с постоянным временем были получены
графики, которые прилагаются к отчёту. Значения матриц А и В прилагаются к отчёту на
отдельном листе.
Y1  11.9145  20
Y3  4 m  4 m
Y4  10.0349  20
При этом для углов поворота существует запас более 30 %, что так же соответствует
условию, приведённому в задании.
Вычисления регулятора для дискретной системы делается так же, только значение R
другое:
300 0 0 0 0
 0 0 0 0 0


Q   0 0 0 0 0
R  0.5


 0 0 0 50 0
 0 0 0 0 1
Для вычислений используется команда Kd = dlqr(Ad, Bd, Q, R). Значения Ad и Bd так
же прилагаются к отчёту.
Kd  0.4778 0.0339 0.1355 0.0637 1.4919
При помощи схемы для дискретной системы были получены графики, которые
прилагаются к отчёту. При данном регуляторе выполняются все условия и ограничения,
указанные в задании:
Y1  11.62  20
Y3  4 m  4 m
Y4  10.027  20
Так же все углы поворота имеют запас более 30 %.
Вычисление восстановителя состояния:
Восстановитель вычисляется при помощи команды place. L = place(A’, C’, [Pot]), Pot –
это собственные значения матрицы А, смещённые на единицу (eig(A) – 1).
0 
 0.2051  0.036  2.9377
 0.6108  0.3114 8.3651
0 

L   0.3873  0.0276 1.4362
0 


0.0251
3.0478 0.4363
 0.0026
 0
0.0175
0
0.2668
При восстановителе состояния так же выполнены все условия и ограничения задания.
Y1  9.55  20
Y3  4 m  4 m
Y4  12.953  20

Выводы:
При синтезе регулятора для системы с постоянным временем и дискретной системы
были получены практически одинаковые результат (не смотря на разницу весового
коэффициента R). Все условия задания были выполнены. Следовательно, в данном
случае можно использовать как систему с постоянным временем, так и дискретную
систему.
Максимальная возможная помеха при постоянной системе была Xh = 0.015 rad, при
дискретной системе Xh = 0.013 rad. Опыт с восстановителем состояния был выполнен без
помехи.
Для восстановителя состояния были проведены три опыта со смещением собственных
значений матрицы А. Нужный результат был получен только при смещении на единицу
(eig(A) - 1), при смещении на 0.99 и 1.01 условия задания уже не выполнялись – значение
Х1 выходило за допустимые пределы, что и видно в вышеприведенной таблице.
Download