离散时间系统状态方程及采样数据系统详解
1. 离散时间系统的对角形式(并行形式)模型
在离散时间系统中,系统传递函数可以有多种表示形式,对角形式(并行形式)模型是其中一种重要的表示方式。考虑系统传递函数如下:
[
H[z] = \frac{b_0z^N + b_1z^{N + 1} + \cdots + b_{N - 1}z + b_N}{z^N + a_1z^{N + 1} + \cdots + a_{N - 1}z + a_N}
]
它可以进一步转化为:
[
H[z] = b_0 + \frac{b_1z^{-1} + \cdots + b_{N - 1}z^{-(N - 1)} + b_Nz^{-N}}{1 + a_1z^{-1} + \cdots + a_{N - 1}z^{-(N - 1)} + a_Nz^{-N}} = b_0 + \frac{A_1}{(z - \lambda_1)} + \cdots + \frac{A_N}{(z - \lambda_N)}
]
其中,(\lambda_1, \lambda_2, \cdots, \lambda_n) 是 (H[z]) 的不同特征值。
从这个传递函数可以写出状态方程:
- 状态更新方程:
[
\begin{cases}
x_1[n + 1] = \lambda_1x_1[n] + u[n] \
x_2[n + 1] = \lambda_2x_2[n] + u[n] \
\cdots \
x_N[n + 1] = \lambda_N x_N[n] + u[n]
\end{cases}
]
- 输出方程:
[
y[n] = A_1x_1[n] + A_2x_2[n] + \cdots + A_N x_N[n] + b_0u[n]
]
将上述方程写成矩阵形式:
[
x[n + 1] =
\begin{bmatrix}
\lambda_1 & 0 & 0 & \cdots & 0 \
0 & \lambda_2 & 0 & \cdots & 0 \
0 & 0 & \lambda_3 & \cdots & 0 \
\vdots & \vdots & \vdots & \cdots & \vdots \
0 & 0 & 0 & \cdots & \lambda_N
\end{bmatrix}
x[n] +
\begin{bmatrix}
1 \
1 \
1 \
\vdots \
1
\end{bmatrix}
u[n]
]
[
y[n] = [A_1 \ A_2 \ A_3 \cdots A_N]x[n] + b_0u[n]
]
下面通过一个例子来具体说明。
例 1 :某离散时间系统的传递函数为 (H[z] = \frac{z^3 + 10z^2 + 32z + 29}{z^3 + 9z^2 + 26z + 24}),求其状态方程,且 (A) 矩阵为对角形式。
解
:
首先,将分子多项式除以分母多项式:
[
\begin{array}{r}
1 \
z^3 + 9z^2 + 26z + 24 \overline{)z^3 + 10z^2 + 32z + 29} \
\underline{z^3 + 9z^2 + 26z + 24} \
z^2 + 6z + 5
\end{array}
]
得到 (H[z] = 1 + \frac{z^2 + 6z + 5}{z^3 + 9z^2 + 26z + 24})。
对分子分母进行因式分解:
((z^2 + 6z + 5) = (z + 1)(z + 5)),((z^3 + 9z^2 + 26z + 24) = (z + 2)(z + 3)(z + 4))。
则 (H[z] = 1 + \frac{(z + 1)(z + 5)}{(z + 2)(z + 3)(z + 4)}),进一步分解为:
(\frac{(z + 1)(z + 5)}{(z + 2)(z + 3)(z + 4)} = \frac{A_1}{(z + 2)} + \frac{A_2}{(z + 3)} + \frac{A_3}{(z + 4)})
计算得到 (A_1 = -\frac{3}{2}),(A_2 = 4),(A_3 = -\frac{3}{2})。
所以 (H[z] = 1 - \frac{3}{2}\frac{1}{(z + 2)} + \frac{4}{(z + 3)} - \frac{3}{2}\frac{1}{(z + 4)})。
特征值为 (\lambda_1 = -2),(\lambda_2 = -3),(\lambda_3 = -4)。
状态方程为:
[
x[n + 1] =
\begin{bmatrix}
-2 & 0 & 0 \
0 & -3 & 0 \
0 & 0 & -4
\end{bmatrix}
x[n] +
\begin{bmatrix}
1 \
1 \
1
\end{bmatrix}
u[n]
]
[
y[n] =
\begin{bmatrix}
-\frac{3}{2} & 4 & -\frac{3}{2}
\end{bmatrix}
x[n] + u[n]
]
2. 状态方程的求解方法
离散时间系统状态方程的求解主要有两种方法:
-
经典方法(递归方法)
:
考虑齐次方程 (x[k + 1] = Ax[k]),(k = 0, 1, 2, \cdots)。
其解为 (x[k] = A\varphi[k]),其中 (\varphi[k]) 是基本或状态转移矩阵,满足 (\varphi[k + 1] = A\varphi[k]),且 (\varphi[0] = I),(\varphi[k]) 是 (n \times n) 矩阵。
一般地,(\varphi[k] = A^k),所以 (x[k] = A^k x[0])。
对于非齐次方程 (x[k + 1] = Ax[k] + Bu[k]),其解为 (x[k] = A^k x[0] + \sum_{j = 1}^{k} A^{k - j} Bu(j - 1))。
-
z - 变换方法
:
对 (x[k + 1] = Ax[k] + Bu[k]) 两边取 z - 变换,得到 (Zx[z] - zx[0] = Ax[z] + Bu[z]),整理可得:
[
X[z] = [zI - A]^{-1}zx[0] + [zI - A]^{-1}BU[z]
]
对其取逆 z - 变换即可得到 (x[k])。
下面通过一个例子说明 z - 变换方法的应用。
例 2
:已知向量矩阵差分方程 (x[k + 1] =
\begin{bmatrix}
-3 & 1 \
-2 & 0
\end{bmatrix}
x[k] +
\begin{bmatrix}
1 \
0
\end{bmatrix}
u[k]),(x[0] =
\begin{bmatrix}
1 \
-1
\end{bmatrix}),输入为单位阶跃序列,求 (x[k])。
解
:
已知 (A =
\begin{bmatrix}
-3 & 1 \
-2 & 0
\end{bmatrix}),(B =
\begin{bmatrix}
1 \
0
\end{bmatrix}),(x[0] =
\begin{bmatrix}
1 \
-1
\end{bmatrix})。
单位阶跃序列的 (z) - 变换为 (U(z) = \frac{z}{z - 1})。
计算 ([zI - A] =
\begin{bmatrix}
(z + 3) & -1 \
2 & z
\end{bmatrix}),其逆为 ([zI - A]^{-1} = \frac{1}{(z + 1)(z + 2)}
\begin{bmatrix}
z & 1 \
-2 & z + 3
\end{bmatrix})。
设 (X_0[z] = [zI - A]^{-1}zx[0]),(X_f[z] = [zI - A]^{-1}BU(z))。
计算 (X_0[z]):
[
X_0(z) = \frac{z}{(z + 1)(z + 2)}
\begin{bmatrix}
z & 1 \
-2 & z + 3
\end{bmatrix}
\begin{bmatrix}
1 \
-1
\end{bmatrix}
]
[
\frac{X_0[z]}{z} = \frac{1}{(z + 1)(z + 2)}
\begin{bmatrix}
(z - 1) \
-(z + 5)
\end{bmatrix}
=
\begin{bmatrix}
\frac{3}{(z + 2)} - \frac{2}{(z + 1)} \
\frac{3}{(z + 2)} - \frac{4}{(z + 1)}
\end{bmatrix}
]
[
X_0[z] =
\begin{bmatrix}
\frac{3z}{(z + 2)} - \frac{2z}{(z + 1)} \
\frac{3z}{(z + 2)} - \frac{4z}{(z + 1)}
\end{bmatrix}
]
取逆 z - 变换得到 (x_0[k] =
\begin{bmatrix}
3(-2)^k - 2(-1)^k \
3(-2)^k - 4(-1)^k
\end{bmatrix})。
计算 (X_f[z]):
[
[zI - A]^{-1}B = \frac{1}{(z + 1)(z + 2)}
\begin{bmatrix}
z & 1 \
-2 & z + 3
\end{bmatrix}
\begin{bmatrix}
1 \
0
\end{bmatrix}
= \frac{1}{(z + 1)(z + 2)}
\begin{bmatrix}
z \
-2
\end{bmatrix}
]
[
X_f[z] = [zI - A]^{-1}BU[z] = \frac{z}{(z - 1)(z + 1)(z + 2)}
\begin{bmatrix}
z \
-2
\end{bmatrix}
]
[
\frac{X_f[z]}{z} = \frac{1}{(z - 1)(z + 1)(z + 2)}
\begin{bmatrix}
z \
-2
\end{bmatrix}
=
\begin{bmatrix}
\frac{1}{2(z + 1)} - \frac{2}{3}\frac{1}{(z + 2)} + \frac{1}{6(z - 1)} \
\frac{1}{(z + 1)} - \frac{2}{3}\frac{1}{(z + 2)} - \frac{1}{3(z - 1)}
\end{bmatrix}
]
[
X_f[z] =
\begin{bmatrix}
\frac{1}{2}\frac{z}{z + 1} - \frac{2}{3}\frac{z}{(z + 2)} + \frac{z}{6(z - 1)} \
\frac{z}{(z + 1)} - \frac{2}{3}\frac{z}{z + 2} - \frac{z}{z(z - 1)}
\end{bmatrix}
]
取逆 z - 变换得到 (x_f[k] =
\begin{bmatrix}
\frac{1}{2}(-1)^k - \frac{2}{3}(-2)^k + \frac{1}{6} \
(-1)^k - \frac{2}{3}(-2)^k - \frac{1}{3}
\end{bmatrix})。
总响应为 (x[k] = x_0[k] + x_f[k] =
\begin{bmatrix}
\frac{7}{2}(-2)^k - \frac{3}{2}(-1)^k + \frac{1}{6} \
\frac{7}{2}(-2)^k - 3(-1)^k - \frac{1}{3}
\end{bmatrix})
3. 离散时间系统的可控性和可观性
-
可控性
:
考虑向量矩阵差分方程 (x[k + 1] = Ax[k] + BU[k]),若能在有限时间内将任意初始状态 (x[0] = x_0) 转移到任意最终状态 (x_f),则称该线性离散时间系统是绝对状态可控的。
对于不同输入序列,有:
[
\begin{cases}
x[1] = Ax[0] + Bu[0] \
x[
离散时间系统状态方程及采样数据系统详解
3. 离散时间系统的可控性和可观性(续)
-
可控性(续)
:
考虑向量矩阵差分方程 (x[k + 1] = Ax[k] + BU[k]),若能在有限时间内将任意初始状态 (x[0] = x_0) 转移到任意最终状态 (x_f),则称该线性离散时间系统是绝对状态可控的。
对于不同输入序列,有:
[
\begin{cases}
x[1] = Ax[0] + Bu[0] \
x[2] = Ax[1] + Bu[1] = A^2x[0] + ABu[0] + Bu[1] \
\cdots \
x[n] = A^nx[0] + A^{n - 1}Bu[0] + \cdots + Bu[n - 1]
\end{cases}
]
可整理为 (x[n] - A^nx[0] = [B \ AB \ A^2B \cdots A^{n - 1}B]
\begin{bmatrix}
u[n - 1] \
u[n - 2] \
\cdots \
u[1] \
u[0]
\end{bmatrix})
设 (Q = [B \ AB \ A^2B \cdots A^{n - 1}B]) 是一个 (n \times n) 方阵,为了使输入序列能在 (n) 步内将初始状态 (x_0) 转移到任意最终状态 (x_f),需要可控性矩阵 (Q) 存在,即离散系统要完全状态可控,可控性矩阵 (Q) 应具有满秩。
下面通过两个例子来判断系统的可控性:
例 3
:考虑离散时间系统 (x[k + 1] =
\begin{bmatrix}
0 & 6 \
-1 & -5
\end{bmatrix}
x +
\begin{bmatrix}
3 & 6 \
-1 & -2
\end{bmatrix}
u),判断其是否状态可控。
解
:已知 (A =
\begin{bmatrix}
0 & 6 \
-1 & -5
\end{bmatrix}),(B =
\begin{bmatrix}
3 & 6 \
-1 & -2
\end{bmatrix}),计算 (AB =
\begin{bmatrix}
0 & 6 \
-1 & -5
\end{bmatrix}
\begin{bmatrix}
3 & 6 \
-1 & -2
\end{bmatrix}
=
\begin{bmatrix}
-6 & -12 \
2 & 4
\end{bmatrix})
可控性矩阵 (Q = [B \ AB] =
\begin{bmatrix}
3 & 6 & -6 & -12 \
-1 & -2 & 2 & 4
\end{bmatrix})
观察可得,第二列是第一列的 2 倍,第三列是第二列的 -1 倍,第四列是第三列的 2 倍,列向量线性相关,无法形成满秩为 2 的方阵,所以该系统不是完全状态可控的。
例 4
:考虑系统 (x[k + 1] =
\begin{bmatrix}
0 & 1 & 0 \
3 & 0 & 2 \
-12 & -7 & -6
\end{bmatrix}
x[k] +
\begin{bmatrix}
1 \
4 \
6
\end{bmatrix}
u[k]),判断其是否完全状态可控。
解
:已知 (A =
\begin{bmatrix}
0 & 1 & 0 \
3 & 0 & 2 \
-12 & -7 & -6
\end{bmatrix}),(B =
\begin{bmatrix}
1 \
4 \
6
\end{bmatrix})
计算 (AB =
\begin{bmatrix}
0 & 1 & 0 \
3 & 0 & 2 \
-12 & -7 & -6
\end{bmatrix}
\begin{bmatrix}
1 \
4 \
6
\end{bmatrix}
=
\begin{bmatrix}
4 \
15 \
-76
\end{bmatrix})
(A^2B =
\begin{bmatrix}
0 & 1 & 0 \
3 & 0 & 2 \
-12 & -7 & -6
\end{bmatrix}
\begin{bmatrix}
4 \
15 \
-76
\end{bmatrix}
=
\begin{bmatrix}
15 \
-140 \
303
\end{bmatrix})
可控性矩阵 (Q = [B \ AB \ A^2B] =
\begin{bmatrix}
1 & 4 & 15 \
4 & 15 & -140 \
6 & -76 & 303
\end{bmatrix})
观察可知,(Q) 的列向量不能表示为其他列向量的线性组合,列向量线性独立,矩阵 (Q) 具有满秩。
计算 (|Q| = 1\times(15\times303 - 140\times76) - 4\times(4\times303 + 6\times140)+15\times(4\times(-76) - 6\times15)= - 6095 - 8208 - 5910 = -20213\neq0),所以矩阵 (Q) 的秩为 3,该系统是完全状态可控的。
-
可观性
:
考虑线性时不变离散时间自治系统的状态和输出方程 (x[k + 1] = Ax[k]),(y[k] = Cx[k])。若能通过测量输出 (y[k]) 来确定未知的初始状态 (x[0]),则称该离散时间系统是可观的。
对于 (k = 0, 1, 2, \cdots, (n - 1)),输出序列为:
[
\begin{cases}
y[0] = Cx[0] \
y[1] = Cx[1] = CAx[0] \
y[2] = Cx[2] = CA^2x[0] \
\cdots \
y[n - 1] = Cx[n - 1] = CA^{n - 1}x[0]
\end{cases}
]
可写成 (\begin{bmatrix}
y[0] \
y[1] \
y[2] \
\cdots \
y[n - 1]
\end{bmatrix}
=
\begin{bmatrix}
C \
CA \
CA^2 \
\cdots \
CA^{n - 1}
\end{bmatrix}
x[0]=Sx[0])
其中 (S =
\begin{bmatrix}
C \
CA \
CA^2 \
\cdots \
CA^{n - 1}
\end{bmatrix}) 称为可观性矩阵。若可观性矩阵 (S) 的逆存在(即 (S) 非奇异),则可从 (y[k]) 得到 (x[0]),也就是 (S = [C^T \ A^TC^T \ (A^T)^2C^T \cdots (A^T)^{n - 1}C^T]) 应具有秩 (n)。
例 5
:验证离散时间系统 (x[k + 1] =
\begin{bmatrix}
-5 & 4 \
-6 & 5
\end{bmatrix}
x[k] +
\begin{bmatrix}
1 \
1
\end{bmatrix}
u[k]),(y[k] = [-2 \ 3]) 是否可观。
解
:已知 (C^T =
\begin{bmatrix}
-2 \
3
\end{bmatrix}),(A^T =
\begin{bmatrix}
-5 & -6 \
4 & 5
\end{bmatrix})
计算 (A^TC^T =
\begin{bmatrix}
-5 & -6 \
4 & 5
\end{bmatrix}
\begin{bmatrix}
-2 \
3
\end{bmatrix}
=
\begin{bmatrix}
-8 \
7
\end{bmatrix})
可观性矩阵 (S = [C^T \ A^TC^T] =
\begin{bmatrix}
-2 & -8 \
3 & 7
\end{bmatrix})
计算 (|S|=-14 + 24 = 10\neq0),可观性矩阵 (S) 的行列式不为零,其逆存在,所以该系统是可观的。
4. 采样数据系统
-
简介 :
随着廉价微处理器和小型计算机的引入,采样数据系统(也称为数字控制系统)变得非常流行。当控制所需的测量以间歇形式获得时,或者当要控制的系统复杂性增加以及对于大规模系统,通常会在系统中引入数字计算机。数字计算机仅定期向每个工厂发送控制信号。在模拟系统中,要控制的工厂或过程用微分方程描述;而在离散时间系统(数字控制系统)中,信号在离散时间间隔内变化,由差分方程控制。如果系统中同时连接了模拟和数字组件,则称为采样数据系统,其中变量在某些点以离散形式出现,在其他点以模拟形式出现。 -
优点 :
- 在数字控制系统中,通过更改软件可以轻松修改控制律,而在模拟系统中则不然。
- 采样数据控制系统使用需要低能量信号的控制元件,因此可以用低功率信号控制大功率。
- 模拟组件的漂移较大,精度较低;数字控制系统的漂移最小,精度更高。
- 在连续系统中使用微分控制器不仅会增强噪声,还会产生额外噪声;而在采样数据控制系统中,无需对模拟信号进行放大,从而降低了系统中的噪声。
- 在采样数据控制系统中,连续信号之间的时间间隔可用于控制许多其他独立的工厂,从而降低了总体成本。
- 在采样数据控制系统中,使用数字计算机有助于数据采集和监控系统中的所有变量,确保工厂的安全,使启动和关闭程序变得简单。
- 在采样数据系统中,易于实现最优和自适应控制。
-
缺点 :
- 与连续控制系统相比,采样数据控制系统的分析和设计更加复杂和繁琐。
- 在采样数据系统中使用 A/D、D/A 转换器和数字计算机会在发送信号时引入延迟,因此难以实现理论计算所预测的性能目标(理论计算假设无延迟)。
- 一般来说,采样数据系统比连续系统稳定性差。
- 在采样数据控制系统中,从离散信号重建连续信号时,会丢失信号信息。
- 在采样数据系统中,很难获得系统在采样间隔之间的行为信息。
-
采样数据闭环控制系统 :
典型的采样数据闭环控制系统的框图如下:
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
r(t)[输入 r(t)]:::process --> e(t)[误差 e(t)]:::process
e(t) --> A/D[/A/D 转换器/]:::process
A/D --> m(kT)[数字序列 m(kT)]:::process
m(kT) --> Computer(数字计算机):::process
Computer --> u(kT)[离散信号 u(kT)]:::process
u(kT) --> D/A[/D/A 转换器/]:::process
D/A --> u(t)[连续信号 u(t)]:::process
u(t) --> Plant(工厂):::process
Plant --> c(t)[输出 c(t)]:::process
c(t) --> -.[反馈]:::process
-. --> e(t)
输入 (r(t))、输出 (c(t)) 和误差 (e(t)) 是连续信号。误差信号 (e(t)) 通过 A/D 转换器转换为数字序列 (m(kT)),这需要在时刻 (kT)((k = 0, 1, 2, \cdots),(T) 为采样周期)对模拟信号 (e(t)) 进行采样得到 (e(kT))。A/D 转换器先将连续信号 (e(t)) 数字化为 (e(kT)),再进行量化得到 (m(kT))。数字计算机的输出为 (u(kT)),由于工厂需要连续信号 (u(t)),所以需要通过 D/A 转换器和数据外推器(保持电路)将离散信号 (u(kT)) 转换为 (u(t))。计算机硬件中的时钟每隔 (T) 秒向 A/D 和 D/A 转换器发送脉冲。
-
采样过程 :
将连续信号转换为离散信号的过程称为采样,在系统中可能在一个或多个地方发生,在框图中用开关表示。
输入信号 (x(t)) 是连续信号,采样器输出 (x^ (t)) 是脉冲序列,它们之间的关系为 (x^ (t)=\delta_T(t)x(t)),其中 (\delta_T(t)) 表示单位脉冲序列,可表示为 (\delta_T(t)=\sum_{-\infty}^{\infty}\delta_T(t - kT)),(\delta_T(t - kT)) 是在 (t = kT) 时刻出现的单位脉冲函数。如果连续信号以周期性方式采样,则采样信号可表示为 (x^*(t)=\sum_{-\infty}^{\infty}x(t)\delta_T(t - kT)=\sum_{-\infty}^{\infty}x(kT)\delta_T(t - kT))。 -
采样数据系统变量 :
采样数据系统中的变量可以根据时间和幅度进行分组,主要有以下四种类型:
| 类型 | 时间特性 | 幅度特性 |
| ---- | ---- | ---- |
| C - C | 连续 | 连续 |
| C - D | 离散 | 连续 |
| D - C | 连续 | 离散 |
| D - D | 离散 | 离散 |
常见的采样数据系统中,连续幅度、连续时间信号 (e(t)) 作为采样器的输入,采样器输出 (e^ (t)) 是连续幅度但离散时间的信号,该信号作为保持电路的输入,保持电路的输出是连续幅度、连续时间的信号。在开环采样数据控制系统中,连续信号 (e(t)) 被采样为 (e^ (t))(C - D),A/D 转换器将 (e^*(t)) 量化为 (e(kT))(D - D)并输入到数字计算机,数字计算机处理后输出另一个离散幅度 - 离散时间信号 (f(kT))。
超级会员免费看
962

被折叠的 条评论
为什么被折叠?



