Главная страница
Навигация по странице:

  • Последовательность выполнения

  • Методический пример

  • Отчет о работе

  • Контрольные вопросы

  • ЛАБы№1. Московская государственная академия приборостроения и информатики


    Скачать 1.37 Mb.
    НазваниеМосковская государственная академия приборостроения и информатики
    Дата25.11.2022
    Размер1.37 Mb.
    Формат файлаpdf
    Имя файлаЛАБы№1.pdf
    ТипУчебное пособие
    #812012
    страница6 из 8
    1   2   3   4   5   6   7   8
    Краткие сведения из теории
    Пусть поведение модели объекта управления описывается обыкновенным дифференциальным уравнением
    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 матрицы (ABK).
    Функция 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 матрицы (ABK).
    Функция 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 –

    1   2   3   4   5   6   7   8


    написать администратору сайта