增量非線性動態逆控制(INDI)

非線性動態逆基本理論

​ 飛機並不總是像線性系統那樣運行,在某些飛行狀態下,它們的行為是非線性的。 為瞭控制它們,需要一個非線性控制器。 這個控制器應該盡可能的健壯,因為模型永遠不可能完全匹配現實。 本節我們將研究一種叫做非線性動態逆的控制技, 它已被證明是一種簡單的控制非線性系統的方法。 此外,它還通過一種稱為增量非線性動態反演的擴展,為非常魯棒的控制提供瞭可能性 。

1非線性動態反演基礎

1.1為NDI重寫系統

​ 為瞭簡單起見,我們將假設飛機模型是一個單輸入單輸出(SISO)模型。 該模型具有如下形式: dot{mathbf{x}}=f(mathbf{x})+g(mathbf{x}) u ,x,是狀態向量,註意 f(x) 可以是一個非線性函數,上述模型可以改寫為伴隨形式 : left[begin{array}{c}dot{x}_{1} \ vdots \ dot{x}_{n-1} \ dot{x}_{n}end{array}right]=left[begin{array}{c}x_{2} \ vdots \ x_{n} \ b(mathbf{x})end{array}right]left[begin{array}{c}0 \ vdots \ 0 \ a(mathbf{x})end{array}right] u 換句話說,所有的非線性項現在隻影響 x_n ,輸入也隻影響 x_n ,作為第二步,我們定義虛擬控制輸入v為 v=b(mathbf{x})+a(mathbf{x}) u quad Leftrightarrow quad u=a^{-1}(mathbf{x})(v-b(mathbf{x})) 虛擬控制輸入v現在可以用來以簡單的線性方式控制整個系統。 這種把非線性系統當作線性系統來控制的方法稱為(非線性)動態反演(N)DI。

1.2使用哪種輸入?

​ 問題仍然是如何設置$v$,經常使用狀態反饋. 所以 v=-k_{0} x-k_{1} frac{d x}{d t}-k_{2} frac{d^{2} x}{d t^{2}}-ldots-k_{n-1} frac{d^{n-1} x}{d t^{n-1}} ​ 因為我們還有$frac{dnx}{ dtn} = v$,這就把整個系統變成瞭這樣一個線性閉環系統 frac{d^{n} x}{d t^{n}}+k_{n-1} frac{d^{n-1} x}{d t^{n-1}}+ldots+k_{1} frac{d x}{d t}+k_{0}=0 ​ 通過選擇正確的$k_i$,可以設置閉環系統的屬性。 然後,通過(1.3)式,找到所需的輸入$u$。 找到$v$的過程稱為NDI的外環。 找到$u$的對應值,並將其插入到實際系統中,這就是內部循環

​ 在跟蹤任務( x_1 必須跟隨某個參考信號 x_r )的情況下,我們可以定義 e = x−xd 。 現在明顯的控制規律是 v=-k_{0} e-k_{1} frac{d e}{d t}-k_{2} frac{d^{2} e}{d t^{2}}-ldots-k_{n-1} frac{d^{n-1} e}{d t^{n-1}} 這就把系統變成 frac{d^{n} e}{d t^{n}}+k_{n-1} frac{d^{n-1} e}{d t^{n-1}}+ldots+k_{1} frac{d e}{d t}+k_{0}=0 . 這和之前的問題是一樣的。

2輸入-輸出線性化

2.1輸入-輸出線性化的工作原理

