MASTERY · CONTROL ENGINEERING

8.5.4 如何判断单个状态的能控性和能观性

5.5k WORDS 22 MIN READ #816专业课

8.5.4 如何判断单个状态的能控性和能观性

一、温故知新:坐标系要求与约旦阵拓扑结构

1. 单个状态变量属性判断的前提条件


2. 约旦标准型系统的分块拓扑结构

考虑已化为约旦标准型的连续系统状态空间表达式:

x˙=Jx+Bu,y=Cx\dot{x} = Jx + Bu, \quad y = Cx

其中状态转移矩阵 JJ 由若干个约旦块(含对角元)沿对角线排列构成,输入矩阵 BB(或向量 bb)和输出矩阵 CC(或向量 cc)按对应约旦块的阶数进行分块:

J=[λ110λ10010λ1λm100λm010λmλm+10000λn],B=[b1b2bmbm+1blbl+1bn]J = \left[\begin{array}{cccc|cccc|ccc} \lambda_1 & 1 & & 0 & & & & & & & \\ & \lambda_1 & \ddots & & & 0 & & & & 0 & \\ & & \ddots & 1 & & & & & & & \\ 0 & & & \lambda_1 & & & & & & & \\ \hline & & & & \lambda_m & 1 & & 0 & & & \\ & 0 & & & & \lambda_m & \ddots & & & 0 & \\ & & & & & & \ddots & 1 & & & \\ & & & & 0 & & & \lambda_m & & & \\ \hline & & & & & & & & \lambda_{m+1} & & 0 \\ & 0 & & & & 0 & & & & \ddots & \\ & & & & & & & & 0 & & \lambda_n \end{array}\right], \quad B = \left[\begin{array}{c} b_1 \\ b_2 \\ \vdots \\ \mathbf{b_m} \\ \hline b_{m+1} \\ \vdots \\ \mathbf{b_l} \\ \hline b_{l+1} \\ \vdots \\ \mathbf{b_n} \end{array}\right] C=[c1c2cmcm+1clcl+1cn]C = \left[\begin{array}{cccc|cccc|ccc} \mathbf{c_1} & c_2 & \cdots & c_m & \mathbf{c_{m+1}} & \cdots & c_l & c_{l+1} & \cdots & c_n \end{array}\right]
  • 每一个独立的约旦块 JkJ_k 对应一组具有相同特征值的耦合状态变量(例如 x1xmx_1 \sim x_m);
  • 一阶约旦块即对角元素(例如 xm+1xnx_{m+1} \sim x_n),对应完全解耦的一维模态。

二、核心法则与内在物理传导机理

1. 约旦块单个状态判定黄金法则


2. 深度机理解剖:为什么是“非零行及以上能控,非零列及以右能观”?

许多同学在考场上容易将“上”与“下”、“左”与“右”混淆,甚至觉得这个结论非常反直觉。其根本原因在于:数学家在用矩阵排版时,把物理现实中信号流动的“上游”与“下游”在视觉上写反了!

只要建立起控制工程中最经典的**三级串联水箱(单向重力级联系统)**物理模型,所有结论便如水到渠成、终生不忘。


(1)物理原型:三级串联水箱模型(变量耦合的物理来源)

💡 【思考与设问】 为什么状态变量之间会存在耦合(+x2,+x3+x_2, +x_3)?

  • 对角矩阵(完全解耦):相当于 3 个水箱并排平放在地面上,各自独立进水、出水,各状态互不干涉;
  • 约旦块(单向级联耦合):相当于垂直叠放的 3 个漏水水箱,水在重力作用下只能自上而下单向流动,不可逆流
               [ 外部注水管 u(t) ]

               ┌───────────────┐
               │  3 号水箱 x3  │  (最上游源头:只出不进,自生自灭)
               └───┬───────────┘
                   │ 漏水流入 ~ x3

               ┌───────────────┐
               │  2 号水箱 x2  │  (中间级:入水取决于 3 号液位)
               └───┬───────────┘
                   │ 漏水流入 ~ x2

               ┌───────────────┐
               │  1 号水箱 x1  │  (最下游末端:入水取决于 2 号液位)
               └───┬───────────┘
                   │ 最终排空

