跳转至

2 连续时间系统的时域分析

基于冲激函数的信号分解

  这一章首先证明了下面的公式: f(t)=0tf(τ)δ(tτ)dτ=+f(τ)δ(tτ)dτ(2.1)f(t)=\int _ 0^tf(\tau)\delta(t-\tau)\mathrm d\tau=\int _ {-\infty}^{+\infty}f(\tau)\delta(t-\tau)\mathrm d\tau\tag{2.1}

  式 (2.1)(2.1) 在书上是通过极限逼近的思想得到的,当然也可以直接利用冲激函数的筛分特性得到。

  这说明一个信号可以分解成多个多个冲击信号的积分。

卷积积分

卷积积分引出

  基于式 (2.1)(2.1),推导出了一个通过 e(t)e(t) 迅速求得 r(t)r(t) 的有效办法。记一个系统的单位冲击响应为 h(t)h(t) ,即 δ(t)h(t)\delta(t)\rightarrow h(t)。由于线性系统的时不变性、齐次性和叠加性,可得 0te(t)δ(tτ)dτ0te(t)h(tτ)dτ(2.2)\displaystyle\int _ 0^te(t)\delta(t-\tau)\mathrm d\tau\rightarrow \int _ 0^te(t)h(t-\tau)\mathrm d\tau\tag {2.2}

关于单位冲击响应 h(t)h(t)

  h(t)h(t) 是激励为单位冲激函数 δ(t)\delta(t)零状态响应,这是 h(t)h(t) 的定义。上段文字中“线性系统”四个字加粗,因为含有初始值(初始状态)的系统从定义上来说并不是线性系统。
  基于这两个原因,不难理解后文中 (2.3)(2.3) 求得的 r(t)r(t) 只是零状态响应。

  根据式 (2.1)(2.1) 知,式 (2.2)(2.2) 的左边就是 e(t)e(t)。那么式 (2.2)(2.2) 的右边当然就是对应的 r(t)r(t) 了。因此,激励为 e(t)e(t) 时,系统的响应可以通过下式求得: r(t)=0te(t)h(tτ)dτ(2.3)r(t) = \int _ 0^te(t)h(t-\tau)\mathrm d\tau\tag{2.3}

  式 (2.3)(2.3) 就是卷积积分,且这里求出来的 r(t)r(t)零状态响应

  如果可以知道一个系统的单位冲击响应 h(t)h(t),根据式 (2.3)(2.3) 可以直接从激励得到响应,而不需要知道系统的其它细节。

卷积的定义

  卷积运算是一种抽象出来的运算,它的定义是: f(t)g(t)=+f(τ)g(tτ)dτ(2.4)f(t) * g(t)=\int_ {-\infty}^{+\infty}f(\tau)g(t-\tau)\mathrm d\tau\tag{2.4}

卷积的性质

  和很多运算类似,卷积具有交换律、对加减法的分配律以及结合律。对于卷积结果进行微积分运算,有下列结论成立: ddt[u(t)v(t)]=u(t)dv(t)dt=du(t)dtv(t)(2.5)\cfrac{\mathrm d}{\mathrm dt}[u(t) * v(t)]=u(t) * \cfrac{\mathrm dv(t)}{\mathrm dt}=\cfrac{\mathrm du(t)}{\mathrm dt} * v(t)\tag{2.5}

t[u(x)v(x)]dx=u(t)[tv(x)dx]=[tu(x)dx]v(t)(2.6)\int_ {-\infty}^t[u(x) * v(x)]\mathrm dx=u(t) * \left[\int_ {-\infty}^tv(x)\mathrm dx\right]=\left[\int_ {-\infty}^tu(x)\mathrm dx\right] * v(t)\tag{2.6}

  上面的式子当然可以推广到多个函数卷积的导数/积分,以及卷积结果的多阶导数/积分。

