ЛАБы№1. Московская государственная академия приборостроения и информатики
Скачать 1.37 Mb.
|
Краткие сведения из теории Пусть поведение модели объекта управления описывается обыкновенным дифференциальным уравнением x(t) = f (t, x(t), u(t)), (5.4) где х - вектор состояния системы, х ∈ R n , R n - n-мерное евклидово пространство; u - вектор управления, и u ∈ U ⊂ R n , U - некоторое – 63 – заданное множество допустимых значений управления, t ∈ T = [t 0 , t 1 ] – интервал времени функционирования системы,моменты начала процесса t 0 и окончания процесса t 1 заданы, f (t, x, u): Т × R n × U → R n Задан функционал качества управления )), ( ( )) ( ), ( , ( 1 0 1 0 t x F dt t u t x t f J t t ∫ + = (5.5) где f 0 (t, x, u), F(x) - заданные непрерывно дифференцируемые функции. Предполагается, что при управлении используется информация о текущем времени и векторе состояния х. Применяемое в каждый момент времени t ∈ Т управление имеет вид управления c полной связью по всем переменным вектора состояния (рис. 5.1). dx/dt = f(x(t), u(t), t) u(k, x(t)) x(0) ∈R n x(t) u(t) Рис.5.1. Схема управления с полной обратной связью по вектору состояния. Требуется найти такую функцию u*(t, x) ∈ U n , что n U u x J J R , min 0 ∈ ∀ = ∈ . (5.6) Функция u*(t, x) ∈ U n называется оптимальным управлением с полной обратной cвязью. Для любого начального состояния x 0 из множества R n она порождает соответствующую оптимальную пару, т.е. оптимальную траекторию х*( ) и оптимальное программное управление u*( ). Достаточным условием минимума функционала (5.5) является уравнение Беллмана для непрерывных детерминированных систем. – 64 – Если существуют функция φ(t, x) ∈ C 1,1 , удовлетворяющая урав- нению Беллмана с граничным условием: , R ), ( ) , ( , ) , ( , 0 ) , , ( ) , , ( ) , ( ) , ( max 1 1 0 U n n i i i u x x F x t x t u x t f u x t f x x t t x t ∈ ∀ − = φ ∀ = ⎭ ⎬ ⎫ ⎩ ⎨ ⎧ − ∂ φ ∂ + ∂ φ ∂ ∑ = ∈ (5.7) и управление u*(t, x) ∈ U n , удовлетворяющее условию , ) , , ( ) , , ( ) , ( max arg ) , ( * 1 0 U ⎭ ⎬ ⎫ ⎩ ⎨ ⎧ − ∂ φ ∂ = ∑ = ∈ n i i i u u x t f u x t f x x t x t u то u*(t, x) является оптимальным управлением с полной обратной связью. При этом минимальное значение функционала (5.5) n u x x t J R ), , ( min 0 0 0 ∈ ∀ φ − = (5.8) Пусть система, описывающая поведение модели объекта управления, имеет вид x (t) = A(t) x(t) + B(t) u(t), (5.9) y(t) = C(t) x(t) +D(t) u(t) Пусть функционал качества управления квадратичный: [ ] ) ( ) ( 2 1 ) ( ) ( ) ( ) ( ) ( ) ( 2 1 1 1 1 0 t x t x dt t u t Q t u t x t S t x J T t t T T Λ + + = ∫ (5.10) гяе S(t), Λ - неотрицательно определенные симметрические матрицы размера (n ×n), a Q(t) - положительно определенная симметрическая матрица (q × q). Используем известные правила и обозначения : ( ) ( ) tr 5 ; 0 0 4 ; ) .( 3 ; 2 ; 1 ∑ = = + ⇔ ≡ = + = ∂ ∂ = ∂ ∂ i ii T T T T T T T T a A A A Ax x A B AB x A Ax x Ax x A x Ax Уравнение Беллмана для данной задачи имеет вид [ ] [ ] , 0 ) ( ) ( ) ( ) ( ) ( ) ( 2 1 ) ( ) ( ) , ( ) , ( max = ⎪⎭ ⎪ ⎬ ⎫ ⎪⎩ ⎪ ⎨ ⎧ + − + ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ ∂ ϕ ∂ + ∂ ϕ ∂ ∈ t u t Q t u t x t S t x u t B x t A t x t t x t T T T R u q x x x t T Λ − = ϕ 2 1 ) , ( 1 (5.11) Отсюда ⎪⎭ ⎪ ⎬ ⎫ ⎪⎩ ⎪ ⎨ ⎧ − ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ ∂ ϕ ∂ = ∈ ) ( ) ( ) ( 2 1 ) ( ) , ( max arg ) , ( * u U t u t Q t u u t B t x t x t T T u – 65 – Найдем максимум в последнем выражении по управлению с использованием необходимых условий экстремума и правила 1-3. Дифференцируя выражение в квадратных скобках по u и приравнивая результат нулю, получаем структуру оптимального управления: ) , ( ) ( ) ( ) , ( * u 1 t x t t B t Q x t T ∂ ϕ ∂ = − (5.12) Решение уравнения (5.11) ищется в виде x K x x t T 2 2 1 ) , ( = ϕ , (5.13) где K 2 (t) - неизвестная симметрическая матрица (n × n). Подставляя (5.13) в уравнение (5.11), приравнивая нулю квдратичные формы, получаем: ), ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( 2 1 2 2 2 2 t S t K t B t Q t B t K t A t K t K t A t K T T + − − − = − Λ − = ) ( 1 2 t K (5.14) Решая уравнение Риккати (5.14), можно получить явный вид оптимального управления (5.12) с полной обратной связью ) ( ) ( ) ( ) , ( * u 2 1 t K t B t Q x t T − = . (5.15) Минимальная величина функционала вычисляется по формуле 0 0 2 0 0 0 ) ( 2 1 ) , ( min x t K x x t J T − = ϕ − = Рассмотрим дискретный случай x(k+1) = A(k) x(k) + B(k) u(k), (5.16) y(k) = C(k) x(k) + D(k) u(k) k = 0, 1, …, N –1, с начальным условием x(0) = x 0 , (5.17) и функционалом качества ( ) ( ) ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( 1 0 N x N x k u k R k u k x k Q k x J T N k T T Λ + + = ∑ − = (5.18) где Q(k), Λ – неотрицательно определенные симметрические матрицы размера (n × n), R(k) - положительно определенная симметрическая матрица (q × q). Требуется найти управление u*(k, x) с полной обратной связью, минимизирующее функционал (5.19). Уравнение Беллмана принимают вид )] ) ( ) ( , 1 ( ) ( ) ( [ min ) , ( u k B x k A k B u k R u x k Q x x k B T T u + + + + = (5.19) Функция Беллмана B(k, x) ищется в форме – 66 – B(k, x) = x T P(k)x , (5.20) где P(k) – где неизвестная неотрицательно определенная симметричес- кая матрица размера (n × n). Подставляя (5.20) в (5.19) получаем, что в задаче (5.16)–(5.18) оптимальное управление определяется соотношением u*(k, x) = – K(k) х, , 1 , 0 − = N k (5.21) где K(k) - матрица коэффициентов усиления регулятора размера (q × n) K(k) = [R(k) + B T P(k+1)B(k)] –1 B T (k)P(k+1)A(k), , 1 , 0 − = N k (5.22) а матрица P(k) размера (n × n) удовлетворяет уравнению P(k) = Q(k) + K T (k)R(k)K(k) + [A(k) - B(k)K(k)] T P(k+l) [A(k) - B(k)K(k)], , 0 , 1 − = N k P(N) = Λ. (5.23) Минимальная величина функционала определяется но формуле min J = (5.24) 0 0 ) 0 ( x P x T Структурная схема регулятора системы управления с обратной связью по всем переменным состояния изображена на рис 5.2. x[k+1] = A[k]x[k] + B[k]u[k] y[k]=C[k]x[k] + D[k]u[k] u(k, x(k)) Задержка x(0) ∈R n x(k+1) x(k) u*(k) Рис. 5.2. Схема регулирования. Для каждого начального состояния x 0 оптимальный линейный регулятор порождает оптимальное программное управление u*(x, k) и оптимальную траекторию х*(k). – 67 – Последовательность выполнения Для синтеза оптимального регуляторов линейных стационарных систем в Control System Toolbox имеются функции решений уравнений Беллмана (табл. 5.1). Таблица 5.1. Функции Control System Toolbox Синтаксис Описание [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 cо среднеквадратичным функционалом качества без терминального члена: [ ] ∫ + + = 1 0 2 t t T T T dt Nu x Su u Qx x J , при этом вычисляются матрица P, являющаяся решением уравнения Риккати и собственные значения e матрицы (A – BK). Функция dlqr вычисляет матрицу коэффициентов регулирования по всем переменным состояния K для дискретной системы cо среднеквадратичным функционалом качества без терминального члена: ( ) ∑ − = + + = 1 0 ) ( ) ( ) ( ) ( ) ( ) ( N k T T T k Nu k x k Ru k u k Qx k x J , при этом вычисляются матрица P, являющаяся решением уравнения Риккати и собственные значения e матрицы (A – BK). Функция lqrd предназначена для синтеза оптимального дискретного регулятора непрерывной системы cо среднеквадратичным функционалом качества: [ ] ∫ + + = 1 0 2 t t T T T dt Nu x Su u Qx x J – 68 – В качестве параметра в функцию передается шаг дискретизации Ts, возвращаются значения матрицы K дискретного управления, матрица P, являющаяся решением уравнения Риккати и собственные значения e матрицы системы управления, полученный в результате дискретизации. При использовании всех команд синтеза оптимального линейного регулятора по всем переменным состояния на исходные данные накладываются следующие ограничения: − система, определяемая матрицами (A, B) должна быть стабилизируема; − должны выполняться неравенства S> 0, Q – NR –1 N T >0, − пара матриц (Q – NR –1 N T , A – BR –1 B T ) не должна иметь наблюдаемые моды с собственными значениями на действительной оси. Для выполнения практической работы необходимо выполнить следующие действия: 1. Изучить теоретические сведения. 2. Запустить систему MATLAB. 3. Создать ss-объекта, в соответствии с заданным вариантом. 4. Определить матрицы P(k), K(k). 5. Построить оптимальный регулятор u*(k, x) = – K(k) х. 6. Определить значение функционала на оптимальном управлении. 7. Построить графики динамики системы при ненулевых начальных условиях. 8. Ответить на контрольные вопросы. 9. Оформить отчет и защитить работу. Методический пример Ниже приведен пример script-файла, моделирующего систему управления и синтез оптимального регулятора. % Параметры системы A=[1 0; -2 1]; B=[1 0; 1 0]'; % Параметров критерия качества управления Q=[1/2 0;0 1/2]; – 69 – R=[1/2 0; 0 1/2]; % Время регулирования T=10; % Величина шага SS=0.5; % Количество шагов N=T/SS % Вычисление параметров регулятора [k p e]= dlqr(A, B, Q, R) x = zeros(2, N); u= zeros(2, N-1); % Начальные условия x(1,1)=2; x(2,1)=1; % Построение графиков динамики системы for i=1:N-1, u(:, i)= - k*x(:, i);, x(:, i+1)=A*x(:, i)+B*u(:, i); end x1= x(1,:); x2= x(2,:); t = 0:SS:T-SS; subplot(4, 1, 1); plot(t, x1, 'b'); subplot(4, 1, 2); plot(t, x2, 'g'); subplot(4, 1, 3); plot(SS:SS:T-SS, u(1, :), 'y'); subplot(4, 1, 4); plot(SS:SS:T-SS, u(2, :), 'r'); Результаты вычисления следующие: значения параметров оптимального регулятора – k = 0.8229 -0.1771 – 70 – 0.8229 -0.1771 p = 3.7343 -1.4114 -1.4114 1.1614 e = 0.1771 + 0.1771i 0.1771 - 0.1771i графики динамики системы – рис. 5.3. Рис. 5.3. Динамика состояний и управлений: x 1 , x 2 , u 1 , u 2 На рис. 5.4 – 5.7 показан другой пример синтеза оптимального линейного регулятора. – 71 – Рис. 5.4. x 1 (k). Рис. 5.5. x 2 (k). – 72 – Рис. 5.6. u 1 (k). Рис. 5.7. u 2 (k). – 73 – Отчет о работе Отчет оформляется в соответствии с требованиями, предъявляемыми к оформлению работ в вузе, и должен содержать: 1. Титульный лист. 2. Наименование и цель работы. 3. Постановка задачи в соответствии с вариантом. 4. Порядок и результаты определения вычисления матриц P и K. 5. Уравнение Белламана для решаемой задачи. 6. Значение минимальной величины функционала качества управления. 7. Результаты моделирования динамики системы в числовом и графическом виде. 8. Анализ результатов и выводы. Контрольные вопросы 1. Сформулировать основную задачу оптимального управления. 2. Дать определение критерия качества. Привести примеры критериев и дать их физическую интерпретацию. 3. Вывести необходимое условие оптимальности. 4. Показать, что для применения метода необходимо, чтобы система была стабилизируема. 5. Разработать в среде MATLAB интерфейс для интерактивного построения регулятора с полной обратной связью. 6. Выяснить влияние задержки при синтезе дискретного регулятора непрерывной системы. – 74 – |