我们用状态变量 x1,x2,x3x_1, x_2, x_3 分别表示 3 个水箱的液位蓄水量(储能状态)

  1. 3 号水箱(最上游源头):自身自发漏水,同时接收注水管 u(t)u(t) 输入: x˙3=λx3+b3u\dot{x}_3 = \lambda x_3 + b_3 u
  2. 2 号水箱(中间级):自身向外漏水,但其进水流量由 3 号水箱液位直接决定(耦合项 +x3+x_3): x˙2=λx2+x3+b2u\dot{x}_2 = \lambda x_2 + \mathbf{x_3} + b_2 u
  3. 1 号水箱(最下游末端):自身向外漏水,但其进水流量由 2 号水箱液位直接决定(耦合项 +x2+x_2): x˙1=λx1+x2+b1u\dot{x}_1 = \lambda x_1 + \mathbf{x_2} + b_1 u

这就是标准的 3 阶约旦块状态方程:

[x˙1x˙2x˙3]=[λ100λ100λ][x1x2x3]+[b1b2b3]u,y=[c1c2c3][x1x2x3]\begin{bmatrix} \dot{x}_1 \\ \dot{x}_2 \\ \dot{x}_3 \end{bmatrix} = \begin{bmatrix} \lambda & \mathbf{1} & 0 \\ 0 & \lambda & \mathbf{1} \\ 0 & 0 & \lambda \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \\ x_3 \end{bmatrix} + \begin{bmatrix} b_1 \\ b_2 \\ b_3 \end{bmatrix} u, \quad y = \begin{bmatrix} c_1 & c_2 & c_3 \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \\ x_3 \end{bmatrix}

8.5.4-约旦块单向链式传导机理图.png


(2)能控性机理解析(注水管注入:自下而上回传驱动)

能控性的物理本质:拿着外部注水管 u(t)u(t),能否把某个水箱的液位从任意初态操纵到目标值?