​ 把一個非線性系統放在同伴形式中有時是困難的。 另一種替代方法是應用輸入-輸出線性化。 當應用這個時,我們對輸出y求導直到輸入u出現在它裡面。 從這個表達式,你可以推導出a和b。作為一個例子,考慮這個系統 dot{x}_{1}=x_{2}^{2}+sin left(x_{3}right)\ dot{x}_{2}=cos left(x_{1}right)\ dot{x}_{3}=x_{1}+u\ y=sin left(x_{1}right)\ 對y求導得到 dot{y}=dot{x}_{1} cos left(x_{1}right)=left(x_{2}^{2}+sin left(x_{3}right)right) cos left(x_{1}right) 在這個表達式中沒有輸入u。 再次求導。 這給瞭 begin{aligned} ddot{y} &=left(2 x_{2} dot{x}_{2}+dot{x}_{3} cos left(x_{3}right)right) cos left(x_{1}right)-left(x_{2}^{2}+sin left(x_{3}right)right) dot{x}_{1} sin left(x_{1}right) \ &=left(2 x_{2} cos left(x_{1}right)+left(x_{1}+uright) cos left(x_{3}right)right) cos left(x_{1}right)-left(x_{2}^{2}+sin left(x_{3}right)right)^{2} sin left(x_{1}right) \ &=2 cos left(x_{1}right)^{2} x_{2}+x_{1} cos left(x_{1}right) cos left(x_{3}right)-left(x_{2}^{2}+sin left(x_{3}right)right)^{2} sin left(x_{1}right)+cos left(x_{1}right) cos left(x_{3}right) u \ end{aligned} 作為輸入,我們現在可以再次使用 u = a−1(v−b) ,其中 begin{aligned} a &=cos left(x_{1}right) cos left(x_{3}right) b &=2 cos left(x_{1}right)^{2} x_{2}+x_{1} cos left(x_{1}right) cos left(x_{3}right)-left(x_{2}^{2}+sin left(x_{3}right)right)^{2} sin left(x_{1}right) end{aligned} 這樣,系統又可以看成是一個線性系統。 在我們的例子中,這個線性系統就是 ddot{y }= v

2.2關於NDI的說明

​ 當應用NDI時,註意奇異點是很重要的。 當 u→∞ 時發生。 對於我們的例子問題,當k為整數時 x_1 = π/2 + kπx_3 = π/2 + kπ 就會發生。 在這種情況下,系統無法得到充分的控制。

​ 另一件需要註意的重要事情是,要應用NDI,需要知道系統的完整狀態。 如果不知道狀態,就需要將其近似值定得遠一些。 對於確定性系統,可以使用非線性觀測器;對於隨機系統,則需要使用非線性狀態估計器。 其次,當然還需要完全瞭解系統模型。 如果隻知道部分信息,可能需要先進行一些系統識別。

2.3內部動態

​ 我們需要對輸出進行微分的次數稱為系統的相對度r。 在我們的例子問題中,這個相對度是 r = 2 。 系統的階數(狀態變量的數量)用n表示。我們總是有 r≤n 。如果 r < n ,那麼部分輸入輸出線性化是不可觀察的。 這個不可觀察的部分被稱為內部動力學。 它們必須是穩定的(有界的),控制器才能正常工作。 (在內部不穩定的情況下,b部分可以變得非常大。 雖然在數學上可以變得非常大來補償,但這在物理上通常是不可能的。) 然而,不可觀察的部分往往也是非線性的。 所以要確定它是否穩定是非常困難的。 為瞭簡單起見,我們來研究線性系統的內部動力學。 在線性系統中,n對應系統極點的數量,而 n - r 是零的數量。 (r是多餘極點的數量) 它還可以表明,如果所有的零都在復雜平面的左半部分,內部動力學是穩定的。 換句話說,當系統處於最小相位時,系統內部動力學是穩定的。

3狀態轉換

3.1 Lie導數

