Hurwitz 矩阵与观测器的设计
2025-08-13
控制算法
00
请注意,本文编写于 114 天前,最后修改于 114 天前,其中某些信息可能已经过时。

已知线性系统的状态空间方程为:

x˙=Ax+Buy=Cx\begin{aligned} & \dot{x}=A x+B u \\ & y=C x\end{aligned}

观测器的目标是估计状态 xx,其结构为:

x˙^=A^x^+B^u+L(yy^)\hat{\dot{x}}=\hat{A} \hat{x}+\hat{B} u+L(y-\hat{y})

其中 y^=C^x^\hat{y}=\hat{C} \hat{x}。对于全维状态观测器,我们通常假设模型准确,即 A^=A,B^=B,C^=C\hat{A}=A, \hat{B}=B, \hat{C}=C。因此观测器方程为:

x˙^=Ax^+Bu+L(yCx^)\hat{\dot{x}}=A \hat{x}+B u+L(y-C \hat{x})

定义状态估计误差 e=xx^e=x-\hat{x},对 ee 求导:

e˙=d/dt(xx^)=x˙x˙^\dot{e}=d / d t(x-\hat{x})=\dot{x}-\hat{\dot{x}}

将状态方程和观测器方程代入:

x˙=Ax+Bux˙^=Ax^+Bu+L(yCx^)=Ax^+Bu+L(CxCx^)\begin{aligned} & \dot{x}=A x+B u \\ & \hat{\dot{x}}=A \hat{x}+B u+L(y-C \hat{x})=A \hat{x}+B u+L(C x-C \hat{x})\end{aligned}

所以有:

e˙=[Ax+Bu][Ax^+Bu+L(CxCx^)]=Ax+BuAx^BuL(CxCx^)=A(xx^)LC(xx^)=(ALC)(xx^)=(ALC)e\begin{aligned} & \dot{e}=[A x+B u]-[A \hat{x}+B u+L(C x-C \hat{x})] \\ & =A x+B u-A \hat{x}-B u-L(C x-C \hat{x}) \\ & =A(x-\hat{x})-L C(x-\hat{x}) \\ & =(A-L C)(x-\hat{x}) \\ & =(A-L C) e\end{aligned}

因此,误差动态方程为:

e˙=(ALC)e\dot{\mathrm{e}}=(\mathrm{A}-\mathrm{LC}) \mathrm{e}

这是一个齐次线性微分方程,其解为:

e(t)=e(ALC)te(0)e(t)=e^{(A-L C) t} e(0)

为了确保误差 ee 随时间收敛到 0,需要系统e˙=(ALC)e\dot{\mathrm{e}}=(\mathrm{A}-\mathrm{LC}) \mathrm{e}是渐近稳定的,即:

limte(ALC)t=0\lim _{t \rightarrow \infty} e^{(A-L C) t}=0

充要条件是系统矩阵的所有特征值都具有负实部。

因此,矩阵ALCA-LC必须是Hurwitz矩阵。

即,观测器设计的核心就是通过选择合适的增益矩阵L,使得A-LC的特征值(即观测器极点)都位于复平面的左半开平面。

——通过选择 L 可配置 (A−LC) 的特征值

——特征值实部越负,收敛速度越快(但需考虑噪声放大)

本文作者:cc

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!