现代控制工程(二)状态方程的解


本章重点讨论的是线性定常连续系统状态方程求解的方法。

线性定常齐次状态方程的解

对于线性定常系统:
{ x ˙ = A x + B u y = C x + D u , x ( t 0 ) = x ( 0 ) \left\{\begin{matrix} \dot x=Ax+Bu\\ y=Cx+Du \end{matrix}\right. ,x(t_0)=x(0)
当外加输入函数 u=0 时,上述状态空间表达式为:
{ x ˙ = A x y = C x , x ( t 0 ) = x ( 0 ) \left\{\begin{matrix} \dot x=Ax\\ y=Cx \end{matrix}\right. ,x(t_0)=x(0)
此时的状态方程叫做线性定常齐次状态方程(LTI homogeneous state equation),因系统状态的运动是在没有外加输入控制下由系统的初始状态引起的,因此控制系统的运动也称为自由运动。初始状态不为 0 时的运动为强迫运动。

齐次状态方程可在时域内直接求解,也可以用拉普拉斯变换求解。

1. 用矩阵指数函数直接求解

先假设线性定常齐次状态方程的解为时间 t 的幂级数形式,即
x ( t ) = b 0 + b 1 t + b 2 t 2 + L + b k t k + x(t) =b_0+b_1t+b_2t^2+L+b_kt^k +\cdots
注意上式中 b i ( i = 1 , 2 ,   ) b_i(i=1,2,\cdots) 为待定系数矩阵。当 t=0 时, x ( 0 ) = b 0 x(0)=b_0
将所设的解带入原方程中可得
b 1 + 2 b 2 t + 3 b 3 t + + k b k t k 1 + = A ( b 0 + b 1 t + b 2 t 2 + L + b k t k +   ) b_1+2b_2t+3b_3t+\cdots+kb_kt^{k-1}+\cdots=A(b_0+b_1t+b_2t^2+L+b_kt^k +\cdots)
由于上式对所有的时间 t 都要成立,因此等式两边同幂项的系数应相等,即:
b 0 = x ( 0 ) b_0=x(0)
b 1 = A b 0 b_1=Ab_0
b 2 = 1 2 A b 1 = 1 2 ! A 2 b 0 b_2=\frac 1 2 Ab_1=\frac 1 {2!} A^2b_0
b 3 = 1 3 A b 2 = 1 3 ! A 3 b 0 b_3=\frac 1 3 Ab_2=\frac 1 {3!} A^3b_0
\cdots
b k = 1 k A b k 1 = 1 k ! A k 3 b 0 b_k=\frac 1 k Ab_{k-1}=\frac 1 {k!} A^k3b_0
\cdots
因此齐次方程的解可以写成:
x ( t ) = ( I + A t + 1 2 ! A 2 t 2 + + 1 k ! A k t k +   ) x ( 0 ) x(t)=(I+At+\frac 1 {2!}A^2t^2+\cdots+\frac 1 {k!}A^kt^k+\cdots)x(0)
对于方阵,由其组成的无穷矩阵级数的和类似于纯量指数,定义为矩阵指数函数(Matrix Exponential Function),记为
e A t = I + A t + 1 2 ! A 2 t 2 + + 1 k ! A k t k + = k = 0 1 k ! A k t k e^{At}=I+At+\frac 1 {2!}A^2t^2+\cdots+\frac 1 {k!}A^kt^k+\cdots=\sum_{k=0}^{\infty} \frac 1 {k!}A^kt^k
所以,线性定常齐次状态方程式的解也可写成
x ( t ) = e A t x ( 0 ) x(t)=e^{At}x(0)
按矩阵指数函数法求解齐次状态方程,在已知初始状态 x(0)的基础上,需要求解矩阵指数函数 e A t e^{At} ,这给人工计算带来不便。

但级数展开式中的每一项适合于用计算机计算。

2. 用拉氏变换求解

对于线性定常齐次状态方程式也可用拉普拉斯变换求解,它的求解方法与纯量一阶微分方程求解相似。对方程式两边取拉氏变换得:

拉普拉斯变换时域的 f ( t ) f'(t) 对应于 s 域的 s F ( s ) f ( 0 ) sF(s)-f(0)

s X ( s ) x ( 0 ) = A X ( s ) sX(s)-x(0)=AX(s)
整理得到
( s I A ) X ( s ) = x ( 0 ) (sI-A)X(s)=x(0)

X ( s ) = ( s I A ) 1 x ( 0 ) X(s)=(sI-A)^{-1}x(0)
对两边取拉氏反变换得
x ( t ) = L 1 [ ( s I A ) 1 ] x ( 0 ) x(t)=L^{-1}[(sI-A)^{-1}]x(0)

所以我们得到了两种微分方程的解,所以有微分方程解的唯一性可知:
e A t = L 1 [ ( s I A ) 1 ] e^{At}=L^{-1}[(sI-A)^{-1}]
采用拉氏变换法适合人工求解,且一般均能获得解析形式的结果。

矩阵指数函数

可以看到,要解状态方程,实际上只需要求出矩阵指数函数就可以了。下面讨论矩阵指数函数的性质

矩阵指数函数的性质

n×n 维方阵 A 的矩阵指数函数 e A t e^{At} 是一个无穷级数,可以证明该级数对所有有限时间是绝对收敛的。具有以下性质:

  1. e A t e ˙ A τ = e A ( t + τ ) e^{At}\dot e^{A\tau}=e^{A(t+\tau)}
  2. e A 0 ˙ = I e^{A\dot 0}=I
  3. e A t = [ e A t ] 1 e^{-At}=[e^{At}]^{-1}
  4. 若 A 和 B 可交换,即 AB=BA ,则 e ( A + B ) t = e A t e ˙ B t e^{(A+B)t}=e^{At}\dot e^{Bt}
    若 A 和 B 不可交换,即 A B B A AB\neq BA ,则 e ( A + B ) t e A t e ˙ B t e^{(A+B)t}\neq e^{At}\dot e^{Bt}
  5. 若矩阵 A n × n A_{n\times n} 有不相等的特征值 λ 1 , λ 2 ,   , λ n \lambda_1,\lambda_2,\cdots,\lambda_n , A \overline A 为对角矩阵。则
    A = d i a g [ λ 1 , λ 2 ,   , λ n ] = [ λ 1 0 λ 2 0 λ n ] \overline A=diag[\lambda_1,\lambda_2,\cdots,\lambda_n]=\begin{bmatrix} \lambda_1 & & & 0\\ &\lambda_2 & & \\ & & \ddots & \\ 0 & & & \lambda_n \end{bmatrix}
    则对角矩阵 A \overline A 的矩阵指数函数为
    e A t = d i a g [ e λ 1 t , e λ 2 t ,   , e λ n t ] e^{\overline A t}=diag[e^{\lambda_1 t},e^{\lambda_2 t},\cdots,e^{\lambda_n t}]
  6. 若矩阵 A n × n A_{n\times n} 有不相等的特征值 λ 1 , λ 2 ,   , λ n \lambda_1,\lambda_2,\cdots,\lambda_n , A \overline A 为对角矩阵。则有线性变换
    x = M x x=M\overline x
    使得 A = M 1 A M = d i a g [ λ 1 , λ 2 ,   , λ n ] \overline A=M^{-1}AM=diag[\lambda_1,\lambda_2,\cdots,\lambda_n]
    e A t = M 1 e A t M = d i a g [ e λ 1 t , e λ 2 t ,   , e λ n t ] e^{\overline A t}=M^{-1}e^{ A t}M=diag[e^{\lambda_1 t},e^{\lambda_2 t},\cdots,e^{\lambda_n t}]
    e A t = M e A t M 1 e^{A t}=Me^{\overline A t}M^{-1}
    特别是,当 A 为可控标准型时,变换矩阵 M 为范德蒙矩阵 M = [ 1 1 1 λ 1 λ 2 λ n λ 1 n 1 λ 2 n 1 λ n n 1 ] M=\begin{bmatrix} 1 & 1 & \cdots & 1\\ \lambda_1& \lambda_2 &\cdots & \lambda_n\\ \vdots& \vdots &\ddots &\vdots \\ \lambda_1^{n-1}& \lambda_2^{n-1} &\cdots & \lambda_n^{n-1} \end{bmatrix}
  7. 若矩阵 J i J_i m i × m i m_i\times m_i 阶约当矩阵,即 J i = [ λ i 1 0 λ i 1 0 λ i ] m i × m i J_i=\begin{bmatrix} \lambda_i & 1 & & 0\\ &\lambda_i & \ddots & \\ & & \ddots & 1\\ 0 & & & \lambda_i \end{bmatrix}_{m_i\times m_i}
    e J i t = e λ i t = [ 1 t t 2 2 ! t m i 1 ( m i 1 ) ! 0 1 t t m i 2 ( m i 2 ) ! 0 0 0 1 t 0 0 0 0 1 ] e^{J_it}=e^{\lambda_it}=\begin{bmatrix} 1&{\rm{t}}&{\frac{{{t^2}}}{{2!}}}& \cdots &{\frac{{{t^{{m_i} - 1}}}}{{({m_i} - 1)!}}}\\ 0&1&t& \cdots &{\frac{{{t^{{m_i} - 2}}}}{{({m_i} - 2)!}}}\\ \vdots & \vdots & \ddots & \ddots & \vdots \\ 0&0&0&1&t\\ 0&0&0&0&1 \end{bmatrix}
    即对角线上元素全为 1 ,往上 k 次变为 t k k ! \frac {t^k}{k!} .
  8. 若矩阵 A n × n A_{n\times n} 有重特征值 λ 1 , λ 2 ,   , λ m \lambda_1,\lambda_2,\cdots,\lambda_m ,且 J = T 1 A T = [ J 1 J 2 J m ] m i × m i J=T^{-1}AT=\begin{bmatrix} {{J_1}}&{}&{}&{}\\ {}&{{J_2}}&{}&{}\\ {}&{}& \ddots &{}\\ {}&{}&{}&{{J_m}} \end{bmatrix}_{m_i\times m_i}
    e J t = T 1 e A t T = [ e J 1 t 0 e J 2 t 0 e J m t ] m i × m i e^{Jt}=T^{-1}e^{At}T=\begin{bmatrix} {{e^{{J_1}t}}}&{}&{}&0\\ {}&{{e^{J_2t}}}&{}&{}\\ {}&{}& \ddots &{}\\ 0&{}&{}&{{e^{{J_m}t}}} \end{bmatrix}_{m_i\times m_i}
  9. 矩阵指数函数 e A t e^{At} 的导数为
    d e A t d t = A e A t = e A t A \frac {\mathrm{d} e^{At}}{\mathrm{d} t}=Ae^{At}=e^{At}A
    也就是说该导数和纯量导数是一致的。
  10. 若矩阵 A n × n A_{n\times n} 有 n 个特征值 λ 1 , λ 2 ,   , λ n \lambda_1,\lambda_2,\cdots,\lambda_n ,则矩阵指数函数可以表示为有限项之和:
    e A t = i = 0 n 1 A i α i ( t ) e^{At}=\sum_{i=0}^{n-1}A^i \alpha_i(t)
    • 若 n 个特征值互不相同,则
      [ α 0 ( t ) α 1 ( t ) α n 1 ( t ) ] = [ 1 λ 1 λ 1 n 1 1 λ 2 λ 2 n 1 1 λ n λ n n 1 ] 1 [ e λ 1 t e λ 2 t e λ n t ] \begin{bmatrix} \alpha_0(t)\\ \alpha_1(t)\\ \vdots\\ \alpha_{n-1}(t) \end{bmatrix}=\begin{bmatrix} 1&{{\lambda _1}}& \cdots &{\lambda _1^{n - 1}}\\ 1&{{\lambda _2}}& \cdots &{\lambda _2^{n - 1}}\\ \vdots & \vdots & \ddots & \vdots \\ 1&{{\lambda _n}}& \cdots &{\lambda _n^{n - 1}} \end{bmatrix}^{-1}\begin{bmatrix} e^{\lambda_1 t}\\e^{\lambda_2 t}\\\vdots\\e^{\lambda_n t} \end{bmatrix}
    • 若特征值相同且均为 λ \lambda ,则
      [ α 0 ( t ) α 1 ( t ) α n 1 ( t ) ] = [ 0 0 1 0 0 ( n 1 ) λ 0 1 ( n 1 ) λ n 2 1 λ λ n 1 ] 1 [ t n 1 ( n 1 ) ! e λ t t n 2 ( n 2 ) ! e λ t t e λ t e λ t ] = [ 1 λ λ 2 λ n 1 0 1 2 λ ( n 1 ) λ n 2 0 0 0 ( n 1 ) λ 0 0 0 1 ] 1 [ e λ t t e λ t t n 2 ( n 2 ) ! e λ t t n 1 ( n 1 ) ! e λ t ] \begin{bmatrix} {{\alpha _0}(t)}\\ {{\alpha _1}(t)}\\ \vdots \\ {{\alpha _{n - 1}}(t)} \end{bmatrix}=\begin{bmatrix} 0&0& \cdots &1\\ 0&0& \cdots &{(n - 1)\lambda }\\ \vdots & \vdots &{}& \vdots \\ 0&1& \cdots &{(n - 1){\lambda ^{n - 2}}}\\ 1&\lambda & \cdots &{{\lambda ^{n - 1}}} \end{bmatrix}^{-1}\begin{bmatrix} {\frac{t^{n-1}}{{(n - 1)!}}{e^{\lambda t}}}\\ {\frac{t^{n-2}}{{(n - 2)!}}{e^{\lambda t}}}\\ \vdots \\ {t{e^{\lambda t}}} \\ e^{\lambda t} \end{bmatrix}=\begin{bmatrix} 1&\lambda & \lambda^2&\cdots &{{\lambda ^{n - 1}}}\\ 0&1&2\lambda& \cdots &{(n - 1){\lambda ^{n - 2}}}\\ \vdots & \vdots &\vdots&{}& \vdots \\ 0&0&0& \cdots &{(n - 1)\lambda }\\ 0&0&0& \cdots &1\\ \end{bmatrix}^{-1}\begin{bmatrix} e^{\lambda t}\\ {t{e^{\lambda t}}} \\ \vdots \\ {\frac{t^{n-2}}{{(n - 2)!}}{e^{\lambda t}}}\\ {\frac{t^{n-1}}{{(n - 1)!}}{e^{\lambda t}}}\\ \end{bmatrix}

矩阵指数函数的应用

例题:已知 x ˙ = [ 0 1 2 3 ] x \dot x=\begin{bmatrix} 0&1\\ -2&-3 \end{bmatrix}x , x ( t ) t = 0 = x ( 0 ) x(t)|_{t=0}=x(0) ,求解方程
解:要求解该齐次状态方程的解,关键是矩阵指数函数 e A t e^{At} 的求解。根据前面所述,可采用以下四种方法。
方法 1 :定义法:
e A t = I + A t + 1 2 ! A 2 t 2 + + 1 k ! A k t k + = [ 1 0 0 1 ] + [ 0 t 2 t 3 t ] + 1 2 ! [ 2 t 2 3 t 2 6 t 2 7 t 2 ] + e^{At}=I+At+\frac 1 {2!}A^2t^2+\cdots+\frac 1 {k!}A^kt^k+\cdots\\=\begin{bmatrix} 1&0\\0&1\end{bmatrix}+\begin{bmatrix} 0&t\\-2t&-3t\end{bmatrix}+\frac 1 {2!}\begin{bmatrix} -2t^2&-3t^2\\6t^2&7t^2\end{bmatrix}+\cdots
方法 2 :由拉普拉斯变换法求:

方法 3 :由线性变换求
根据性质 5 和性质 6
因为可以看到 A 的特征值全部都是不相同的, M 矩阵就是范德蒙矩阵。

方法 4 :由矩阵指数函数的性质 10 来求

由以上四种方法求出矩阵指数函数后,由线性定常系统齐次状态方程解的表达式 x ( t ) = e A t x ( 0 ) x(t)=e^{At}x(0) 得:

状态转移矩阵

由线性定常系统齐次状态方程的解可知,若以 t = 0 作为初始时间,系统在任意 t ≥ 0 时刻的状态向量是由初始时刻状态按规律进行转移的。因此矩阵指数函数亦称状态转移矩阵,记为
ϕ ( t ) = e A t \phi(t)=e^{At}
此时 x ( t ) = e A t x ( 0 ) x(t)=e^{At}x(0)
更一般地,若以 t = t 0 t=t_0 作为初始时间,系统状态的初始值为 x ( t 0 ) x(t_0) ,则系统在任意时刻 t t 0 t\geq t_0 的状态亦可由初始状态转移而来,即:
x ( t ) = e A ( t t 0 ) x ( t 0 ) x(t)=e^{A(t-t_0)}x(t_0)
因为 x ( t ) = e A t x ( 0 ) x(t)=e^{At}x(0) x ( t 0 ) = e A t 0 x ( 0 ) x(t_0)=e^{At_0}x(0) ,所以可以推导得到上式。
此时系统的状态转移矩阵记为 ϕ ( t , t 0 ) = e A ( t t 0 ) \phi(t,t_0)=e^{A(t-t_0)}
{ x ( t ) = ϕ ( t ) x ( 0 ) x ( t ) = ϕ ( t t 0 ) x ( t 0 ) \begin{cases} x(t)=\phi(t)x(0)\\ x(t)=\phi(t-t_0)x(t_0) \end{cases}
从时间角度看,状态转移矩阵使状态向量随着时间的推移在不断地作坐标变换,也就是不断在状态空间中作转移,故称为状态转移矩阵。其物理意义如下图所示:

状态转移矩阵的性质

  1. 不变性
    ϕ ( t , t ) = e A 0 = I \phi(t,t)=e^{A0}=I
  2. 状态转移矩阵满足其状态方程本身 ( 第一个 ϕ \phi 上面有一个点,表示导数)
    ϕ ˙ ( t , t 0 ) = A ϕ ( t t 0 ) \dot \phi(t,t_0)=A\phi(t-t_0)
  3. 可逆性
    ϕ 1 ( t 2 , t 1 ) = ϕ ( t 1 , t 2 ) \phi^{-1}(t_2,t_1)=\phi(t_1,t_2)
    转移矩阵的逆矩阵意味着转移时间的倒转,即从 t1 到 t2 的转移矩阵等于从 t2 到 t1 的转移矩阵的逆
  4. 分解性
    ϕ ( t 1 + t 2 ) = e A ( t 1 + t 2 ) = e A t 1 e A t 2 = ϕ ( t 1 ) ϕ ( t 2 ) \phi(t_1+t_2)=e^{A(t_1+t_2)}=e^{At_1}e^{At_2}=\phi(t_1)\phi(t_2)
    路径无关
  5. 由性质 4 可得,
    [ ϕ ( t ) ] n = ϕ ( n t ) [\phi(t)]^n=\phi(nt)
    表示由 t=0 时刻状态转移 n 次,等于由 t=0 到 nt 时刻的状态转移,路径无关。
  6. 传递性
    ϕ ( t 2 , t 1 ) ϕ ( t 1 , t 0 ) = ϕ ( t 2 , t 0 ) \phi(t_2,t_1)\phi(t_1,t_0)=\phi(t_2,t_0)

状态转移矩阵的应用

例 1


解:根据性质 2 : ϕ ˙ ( t , 0 ) = A ϕ ( t 0 ) \dot \phi(t,0)=A\phi(t-0) 当 t=0 即 ϕ ˙ ( t ) t = 0 = A ϕ ( t ) t = 0 = A I = A \dot \phi(t)|_{t=0}=A\phi(t)|_{t=0}=A*I=A
所以 A = ϕ ˙ ( t ) t = 0 = [ 2 e t + 2 e 2 t 2 ( 2 e 2 t + e t ) e t + 2 e 2 t 4 e 2 t + e t ] t = 0 = [ 0 2 1 3 ] A=\dot \phi(t)|_{t=0}=\begin{bmatrix} { - 2{e^{ - t}} + 2{e^{ - 2t}}}&{2( - 2{e^{ - 2t}} + {e^{ - t}})}\\ { - {e^{ - t}} + 2{e^{ - 2t}}}&{ - 4{e^{ - 2t}} + {e^{ - t}}} \end{bmatrix}|_{t=0}=\begin{bmatrix} 0&-2\\ 1&-3 \end{bmatrix}

例 2


解: x ( t ) = ϕ ( t t 0 ) x ( t 0 ) x(t)=\phi(t-t_0)x(t_0) ,所以需要求 ϕ (

相关文章
相关标签/搜索