跳转到内容

控制系统/传递函数

来自维基教科书,开放世界中的开放书籍

传递函数

[编辑 | 编辑源代码]
此操作可以使用此 MATLAB 命令执行

传递函数是系统输出与系统输入之比,在拉普拉斯域中考虑其初始条件和平衡点为零。此假设在观察瞬态的系统中得以放宽。如果我们有一个输入函数 X(s) 和一个输出函数 Y(s),我们将传递函数 H(s) 定义为


[传递函数]

阅读过 电路理论 书籍的读者会认识到传递函数就是电压分压器的阻抗、导纳、阻抗比,或电流分压器的导纳比。

脉冲响应

[编辑 | 编辑源代码]
注意
时域变量通常用小写字母表示。拉普拉斯域和其他变换域变量通常用大写字母表示。

为了比较,我们将考虑上述输入/输出关系的时域等效关系。在时域中,我们通常将系统的输入表示为 x(t),将系统的输出表示为 y(t)。输入和输出之间的关系表示为脉冲响应 h(t)

我们将脉冲响应定义为系统输出与其输入之间的关系。我们可以使用以下等式来定义脉冲响应

脉冲函数

[编辑 | 编辑源代码]

在这一点上,明确定义什么是“脉冲”将非常有用。脉冲函数用 δ(t) 表示,它是一个特殊函数,按以下方式分段定义


[脉冲函数]

脉冲函数也称为狄拉克函数,因为它用希腊小写字母 δ 表示。狄拉克函数通常被画成一个指向无穷大的箭头,如下所示

它被画成一个箭头,因为很难用其他任何绘图方法来显示无穷大处的单个点。请注意,箭头只存在于位置 0,而对于任何其他时间 t 都不存在。狄拉克函数与其他任何函数一样,适用于常规的时间偏移。例如,我们可以通过将函数 δ(t) 向右移动,来绘制函数 δ(t - N),如下所示

对脉冲函数的考察表明,它与单位阶跃函数有以下关系

脉冲函数在点 t = 0 处没有定义,但脉冲必须始终满足以下条件,否则它就不是真正的脉冲函数

系统对脉冲输入的响应称为脉冲响应。现在,为了得到脉冲函数的拉普拉斯变换,我们对单位阶跃函数求导,这意味着我们将单位阶跃函数的变换乘以 s

此结果可以在 **附录** 中的变换表中进行验证。

阶跃响应

[edit | edit source]
此操作可以使用此 MATLAB 命令执行

与冲激响应类似,系统的 **阶跃响应** 是当使用单位阶跃函数作为输入时系统的输出。阶跃响应是一种常用的分析工具,用于确定关于系统的某些指标。通常,当设计一个新的系统时,系统的阶跃响应是第一个要分析的系统特征。

卷积

[edit | edit source]
此操作可以使用此 MATLAB 命令执行

但是,冲激响应不能像传递函数那样用于根据系统输入找到系统输出。如果我们有系统的输入和系统的冲激响应,我们可以使用 **卷积运算** 计算系统输出,如下所示

记住:星号表示 **卷积**,而不是 **乘法**!

其中“ * ”(星号)表示卷积运算。卷积是乘法、积分和时间推移的复杂组合。我们可以将两个函数 _a(t)_ 和 _b(t)_ 之间的卷积定义为以下内容


[卷积]

(变量 τ(希腊字母 τ)是积分的哑变量)。此操作可能难以执行。因此,许多人更喜欢使用拉普拉斯变换(或其他变换)将卷积运算转换为乘法运算,通过 **卷积定理**。

时不变系统响应

[edit | edit source]

如果所讨论的系统是时不变的,则系统的一般描述可以用系统的冲激响应和系统输入的卷积积分来代替。我们可以称之为系统的 **卷积描述**,并在下面定义它


[卷积描述]

卷积定理

[edit | edit source]

这种求解系统输出的方法相当繁琐,事实上,如果你想针对各种输入信号求解系统,它会浪费大量时间。幸运的是,拉普拉斯变换具有一个特殊的性质,称为 **卷积定理**,它使卷积运算变得更容易

卷积定理
时域中的卷积在复拉普拉斯域中变为乘法。时域中的乘法在复拉普拉斯域中变为卷积。

卷积定理可以用以下方程式表示


[卷积定理]

这也很好地说明了 **对偶性** 的性质。

使用传递函数

[edit | edit source]

传递函数完全描述了控制系统。阶数、类型和频率响应都可以从这个特定的函数中获取。奈奎斯特图和伯德图可以从开环传递函数中绘制出来。这些图显示了系统在闭环时系统的稳定性。使用传递函数的分母,称为特征方程,可以推导出系统的根。

由于这些原因以及更多原因,传递函数是经典控制系统的重要方面。让我们从定义开始

传递函数
系统的传递函数是系统的输出与其输入之间的关系,在复拉普拉斯域中表示。

如果复拉普拉斯变量为s,则通常将系统的传递函数表示为G(s)H(s)。如果系统输入为X(s),系统输出为Y(s),则传递函数可定义为

如果我们知道给定系统的输入,并且我们有系统的传递函数,我们可以通过乘法来求解系统的输出


[传递函数描述]

示例:脉冲响应

[编辑 | 编辑源代码]

从拉普拉斯变换表中,我们知道脉冲函数δ(t)的拉普拉斯变换为

因此,当我们将此结果代入输入、输出和传递函数之间的关系时,我们得到

换句话说,"脉冲响应"是当我们输入脉冲函数时系统的输出。

示例:阶跃响应

[编辑 | 编辑源代码]

从拉普拉斯变换表中,我们还可以看到单位阶跃函数u(t)的变换为

将此结果代入传递函数的关系式,我们得到

我们可以看到,阶跃响应仅仅是脉冲响应除以s

示例:MATLAB 阶跃响应

[编辑 | 编辑源代码]

使用 MATLAB 求解以下传递函数的阶跃响应

我们可以像这样分离出分子和分母多项式

num = [79 916 1000];
den = [1 30 300 1000 0];
sys = tf(num, den);
% if you are using the System Identification Toolbox instead of the Control System Tooolbox:
sys = idtf(num, den);

现在,我们可以从step函数获得阶跃响应,并将其在 1 到 10 秒的时间范围内进行绘制

T = 1:0.001:10;
step(sys, T);

频率响应

[编辑 | 编辑源代码]

频率响应与传递函数类似,只是它是系统输出和输入在复傅立叶域而不是拉普拉斯域中的关系。我们可以通过使用以下变量替换从传递函数获得频率响应

频率响应
系统的频率响应是在傅里叶域中表示的系统输出与其输入之间的关系。

由于频率响应和传递函数密切相关,通常只计算其中一个,而另一个可以通过简单的变量替换获得。然而,尽管这两种表示之间存在密切关系,但它们在各自方面都很有用,并且分别用于不同的目的。

华夏公益教科书