第1章-多智能体系统 | 回到目录 | 第2章-系统控制原理 -> 线性系统状态空间 |
---|
文章目录
- 2 系统控制原理
- 2.1 经典控制理论
- 2.1.2 连续系统求解
- 定义 2.1 [拉普拉斯变换]
- 定义 2.2 [传递函数 transfer function]
- 定义 2.3 [零点 zeros、极点 poles]
- 例题 2.1
- 2.1.3 线性离散系统
- 2.1.4 离散系统求解
- 例题 2.2
2 系统控制原理
在分析和设计控制系统之前,建立控制系统的数学模型是分析和设计控制系统的首要工作。控制系统的数学模型是描述系统内部状态或变量之间关系的数学表达式。根据变量各阶导数的情况,系统的数学模型可分为静态数学模型和动态数学模型。静态数学模型中变量各阶导数为零,此时的模型又称为代数方程 (algebraic equation)。动态数学模型中描述的是变量各阶导数之间的关系,此时的模型又称为微分方程 (differential equation)。如果已知输入量及各变量的初始条件,对微分方程求解,就可以得到系统输出量的表达式,并由此可对系统进行性能分析。
在自动控制原理中,数学模型有多种形式。时域中常用的数学模型有微分方程、差分方程和状态方程;复数域中有传递函数、结构图;频域中有频率特性等。本章从模型建立的角度出发,在时域分别建立连续系统模型和离散系统模型,并通过转换到复数域本章主要介绍时域微分方程和差分方程的建立及其求解方法。更多详细内容请参考 [76-77] 。
2.1 经典控制理论
用线性微分方程描述的系统称为线性系统。线性系统的重要性质是可以应用叠加原理。叠加原理有两重含义,即具有可叠加性和均匀性 (或齐次性)。线性系统的叠加性原理表明,两个外作用同时加于系统所产生的总输出,等于各个外作用单独作用时分别产生的输出之和,且外作用的数值增大若干倍时,其输出亦增大同样的倍数。
线性定常系统的时域数学模型可由下述 n n n 阶线性常微分方程描述:
a 0 d n d t n c ( t ) + a 1 d n − 1 d t n − 1 c ( t ) + ⋯ + a n − 1 d d t c ( t ) + a n c ( t ) = b 0 d m d t m r ( t ) + b 1 d m − 1 d t m − 1 r ( t ) + ⋯ + b m − 1 d d t r ( t ) + b m r ( t ) (2.1) \begin{aligned} &a_0 \frac{\text{d}^n}{\text{d}t^n} c(t) + a_1 \frac{\text{d}^{n-1}}{\text{d}t^{n-1}} c(t) + \cdots + a_{n-1} \frac{\text{d}}{\text{d}t} c(t) + a_n c(t) \\ =&b_0 \frac{\text{d}^m}{\text{d}t^m} r(t) + b_1 \frac{\text{d}^{m-1}}{\text{d}t^{m-1}} r(t) + \cdots + b_{m-1} \frac{\text{d}}{\text{d}t} r(t) + b_m r(t) \\ \end{aligned} \tag{2.1} =a0dtndnc(t)+a1dtn−1dn−1c(t)+⋯+an−1dtdc(t)+anc(t)b0dtmdmr(t)+b1dtm−1dm−1r(t)+⋯+bm−1dtdr(t)+bmr(t)(2.1)
式中, c ( t ) c(t) c(t) 是系统输出量; r ( t ) r(t) r(t) 是系统输入量; a i ( i = 1 , 2 , ⋯ , n ) a_i(i=1,2,\cdots,n) ai(i=1,2,⋯,n) 和 b j ( j = 1 , 2 , ⋯ , m ) b_j(j=1,2,\cdots,m) bj(j=1,2,⋯,m) 是与系统结构和参数有关的常系数,实际系统中这些系数都是实数,且满足 n ≥ m n \ge m n≥m。
2.1.2 连续系统求解
建立控制系统数学模型的目的是为了用数学方法定量研究控制系统的工作特性。当系统微分方程列写出来后,只要给定输入量和初始条件,便可对微分方程求解,并由此知道系统输出量随时间变化的特性。线性定常微分方程的求解方法有两种:(1) 经典法;(2) 拉普拉斯变换法,以下简称拉氏变换。
(1) 经典法求解
在数学上,线性微分方程的解由特解和齐次微分方程的通解组成。通解由微分方程的特征根所决定,它代表自由运动。如果 n n n 阶微分方程的特征根是 λ 1 , λ 2 , ⋯ , λ n \lambda_1, \lambda_2, \cdots, \lambda_n λ1,λ2,⋯,λn 且无重根,则把函数 e λ 1 t , e λ 2 t , ⋯ , e λ n t \text{e}^{\lambda_1 t}, \text{e}^{\lambda_2 t}, \cdots, \text{e}^{\lambda_n t} eλ1t,eλ2t,⋯,eλnt 称为该微分方程所描述运动的模态,也叫振型。每一种模态代表一种类型的运动形态,齐次微分方程的通解则是它们的线性组合,即
y o ( t ) = c 1 e λ 1 t + c 2 e λ 2 t + ⋯ + c n e λ n t (2.2) y_o(t) = c_1 \text{e}^{\lambda_1 t} + c_2 \text{e}^{\lambda_2 t} + \cdots + c_n \text{e}^{\lambda_n t} \tag{2.2} yo(t)=c1eλ1t+c2eλ2t+⋯+cneλnt(2.2)
其中系数 c 1 , c 2 , ⋯ , c n c_1, c_2, \cdots, c_n c1,c2,⋯,cn 是由初始条件决定的常数。
如果特征根中有重根 λ \lambda λ,则模态会有形如 t e λ t , t 2 e λ t , ⋯ t \text{e}^{\lambda t}, t^2 \text{e}^{\lambda t}, \cdots teλt,t2eλt,⋯ 的函数;如果特征根中有共轭复根 λ = σ ± j ω \lambda = \sigma \pm j \omega λ=σ±jω,则其共轭复模态 e ( σ + j ω ) t \text{e}^{(\sigma + j \omega) t} e(σ+jω)t 与 e ( σ − j ω ) t \text{e}^{(\sigma - j \omega) t} e(σ−jω)t 可写成实函数模态 e σ t sin ( ω t ) \text{e}^{\sigma t} \sin(\omega t) eσtsin(ωt) 与 e σ t cos ( ω t ) \text{e}^{\sigma t} \cos(\omega t) eσtcos(ωt)。
(2) 拉普拉斯变换法
拉普拉斯变换是工程数学中常用的一种积分变换,又名拉氏变换。拉氏变换是一个线性变换,可将一个有参数实数 t ( t ≥ 0 ) t(t\ge 0) t(t≥0) 的函数转换为一个参数为复数 s s s 的函数。
拉普拉斯变换是对于 t ≥ 0 t\ge 0 t≥0 函数值不为零的连续时间函数 x ( t ) x(t) x(t) 通过关系式 X ( s ) = ∫ o ∞ x ( t ) e − s t d t X(s) = \int_o^{\infty} x(t) \text{e}^{-st} \text{d}t X(s)=∫o∞x(t)e−stdt (式中 − s t -st −st 为自然对数底 e \text{e} e 的指数)变换为复变量 s s s 的函数 X ( s ) X(s) X(s)。它也是时间函数 x ( t ) x(t) x(t) 的“复频域”表示方式。
定义 2.1 [拉普拉斯变换]
如果定义 f ( t ) f(t) f(t) 是一个关于 t t t 的函数,使得当 t < 0 t<0 t<0 时候有 f ( t ) = 0 f(t)=0 f(t)=0, s s s 是一个复变量, L \mathcal{L} L 是一个运算符号,它代表对其对象进行拉普拉斯积分, F ( s ) F(s) F(s) 是 f ( t ) f(t) f(t) 的拉普拉斯变换结果。则 f ( t ) f(t) f(t) 的拉氏变换可由下式给出
F ( s ) = ∫ o ∞ f ( t ) e − s t d t (2.3) F(s) = \int_o^{\infty} f(t) \text{e}^{-st} \text{d}t \tag{2.3} F(s)=∫o∞f(t)e−stdt(2.3)
拉氏变换 L \mathcal{L} L 具有以下性质:
- 线性性质 L [ a f 1 ( t ) ± b f 2 ( t ) ] = a F 1 ( s ) ± b F 2 ( s ) (2.4) \mathcal{L}[af_1(t) \pm bf_2(t) ] = aF_1(s) \pm bF_2(s) \tag{2.4} L[af1(t)±bf2(t)]=aF1(s)±bF2(s)(2.4)
- 微分定理 L [ f ˙ ( t ) ] = s ⋅ F ( s ) − f ( 0 ) (2.5) \mathcal{L}[\dot{f}(t)] = s\cdot F(s) - f(0) \tag{2.5} L[f˙(t)]=s⋅F(s)−f(0)(2.5)
- 积分定理 (右上角-1表示1次积分运算) L [ ∫ f ( t ) d t ] = 1 s F ( s ) + 1 s f ( − 1 ) ( 0 ) (2.6) \mathcal{L}[\int f(t) \text{d}t] = \frac1s F(s) + \frac1s f^{(-1)}(0) \tag{2.6} L[∫f(t)dt]=s1F(s)+s1f(−1)(0)(2.6)
- 初值定理 lim t → 0 f ( t ) = lim s → ∞ s ⋅ F ( s ) (2.7) \lim_{t\rightarrow 0} f(t) = \lim_{s\rightarrow\infty}s\cdot F(s) \tag{2.7} t→0limf(t)=s→∞lims⋅F(s)(2.7)
- 终值定理 (原函数终值需要确实存在) lim t → ∞ f ( t ) = lim s → 0 s ⋅ F ( s ) (2.8) \lim_{t\rightarrow \infty} f(t) = \lim_{s\rightarrow 0}s\cdot F(s) \tag{2.8} t→∞limf(t)=s→0lims⋅F(s)(2.8)
- 实位移定理 L [ f ( t − τ 0 ) ] = e − τ 0 s F ( s ) (2.9) \mathcal{L}[f(t-\tau_0)] = \text{e}^{-\tau_0 s} F(s) \tag{2.9} L[f(t−τ0)]=e−τ0sF(s)(2.9)
- 复位移定理 L [ e A t f ( t ) ] = F ( s − A ) (2.10) \mathcal{L}[\text{e}^{At}f(t)] = F(s-A) \tag{2.10} L[eAtf(t)]=F(s−A)(2.10)
表2.1 常用拉普拉斯变换对照表
序号 | 象函数 F ( s ) F(s) F(s) | 原函数 f ( t ) f(t) f(t) |
---|---|---|
1 | 1 1 1 | δ ( t ) \delta(t) δ(t) |
2 | 1 s \frac{1}{s} s1 | 1 ( t ) 1(t) 1(t) |
3 | 1 s 2 \frac{1}{s^2} s21 | t t t |
4 | 1 s n + 1 \frac{1}{s^{n+1}} sn+11 | t n n ! \frac{t^{n}}{n!} n!tn |
5 | 1 s + a \frac{1}{s+a} s+a1 | e − a t \text{e}^{-at} e−at |
6 | 1 ( s + a ) ( s + b ) \frac{1}{(s+a)(s+b)} (s+a)(s+b)1 | e − a t − e − b t b − a \frac{\text{e}^{-at} - \text{e}^{-bt}}{b-a} b−ae−at−e−bt |
7 | ω s 2 + ω 2 \frac{\omega}{s^2+\omega^2} s2+ω2ω | sin ( ω t ) \sin (\omega t) sin(ωt) |
8 | s s 2 + ω 2 \frac{s}{s^2+\omega^2} s2+ω2s | cos ( ω t ) \cos (\omega t) cos(ωt) |
9 | 1 s ( s + a ) \frac{1}{s(s+a)} s(s+a)1 | 1 a ( 1 − e − a t ) \frac{1}{a} (1-\text{e}^{-at}) a1(1−e−at) |
如果式 (2.1) 中输入 r ( t ) r(t) r(t) 及其各阶导数在 t = 0 t=0 t=0 时的值为零,输出 c ( t ) c(t) c(t) 及其各阶导数在 t = 0 t=0 t=0 时的值也为零,即零初始条件,则对式 (2.1) 中各项分别做拉氏变换可得关于 s s s 的代数方程
( a 0 s n + a 1 s n − 1 + ⋯ + a n − 1 s + a n ) C ( s ) = ( b 0 s m + b 1 s m − 1 + ⋯ + b m − 1 s + b m ) R ( s ) (2.11) \begin{aligned} &(a_0 s^{n} + a_1 s^{n-1} + \cdots + a_{n-1} s + a_n) C(s) \\ =&(b_0 s^{m} + b_1 s^{m-1} + \cdots + b_{m-1} s + b_m) R(s) \end{aligned}\tag{2.11} =(a0sn+a1sn−1+⋯+an−1s+an)C(s)(b0sm+b1sm−1+⋯+bm−1s+bm)R(s)(2.11)
其中 C ( s ) = L [ c ( t ) ] , R ( s ) = L [ r ( t ) ] C(s) = \mathcal{L}[c(t)], R(s) = \mathcal{L}[r(t)] C(s)=L[c(t)],R(s)=L[r(t)]。
定义 2.2 [传递函数 transfer function]
线性定常系统的传递函数定义为零初始条件下,系统输出量的拉氏变换与输入量的拉氏变换之比。
G ( s ) = C ( s ) R ( s ) (2.12) G(s) = \frac{C(s)}{R(s)} \tag{2.12} G(s)=R(s)C(s)(2.12)
对式 (2.11) 整理后可得其传递函数为式 (2.13)。
G ( s ) = C ( s ) R ( s ) = b 0 s m + b 1 s m − 1 + ⋯ + b m − 1 s + b m a 0 s n + a 1 s n − 1 + ⋯ + a n − 1 s + a n (2.13) \begin{aligned} G(s) = \frac{C(s)}{R(s)} = \frac{b_0 s^{m} + b_1 s^{m-1} + \cdots + b_{m-1} s + b_m}{a_0 s^{n} + a_1 s^{n-1} + \cdots + a_{n-1} s + a_n} \\ \end{aligned} \tag{2.13} G(s)=R(s)C(s)=a0sn+a1sn−1+⋯+an−1s+anb0sm+b1sm−1+⋯+bm−1s+bm(2.13)
系统的传递函数 G ( s ) G(s) G(s) 具有以下性质:
- 传递函数是复变量 s s s 的有理真分式函数,具有复变函数的所有性质。
- 传递函数是一种用系统参数表示输出量和输入量之间关系的表达式,它只取决于系统的结构和参数,而与输入量的形式无关,也不反映系统内部的任何信息。
- 传递函数与微分方程具有相通性。传递函数分子多项式系数及分母多项式系数,分别与相应微分方程的右端及左端微分算符多项式系数相对应。
- 传递函数 G ( s ) G(s) G(s) 的拉氏反变换是脉冲响应 g ( t ) g(t) g(t)。
定义 2.3 [零点 zeros、极点 poles]
传递函数的分子多项式和分母多项式经因式分解后可写成如下形式:
G ( s ) = b 0 ( s − z 1 ) ( s − z 2 ) ⋯ ( s − z m ) a 0 ( s − p 1 ) ( s − p 2 ) ⋯ ( s − p n ) (2.14) G(s) = \frac{b_0 (s-z_1)(s-z_2)\cdots(s-z_m)}{a_0 (s-p_1)(s-p_2)\cdots(s-p_n)} \tag{2.14} G(s)=a0(s−p1)(s−p2)⋯(s−pn)b0(s−z1)(s−z2)⋯(s−zm)(2.14)
式中, z i ( i = 1 , 2 , ⋯ , m ) z_i(i=1,2,\cdots,m) zi(i=1,2,⋯,m) 是分子多项式的零点,称为传递函数的零点; p j ( j = 1 , 2 , ⋯ , n ) p_j(j=1,2,\cdots,n) pj(j=1,2,⋯,n) 是分母多项式的零点,称为传递函数的极点。传递函数的零点和极点可以是实数,也可以是复数。
由于传递函数的极点就是微分方程的特征根,因此它们决定了所描述系统自由运动的模态,而且在强迫运动中 (即零初始条件响应) 也会包含这些自由运动的模态。传递函数的零点并不形成自由运动的模态,但它们却影响各模态在响应中所占的比重,因而也影响响应曲线的形状。
例题 2.1
存在一个包含输入 r ( t ) r(t) r(t) 和输出 c ( t ) c(t) c(t) 的系统,其关系如下式
c ¨ ( t ) = r ˙ ( t ) + 2 r ( t ) \ddot{c}(t) = \dot{r}(t) + 2 r(t) c¨(t)=r˙(t)+2r(t)
其初始条件及各阶微分均为0,即 r ( 0 ) = 0 , c ( 0 ) = 0 , c ˙ ( 0 ) = 0 r(0)=0, c(0)=0, \dot{c}(0)=0 r(0)=0,c(0)=0,c˙(0)=0。
请写出输入 r ( t ) r(t) r(t) 和输出 c ( t ) c(t) c(t) 的关系,求出系统的传递函数并写出系统的零点和极点。
解: 对上式取拉氏变换
L [ c ¨ ( t ) ] = L [ r ˙ ( t ) + 2 r ( t ) ] s 2 C ( s ) − s c ( 0 ) − c ˙ ( 0 ) = s R ( s ) − r ( 0 ) + 2 R ( s ) s 2 C ( s ) = s R ( s ) + 2 R ( s ) C ( s ) = s + 2 s 2 R ( s ) C ( s ) = ( 1 s + 2 s 2 ) R ( s ) \begin{aligned} \mathcal{L}[\ddot{c}(t)] &= \mathcal{L}[\dot{r}(t) + 2 r(t)] \\ s^2 C(s) - s c(0) - \dot{c}(0) &= s R(s) - r(0) + 2 R(s) \\ s^2 C(s) &= s R(s) + 2 R(s) \\ C(s) &= \frac{s+2}{s^2} R(s) \\ C(s) &= (\frac{1}{s} + \frac{2}{s^2}) R(s) \end{aligned} L[c¨(t)]s2C(s)−sc(0)−c˙(0)s2C(s)C(s)C(s)=L[r˙(t)+2r(t)]=sR(s)−r(0)+2R(s)=sR(s)+2R(s)=s2s+2R(s)=(s1+s22)R(s)
对输入与输出的关系取拉氏反变换有
L − 1 [ C ( s ) ] = L − 1 [ ( 1 s + 2 s 2 ) R ( s ) ] c ( t ) = ( 1 + 2 t ) r ( t ) \begin{aligned} \mathcal{L}^{-1}[C(s)] &= \mathcal{L}^{-1}[(\frac{1}{s} + \frac{2}{s^2}) R(s)] \\ c(t) &= (1 + 2t) r(t) \end{aligned} L−1[C(s)]c(t)=L−1[(s1+s22)R(s)]=(1+2t)r(t)
此系统的传递函数为
G ( s ) = s + 2 s 2 G(s) = \frac{s+2}{s^2} G(s)=s2s+2
系统的零点为 z 1 = − 2 z_1 = -2 z1=−2,极点为 p 1 = p 2 = 0 p_1 = p_2 = 0 p1=p2=0。
2.1.3 线性离散系统
为了研究离散系统的性能,需要建立离散系统的数学模型。离散系统与连续系统相比,既有本质上的不同,又有分析研究方面的相似性。由于在离散系统中存在脉冲或数字信号,如果仍然沿用连续系统中的拉氏变换方法来建立系统的传递函数,则在运算过程中会出现复变量 s s s 的超越函数。为了克服这个障碍,需要采用 z z z 变换法建立离散系统的数学模型。利用 z z z 变换法研究离散系统,可以把连续系统中的许多概念和方法,推广应用于线性离散系统。与连续系统的数学模型类似,线性离散系统的数学模型有差分方程、脉冲传递函数和离散状态空间表达式 (state-space representation) 三种。本节主要介绍差分方程及其求解方法。
在离散时间系统理论中,所涉及的数字信号总是以序列的形式出现。因此,可以把离散系统抽象为如下数学定义:将输入序列 r ( n ) , n = 0 , ± 1 , ± 2 , ⋯ r(n), n=0,\pm 1, \pm 2, \cdots r(n),n=0,±1,±2,⋯ 变换为输出序列 c ( n ) c(n) c(n) 的一种变换关系,称为离散系统,其记为
c ( n ) = F [ r ( n ) ] (2.15) c(n) = F [r(n)] \tag{2.15} c(n)=F[r(n)](2.15)
其中, r ( n ) r(n) r(n) 和 c ( n ) c(n) c(n) 可以理解为 t = n T t=nT t=nT 时,系统的输入序列 r ( n T ) r(nT) r(nT) 和输出序列 c ( n T ) c(nT) c(nT), T T T 为采样周期。
如果式 (2.15) 所示的离散系统满足叠加原理,则称为线性离散系统,有如下关系:若 c 1 ( n ) = F [ r 1 ( n ) ] c_1(n) = F[r_1(n)] c1(n)=F[r1(n)], c 2 ( n ) = F [ r 2 ( n ) ] c_2(n) = F[r_2(n)] c2(n)=F[r2(n)],且有 r ( n ) = a r 1 ( n ) ± b r 2 ( n ) r(n) = a r_1(n) \pm b r_2(n) r(n)=ar1(n)±br2(n),其中 a a a 和 b b b 为任意常数,则
c ( n ) = F [ r ( n ) ] = F [ a r 1 ( n ) ± b r 2 ( n ) ] = a F [ r 1 ( n ) ] ± b F [ r 2 ( n ) ] = a c 1 ( n ) ± b c 2 ( n ) (2.16) \begin{aligned} c(n) &= F[r(n)] = F[a r_1(n) \pm b r_2(n)] \\ &= a F[r_1(n)] \pm b F[r_2(n)] = a c_1(n) \pm b c_2(n) \\ \end{aligned}\tag{2.16} c(n)=F[r(n)]=F[ar1(n)±br2(n)]=aF[r1(n)]±bF[r2(n)]=ac1(n)±bc2(n)(2.16)
输入与输出关系不随时间而改变的线性离散系统,称为线性定常离散系统。例如,当输入序列为 r ( n ) r(n) r(n) 时,输出序列为 c ( n ) c(n) c(n);如果输入序列变为 r ( n − k ) r(n-k) r(n−k),相应的输出序列为 c ( n − k ) c(n-k) c(n−k),其中 k = 0 , ± 1 , ± 2 , ⋯ k=0,\pm 1,\pm 2, \cdots k=0,±1,±2,⋯,则称这样的系统为线性定常离散系统。线性定常离散系统可以用线性定常(常系数)差分方程描述。
对于一般的线性定常离散系统, k k k 时刻的输出 c ( k ) c(k) c(k) 不但与 k k k 时刻的输入 r ( k ) r(k) r(k) 有关,而且与 k k k 时刻以前的输入 r ( k − 1 ) , r ( k − 2 ) , ⋯ r(k-1),r(k-2),\cdots r(k−1),r(k−2),⋯ 有关,同时还与 k k k 时刻以前的输出 c ( k − 1 ) , c ( k − 2 ) , ⋯ c(k-1),c(k-2),\cdots c(k−1),c(k−2),⋯ 有关。这种关系一般可以用下列 n n n 阶后向差分方程来描述
c ( k ) + a 1 c ( k − 1 ) + a 2 c ( k − 2 ) + ⋯ + a n − 1 c ( k − n + 1 ) + a n c ( k − n ) = b 0 r ( k ) + b 1 r ( k − 1 ) + ⋯ + b m − 1 r ( k − m + 1 ) + b m r ( k − m ) (2.17) \begin{aligned} &c(k) + a_1 c(k-1) + a_2 c(k-2) + \cdots + a_{n-1} c(k-n+1) + a_n c(k-n) \\ &= b_0 r(k) + b_1 r(k-1) + \cdots + b_{m-1} r(k-m+1) + b_m r(k-m) \end{aligned} \tag{2.17} c(k)+a1c(k−1)+a2c(k−2)+⋯+an−1c(k−n+1)+anc(k−n)=b0r(k)+b1r(k−1)+⋯+bm−1r(k−m+1)+bmr(k−m)(2.17)
上式亦可表示为
c ( k ) = − ∑ i = 1 n a i c ( k − i ) + ∑ j = 0 m b j r ( k − j ) (2.18) c(k) = -\sum_{i=1}^{n} a_i c(k-i) + \sum_{j=0}^{m} b_j r(k-j) \tag{2.18} c(k)=−i=1∑naic(k−i)+j=0∑mbjr(k−j)(2.18)
式中 a i ( i = 1 , 2 , ⋯ , n ) a_i(i=1,2,\cdots,n) ai(i=1,2,⋯,n) 和 b j ( j = 1 , 2 , ⋯ , m ) b_j(j=1,2,\cdots,m) bj(j=1,2,⋯,m) 为常系数, m ≤ n m \le n m≤n。式 (2.18) 称为 n n n 阶线性常系数差分方程,它在数学上代表一个线性定常离散系统。
线性定常离散系统也可以用如下 n n n 阶前向差分方程来描述
c ( k + n ) + a 1 c ( k + n − 1 ) + ⋯ + a n − 1 c ( k + 1 ) + a n c ( k ) = b 0 r ( k + m ) + b 1 r ( k + m − 1 ) + ⋯ + b m − 1 r ( k + 1 ) + b m r ( k ) (2.19) \begin{aligned} &c(k+n) + a_1 c(k+n-1) + \cdots + a_{n-1} c(k+1) + a_n c(k) \\ &= b_0 r(k+m) + b_1 r(k+m-1) + \cdots + b_{m-1} r(k+1) + b_m r(k) \end{aligned} \tag{2.19} c(k+n)+a1c(k+n−1)+⋯+an−1c(k+1)+anc(k)=b0r(k+m)+b1r(k+m−1)+⋯+bm−1r(k+1)+bmr(k)(2.19)
上式可以写成
c ( k + n ) = − ∑ i = 1 n a i c ( k + n − i ) + ∑ j = 0 m b j r ( k + m − j ) (2.20) c(k+n) = -\sum_{i=1}^{n} a_i c(k+n-i) + \sum_{j=0}^{m} b_j r(k+m-j) \tag{2.20} c(k+n)=−i=1∑naic(k+n−i)+j=0∑mbjr(k+m−j)(2.20)
2.1.4 离散系统求解
常系数线性差分方程的求解方法有经典法、迭代法和 z z z 变换法。与微分方程的经典解法类似,差分方程的经典解法也要求出齐次方程的通解和非齐次方程的一个特解,非常不便。这里仅介绍工程上常用的迭代法和 z z z 变换法。
(1) 迭代法
若已知差分方程式 (2.18) 或式(2.20),并且给定输出序列的初始值,则可以利用递推关系,在计算机上一步一步地算出输出序列。
(2) z z z 变换法
z z z 变换的思想来源于连续系统。线性连续控制系统的动态及稳态性能,可以应用拉氏变换的方法进行分析。与此相似,线性离散系统的性能,可以采用 z z z 变换的方法来获得。 z z z 变换是从拉氏变换直接引申出来的一种变换方法,它实际上是采样函数拉氏变换的变形。因此, z z z 变换又称为采样拉氏变换,是研究线性离散系统的重要数学工具。
设连续函数 e ( t ) e(t) e(t) 是可拉氏变换的,则拉氏变换定义为
E ( s ) = ∫ 0 ∞ e ( t ) e − s t d t (2.21) E(s) = \int_{0}^{\infty} e(t) \text{e}^{-st} \text{d} t \tag{2.21} E(s)=∫0∞e(t)e−stdt(2.21)
由于 t < 0 t<0 t<0 时,有 e ( t ) = 0 e(t) = 0 e(t)=0,故上式也可写为
E ( s ) = ∫ − ∞ ∞ e ( t ) e − s t d t (2.22) E(s) = \int_{-\infty}^{\infty} e(t) \text{e}^{-st} \text{d} t \tag{2.22} E(s)=∫−∞∞e(t)e−stdt(2.22)
对于采样信号 e ∗ ( t ) e^{*}(t) e∗(t),其表达式为
e ∗ ( t ) = ∑ n = 0 ∞ e ( n T ) δ ( t − n T ) (2.23) e^{*}(t) = \sum_{n=0}^{\infty} e(nT) \delta(t-nT) \tag{2.23} e∗(t)=n=0∑∞e(nT)δ(t−nT)(2.23)
故采样信号 e ∗ ( t ) e^{*}(t) e∗(t) 的拉氏变换
E ∗ ( s ) = ∫ − ∞ ∞ e ∗ ( t ) e − s t d t = ∫ − ∞ ∞ [ ∑ n = 0 ∞ e ( n T ) δ ( t − n T ) ] e − s t d t = ∑ n = 0 ∞ e ( n T ) [ ∫ − ∞ ∞ δ ( t − n T ) e − s t d t ] (2.24) \begin{aligned} E^{*}(s) &= \int_{-\infty}^{\infty} e^{*}(t) \text{e}^{-st} \text{d} t = \int_{-\infty}^{\infty} [\sum_{n=0}^{\infty} e(nT) \delta(t-nT)] \text{e}^{-st} \text{d} t \\ &= \sum_{n=0}^{\infty} e(nT) [\int_{-\infty}^{\infty} \delta(t-nT) \text{e}^{-st} \text{d} t] \end{aligned} \tag{2.24} E∗(s)=∫−∞∞e∗(t)e−stdt=∫−∞∞[n=0∑∞e(nT)δ(t−nT)]e−stdt=n=0∑∞e(nT)[∫−∞∞δ(t−nT)e−stdt](2.24)
由广义脉冲函数的筛选性质
∫ − ∞ ∞ δ ( t − n T ) f ( t ) d t = f ( n T ) (2.25) \int_{-\infty}^{\infty} \delta(t-nT) f(t) \text{d} t = f(nT) \tag{2.25} ∫−∞∞δ(t−nT)f(t)dt=f(nT)(2.25)
故有
∫ − ∞ ∞ δ ( t − n T ) e − s t d t = e − s n T (2.26) \int_{-\infty}^{\infty} \delta(t-nT) \text{e}^{-st} \text{d} t = \text{e}^{-snT} \tag{2.26} ∫−∞∞δ(t−nT)e−stdt=e−snT(2.26)
于是,采样拉氏变换式 (2.24) 可以写为
E ∗ ( s ) = ∑ n = 0 ∞ e ( n T ) e − n s T (2.27) E^{*}(s) = \sum_{n=0}^{\infty} e(nT) \text{e}^{-nsT} \tag{2.27} E∗(s)=n=0∑∞e(nT)e−nsT(2.27)
在上式中,各项均含有 e s T \text{e}^{sT} esT 因子,故上式为 s s s 的超越函数。为便于应用,令变量
z = e s T (2.28) z = \text{e}^{sT} \tag{2.28} z=esT(2.28)
其中 T T T 为采样周期, z z z 是复数平面上定义的一个复变量,通常称为 z z z 变换算子。将式 (2.28) 代入式 (2.27),则采样信号 e ∗ ( t ) e^{*}(t) e∗(t) 的 z z z 变换定义为
E ( z ) = E ∗ ( s ) ∣ s = 1 T ln z = ∑ n = 0 ∞ e ( n T ) z − n (2.29) E(z) = E^{*}(s) \Bigg|_{s=\frac{1}{T}\ln z} = \sum_{n=0}^{\infty} e(nT) z^{-n} \tag{2.29} E(z)=E∗(s)∣∣∣∣∣s=T1lnz=n=0∑∞e(nT)z−n(2.29)
记为
E ( z ) = Z [ e ∗ ( t ) ] = Z [ e ( t ) ] (2.30) E(z) = \mathcal{Z}[e^{*}(t)] = \mathcal{Z}[e(t)] \tag{2.30} E(z)=Z[e∗(t)]=Z[e(t)](2.30)
后一记号是为了书写方便,并不意味着是连续信号 e ( t ) e(t) e(t) 的 z z z 变换,而是仍指采样信号 e ∗ ( t ) e^{*}(t) e∗(t) 的 z z z 变换。
应当指出, z z z 变换仅是一种在采样拉氏变换中,取 z = e s T z = \text{e}^{sT} z=esT 的变量置换。通过这种置换,可将 s s s 的超越函数转换为 z z z 幂级数或 z z z 的有理分式。
z z z 变换具有以下性质:
- 线性定理
若 E ( z ) = Z [ e ( t ) ] , E 1 ( z ) = Z [ e 1 ( t ) ] , E 2 ( z ) = Z [ e 2 ( t ) ] E(z) = \mathcal{Z}[e(t)], E_1(z) = \mathcal{Z}[e_1(t)], E_2(z) = \mathcal{Z}[e_2(t)] E(z)=Z[e(t)],E1(z)=Z[e1(t)],E2(z)=Z[e2(t)], a a a 为常数,则
Z [ e 1 ( t ) ± e 2 ( t ) ] = E 1 ( z ) ± E 2 ( z ) Z [ a e ( t ) ] = a E ( z ) (2.31) \begin{aligned} \mathcal{Z}[e_1(t) \pm e_2(t) ] &= E_1(z) \pm E_2(z) \\ \mathcal{Z}[a e(t) ] &= a E(z) \end{aligned} \tag{2.31} Z[e1(t)±e2(t)]Z[ae(t)]=E1(z)±E2(z)=aE(z)(2.31)- 实数位移定理
实数位移定理又称平移定理。如果函数 e ( t ) e(t) e(t) 是可拉氏变换的,其 z z z 变换为 E ( z ) E(z) E(z),则有
Z [ e ( t − k T ) ] = z − k E ( z ) (滞后定理) Z [ e ( t + k T ) ] = z k [ E ( z ) − ∑ n = 0 k − 1 e ( n T ) z − n ] (超前定理) (2.32) \begin{aligned} \mathcal{Z}[e(t-kT)] &= z^{-k} E(z) &\text{(滞后定理)} \\ \mathcal{Z}[e(t+kT)] &= z^{k} [E(z) - \sum_{n=0}^{k-1}e(nT)z^{-n}] &\text{(超前定理)} \\ \end{aligned} \tag{2.32} Z[e(t−kT)]Z[e(t+kT)]=z−kE(z)=zk[E(z)−n=0∑k−1e(nT)z−n](滞后定理)(超前定理)(2.32)
其中 k k k 为正整数。- 复数位移定理
如果函数 e ( t ) e(t) e(t) 是可拉氏变换的,其 z z z 变换为 E ( z ) E(z) E(z),则有
Z [ e ∓ a t e ( t ) ] = E ( z e ± a T ) (2.33) \mathcal{Z}[\text{e}^{\mp at} e(t)] = E(z \text{e}^{\pm aT}) \tag{2.33} Z[e∓ate(t)]=E(ze±aT)(2.33)- 终值定理
如果函数 e ( t ) e(t) e(t) 的 z z z 变换为 E ( z ) E(z) E(z),函数序列 e ( n T ) e(nT) e(nT) 为有限值 ( n = 0 , 1 , 2 , ⋯ n=0,1,2,\cdots n=0,1,2,⋯),且极限 lim n → ∞ e ( n T ) \lim_{n\rightarrow\infty} e(nT) limn→∞e(nT) 存在,则函数序列的终值
lim n → ∞ e ( n T ) = lim z → 1 ( z − 1 ) E ( z ) (2.34) \lim_{n \rightarrow \infty} e(nT) = \lim_{z \rightarrow 1} (z-1) E(z) \tag{2.34} n→∞lime(nT)=z→1lim(z−1)E(z)(2.34)- 卷积定理
设 x ( n T ) x(nT) x(nT) 和 y ( n T ) y(nT) y(nT) 为两个采样函数,其离散卷积定义为
x ( n T ) ∗ y ( n T ) = ∑ k = 0 ∞ x ( k T ) y [ ( n − k ) T ] (2.35) x(nT) * y(nT) = \sum_{k=0}^{\infty} x(kT) y[(n-k)T] \tag{2.35} x(nT)∗y(nT)=k=0∑∞x(kT)y[(n−k)T](2.35)
则由卷积定理,若
g ( n T ) = x ( n T ) ∗ y ( n T ) (2.36) g(nT) = x(nT) * y(nT) \tag{2.36} g(nT)=x(nT)∗y(nT)(2.36)
必有
G ( z ) = X ( z ) ⋅ Y ( z ) (2.37) G(z) = X(z) \cdot Y(z) \tag{2.37} G(z)=X(z)⋅Y(z)(2.37)
表2.2 z z z 变换表
序号 | 拉氏变换 E ( s ) E(s) E(s) | 时间函数 e ( t ) e(t) e(t) | z z z 变换 E ( z ) E(z) E(z) |
---|---|---|---|
1 | 1 1 1 | δ ( t ) \delta(t) δ(t) | 1 1 1 |
2 | 1 s \frac{1}{s} s1 | 1 ( t ) 1(t) 1(t) | z z − 1 \frac{z}{z-1} z−1z |
3 | 1 s 2 \frac{1}{s^2} s21 | t t t | T z ( z − 1 ) 2 \frac{Tz}{(z-1)^2} (z−1)2Tz |
4 | 1 s n + 1 \frac{1}{s^{n+1}} sn+11 | t n n ! \frac{t^{n}}{n!} n!tn | lim a → 0 ( − 1 ) n n ! ∂ n ∂ a n ( z z − e − a T ) \lim_{a\rightarrow 0} \frac{(-1)^n}{n!} \frac{\partial^n}{\partial a^n} (\frac{z}{z-\text{e}^{-aT}}) lima→0n!(−1)n∂an∂n(z−e−aTz) |
5 | 1 s + a \frac{1}{s+a} s+a1 | e − a t \text{e}^{-at} e−at | z z − e a T \frac{z}{z-\text{e}^{aT}} z−eaTz |
6 | 1 ( s + a ) ( s + b ) \frac{1}{(s+a)(s+b)} (s+a)(s+b)1 | e − a t − e − b t b − a \frac{\text{e}^{-at} - \text{e}^{-bt}}{b-a} b−ae−at−e−bt | ( 1 b − a ) ( z z − e − a T − z z − e − b T ) (\frac{1}{b-a})(\frac{z}{z-\text{e}^{-aT}} - \frac{z}{z-\text{e}^{-bT}}) (b−a1)(z−e−aTz−z−e−bTz) |
7 | ω s 2 + ω 2 \frac{\omega}{s^2+\omega^2} s2+ω2ω | sin ( ω t ) \sin (\omega t) sin(ωt) | z sin ω T z 2 − 2 z cos ω T + 1 \frac{z \sin \omega T}{z^2 - 2z\cos\omega T+1} z2−2zcosωT+1zsinωT |
8 | s s 2 + ω 2 \frac{s}{s^2+\omega^2} s2+ω2s | cos ( ω t ) \cos (\omega t) cos(ωt) | z ( z − cos ω T ) z 2 − 2 z cos ω T + 1 \frac{z (z-\cos \omega T)}{z^2 - 2z\cos\omega T+1} z2−2zcosωT+1z(z−cosωT) |
9 | 1 s ( s + a ) \frac{1}{s(s+a)} s(s+a)1 | 1 a ( 1 − e − a t ) \frac{1}{a} (1-\text{e}^{-at}) a1(1−e−at) | 1 a ( 1 − e − a T ) z ( z − 1 ) ( z − e − a T ) \frac{1}{a} \frac{(1-\text{e}^{-aT})z}{(z-1)(z-\text{e}^{-aT})} a1(z−1)(z−e−aT)(1−e−aT)z |
设差分方程如式 (2.20) 所示,则用 z z z 变换法解差分方程的实质,是对差分方程两端取 z z z 变换,并利用 z z z 变换的实数位移定理,得到以 z z z 为变量的代数方程,然后对代数方程的解 C ( z ) C(z) C(z) 取 z z z 反变换,求得输出序列 c ( k ) c(k) c(k)。
例题 2.2
试用 z z z 变换法解下列二阶差分方程
c ( k + 2 ) + 3 c ( k + 1 ) + 2 c ( k ) = 0 \begin{aligned} % c^{*}(t+2T) + 3c^{*}(t+T) + 2c^{*}(t) = 0 \\ c(k+2) + 3c(k+1) + 2c(k) = 0 \\ \end{aligned} c(k+2)+3c(k+1)+2c(k)=0
设初始条件 c ( 0 ) = 0 , c ( 1 ) = 1 c(0)=0, c(1)=1 c(0)=0,c(1)=1。
解: 对差分方程的每一项进行 z z z 变换,根据实数位移定理
Z [ c ( k + 2 ) ] = z 2 C ( z ) − z 2 c ( 0 ) − z c ( 1 ) = z 2 C ( z ) − z Z [ 3 c ( k + 1 ) ] = 3 z C ( z ) − 3 z c ( 0 ) = 3 z C ( z ) Z [ 2 c ( k ) ] = 2 C ( z ) \begin{aligned} \mathcal{Z} [c(k+2)] &= z^2 C(z) - z^2 c(0) - z c(1) = z^2 C(z) - z \\ \mathcal{Z} [3c(k+1)] &= 3 z C(z) - 3 z c(0) = 3 z C(z) \\ \mathcal{Z} [2c(k)] &= 2 C(z) \end{aligned} Z[c(k+2)]Z[3c(k+1)]Z[2c(k)]=z2C(z)−z2c(0)−zc(1)=z2C(z)−z=3zC(z)−3zc(0)=3zC(z)=2C(z)
于是,差分方程变换为关于 z z z 的代数方程
( z 2 + 3 z + 2 ) C ( z ) = z (z^2 + 3 z + 2) C(z) = z (z2+3z+2)C(z)=z
解出
C ( z ) = z z 2 + 3 z + 2 = z z + 1 − z z + 2 C(z) = \frac{z}{z^2 + 3z + 2} = \frac{z}{z+1} - \frac{z}{z+2} C(z)=z2+3z+2z=z+1z−z+2z
查 z z z 变换表 2.2,求出 z z z 反变换
c ( k ) = ( − 1 ) k − ( − 2 ) k , k = 0 , 1 , 2 , ⋯ c(k) = (-1)^k - (-2)^k, \quad k=0,1,2,\cdots c(k)=(−1)k−(−2)k,k=0,1,2,⋯