=Paper= {{Paper |id=Vol-1825/p30 |storemode=property |title= Стабилизация перевернутого маятника с неподвижной опорой (Stabilization of the inverted pendulum with stationary pivot point) |pdfUrl=https://ceur-ws.org/Vol-1825/p30.pdf |volume=Vol-1825 |authors=Roman I. Shevchenko }} == Стабилизация перевернутого маятника с неподвижной опорой (Stabilization of the inverted pendulum with stationary pivot point)== https://ceur-ws.org/Vol-1825/p30.pdf
    Стабилизация перевернутого маятника с неподвижной
                         опорой

                                                  Р.И. Шевченко
                                                oma170@hotmail.com
                              Уральский федеральный университет (Екатеринбург)




                                                      Аннотация
                       В классе импульсных управлений решается задача линейно-
                       квадратичной стабилизации верхнего неустойчивого положения
                       равновесия математического маятника. При этом исходная непре-
                       рывная задача стабилизации сводится к эквивалентной дискретной
                       задаче стабилизации, для решения которой используется дискрет-
                       ное матричное уравнение Риккати. Исследуется сходимость реше-
                       ния дискретной задачи стабилизации к решению непрерывной за-
                       дачи стабилизации при шаге дискретизации задачи, стремящемся
                       к нулю.
                       Ключевые слова: линейно-квадратичный регулятор, матричное
                       уравнение Риккати, импульсные управления, оптимальная стаби-
                       лизация




1    Постановка задачи
  Пусть ϕ — угловое отклонение маятника относительно верхнего положения равновесия. Тогда его дви-
жение описывается дифференциальным уравнением
                                     ml2 ϕ̈ = mgl sin ϕ + M (t), t ∈ R+ = (0, +∞),                                  (1)
                                                                                                                     +
где g — ускорение свободного падения, l — длина невесомого стержня, m — масса груза, а M (t), t ∈ R ,
— управляющий момент. Линеаризуя уравнение (1) относительно положения равновесия ϕ̇(t) ≡ ϕ(t) ≡ 0,
получаем уравнение
                                    ml2 ϕ̈ = mglϕ + M (t), t ∈ R+ .                                (2)
Вводя обозначения
                                                   g          M (t)      +
                                              k=     , u(t) =       , t∈R ,
                                                   l          ml2
приходим к уравнению
                                                 ϕ̈ = kϕ + u(t), t ∈ R+ .                                           (3)
  Для уравнения (3) ставится задача: найти стабилизирующее управление, минимизирующее функционал
качества переходного процесса               Z ∞
                                                 2
                                                 ϕ (t) + u2 (t) dt.
                                                               
                                     J(u) =                                                   (4)
                                                       0

Copyright c by the paper’s authors. Copying permitted for private and academic purposes.
In: G.A. Timofeeva, A.V. Martynenko (eds.): Proceedings of 3rd Russian Conference "Mathematical Modeling and Information
Technologies" (MMIT 2016), Yekaterinburg, Russia, 16-Nov-2016, published at http://ceur-ws.org




                                                            240
Уравнению (3) можно поставить в соответствие эквивалентную линейную автономную систему дифферен-
циальных уравнений
                                          ẋ = Ax + Bu(t),                                   (5)
где                                                                                         
                                                T                0     1                  0
                            x(t) =    ϕ    ϕ̇        , A=                       , B=               .
                                                                  k     0                  1
   Заменим исходную задачу оптимальной стабилизации задачей стабилизации системы (5), в которой
вектор x имеет размерность n, вектор управления u — размерность m, а A и B — произвольные матрицы
размерности n × n и n × m соответственно. Для системы (5) требуется найти стабилизирующее управление
u, минимизирующее функционал качества переходного процесса вида
                                       Z ∞
                                            T
                                            x (t)Qx(t) + uT (t)Ru(t) dt.
                                                                    
                                J(u)
                                 e   =                                                           (6)
                                            0

Здесь R — симметричная положительно определенная матрица размерности m × m, и Q — симметричная
положительно полуопределенная матрица размерности n × n.
  Стабилизирующие управления выбираются в классе кусочно-постоянных функций

                                     u(t) ≡ up , t ∈ [hp, (h + 1)p), p ≥ 0,                             (7)

где h — заданный постоянный шаг дискретизации.

2     Переход к дискретной задаче стабилизации
    Вводим функции
                                           xp (ϑ) = x(ph + ϑ), p ≥ 1.
Cистеме (5) поставим в соответствие счетную систему дифференциальных уравнений

                                                dxp
                                                    = Axp + Bup−1                                       (8)
                                                dϑ
на отрезке ϑ ∈ [−h, 0] с краевыми условиями xp (−h) = xp−1 (0), p ≥ 1.
  Общее решение p-ой линейной автономной системы (8) определяется формулой
                                                     Z ϑ
                     xp (ϑ) = eA(ϑ+h) xp (−h) +            eA(ϑ−τ ) dτ Bup−1 , ϑ ∈ [−h, 0], p ≥ 1.      (9)
                                                      −h

Введем обозначения x
                   bp = xp (0). Полагая в формулах (9) ϑ = 0, получим систему разностных уравнений

                                          x
                                          bp = Ab      b p−1 , p ≥ 1,
                                               bxp−1 + Bu                                              (10)

                                     bp , p ≥ 1. При этом значение x
для определения неизвестных значений x                             b0 считаем заданным. В системе (10)
матрицы A и B определяются формулами
         b   b
                                                              Z 0
                                          b = eAh , B
                                          A         b=                 e−Aτ dτ B.                      (11)
                                                                  −h

   Описанная процедура позволяет свести задачу интегрирования непрерывной системы (5) к нахождению
решения разностной системы (10), что представляется удобным при использовании кусочно-постоянных
управлений. Данная процедура позволяет также, используя решение разностной системы (10) и формулы
(9), заменить непрерывный критерий качества переходного процесса дискретным вида
                                          ∞ h
                                          X                                     i
                                 J(u)
                                 b    =          bT
                                                 xp Qb
                                                    b xp + 2b
                                                            xT b
                                                             p N u p + u Tb
                                                                         p Ru p   .                    (12)
                                          p=0




                                                            241
Здесь матрицы Q̂, R̂, N̂ , зависящие только от h, равны

                                     b = 0 eAT (ϑ+h) QeA(ϑ+h) dϑ,
                                          R
                                    Q       −h

                             T
                               R 0 hR ϑ AT (ϑ−τ )       R ϑ A(ϑ−τ ) i
                         R
                         b=B
                                −h   −h
                                         e        dτ Q   −h
                                                            e      dτ dϑB + Rh,                 (13)
                                        h                          i
                               b = 0 eAT (ϑ+h) Q ϑ eA(ϑ−τ ) dτ dϑB.
                                   R                 R
                              N      −h                −h


  Предполагаем, что выполнены достаточные условия существования решения дискретной задачи опти-
мальной стабилизации (10), (12) (cм. [2]).


3    Решение дискретной задачи стабилизации
  Применяется известная методика решения дискретной задачи оптимальной стабилизации, использую-
щая дискретное уравнение Риккати (cм. [2])

                        bT X A
                      X=A         bT X B
                             b − (A    b+N
                                         b )(R
                                             b+B     b −1 (B
                                               b T X B)    bTX A b T ) + Q.
                                                               b+N       b                      (14)

Оптимальное стабилизирующее управление u0p дискретной задачи (10), (12) определяется формулой (cм.
[2], [4])
                                                  −1             
                        u0p = −K
                               bxbp = − Bb T PbB
                                               b+R
                                                 b       b T PbA
                                                         B       bT x
                                                               b+N    bp ,                    (15)

в которой матрица Pb является положительно определенным решением уравнения (14).
   Для нахождения решения нелинейного матричного уравнения (14) используется метод перехода к спек-
тральной задаче для симплектической матрицы (cм. [1], [4])
                                                                              !
                                              A
                                              e+ FAe−T Q    e−T
                                                       e −F A
                                    M
                                    c=
                                                  −T        −T
                                                                                  .             (16)
                                                −A
                                                 e Q e    A
                                                          e

Здесь
                                            A b−B
                                            e=A bRb−1 N
                                                      b T,

                                           Q b−N
                                           e=Q bRb−1 N
                                                     b T,                                       (17)
                                               F =B
                                                  bRb−1 B
                                                        bT.

   Предполагаем, что матрица M
                             c не имеет собственных значений, лежащих на единичной окружности, что
соответствует достаточным условиям существования решения дискретной задачи оптимальной стабилиза-
ции. Тогда матрица Mc имеет устойчивое инвариантное подпространство, т. е. подпространство, базисные
векторы которого соответствуют собственным значениям матрицы M c, по модулю меньшим единицы. Тогда
базисная матрица устойчивого инвариантного подпространства допускает представление
                                                      
                                                  V1
                                        V =                , det(V1 ) 6= 0.                     (18)
                                                  V2

    Знание матрицы V позволяет найти требуемое решение дискретного уравнения Риккати

                                                  Pb = V2 V1−1                                  (19)

и, следовательно, оптимальное стабилизирующее управление дискретной задачи.
   Для исходной задачи оптимальной стабилизации маятника n = 2, m = 1. Матрицы Q и R равны
                                                           
                                                   1   0
                                         Q=                     , R = 1.
                                                   0   0




                                                       242
Параметры дискретной задачи стабилизации (10), (12) определяются формулами

                                                         √                  √        !
                                                      ch( kh)       √1 sh( kh)
                                                 A
                                                 b=√       √          k   √            ,
                                                      k sh( kh)       ch( kh)
                                                            √              !
                                                         1
                                                         k  ch(   kh)  −  1
                                                B
                                                b=                 √            ,
                                                            √1 sh( kh)
                                                              k
                                                      √                 √            
                                                  sh(2 kh)      h  ch(2 kh)        1
                                                      √
                                                     4√k
                                                            +   2       4k    −  4k                                                     (20)
                                             Q
                                             b=                         √               ,
                                                  ch(2 kh)      1  sh(2 kh)       h
                                                     4k     −  4k
                                                                         √
                                                                      4k k
                                                                              −   2k
                                                                     √           √
                                               b = 32 + 1 h + sh(2 √kh) − 2sh(√kh) ,
                                                            
                                              R     2k             4k2 k       k2 k
                                                            √         √          
                                                      1 sh(2√ kh)    sh( kh)    h
                                                                   −   √     +
                                             b =  k  4 √k
                                             N                          √k
                                                                                2  
                                                                                      .
                                                      1   ch(2 kh)               3
                                                     k2       4    − ch(   kh) + 4




4   Поведение решения дискретной задачи стабилизации маятника при h, стре-
    мящемся к нулю
                                                                                               b −→ 0
  При шаге дискретизации задачи h, близком к нулю, возникает особенность, связанная с тем, что R
при h −→ 0. Для ее устранения применялся аналитический метод степенных рядов по h.
  Матрицы A,b B,
              b Q,
                 b R,
                    b N
                      b можно представить в виде:


                                                                             0 k6
                                                      k                        
            b = P∞ Ab i                  1      10             0 0    2
            A    i=0 i h =                          h+   + 2        h   +      2        h3 + O(h4 ),
                                         0      01         0 k2  k           k
                                                                              6    0
                                                   1               
                        b= ∞ B   b i        0                       0
                                                            h2 +          h3 + O(h4 ),
                           P                           2
                       B     i=0 i h =          h+                  k
                                            1          0            6

                                                     0 21
                                                                k       
                       P∞ b i         1 0                      2           0                                                             (21)
                    Q = i=0 Qi h =
                    b                         h+     1        h +      3         h3 + O(h4 ),
                                      0 0            2   0             0 13
                                      Rb = P∞ R   b i            4
                                              i=0 i h = h + O(h ),
                                                      1 
                                  Nb = P∞ N   b i       6    h3 + O(h4 ).
                                          i=0 i h =     0

Устраняя особенность в формулах (17), получим

                                                  k                         k 
          e = P∞ Ae i                1    0 10             0       2         0
          A    i=0 i h =                         h+  + 2         h   +      2
                                                                                   6   h3 + O(h4 ),
                                     0    k 01         0 k2                k −1
                                                                             6     0
                                                     1
                                                              k        
                    e= ∞ Q  e i       1 0         0                      0
                                                           h2 +                h3 + O(h4 ),
                       P
                    Q   i=0 i h =            h+   1
                                                     2               3                                                                   (22)
                                      0 0         2  0               0 13
                                                                  1
                                                  0 21
                                                                        
                       P∞             0 0                                0
                    F = i=0 Fi hi =          h+   1        h 2
                                                               +     4
                                                                         k     h3 + O(h4 ).
                                      0 1         2  0               0   3


                 e−T равна
При этом матрица A

            ∞                                                               k                           1−k2
                                                                                                                      
    e−T =
            X
                  e−T hi =       1       0                0 −k                       0                   0
    A             Ai                             +                       h+      2
                                                                                     k       h2 +                6        h3 + O(h4 ).   (23)
            i=0
                                 0       1               −1 0                    0   2                  − k6    0




                                                                         243
  Подставляя (22) и (23) в (16), получим выражение для матрицы Mc вида
                                                                    k
                                                                                       − 21
                                                                                        
                          1 0 0 0            0 1 0       0           2  0          0
                        0 1 0 0   k 0 0 −1                      0  k          1
         P ∞       i                                                    2          2    0   h2 +
     M
     c=
           i=0 Mi h =  0 0 1 0  +  −1 0
               c                                         h + 
                                                     0 −k          0 − 12        k
                                                                                   2    0 
                          0 0 0 1            0 0 −1 0                1                  k
                                                                     2  0          0    2
                                          k  1
                                                                                                     (24)
                                     0            0
                                                     
                                          6  4
                                  k2 −1 0   0   −  k 
                              +     6              3  h3 + O(h4 ).
                                  −k            1−k2 
                                      3   0  0     6
                                          1
                                     0    6 − k6  0

                             c − I4 λ)e = 0 будем искать в виде:
Решение спектральной задачи (M
                                                ∞
                                                X                  ∞
                                                                   X
                                                         i
                                          λ=          λi h , e =         ei hi .                     (25)
                                                i=0                i=0

В этом случае получим уравнение
                                     " j
                                   +∞ X
                                                                          #
                                   X                              
                                                cj−i − I4 λj−i ei hj = 0.
                                                M                                                    (26)
                                   j=0    i=0


Но M
   c0 = I4 и, следовательно, λ0 = 1. Тогда вместо (26) получаем

                                 +∞ X
                                     "j−1                    #
                                 X                       
                                            cj−i − I4 λj−i ei hj−1 = 0.
                                            M                                                        (27)
                                  j=1    i=0

  Приравнивая в (27) нулю коэффициенты при степенях h, приходим к рекуррентной последовательности
уравнений
                                j−1 
                                X                   
                                      cj−i − I4 λj−i ei = 0, j ≥ 1.
                                      M                                                      (28)
                                   i=0

Вычисляя устойчивые решения спектральной задачи
                                                 
                                        c1 − I4 λ1 e0 = 0,
                                        M

соответствующей j = 1, имеем
                                                                         
                                                                    √−i
                                         √                        i k−i 
                                  λ11 = − k − i            e10 =  √      ,
                                                                    k−i 
                                                                      1
                                                                                                   (29)
                                                                     √i
                                        √                        −i k + i 
                                 λ21 = − k + i            e20 =   √       .
                                                                    k+i 
                                                                      1

  При j = 2 уравнение (28) переходит в
                                                           
                                    c1 − I4 λ1 e1 = I4 λ2 − M
                                    M                       c2 e0 .                                  (30)

По условию теоремы Кронекера-Капелли система линейных алгебраических уравнений (30) разрешима
относительно e1 тогда и только тогда, когда (см. [3])
                                                                           
                           rank Mc1 − I4 λ1 = rank M   c1 − I4 λ1 , I4 λ2 − M
                                                                            c2 .          (31)




                                                         244
Из условия (31) находим, что
                                                   λ12 = k2 − 2i     e11 = e10 ,
                                                                                                 (32)
                                                   λ22 = k2 + 2i     e21 = e20 .
    Таким образом, учитывая (29) и (32), получаем, что матрица (18) равна
                                                            
                                             √−i      √ i
                              ∞
                             X             i k − i −i k + i 
                        V =      V i hi =  √        √        (1 + h + O(h2 )).                 (33)
                                             k−i      k+i 
                             i=0
                                               1        1

Тогда устойчивое решение (19) уравнения Риккати (14) примет вид:

                     ∞
                                  q               √                √       
                    X               2(k 2 + 1)(k +   k 2 + 1)   k +   k 2+1
               Pb =     Pbi hi =            √                q      √       + O(h2 ).          (34)
                                         k+ k +1 2                       2
                                                               2(k + k + 1)
                    i=0


При этом матрица K
                 b в (15) определяется формулой

                              ∞
                              X
                                    b i hi =
                                                       √            q     √        
                        K
                        b =         K              k+       k2 + 1    2(k + k 2 + 1) + O(h).     (35)
                              i=0


  Непосредственной проверкой можно убедиться, что матрица Pb0 в (34) удовлетворяет непрерывному
уравнению Риккати (см. [2])
                               XBR−1 B T X − AT X − XA − Q = 0.                             (36)
Тогда решение непрерывной задачи стабилизации определяется формулой (см. [2])

                                               u0 = −Kx = −R−1 B T Pb0 x.                        (37)

Вычисляя K в формуле (37), получаем
                                   √       q     √        
                             K = k + k2 + 1  2(k + k 2 + 1) .                                    (38)

                               b −→ K при h −→ 0. Таким образом, при шаге дискретизации, стремящемся
   Из (35) и (38) следует, что K
к нулю, решение дискретной задачи оптимальной стабилизации сходится к решению непрерывной задачи
оптимальной стабилизации.

5    Численное моделирование процедуры стабилизации маятника
  Для оценки эффективности описанной процедуры стабилизации маятника было проведено численное
моделирование при k = 1 в уравнении (3). На рисунках 1—4 приведены зависимости углового отклонения ϕ,
угловой скорости ϕ̇ и управления u от времени в случае, когда движение маятника описывается линейным
дифференциальным уравнением (2). Рисунок 5 отвечает случаю, когда движение маятника описывается
нелинейным дифференциальным уравнением (1). На приведенных графиках по оси абсцисс откладывается
время, по левой оси ординат откладываются значения ϕ и ϕ̇, а по правой оси ординат откладываются
значения u.




                                                               245
Рис. 1: Стабилизация линейного маятника импульсным управлением с h = 10.




Рис. 2: Стабилизация линейного маятника импульсным управлением с h = 1.




Рис. 3: Стабилизация линейного маятника импульсным управлением с h = 0, 1.




   Рис. 4: Стабилизация линейного маятника непрерывным управлением.




Рис. 5: Стабилизация нелинейного маятника импульсным управлением с h = 1.

                                   246
Список литературы
   [1] Kh. D. Ikramov. Numerical solution of matrix equations. Moscow, Nauka, 1984. (in Russian) = Х. Д.
       Икрамов. Численное решение матричных уравнений. Москва, Наука, 1984.
   [2] H. Kwakernaak, R. Sivan. Linear optimal control systems. Moscow, Mir, 1977. (in Russian) = Х. Ква-
       кернаак, Р. Сиван. Линейные оптимальные системы управления. Москва, Мир, 1977.

   [3] V. V. Prasolov. Problems and theorems in linear algebra. Moscow, Nauka, 1996. (in Russian) = В. В.
       Прасолов. Задачи и теоремы линейной алгебры. Москва, Наука, 1996.
   [4] M. Jungers, C. Oara, H. Abou-Kandil, R. Stefan. General matrix pencil techniques for solving discrete-
       time nonsymmetric algebraic Riccati equations. SIAM J. Matrix Anal. Appl., 31(3):1257–1278, 2009.




                                                   247
  Stabilization of the inverted pendulum with stationary pivot point
Roman I. Shevchenko
Ural Federal University (Yekaterinburg, Russia)

   Abstract. Piecewise constant controls are used to stabilize the unstable vertical stationary point of a
pendulum. The initial continuous-time problem is changed by the discrete-time problem. Then the discrete-
time algebraic Riccati equation is solved in order to obtain the desired control. Under special consideration is the
convergence of the continuous-time problem solution to the discrete-time problem solution as the discretization
step comes to zero.

   Keywords: linear-quadratic regulator, algebraic matrix Riccati equation, piecewise constant control, optimal
stabilization.




                                                        248