状态观测器(一)

发布时间 2023-03-26 11:46:44作者: Lisper_XW

非常激动,看到了王佬这几篇关于观测器的学习笔记,故打算研读一下,并作记录,以便日后查看和理解

1、基于状态空间方程描述系统特性

\[\dot{x}=Ax+Bu \]

其中A作为系统矩阵,可从系统的微分方程得到,(似乎可通过高阶函数逼近,也就是实验辨识法测得),B作为控制矩阵,其参数由系统的输入与状态之间的关系决定,u为控制器的输出。

\[y=Cx+Du \]

y作为系统的输出(可直接测得),C作为系统的输出矩阵,作为直接传动项。

这种描述系统的方法被称为状态空间法,状态空间的思想来源于描述微分方程的状态变量法。在状态变量法中,通过关于系统状态向量的一阶微分方程描述一个动态系统的微分方程组,而方程组的解则可以看作状态向量在空间(相图)中的一条轨迹。状态空间方程与经典控制理论中的传递函数类似,均是用于描述动态系统的手段。相比传递函数,状态空间方程有许多优点,比如对非零初始条件的系统仍能保持简单的表示形式、很容易描述多输入多输出系统等。

--摘自哈工程王

2、全状态观测器

首先我们要明确,设计状态观测器的目的是为了使我们计算的估计值尽可能快的收敛于实际值,也就是估计误差随时间变化衰减到0,当然,衰减的越快越好。其中,与衰减有关的系数,我们称之为观测器增益L。

首先,类似与反馈控制,我们将估计误差乘上增益并补偿到观测器

\[\dot{\hat{x}}(t)=A\hat{x}(t)+Bu(t) \]

\[\dot{\hat{x}}(t)=A\hat{x}(t)+Bu(t)+L(z(t)-C\hat{x}(t)) \]

z(t)为实际测量值

如何设计观测器增益L?

定义估计误差

\[e(t)=x(t)-\hat{x}(t) \]

两边求导

\[\dot{e}(t)=\dot{x}(t)-\dot{\hat{x}}(t) \]

\[\dot{e}(t)=Ax(t)+Bu(t)-A\hat{x}(t)-Bu(t)-L(z(t)-C\hat{x}(t)) \]

\[=Ax(t)-A\hat{x}(t)-L(z(t)-C\hat{x}(t)) \]

\[=Ax(t)-A\hat{x}(t)-Lz(t)+LC\hat{x}(t)) \]

其中,z(t)=x(t)+v(t),v(t)为测量噪声,服从正态分布,由于噪声难以测得,暂且将其理想化,z(t)=Cx(t)

上式即化简为

\[\dot{e}(t)=Ax(t)-A\hat{x}(t)-LCx(t)+LC\hat{x}(t)) \]

\[=(A-LC)e(t) \]

为了便于分析和求解,将其进行拉式变换

image-20230326111348303

所得到的特征方程为

\[sI-(A-LC)=0 \]

当特征根位与复平面左半部分时,观测器收敛。极点越远离正半部分,其收敛速度越快,经验上讲,观测器极点应比控制器极点远2~6倍。但如果传感器噪声很大以至于会影响控制品质,则可以相应减小观测器的收敛速度以抑制噪声。

然而,这种经验式的求解,较为繁杂,并且容易受到噪声干扰(模型误差)。

——以上内容学习于[从全状态观测器到卡尔曼滤波器(一) - 知乎 (zhihu.com)](