什么是状态空间法

什么是状态空间法

1 状态空间法

经典控制理论中,在建立数学模型时是通过传递函数进行的,在这个过程中,只考虑输入和输出之间的关系,所以会将系统变成一个黑盒子,里面的内容被浓缩了。

而在现代控制理论中,会首先从系统中抽取出一些状态变量来,通过表示这些状态变量之间的关系来描述这个系统,这个过程中会暴露系统的内容,所以不是一个黑盒子。

在现代控制理论中,采用的是状态空间法进行描述。系统被看作一个状态空间,这个状态空间是有阶数的。

阶数 = 状态变量数 = 储能元件数 = 状态变量图中的积分器的个数 = 传递函数特征方程的阶数

一般直接看这个系统会求导几次,这个系统就是几阶了。

从线性代数的角度讲,这个状态空间就对应线性空间,阶数就对应秩,状态变量就是从线性空间中可以抽取出的线性无关变量,可以看做线性空间的轴数,基坐标数。

经典控制理论的缺点:

  • 模型为外部描述,不能全面描述被控对象的结构特性
  • 单输入单输出
  • 忽略初始条件的影响

系统的主要包含两部分内容,一是内部信息,而是内部结构。
对于线性定常系统而言,前者用状态变量表示,后者用动态方程表示。

动态方程 = 状态方程 + 输出方程
状态方程主要是描述状态变量之间的关系,输出方程则是在状态方程的基础上描述输出。

状态方程: dx/dt = f(x, u) = Ax + Bu
输出方程: y = f(x, u) = Cx + Du

A: 系统矩阵
B: 输入矩阵
C: 输出矩阵
D: 前馈矩阵

x\inRn , u\inRp,, y\inRq

2 如何建立动态方程?

  • step1: 确定状态变量的个数,选取状态变量(x1,…,xn),确定输入输出变量(u1,…,un; y1, …,y2)
  • step2: 列出微分方程
  • step3: 借助微分方程表示状态变量的一阶导数和输出变量

x˙\dot{x}1 = a11×\timesx1 + … + a1n×\timesxn + b11×\timesu1 + b1n×\timesun

x˙\dot{x}n = an1×\timesx1 + … + ann×\timesxn + bn1×\timesu1 + bnn×\timesun

y˙\dot{y}1 = c11×\timesx1 + … + c1n×\timesxn + d11×\timesu1 + d1n×\timesun

y˙\dot{y}n = cn1×\timesx1 + … + cnn×\timesxn + dn1×\timesu1 + dnn×\timesun

  • step4: 整理成矩阵A,B,C,D

3 如何由动态方程画出状态变量图

有几个状态变量就先画出几个积分器,积分器前放x˙\dot{x}i,积分器后放x\it{x}i,然后依据上面列出的两组式子就可以把整个图连接起来了。