关于卷积微分、积分性质 (2.5)(2.6)(2.5)(2.6) 的使用条件

  需要注意的是,(2.5)(2.5) 的使用没有限制条件,但是 (2.6)(2.6)不能随便使用的。这是因为在引入了奇异函数 ε(t)\varepsilon(t)δ(t)\delta(t)δ(t)\delta^\prime(t) 等后,几乎所有的真实信号函数都是无穷阶可导的,但是不是所有函数都可以执行变上限积分。
  在应用式 (2.6)(2.6) 时,至少需要满足以下 22 个条件:

  • 被积函数 u(t)v(t)u(t) * v(t) 是可积的。

      比如等号左边不允许是 txdx\displaystyle\int_ {-\infty}^tx\mathrm dx 这种不收敛的反常积分。

  • 积分号转移到等号右边的一个函数,这个函数也是可积的。

      比如使用 (2.6)(2.6) 的一半 t[u(x)v(x)]dx=u(t)[tv(x)dx]\displaystyle\int_ {-\infty}^t[u(x) * v(x)]\mathrm dx=u(t) * \left[\int_ {-\infty}^tv(x)\mathrm dx\right] 时,需要保证 tv(x)dx\displaystyle\int_ {-\infty}^tv(x)\mathrm dx 是存在的,即使 tu(x)dx\displaystyle\int_ {-\infty}^tu(x)\mathrm dx 可能并不存在。

  特别地,根据式子 (2.5)(2.6)(2.5)(2.6),可以得到一个比较有用的结果: u(t)v(t)=du(t)dttv(x)dx(2.7)u(t) * v(t)=\cfrac{\mathrm du(t)}{\mathrm dt} * \int_ {-\infty}^tv(x)\mathrm d x\tag{2.7}

  上式还能互换 u(t),v(t)u(t),v(t) 的地位,这里略去不写。

(2.7)(2.7) 使用的充要条件

  式 (2.7)(2.7) 的使用充要条件tv(x)dx\displaystyle\int_ {-\infty}^tv(x)\mathrm dx 存在,且 limtu(t)v(t)=0\color{red}{\lim\limits_ {t\rightarrow -\infty}u(t) * v(t)=0}。红色的式子也可以等价地表述为 u(t)v(t)=t[u(x)v(x)]dxu(t) * v(t)=\displaystyle\int_ {-\infty}^t[u(x) * v(x)]^\prime\mathrm dx
  这是因为式 (2.7)(2.7) 可以看作是对式子 u(t)v(t)=u(t)v(t)u(t) * v(t)=u(t) * v(t) 两边分别运用 (2.5)(2.6)(2.5)(2.6) 得到的,只不过等号右边选择了不同的函数进行微分、积分操作。需要注意的是,左边的 u(t)v(t)u(t) * v(t) 在进行微分、积分后要能够还原出 u(t)v(t)u(t) * v(t)。如果先进行微分,那么: td[u(x)v(x)]dxdt=u(t)v(t)u()v()(2.8)\int_ {-\infty}^t\cfrac{\mathrm d[u(x) * v(x)]}{\mathrm dx}\mathrm dt=u(t) * v(t)-u(-\infty) * v(-\infty)\tag{2.8}

  显然只有满足 limxu(t)v(t)=0\lim\limits_ {x\rightarrow -\infty}u(t) * v(t)=0,左边才能复原。如果先进行积分,那么首先就要保证 t[u(x)v(x)]dx\displaystyle\int_ {-\infty}^t[u(x) * v(x)]\mathrm dx 存在,显然也需要满足 limxu(t)v(t)=0\lim\limits_ {x\rightarrow -\infty}u(t) * v(t)=0,否则反常积分不收敛。


  同时,有的地方说 (2.7)(2.7) 成立的条件是 u(t)=tu(x)dxu(t)=\displaystyle\int_ {-\infty}^tu^\prime(x)\mathrm dx,也就是 limxu(x)=0\lim\limits_ {x\rightarrow -\infty}u(x)=0。这个条件仅仅是充分条件,其必要性不成立。
  考虑 u(t)=1+ε(t),v(t)=[et1(t+1)2]ε(t)u(t)=1+\varepsilon(t),v(t)=\left[\mathrm e^{-t}-\cfrac{1}{(t+1)^2}\right]\varepsilon(t),虽然不满足 limxu(x)=0\lim\limits_ {x\rightarrow -\infty}u(x)=0,但是依然可以使用 (2.7)(2.7) 式: u(t)v(t)=δ(t)t[ex1(x+1)2]ε(x)dx=ε(t)0t[ex1(x+1)2]dx=(1t+1et)ε(t)(2.9)\begin{aligned}u(t) * v(t)&=\delta(t) * \int_ {-\infty}^t\left[\mathrm e^{-x}-\cfrac{1}{(x+1)^2}\right]\varepsilon(x)\mathrm dx\\ &=\varepsilon(t)\int_ 0^t\left[\mathrm e^{-x}-\cfrac{1}{(x+1)^2}\right]\mathrm dx\\ &=\left(\cfrac{1}{t+1}-\mathrm e^{-t}\right)\varepsilon(t)\end{aligned}\tag{2.9}

  除此之外,还有一个延时的性质:若 f(t)=f1(t)f2(t)f(t)=f _ 1(t) * f _ 2(t),则有 f(tt1t2)=f1(tt1)f2(tt2)f(t-t _ 1-t _ 2)=f _ 1(t-t _ 1) * f _ 2(t-t _ 2)

