为什么必须有两个状态变量

信息处理 线性系统 控制系统 状态空间
2022-01-29 07:10:14

我正在学习控制理论。
让我们考虑一下这个系统。

ma(t)+bv(t)+kx(t)=f(t)

a是加速度是速度是位移是外力
v
x
f

在我的教科书中,关于“状态空间模型”的章节中,需要两个状态变量( 来完整地描述这个系统。 但是,我认为本身可以完全描述这个质量的运动。 如果我们知道可以从导出。 所以我有两个问题。 xv

x
xvx

  1. 为什么需要两个变量。
  2. 为什么是“ ”? ”或“ ”也能描述这个系统吗?xvvaxa
2个回答

让我们将您的系统重写为

mx¨(t)+bx˙(t)+kx(t)=f(t)

然后你可以看到你在说什么:我需要知道的一切都在中!x(t)

但真的是这样吗?

状态空间系统的前提是要求解一个单一的一阶微分方程。正如您在上面重写的等式中看到的那样,有一个双导数项。

为了将该方程写成一阶方程,我们需要有两个状态变量: 所以 其中

X(t)=[xx˙]
AX˙(t)+BX(t)=f(t)
A=[b m]B=[k 0]

让我们尝试使用做同样的事情。xx¨

X(t)=[xx¨]
所以 其中
AX˙(t)+BX(t)=f(t)
A=[b 0]B=[k m]

所以我想你可以选择状态变量为 ...但这意味着一个未使用的变量。xx¨x

可以在本文档中找到一些一阶系统的示例。

在此处输入图像描述

v不能从导出。一旦您使用 require 比更多的信息来计算,从而计算动量,您就添加了描述系统状态所需的信息。xt0xt0v