​ 讓我們來研究這種形式的系統 begin{aligned} dot{mathbf{x}} &=f(mathbf{x})+g(mathbf{x}) u \ y &=h(mathbf{x}) \ end{aligned} ​ 註意$f$和$g$都是向量函數(即它們返回一個向量),而h是標量函數。 李導數 Lfh(x) 現在被定義為某個(標量)函數 h(x) 沿某個向量函數 f(x) 投影的梯度。 所以, begin{aligned} L_{f} h(mathbf{x}) &=nabla h(mathbf{x}) f(mathbf{x})=sum_{i=1}^{n} frac{partial h(mathbf{x})}{partial x_{i}} f_{i}(mathbf{x}) . L_{f}^{k} h(mathbf{x}) &=L_{f}left(L_{f}^{k-1} h(mathbf{x})right)=nablaleft(L_{f}^{k-1} h(mathbf{x})right) f(mathbf{x}) quad text { with } quad L_{f}^{0} h(mathbf{x})=h(mathbf{x}) end{aligned} 也可以多次應用Lie導數。 然後得到第k個Lie導數,定義為 : begin{aligned} L_{f}^{k} h(mathbf{x}) &=L_{f}left(L_{f}^{k-1} h(mathbf{x})right)=nablaleft(L_{f}^{k-1} h(mathbf{x})right) f(mathbf{x}) quad text { with } quad L_{f}^{0} h(mathbf{x})=h(mathbf{x}) end{aligned}

3.2狀態轉換