系统响应的时域求解

  正如所提到的第一章中所提到的那样,一个线性系统至少包含 44 种类型的响应,其中又包含一种特殊的单位冲击响应。下面归纳一下这些响应的求解方法。

单位冲激响应 h(t)h(t)

关于单位冲击响应的 22 种解法

  单位冲激响应的求解,书上给出了一种解法,老师给出了一种解法。
  书上给出的解法叫做海维赛德部分因式分解法。这种方法很好,也非常容易掌握,但是老师没讲。这是因为该方法基于拉普拉斯变换,并且使用起来和拉普拉斯变换法高度相似。所以只需要掌握拉普拉斯变换就好了。
  因此我们在这一章需要学会老师的解法。

  单位冲激响应其实是 0+0^+ 系统的零输入响应。这给了我们求解 h(t)h(t) 的思路:

  • 系统在 00^- 时刻是零状态的,即 r(n)(0)=0r^{(n)}(0^-)=0。在 t=0t=0 时刻忽然到来的激励 δ(t)\delta(t) 改变了系统的状态,使得 r(n)(0+)0r^{(n)}(0^+)\neq 0
  • 系统在 t0+t\geq 0^+ 时按照零输入响应的方式求解——列微分方程,根据初值 r(n)(0+)r^{(n)}(0^+) 求取微分方程的通解 h(t)h(t)

  求微分方程的通解自然是容易的,关键在如何求系统的初值 r(n)(0+)r^{(n)}(0^+) 。这个初值可以用冲击平衡法求取。
  在引入奇异函数后,我们可以将常见信号大致分为以下 22 类:连续函数非连续的连续函数的导数(后文简称非连续函数)。其中非连续函数可以写成 ε(n)(t)(n0)\varepsilon^{(n)}(t)(n\geq 0) 或其组合的形式,其中最大的 nn 值为其间断阶(这是为了方便理解编造的术语)。比如 x(t)=ε(t)+δ(t)x(t)=\varepsilon(t)+\delta^\prime(t) 的间断阶为 22

连续函数多次求导变为非连续函数

  考虑一个连续函数 x(t)x(t) 在某个点 t0t _ 0 处很“尖锐”,也就是 x(t)x(t)t0t _ 0 两侧的导数值不相等,那么 x(t)x^\prime(t) 将会成为非连续函数并出现阶跃项。若再求导,将依次出现冲击项、冲击偶项,间断阶以 11 为步长不断升高……
  当然了,也有一些函数不属于上面 22 类中的任何一类,比如 Dirichlet 函数那样的,但这种函数无法在实际信号中实现,故不考虑这些函数。

  冲击平衡法的思想就是令微分方程中 r(t)r(t) 的最高阶导数项是一个非连续函数,且其间断阶等于方程中非 r(t)r(t) 的最高的间断阶,利用待定系数法求解。该思想还能用来求单位阶跃响应,单位冲击偶响应等。

