假设我们在标准状态空间符号中有一个线性表示:

$$ \ dot {x}(t)= Ax(t)+ Bu(t)$$
$$ y (t)= Cx(t)+ Du(t)$$

为了获得其脉冲响应,可以对其Laplace变换进行获取

$ $ sX = AX + BU $$
$$ Y = CX + DU $$

,然后求解传递函数,即

$$ \ frac {Y} {U} = C(sI-A)^ {-1} B + D $$

类似地,对于离散系统,$ \ mathcal {Z} $变换的
$$ x [n + 1] = Ax [n] + Bu [n] $$
$$ y [n] = Cx [n] + Du [n] $$

is

$$ \ frac {Y} {U} = C(zI-A)^ {-1} B + D $$

此过程似乎有点长,我记得有一种方法可以使用状态转换矩阵来找到冲激响应,这是每对第一个方程的xx $的解。有谁知道该怎么做?

#1 楼

您可以通过解决第一个方程式中的标准非齐次ODE来使用状态转移矩阵解决问题。 $ \ dot {x}(t)= A x(t)+ B u(t)$的解是

$$ x(t)= x_0 e ^ {At} + \ int_ {0} ^ te ^ {A(t-t')} Bu(t')dt'$$

其中$ x_0 = x(0)$。量$ e ^ {At} $被称为状态转移矩阵(也是齐次ODE的解),我将其称为$ \ Xi(t)$(我不记得它的标准符号)。取$ x_0 = 0 $,$ y(t)$的等式变为

$$ y(t)= C \ int_0 ^ t \ Xi(t-t')Bu(t') dt'+ Du(t)$$

上面的方程式将输出作为输入与系统冲激响应进行卷积,实际上,您可以对上述方程式进行Laplace变换进行验证。注意到$ \ Xi(t)= e ^ {At} $的Laplace变换是$(sI-A)^ {-1} $,并且时域中的卷积成为s域中的乘积,我们得到

$$ Y = C(sI-A)^ {-1} BU + DU $$

为您提供与问题相同的传递函数。


关于您对完全Laplace变换方法的评论很长,我不一定会这样说。但是,状态转换矩阵方法可能更易于实现,因为涉及该状态转移矩阵的多个操作可以通过简单的矩阵乘法进行计算,仅此而已。

评论


$ \ begingroup $
非常好的描述。
$ \ endgroup $
–Jason R
2011年8月31日下午14:26