​ 我們將使用李導數來應用一個狀態變換。 這個變換從舊的狀態$x$到新的狀態$z$(稱為線性化狀態並將系統變成標準形式。 首先,利用李導數,我們定義函數 φ_i(x) z_{i}=phi_{i}(mathbf{x})=L_{f}^{i-1} h(mathbf{x}), quad with 1 leq i leq r . 除瞭 i = r 外,所有i都有 Lgφi(x) = 0 。事實上,相對度的定義意味著 Lgφr(x) 6= 0 。 (在查找相對度時,這個屬性通常很方便。) 類似地,我們也可以定義函數 zi = φi(x) r + 1≤i≤n 。它們也必須具有 L_{g} phi_{i}(mathbf{x})=0 . 總有 n - r 個這樣的附加函數存在。 但是,我們不會在這裡討論如何找到它們,因為這與我們的討論無關。 整個狀態轉換現在由 z = Φ(x) 表示。 其逆函數由 x = Φ−1 (z) 給出。

3.3狀態轉換的性質

可以證明,當$1≤i≤r$時,新坐標滿足 dot{z}_{1}=z_{2}, dot{z}_{2}=z_{3}, ldots, dot{z}_{r-1}=z_{r} and dot{z}_{r}=a(mathbf{z})+b(mathbf{z}) u 函數 a(z)和b(z) (其中 z = Φ−1 (x)) 的定義是 a(mathbf{z})=L_{g} L_{f}^{r-1} h(x)=L_{g} z_{r} quad and quad b(mathbf{z})=L_{f}^{r} h(mathbf{x}) (這些函數與輸入-輸出線性化部分中發現的函數$a$和$b$完全相同。 這個方法隻是一種更通用的查找方法。)

對於 r + 1≤i≤n ,新坐標滿足 dot{z}_{i}=L_{f} phi_{i}(mathbf{x})+L_{g} phi(mathbf{x}) u=L_{f} phi_{i}(mathbf{x})=L_{f} z_{i} (記住當 r + 1≤i≤n 時, L_gφi(x) = 0 )

結果呢? 我們有一個系統, z1 = h(x) = y a(mathbf{z})+b(mathbf{z}) u=frac{d z_{r}}{d t}=frac{d^{2} z_{r-1}}{d t^{2}}=ldots=frac{d^{r} z_{1}}{d t^{r}}=frac{d^{r} y}{d t^{r}} ​ 我們已經把系統變成標準形式瞭。函數a和b和我們在輸入-輸出線性化那一節看到的是一樣的。 所以我們可以控制系統就像它是線性的一樣。 除此之外,狀態 z_{r+1}z_n 不直接影響輸出y。所以我們已經有效地將可觀測部分從不可觀測部分分離出來瞭。

4 MIMO系統和時間尺度分離

4.1 MIMO系統形式

​ 以前,我們考慮過SISO系統。 現在讓我們把我們的思想擴展到多輸入多輸出(MIMO)系統。 這些系統有形式 begin{aligned} &dot{mathbf{x}}=f(mathbf{x})+G(mathbf{x}) mathbf{u} \ &mathbf{y}=h(mathbf{x}) end{aligned} 請註意 G(x) 是一個依賴於(可能是非線性的)x的矩陣。同時請註意,我們確實假設狀態導數˙與輸入$u$密切相關。此外,輸入向量u的大小為m,而輸出向量y的大小為p。

4.2 MIMO系統的狀態變換

在MIMO系統中,有不同的相對度 r1,… rp 。 它們共同構成總的相對度 r = r1 +… + rp ,仍然滿足 r≤n ,還有φ函數。 它們被定義為 phi_{j}^{i}(mathbf{x})=L_{f}^{j-1} h_{i}(mathbf{x}) 這些方程滿足 dot{phi}_{1}^{i}(mathbf{x})=phi_{2}^{i}(mathbf{x}), ldots, dot{phi}_{r_{i}-1}^{i}(mathbf{x})=phi_{r_{i}}^{i}(mathbf{x}) text { and } dot{phi}_{r_{i}}^{i}(mathbf{x})=L_{f}^{r_{i}} h_{i}(mathbf{x})+sum^{m} L_{g_{j}} L_{f}^{r_{i}-1} h_{i}(mathbf{x}) u_{j} . 這對於每一$個i(1≤i≤p)$都成立。我們可以使用上述關系來找到虛擬控件輸入v的表達式(註意v現在也是一個向量,大小為$p$)。 然後,我們得到 mathbf{v}=b(mathbf{x})+A(mathbf{x}) mathbf{u}=left[begin{array}{c}L_{f}^{r_{1}} h_{1}(mathbf{x}) \ L_{f}^{r_{2}} h_{2}(mathbf{x}) \ vdots \ L_{f}^{r_{r}} h_{p}(mathbf{x})end{array}right]+left[begin{array}{cccc}L_{g_{1}} L_{f}^{r_{1}-1} h_{1}(mathbf{x}) & L_{g_{2}} L_{f}^{r_{1}-1} h_{1}(mathbf{x}) & cdots & L_{g_{mathrm{m}}} L_{f}^{r_{1}-1} h_{1}(mathbf{x}) \ L_{g_{1}} L_{f}^{r_{2}-1} h_{2}(mathbf{x}) & L_{g_{2}} L_{f}^{r_{2}-1} h_{2}(mathbf{x}) & cdots & L_{g_{m}} L_{f}^{r_{2}-1} h_{2}(mathbf{x}) \ vdots & vdots & ddots & vdots \ L_{g_{1}} L_{f}^{r_{p}-1} h_{p}(mathbf{x}) & L_{g_{2}} L_{f}^{r_{p}-1} h_{p}(mathbf{x}) & cdots & L_{g_{m}} L_{f}^{r_{p}-1} h p(mathbf{x})end{array}right]left[begin{array}{c}u_{1} \ u_{2} \ vdots \ u_{m}end{array}right] 求出輸入向量$u$就可以得到 mathbf{u}=A^{-1}(mathbf{x})(mathbf{v}-b(mathbf{x}))

4.3采用時間尺度分離

​ 當控制兩個不同的參數時,可以采用一種稱為時間尺度分離的技術。 要知道這是什麼情況,我們首先必須討論控制的有效性。 控制效果可以看作是控制參數的單一變化對控制參數的影響。 (飛機俯仰速率控制考慮用 ∂q/∂δe 。) 根據控制效果,我們可以區分慢動力學和快動力學。 慢動力學是指某一參數的控制效果較低。 動態速度快意味著控制效果高。

​ 當需要控制的兩個參數分別為慢動態和快動態時,可以采用時間尺度分離(TSS)。 這意味著我們將慢動態和快動態分開。 快速動態可以被視為內部循環,而緩慢動態則構成外部循環。 對每一部分分別進行動態反演。

​ 時間尺度分離的一個例子發生在飛機上。 俯仰速率控制通常比俯仰角控制工作得快得多。 因此,螺距速率控制構成控制器的內環,螺距角控制構成控制器的外環。

​ 當應用TSS時,要做一個假設。 作為輸入,內部循環接收一個引用值。 (在我們的示例中是所需的螺距速率。) 外部循環假設這個期望的值實際上是由內部循環實現的。 這通常是一個有效的假設,因為內部循環比外部循環快得多。 外部回路(俯仰角控制)通過簡單地向內部回路提供正確的參考輸入(所需的俯仰速率)來操作。

5增量動態逆

5.1增量動態逆的基本思想

​ NDI有一個很大的缺點。 要應用它,必須相當準確地知道系統的模型。 然而,飛機模型可能非常復雜,尤其是當非線性開始出現時。 增量NDI (INDI)提供瞭一種可能的解決方案。 這種技術不提供控制系統所需的輸入。 它給出瞭輸入中所需的變化。 (例如,它不是告訴電梯偏6度,而是偏(例如)多1度或少2度。) INDI的一大優勢是隻需要模型的一小部分。 此外,INDI能夠更好地處理模型不準確性,例如,錯誤的系數。 因此,INDI比NDI更健壯 。

5.2 INDI應用於飛機-從力矩控制表面偏轉

​ 讓我們通過一架飛機來演示印度的想法。 當控制空中飛行器的姿態時,需要應用力矩。 當處理力矩時,我們通常用力矩系數。 $L$的力矩系數定義為 C_{l}=frac{L_{d e s}}{frac{1}{2} rho V^{2} S b} . $Cm$和$Cn$也有類似的定義。 為瞭控制飛機,還需要力矩系數 C_{l,des} , C_{m,des}和C_{n,des} 。 接下來是系數導數。 一個例子是 C_{l_{delta_{e}}}=frac{partial C_{l}}{partial delta_{e}} .

​ 對於其他力矩(M和N)和其他控制輸入( δa和δr )的組合也有類似的定義。

​ 根據上述定義,我們可以找到所需的控制面偏轉δ來提供合適的力矩。 我們有 delta=left[begin{array}{l}delta_{e} \ delta_{a} \ delta_{r}end{array}right]=left[begin{array}{lll}C_{l_{delta_{e}}} & C_{l_{delta_{a}}} & C_{l_{delta_{r}}} \ C_{m_{delta_{e}}} & C_{m_{delta_{a}}} & C_{m_{delta_{r}}} \ C_{n_{delta_{e}}} & C_{n_{delta_{a}}} & C_{n_{delta_{r}}}end{array}right]^{-1}left[begin{array}{c}C_{l, d e s} \ C_{m, d e s} \ C_{n, d e s}end{array}right]=M_{c}^{-1} mathbf{C}_{text {lmn,des }} ​ (註意上式中 δ、Mc、Clmn、des 的定義) 當矩L、M和N隨控制面撓度 δ_e、δ_a和δ_r 線性變化,並且所有系數導數都精確已知時,這種方法很有效。 如果兩者都不是,我們就得做點別的:印度語。 在應用INDI時,我們會考慮所需的變化。 也就是說,我們將作用在飛機上的當前力矩系數 (Cl, Cm和Cn) 與期望的力矩系數進行比較。 由此,我們推導出控制面偏轉的變化。 這是根據 Delta delta=left[begin{array}{l}Delta delta_{e} \ Delta delta_{a} \ Delta delta_{r}end{array}right]=left[begin{array}{ccc}C_{l_{delta_{e}}} & C_{l_{delta_{a}}} & C_{l_{delta_{r}}} \ C_{m_{delta_{e}}} & C_{m_{delta_{a}}} & C_{m_{s_{r}}} \ C_{n_{delta_{e}}} & C_{n_{delta_{a}}} & C_{n_{delta_{r}}}end{array}right]^{-1}left[begin{array}{c}C_{l, d e s}-C_{l} \ C_{m, text { des }}-C_{m} \ C_{n, d e s}-C_{n}end{array}right]=M_{c}^{-1}left(mathbf{C}_{text {lmn,des }}-mathbf{C}_{l m n}right) . 這一次,當系數導數不準確時,最終仍然會得到所需的力矩。 通過這種方式,INDI比NDI更加健壯

5.3 INDI應用於飛機-從運動到控制表面偏轉

​ 當控制一架飛機時,我們不隻是從瞬間開始。 相反,我們想要控制飛機的運動。 為瞭弄清楚這是怎麼回事,我們研究一下運動方程 I dot{omega}+omega times I omega=mathbf{M}=mathbf{M}_{mathbf{a}}+mathbf{M}_{mathbf{c}} ​ 在這裡,Ma表示由於空氣動力學的力矩,而Mc表示由於控制的力矩。 (如果需要,我們可以對上述方程進行變換,使其使用系數C而不是矩m) 現在檢查當我們將控制力矩Mc改變一點點∆Mc時會發生什麼。 在無窮小的時間步中,角速度ω沒有變化,氣動力矩Ma也沒有變化。 隻有角加速度 dot{ω} 發生變化。 (請註意,我們在這裡應用的是時間尺度分離的原則。) 所以我們可以寫 Delta mathbf{M}_{mathbf{c}}=I(Delta dot{omega})=Ileft(dot{omega}_{text {new }}-dot{omega}_{text {old }}right) . 利用機載慣性測量裝置(IMU),我們可以推導出 dot{ω}_{old} 。 現在假設系統的控制量(輸出y)是角速率ω。 我們可以把方程組寫成 dot{mathbf{y}}=dot{omega}_{text {new }}=dot{omega}_{text {old }}+I^{-1}left(Delta mathbf{M}_{mathbf{c}}right) ​ 我們想找出控制輸入中所需要的變化量∆δ,以便得到所期望的值。 為此,我們首先用Mc(∆δ)替換∆Mc。 (我們應用線性化。) 所需的控制面偏轉由 Delta delta=M_{c}^{-1} Ileft(dot{mathbf{y}}-dot{omega}_{text {cur }}right) . ​ 讓我們看看上面的方程。 當我們應用普通的NDI時,δ的值與飛機的許多性能有很大的關系。 現在,∆δ隻依賴於Mc和i。因為我們使用 dot{ω} 新的測量值,所以任何其他模型不確定性都被取消瞭。 如果測量非常精確而采樣時間很短,這一點尤其如此。 通過這種方式,INDI比NDI更加健壯。

发表回复

相关推荐

易经的智慧:龙马负图

一、河图的内容 中华文化的根源在河洛,即黄河洛水,河洛文化的标志是“河图”“洛书”。“河图”指的是黄河出现的龙马负图,“洛书 ...

· 3分钟前

到底什么是当下?

真正的当下和“时间”、“空间”无关, 它是生命的“本来面目” 到底什么是当下? 对于头脑主义者来说,当下是指“此时”、“此地” ...

· 5分钟前

六位港片里著名“打星”,角色令人过目不忘,鲜有人知道他们真名

上世纪80-90年代,是香港电影黄金时代,当时香港作为亚洲电影中心,吸引了大批武术精英。

· 6分钟前

理肤泉大哥大2022年新版(LPR UVMUNE 400)配方解读

这篇文章可以看作2020年这一篇和另一篇的更新。

· 7分钟前

十二生肖與風水關系

1.十二生肖的五行屬性十二生肖為子鼠,醜牛,寅虎,卯兔,辰龍,巳蛇,午馬,未羊,申猴,酉雞,戌狗,亥豬。而“子醜寅卯辰巳...

· 8分钟前