Численное решение терминальных задач управления для обратимых систем (1024983), страница 5
Текст из файла (страница 5)
Таким образом значения pjи p0j являются параметрами, изменяя которые, мы можем влиять на свойствафункций µi (t) + µsi (t) и, следовательно, на свойства получаемой согласно (2.8)кинематической траектории.Поскольку сплайн p(t) должен равняться нулю на концах интервала времени управления вместе со своей первой производной, то p0 = pn = 0 иp00 = p0n = 0.
При любом выборе остальных значений p(tj ) и p0 (tj ) j = 1, n − 1,сплайн p(t) будет непрерывным вместе со своей первой производной на [0, t∗ ].Для непрерывности его второй производной p00 (tj ) значения p0j должный удовлетворять условиямaj p0j−1 + 2p0j + (1 − aj )p0j+1 = ej ,j = 1, n − 1,30где∆j+1aj =,∆j + ∆j+1pj − pj−1pj+1 − pjej = 3 aj+ (1 − aj ).∆j∆j+1Учитывая то, что p00 = p0n = 0, получаем следующую систему уравнений дляопределения значений p0j :0p 0 = 0,aj p0j−1 + 2p0j + (1 − aj )p0j+1 = ej , p0 = 0.nj = 1, n − 1,(2.13)Данная система линейных алгебраических уравнений всегда имеет единственное решение [29].Следовательно, задав любые значения pij , j = 1, n − 1, i = 0, 3 и решив2систему (2.13), получим функции pi (t) ∈ C[0,t.
Тогда функции∗]µsi (t) = t(t − t∗ )pi (t),µ̇si (t) = (2t − 1)pi (t) + t(t − t∗ )p0i (t),µ̈si (t) = 2pi (t) + 2(2t − 1)p0i (t) + t(t − t∗ )p00i (t).равны нулю на концах отрезка T . Поэтому получаем функции µ̂i = µi (t) ++ µsi (t), i = 0, 3, для которых Λ(µ̂i ) также удовлетворяет удовлетворяютграничным условиям (2.7) и, согласно теореме 1 из [21], можно использовать функции µ̂i , i = 0, 3 для построения кинематической траектории, азатем, по формуле (2.5) найти реализующее ее управление. В результатебудет получено pij -параметрическое множество решений терминальной задачи j = 1, n − 1, i = 0, 3. Для выбора значений pij можно использоватькритерий (2.11) и решить соответствующую задачу конечномерной оптимизацииJ(pij , i = 0, 3, j = 1, n − 1) → min .При наличии каких-либо дополнительных ограничений, как и в случае полиномиальных расширений (см.
c. 27), получаем задачу конечномерной оптими-31зации при наличии ограниченийJ(pij , i = 0, 3, j = 1, n − 1)→ min,u∈U,ω∈Ωкоторая так же может быть решена при помощи численных методов.Отметим, что количество внутренних узлов в сплайнах может выбираться достаточно большим и ограничено лишь вычислительными трудностямирешения задачи конечномерной оптимизации.2.4. Другие способы задания кинематическойтраектории. Кубические В-сплайныРассмотрим альтернативные способы выбора функций µi (t) из (2.8) дляпостроения кинематической траектории. Будем искать функции µi (t) в виделинейной комбинации кубических B-сплайнов, построенных на отрезке времени [0, t∗ ] по сетке с m + 1 узлом 0 = t0 < t1 < .
. . < tm = t∗ :µi (t) =m+1X(3)bij Bj (t) i = 0, 3,(2.14)j=−1(3)где bij — подлежащие определению неизвестные коэффициенты, а Bj (t) —кубический В-сплайн, задающийся, в случае равномерной сетки с шагом hследующим соотношением:31 t − tj+2 ,h632 21t−tt−tjj−,+2hh32(3)t − tj 3t − tj 2Bj (t) = 2 + 1−2,hh321t − tj 32−,h60,t ∈ [tj−2 , tj−1 ];t ∈ [tj−1 , tj ];t ∈ [tj , tj+1 ];t ∈ [tj+1 , tj+2 ];иначе.(3)Функция Bj (t) ∈ C 2 и отлична от нуля только на 4-х последовательных отрезках [tj−2 , tj−1 ], [tj−1 , tj ], [tj , tj+1 ], [tj+1 , tj+2 ]. Отрезок [tj−2 , tj+2 ] называется(3)носителем функции Bj (t).32Граничные условия (2.7) дают по 6 линейных уравнений на коэффициентыbij для каждой функции µi (t) i = 0, 3 из (2.14).
Поэтому в (2.14) значениеm должно быть равно не менее 3-м, а каждая из точек t = 0, t = t∗ должнапринадлежать носителю не менее чем 3-х разных B-сплайнов. Следовательно решив эту систему линейных уравнений, можно использовать функцииµi (t) вида (2.14) для задания кинематической траектории по соотношениям (2.8), а затем по формуле (2.5) найти реализующее ее управление.
Еслив (2.14) m > 3, то получаем bij -параметрическое семейство решений. Длявыбора оставшихся коэффициентов bijj = 2, m − 2 можно использовать кри-терий (2.11) и решить соответствующую задачу конечномерной оптимизацииJ(bij , i = 0, 3, j = 2, m − 2) → min .При наличии каких-либо дополнительных ограничений, как и в случае полиномиальных расширений (см. c. 27), получаем задачу конечномерной оптимизации при наличии ограниченийJ(bij , i = 0, 3, j = 2, m − 2) |u∈U,ω∈Ω → min,которая так же может быть решена при помощи численных методов.2.5. Стабилизация программной траекторииУправление, построенное в разделах 2.2, 2.3 с помощью (2.5), является программным. Из-за ошибок его реализации, а также в силу различных возмущающих факторов, КА будет двигаться по некоторой траекторииΛ = (λ0 , λ1 , λ2 , λ3 ), отличной от программной траектории Λ(t).
Найдем управление, стабилизирующее программную траекторию.Из-за условия нормировки (2.2) из четырех ошибок ei = λi − λi (t), i = 0, 3реализации программной кинематической траектории Λ(t) лишь три являются независимыми.33Построим стабилизирующее управление в виде нестационарной обратнойсвязи, из условия экспоненциального убывания ошибок e1 , e2 , e3 .Пусть эти ошибки удовлетворяют следующей системе системе уравненийλ̈i − λ̈i (t) + k1i (λ̇i − λ̇i (t)) + k0i (λi − λi (t)) = 0, i = 1, 3,(2.15)где постоянные kij положительны.Запишем управление (2.5) для текущего состояния,u = 2I(Λ−1 ◦ Λ̈ − Λ−1 ◦ Λ̇ ◦ Λ−1 ◦ Λ̇) + 4Λ−1 ◦ Λ̇ × IΛ−1 ◦ Λ̇.(2.16)В работе [28] показано, что если из управления (2.16) с помощью условияpнормировки (λ0 = 1 − λ21 − λ22 − λ23 в области λ0 > 0, а в области λ0 < 0pнеобходимо использовать равенство λ0 = − 1 − λ21 − λ22 − λ23 ) исключить λ0 ,λ̇0 , λ̈0 , а затем из полученного выражения для управления исключить λ̈1 , λ̈2 ,λ̈3 , воспользовавшись системой (2.15), то полученное управление стабилизирует программную траекторию системы (2.1) и имеет видu = u(λ1 , λ2 , λ3 , λ̇1 , λ̇2 , λ̇3 , t).Если производные λ̇1 , λ̇2 , λ̇3 записать как функции λ1 , λ2 , λ3 , ω (с помощью кинематических уравнений и условия нормировки), то стабилизирующееуправление будет представлено в виде функции uст = uст (λ1 , λ2 , λ3 , ω, t).
В [28]показано, что аналогичные управления можно построить и в областях λi > 0(λi < 0) i 6= 0.Однако получение расчетных формул для управления, стабилизирующего программную траекторию, предложенным выше способом представляетсянесколько громоздким. Получим расчетные формулы для управления uст == uст (λ1 , λ2 , λ3 , ω, t) исключив λ0 , λ̇0 , λ̈0 , λ̇1 , λ̈1 , λ̇2 , λ̈2 , λ̇3 , λ̈3 на этапе получения управления (2.5). Для этого запишем кинематические уравнения из34системы (2.1) в координатной форме2λ̇0 = −λ1 ω1 − λ2 ω2 − λ3 ω3 , 2λ̇ = λ ω − λ ω + λ ω ,10 13 22 3(2.17)2λ̇2 = λ3 ω1 + λ0 ω2 − λ1 ω3 , 2λ̇3 = −λ2 ω1 + λ1 ω2 + λ0 ω3 .Используя обозначения Λ̄ = (λ1 , λ2 , λ3 ), 0 −ω1 −ω2 −ω3 ω3 −ω2 ω1 0 ω1 0ω3 −ω2 , M0 (ω) = ω2 −ω3 0M (ω) = ,ω1 ω2 −ω3 0ω1 ω3 ω2 −ω1 0ω3 ω2 −ω1 0 λ0 −λ3 λ2 N0 (Λ) = λ3λ0 −λ1 −λ2 λ1λ0из (2.1) и (2.17) получимΛ̇ = M (ω)Λ,Λ̄˙ = M0 (ω)Λ,Λ̄˙ = N0 (Λ)ω,¨ = M (ω)Λ̇ + N (Λ)ω̇,2Λ̄00или, с учетом динамических уравнений,¨ = M (ω)M (ω)Λ + N (Λ)(I −1 u − I −1 ω × Iω).2Λ̄00(2.18)Поскольку det N0 (Λ) = λ30 + λ0 (λ21 + λ22 + λ23 ) 6= 0 при λ0 6= 0, то из (2.18) можнонайти управление¨ − M (ω)M (ω)Λ) + ω × Iω.u = IN0−1 (Λ)(2Λ̄0Далее, записав (2.15) в виде¨ = F (Λ̄, Λ̄,˙ t),Λ̄(2.19)35где λ̈1 (t) − k11 (λ̇1 − λ̇1 (t)) − k01 (λ1 − λ1 (t))˙ t) = F (Λ̄, Λ̄, λ̈2 (t) − k12 (λ̇2 − λ̇2 (t)) − k02 (λ2 − λ2 (t))λ̈3 (t) − k13 (λ̇3 − λ̇3 (t)) − k03 (λ3 − λ3 (t)),из (2.19) получим˙ t) − M (ω)M (ω)Λ) + ω × Iω.u = IN0−1 (Λ)(2F (Λ̄, Λ̄,0(2.20)Воспользовавшись формулой Λ̄˙ = N0 (Λ)ω из (2.20) получимu = IN0−1 (Λ)(2F (Λ̄, ω, t) − M0 (ω)M (ω)Λ) + ω × Iω.(2.21)pЕсли в правой части выражения (2.20) положить λ0 = 1 − λ21 − λ22 − λ23 , вpобласти λ0 > 0 и λ0 = − 1 − λ21 − λ22 − λ23 , в области λ0 < 0, то оно совпадаетс функцией uст (λ1 , λ2 , λ3 , ω, t).2.6.
Учет ограниченийСистема управления, как правило, характеризуется наличием ограничений, что связано с ограниченностью ресурсов управления. Будем предполагать, что на управления наложены ограничения|ui | 6 ui,max ,i = 1, 3.(2.22)Программное управление (см. разделы 2.2, 2.3 и 2.4), реализующее кинематическую траекторию, получаемую из решения задачи конечномерной оптимизации, не всегда удовлетворяет ограничениям (2.22). Это влечет нарушениеограничений (2.22) и для стабилизирующего управления uст , построенного впункте 2.5. Одним из возможных подходов к решению данной проблемы является использование управления с насыщением, состоящее в замене обратнойсвязи u = uст = uст (λ1 , λ2 , λ3 , ω, t) = (u1,ст , u2,ст , u3,ст )T на обратную связьu = ũ = ũ(λ1 , λ2 , λ3 , ω, t) = (ũ1 , ũ2 , ũ3 )T , гдеui,ст ,|ui,ст | 6 ui,max ;ũi = sign(ui,ст ) ui,max , |ui,ст | > ui,max .36Если программное управление удовлетворяет ограничению (2.22) при строгих неравенствах, то при достаточно малых положительных постоянных kijстабилизирующее управление uст тоже удовлетворяет тем же неравенствам.В таких случаях на интервале времени управления ũ = uст .
В остальныхслучаях управления ũ и uст не совпадают. Использование управления ũ снасыщением расширяет множество программных траекторий, стабилизируемых управлением, удовлетворяющим ограничениям (2.22) [83].В случае, когда программное управление не удовлетворяет ограничению(2.22), то и стабилизирующее управление uст в общем случае так же не удовлетворяет этому ограничению, причем разность между uст и управлениемс насыщением ũ может быть достаточно большой.
Данное рассогласованиеведет к наличию ошибки в конечном положении твердого тела и наличию ненулевых угловых скоростей к концу времени переориентации, для ликвидациикоторых необходимо использовать алгоритм стабилизации заданного углового положения твердого тела. Поэтому было бы желательно получить такойалгоритм нахождения программного управления, который бы гарантировалвыполнение ограничения (2.22).