一个例子理解冲击平衡法的思想

  用一个例子来说明,有下面的微分方程: i(t)+6i(t)+8i(t)=δ(t)(2.10)i^{\prime\prime}(t)+6i^\prime(t)+8i(t)=\delta^\prime(t)\tag{2.10}

  其中 i(t)i(t) 的最高导数项是 i(t)i^{\prime\prime}(t),方程中最高间断阶是 δ(t)\delta^\prime(t)22,那么就令 i(t)i^{\prime\prime}(t) 的间断阶是 22,从而 i(t)i^{\prime\prime}(t) 有下面的形式: i(t)=aδ(t)+bδ(t)+cε(t)+ξ(t)(2.11)i^{\prime\prime}(t)=a\delta^\prime(t)+b\delta(t)+c\varepsilon(t)+\xi(t)\tag{2.11}

  其中 a,b,ca,b,c 都是待定系数,ξ(t)\xi(t) 是连续函数,且 t<0t<0ξ(t)=0\xi(t)=0。将 (2.11)(2.11) 代入 (2.10)(2.10) 中,间断阶相等的非连续项一一对应,有: {aδ(t)=δ(t)(b+6a)δ(t)=0(c+6b+8a)ε(t)=0(2.12)\begin{cases}a\delta^\prime(t)=\delta^\prime(t)\\ (b+6a)\delta(t)=0\\ (c+6b+8a)\varepsilon(t)=0\end{cases}\tag{2.12}

  从而解得 a=1,b=6,c=28a=1,b=-6,c=28最后使得函数在 t=0t=0 左右跳变的只有阶跃函数 ε(t)\varepsilon(t),这样就有 i(0+)=i(0)+c=1i^{\prime\prime}(0^+)=i^{\prime\prime}(0^-)+c=1。根据 (2.11)(2.11) 还可以知道 i(t)i^\prime(t) 中含有阶跃项 bε(t)b\varepsilon(t)i(t)i(t) 中含有阶跃项 aε(t)a\varepsilon(t)(你可以从下面看到阶跃项不止我说的这些,其中我没提到的阶跃项实际上是连续函数),从而得到 i(0+)=b=6,i(0+)=a=1i^\prime(0^+)=b=-6,i(0^+)=a=1

  在代入 i(t)i^{\prime\prime}(t) 表达式得到 (2.12)(2.12) 式的过程中,我们省略了将连续项对应的步骤。其实连续项也是可以自洽的。为方便描述令 η(t)=tduuξ(v)dv\eta(t)=\displaystyle\int _ {-\infty}^t\mathrm du\int _ {-\infty}^u\xi(v)\mathrm dv,从而 ξ(t)=η(t)\xi(t)=\eta^{\prime\prime}(t)。考虑到 i(0)=i(0)=i(0)=0i^{\prime\prime}(0^-)=i^\prime(0^-)=i(0^-)=0,有: {i(t)=aδ(t)+(b+ct)ε(t)+η(t)i(t)=(a+bt+t22)ε(t)+η(t)(2.13)\begin{cases}i^\prime(t)=a\delta(t)+(b+ct)\varepsilon(t)+\eta^\prime(t)\\ i(t)=\left(a+bt+\cfrac{t^2}{2}\right)\varepsilon(t)+\eta(t)\end{cases}\tag{2.13}   把连续项拿出来是 η(t)+6η(t)+8η(t)=(6ct+8bt+4t2)ε(t)(2.14)\eta^{\prime\prime}(t)+6\eta^\prime(t)+8\eta(t)=-(6ct+8bt+4t^2)\varepsilon(t)\tag{2.14}   所以 η(t)\eta(t) 相当于是激励为 (6ct+8bt+4t2)ε(t)-(6ct+8bt+4t^2)\varepsilon(t) 时的零状态响应,可以用微积分的常规方法求解。

三对响应的求解及其关系

  这里涉及到的三对响应分别是:

  在时域上,这两个响应都可以单独地通过系统的微分方程求得。特别地,零状态响应还可以由式 (2.2)(2.2) 卷积求得。
  从这一对响应出发,可以直接得到后两对响应。

  在时域上,这两个响应也是可以单独地通过系统的微分方程求得。特点是自由响应对应系统的特征频率,受迫响应对应非特征频率。

自由响应、受迫响应的频率特点

  自由响应、受迫响应的频率特点使得它们可以很好地从全响应中区分开来。例如给出一个系统的微分方程是 u(t)+u=e(t)u^\prime(t)+u=e(t),全响应是 u(t)=(1+12et12e3t)ε(t)u(t)=\left(1+\cfrac{1}{2}\mathrm e^{-t}-\cfrac{1}{2}\mathrm e^{-3t}\right)\varepsilon(t)。可以发现系统微分方程具有特征根 λ=1\lambda=-1,从而全响应中任何与 etε(t)\mathrm e^{-t}\varepsilon(t) 线性相关的都是自由响应,非线性相关的都是受迫响应。因此不难得到自由响应 uh(t)=12etε(t)u _ h(t)=\cfrac{1}{2}\mathrm e^{-t}\varepsilon(t),受迫响应 up(t)=(112e3t)ε(t)u _ p(t)=\left(1-\cfrac{1}{2}\mathrm e^{-3t}\right)\varepsilon(t)

  这个一般通过全响应直接分析得到的。如果没有给出全响应,要通过前面的某一对响应相加得到。如其名,随时间收敛到 00 的是瞬态响应,否则就是稳态响应。

  上面提到的这些响应的关系是:

Image title