假设注水管只插在 2 号水箱中(b3=0,b20b_3 = 0, b_2 \neq 0

  1. 看 3 号水箱(上游)
    • 微分方程为 x˙3=λx3\dot{x}_3 = \lambda x_3
    • 水管插在 2 号,重力作用下水绝对无法逆流爬进 3 号水箱!3 号水箱完全不受控,处于自治衰减状态,x3x_3 绝对不能控
  2. 看 2 号水箱(本级)
    • 水管直接给它注水,直接操纵其液位,x2x_2 能控
  3. 看 1 号水箱(下游)
    • 2 号水箱的水顺流而下全部排入 1 号。我们只要通过控制 2 号的液位,就能精确调控流入 1 号的流量,进而把 1 号水箱也牢牢控制在目标值,x1x_1 能控

(3)能观性机理解析(水尺测液位:时域展开与顺藤摸瓜)

能观性的物理本质:在某个水箱插上水尺(传感器),能否从测得的液位数据反推出各水箱的初始存水量?

在零输入自治下,系统的时域状态转移解析解为:

[x1(t)x2(t)x3(t)]=eJtx(0)=eλt[1tt2201t001][x1(0)x2(0)x3(0)]\begin{bmatrix} x_1(t) \\ x_2(t) \\ x_3(t) \end{bmatrix} = e^{Jt} x(0) = e^{\lambda t} \begin{bmatrix} 1 & t & \frac{t^2}{2} \\ 0 & 1 & t \\ 0 & 0 & 1 \end{bmatrix} \begin{bmatrix} x_1(0) \\ x_2(0) \\ x_3(0) \end{bmatrix}

代入输出方程 y(t)=c1x1+c2x2+c3x3y(t) = c_1 x_1 + c_2 x_2 + c_3 x_3,整理得到按初值分布的时域输出信号:

y(t)=eλt[c1x1(0)+(c1t+c2)x2(0)+(12c1t2+c2t+c3)x3(0)]y(t) = e^{\lambda t} \Big[ \mathbf{c_1} x_1(0) + \big(\mathbf{c_1} t + \mathbf{c_2}\big) x_2(0) + \big(\tfrac{1}{2}\mathbf{c_1} t^2 + \mathbf{c_2} t + \mathbf{c_3}\big) x_3(0) \Big]

现在对比两种传感器安放位置:

  • 场景 A:水尺只插在 3 号水箱(最上游源头)(c1=c2=0,c30c_1=c_2=0, c_3 \neq 0,非零在第 3 列)y(t)=c3eλtx3(0)y(t) = c_3 e^{\lambda t} x_3(0)

    • 你只能看到 3 号水箱的液位;
    • 水流下去之后,下游的 2 号和 1 号水箱里原本有多少初始底水?下层水箱有没有堵塞漏水?你一无所知
    • 输出 y(t)y(t) 中根本不含 x1(0)x_1(0)x2(0)x_2(0),故左侧的 x1,x2x_1, x_2 绝对不能观
  • 场景 B:水尺插在 1 号水箱(最下游末端)(c10c_1 \neq 0,非零在第 1 列)y(t)=eλt[c1x1(0)+(c1t+c2)x2(0)+(12c1t2+c2t+c3)x3(0)]y(t) = e^{\lambda t} \Big[ c_1 x_1(0) + (c_1 t + c_2) x_2(0) + (\tfrac{1}{2}c_1 t^2 + c_2 t + c_3) x_3(0) \Big]

    • 1 号水箱不仅反映自身底水 x1(0)x_1(0)
    • 观察 1 号水位上升的速率(一阶变率 / tt 项系数),直接能解出正从 2 号流入的水量,从而求出 x2(0)x_2(0)
    • 观察水流加速度(二阶变率 / t2t^2 项系数),又能进一步顺藤摸瓜求出 3 号水箱的水量 x3(0)x_3(0)
    • x1,x2,x3x_1, x_2, x_3 全部可被唯一重构

(4)核心物理与数学映射一览表

变量矩阵行列位置水箱物理角色水流/信号传递方向能控性(水管注水)能观性(水尺量位)
x1x_1第 1 行 / 第 1 列(最上)最下游末端(总受纳端)汇聚所有上游水流只要上方有注水即受控测这里可顺藤摸瓜反推全部上游
x2x_2第 2 行 / 第 2 列(中间)中间水箱接收 3 号,排给 1 号从 2 号注水,控 2 和 1测这里可反推 3 号,不知 1 号底水
x3x_3第 3 行 / 第 3 列(最下)最上游源头(始发端)自身流出,不纳下级唯有在 3 号注水才控 3 号测这里只知 3 号,对 1、2 号彻底盲区

三、状态变量的四类子空间划分(Kalman 结构分解映射)

根据单个状态的能控与能观性,可将整个状态空间精确划分为 4 类互不相交的模态子空间:

状态类别符号表示物理特征与系统传递函数 G(s)G(s) 的内在联系
既能控又能观状态xcox_{co}既受输入 uu 激励操纵,又能在输出 yy 中反映构成传递函数的保留极点(极小实现的基底)
能控但不能观状态xcoˉx_{c\bar{o}}受输入 uu 激励操纵,但信号传递不到输出 yy在求传递函数时因零极点对消而丢失
不能控但能观状态xcˉox_{\bar{c}o}不受输入 uu 激励,但其初始运动可在 yy 中测得在求传递函数时因零极点对消而丢失
既不能控又不能观状态xcˉoˉx_{\bar{c}\bar{o}}既不受输入影响,又无法通过输出观测在求传递函数时因零极点对消而丢失

四、标准解题模板:四步秒杀法


五、经典例题与真题精析(全面覆盖讲义全部算例)

例题 1:五阶双约旦块系统单个状态属性判定(讲义例 3)


例题 2:六阶多输入多输出约旦系统状态属性判定(讲义例 4)


例题 3:四阶对角型系统状态属性分类(讲义例 5)


例题 4:六阶混合约旦系统状态属性判定(讲义例 6)


例题 5:双约旦块输入结构对比分析(讲义第 7 题精解)


六、考场四大易错陷阱与极速避坑指南

Discussion

Comments

Post

Thoughts, corrections, and follow-up notes are welcome here.