Control Systems/Introduction

来自osdev
Zhang3讨论 | 贡献2022年5月4日 (三) 07:48的版本
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳到导航 跳到搜索

{{#invoke:TScope|shiftLeft|BookCat/core|1 |namespace = |pagename =Control Systems/Introduction |fullpagename=Control Systems/Introduction |sortkey = }}

这本维基百科书

这本书是在 “wikibooks” 上编写的,这是一个免费的在线社区,人们可以在其中编写开放内容的教科书。 欢迎任何能上网的人参与本书的创作和改进。 因为这本书是不断演变的,所以这本书没有有限的“定稿”或“版本”。 但是提供了到已知良好版本的页面的永久链接。

什么是控制系统

自动控制系统的研究和设计在现代技术社会中已经变得非常重要,它被称为控制工程领域。 从像烤面包机或马桶这样简单的设备,到像航天飞机和动力转向这样的复杂机器,控制工程是我们日常生活的一部分。 这本书介绍了控制工程领域,并探讨了该领域中一些更高级的主题。 然而,请注意,控制工程是一个非常大的领域,这本书只是作为控制工程的基础和该领域选定的高级主题的介绍。 本书中的主题是由作者自行决定添加的,代表了我们贡献者的可用专业知识。

控制系统是添加到其他组件中以增加功能或满足一组设计标准的组件。 例如:

我们有一个特定的电动机,应该以40 RPM的速度转动。 为了达到这个速度,我们必须向电机端子提供10伏电压。 然而,如果电机静止时提供10伏电压,我们的电机需要30秒才能达到速度。 这是宝贵的时间损失。

这个简单的例子对于电机系统的用户和设计者来说都可能是复杂的。 似乎很明显,电动机应该以更高的电压启动,以使其加速更快。 然后,一旦达到理想速度,我们可以将电源电压降低到10伏。

这显然是一个简单的例子,但它说明了一个重要的观点:我们可以向现有的系统添加特殊的“控制器单元”,以提高性能并满足新的系统规范。

以下是本书中使用的术语的一些正式定义:

控制系统
控制系统是管理其他设备行为的设备或设备的集合。 有些设备是不可控制的。 控制系统是以命令、指令或调节自身或另一个系统的方式连接或相关的组件的互连。

控制系统是用于设计具有调节和/或跟踪能力以提供所需性能的系统的概念性框架。 为此,必须有一组可测量的信号以了解性能,另一组可测量的信号以影响系统在时间上的演化,第三组不可测量但干扰了演化。

控制器
控制器是管理另一个设备或系统的行为的控制系统(使用执行器)。 通常向控制器提供来自系统外部的一些输入信号,该输入信号命令系统提供所需的输出。 在闭环系统中,信号与来自系统内部的传感器信号一起进行预处理。
执行器
执行器是一种从控制器接收信号并进行一些动作以相应地影响系统的设备。
补偿器
补偿器是调节另一个系统的控制系统,通常通过调节该系统的输入或输出来调节该系统。 补偿器通常用于纠正单个设计缺陷,以最大程度地减少对设计其他方面的影响。

基本上有两种方法来处理设计新的控制系统的问题: 经典方法现代方法

经典与现代

经典现代控制方法论的命名有误导性, 因为被称为 “经典” 的一组技术实际上比被标记为 “现代” 的技术发展得晚。 然而,在开发控制系统方面,现代方法在最近得到了很大的应用,而经典方法逐渐失宠。 最近的研究表明,经典方法和现代方法可以结合起来,突出各自的优点和缺点。

本书将首先考虑的经典方法是涉及 “拉普拉斯变换域” 的方法。 物理系统在所谓的“时域”中建模,其中给定系统的响应是各种输入、先前系统值和时间的函数。 随着时间的推移,系统的状态及其响应会发生变化。 然而,系统的时域模型经常使用高阶微分方程进行建模,这对于人类来说可能变得难以解决,并且其中一些甚至对于现代计算机系统来说无法有效解决。 为了解决这个问题,可以使用积分变换,例如拉普拉斯变换傅里叶变换,将时域中的常微分方程(ODE)变换为变换域中的正则代数多项式。 一旦给定的系统被转换到变换域,它就可以更容易地进行操作,并由人和计算机进行快速分析。

现代控制方法不是更改域以避免时域ODE数学的复杂性,而是将微分方程转换为称为 状态方程 的低阶时域方程组,然后可以使用线性代数中的技术进行操纵。 这本书将次要考虑现代方法。

控制系统领域中经常出现的第三个区别是将模拟方法(如上所述的古典和现代)与数字方法区分开来。 数字控制方法旨在尝试将计算机系统的新兴功能整合到以前的控制方法中。 开发了一种特殊的变换,称为“Z变换”,它可以充分描述数字系统,但同时也可以(通过一些努力)转换为拉普拉斯域。 一旦进入拉普拉斯域,就可以用与经典模拟系统非常相似的方式来处理和分析数字系统。 因此,本书不会对模拟系统和数字系统进行硬性区分,而是尝试并行研究这两种范式。

这本书适合谁?

这本书的目的是伴随着本科生和研究生工程学的学习课程。 如前所述,本书并不关注工程学中的任何特定学科,但是任何想要使用这种材料的人都应该在拉普拉斯变换 (如果不是其他变换),微积分等方面具有一些基本背景。 本书中的材料可用于几个学期的学习,具体取决于你所在学院或大学的课程。 控制系统的学习通常是为四年制本科课程的三年级或四年级的学生保留的一个主题,因为它需要太多的先前信息。 一些较高级的主题可能要等到以后的研究生课程中才能涵盖。

许多学院和大学在本科阶段只开设一两门专门关于控制系统的课程。 然而,一些大学确实提供了更多的东西,这取决于材料是如何分解的,以及覆盖的深度有多深。 此外,许多机构将提供一些有关该主题的研究生课程。 这本书将试图从研究生和本科生两个层面涵盖控制系统的主题,高级主题以直观的方式建立在基本主题的基础上。 因此,学生应该能够从任何似乎是适当起点的地方开始阅读这本书,并且应该能够在不再需要进一步信息的地方阅读完。

先决条件是什么?

理解这本书中的内容需要坚实的数学基础。 这本书目前没有解释,也永远不会试图完全解释在这篇文章中使用的大多数必要的数学工具。 因此,读者应已阅读以下wikibooks,或具有与之相当的背景知识:

代数
微积分
读者应该对差异化和整合有很好的理解。 偶尔会用到偏微分、多元积分和多变量函数,但学生不一定要熟悉这些科目。 这些高级微积分主题最好有一点掌握,但不是前提条件。
线性代数
状态空间系统表示严重依赖线性代数技术。 学生应该知道如何对矩阵进行运算。 学生应该了解基本的矩阵运算 (加法、乘法、行列式、逆、转置)。 学生们还将受益于对特征值和特征向量的事先理解,但这些主题将在本文中介绍。
常微分方程式
所有的线性系统都可以用一个线性常微分方程来描述。 因此,学生理解这些方程式是有益的。 这本书的大部分内容描述了分析这些方程的方法。 学生应该知道什么是微分方程,还应该知道如何找到一阶和二阶ODE的一般解。
工程分析
本书加强了工程分析书中使用的许多高级数学概念,我们将参考前述正文中的相关部分,以了解有关某些主题的进一步信息。 这本质上是一本数学书,但重点是各种工程应用。 它依赖于该列表中其他数学书籍的先前知识。
信号和系统
这本信号与系统将为“系统理论”领域提供基础,控制系统是其中的一个子集。 没有读过 信号和系统 书的读者在阅读这本书时会处于严重的劣势。

这本书是如何组织的?

这本书将按照特定的进展进行组织。 首先,这本书将讨论系统理论的基础知识,并将提供一个关于积分变换的简短复习。 第二节将为不一定熟悉数字信息的学生提供一个简短的数字信息入门读物。 这样做是为了在本书的其余部分中可以并行考虑数字和模拟信号。 接下来,本书将介绍系统描述和控制的状态空间方法。 在第3节之后,书中的主题将交替使用状态空间和变换方法(偶尔同时使用)。 因此,重要的是,在进入本书的后面部分之前,要充分阅读和理解这三章。

在本书的“基础”部分之后,我们将深入研究分析和设计控制系统的具体方法。 首先,我们将讨论拉普拉斯域稳定性分析技术(Routh-Hurwitz, root-locus),然后讨论频率方法(Nyquist Criteria, Bode Plots)。 在讨论了经典方法之后,本书将讨论稳定性分析的现代方法。 最后,根据不同贡献者的知识水平,将涉及一些高级主题。

随着本书主题的扩展,前提条件也会扩展。 例如,当本书扩展到涵盖非线性系统时,将需要非线性数学的基本背景知识。

版本

本维基手册已扩展到包括其文本的多个版本,按所涵盖的材料和材料的呈现顺序进行区分。 每个不同的版本都由本书的章节组成,以不同的顺序包含。 这本书涵盖了广泛的信息,所以如果你不需要这本书提供的所有信息,也许其他版本中的一个适合你和你的教育需求。

每个单独的版本都有一个目录,其中概述了该版本中包含的不同章节。 此外,每个单独的版本都有一个可打印的版本,有些甚至还有PDF版本。

请查看 所有版本列表页,以找到适合你和你需求的本书版本。

微分方程复习

在控制系统的研究中隐含的是微分方程的基本使用。 即使它们在表面上不可见,我们将要研究的所有连续时间系统都是在时域中用常微分方程(ODE)描述的,其中一些是相对高阶的。

让我们复习一些微分方程的基础知识。 考虑一个银行感兴趣的话题。 给定本金余额(你存入银行的金额)P的应计利息金额由以下公式得出:

解析失败 (带SVG或PNG备选的MathML(建议用于现代的浏览器和辅助工具):从服务器“https://wikimedia.org/api/rest_v1/”返回无效的响应(“Math extension cannot connect to Restbase.”):): {\displaystyle \frac{dP}{dt} = rP}

其中解析失败 (带SVG或PNG备选的MathML(建议用于现代的浏览器和辅助工具):从服务器“https://wikimedia.org/api/rest_v1/”返回无效的响应(“Math extension cannot connect to Restbase.”):): {\displaystyle \frac{dP}{dt}} 是利息(本金变化率),r是利率。 注意在这种情况下,P是时间 (t) 的函数,可以重写以反映:

解析失败 (带SVG或PNG备选的MathML(建议用于现代的浏览器和辅助工具):从服务器“https://wikimedia.org/api/rest_v1/”返回无效的响应(“Math extension cannot connect to Restbase.”):): {\displaystyle \frac{dP(t)}{dt} = rP(t)}

为了解这个基本的一阶方程,我们可以使用一种叫做“变量分离”的技术,我们把字母P的所有实例移到一边, 并将t的所有实例传递给另一个:

解析失败 (带SVG或PNG备选的MathML(建议用于现代的浏览器和辅助工具):从服务器“https://wikimedia.org/api/rest_v1/”返回无效的响应(“Math extension cannot connect to Restbase.”):): {\displaystyle \frac{dP(t)}{P(t)} = r\ dt}

整合双方给了我们:

解析失败 (带SVG或PNG备选的MathML(建议用于现代的浏览器和辅助工具):从服务器“https://wikimedia.org/api/rest_v1/”返回无效的响应(“Math extension cannot connect to Restbase.”):): {\displaystyle \ln|P(t)| = rt + C}

这一切都很好,但一般来说,我们喜欢通过将两边的幂提高到e来去掉对数:

解析失败 (带SVG或PNG备选的MathML(建议用于现代的浏览器和辅助工具):从服务器“https://wikimedia.org/api/rest_v1/”返回无效的响应(“Math extension cannot connect to Restbase.”):): {\displaystyle P(t) = e^{rt + C}}

在这里我们可以将常量分离出来:

解析失败 (带SVG或PNG备选的MathML(建议用于现代的浏览器和辅助工具):从服务器“https://wikimedia.org/api/rest_v1/”返回无效的响应(“Math extension cannot connect to Restbase.”):): {\displaystyle D = e^C}
解析失败 (带SVG或PNG备选的MathML(建议用于现代的浏览器和辅助工具):从服务器“https://wikimedia.org/api/rest_v1/”返回无效的响应(“Math extension cannot connect to Restbase.”):): {\displaystyle P(t) = De^{rt}}

D是一个常数,表示系统的初始条件,在本例中为起始主体。

微分方程特别难操作,尤其是当我们得到更高阶的方程时。 幸运的是,已经创建了几种抽象方法,使我们能够处理ODE,但同时不必担心它们的复杂性。 如上所述,经典方法使用拉普拉斯,傅立叶和z变换将时域中的ode转换为复域中的多项式。 这些复多项式比常微分方程更容易求解。 现代方法将微分方程组分解为低阶方程组,并用矩阵表示该系统。 ODE理论中的一个常见原则是,N阶ODE可以分解为N个1阶方程。

不熟悉微分方程的读者也可能能够很好地阅读和理解本书中的内容。 不过,我们鼓励所有读者阅读微积分中的相关章节。

历史

控制系统领域基本上起源于古代世界。 早期的文明,特别是希腊人和阿拉伯人,非常专注于时间的准确测量,其结果是设计和实现了几个“水钟”。

然而,直到欧洲文艺复兴时期开始,在工程领域取得的实际进展很少。 莱昂哈德·欧拉(Leonhard Euler,为其命名为欧拉公式)发现了一种强大的积分变换,但皮埃尔·西蒙·拉普拉斯(Pierre Simon Laplace)利用该变换(后来称为“拉普拉斯变换”)解决了概率论中的复杂问题。

约瑟夫·傅立叶是拿破仑一世时期的法国宫廷数学家。 他创建了一种特殊的函数分解,称为“傅里叶级数”,后来被推广为积分变换,并以他的名义命名(傅里叶变换)。 模板:-

Pierre-Simon-Laplace (1749-1827).jpg Joseph Fourier.jpg
Pierre-Simon Laplace

1749-1827

Joseph Fourier

1768-1840

控制工程的“黄金时代”发生在1910-1945年间,当时大众传播方法正在被创造出来,两次世界大战正在打响。 在此期间,控制工程中一些最著名的名字正在做他们的工作: 奈奎斯特和博德。

亨德里克·韦德·博德哈里·尼奎斯特,尤其是在20世纪30年代与贝尔实验室合作时,创造了我们现在所说的“经典控制方法”的大部分。 这些方法是基于拉普拉斯和傅里叶变换的结果,这是以前已经知道的,但在世纪之交由奥利弗·希维赛德创建的方法流行起来。 在Heaviside之前,变换没有被广泛使用,也是没有受到尊重的数学工具。

伯德被认为是“发现”了闭环反馈系统, 以及至今仍以他的名字命名的对数标绘技术(bode plots)。 哈里·奈奎斯特 (Harry Nyquist) 在系统稳定性和信息理论领域进行了广泛的研究。 他创造了一个强大的稳定标准,并以他的名字命名(“奈奎斯特标准”)。

现代控制方法在20世纪50年代初被引入,作为一种绕过经典方法的一些缺点的方法。 鲁道夫·卡尔曼以其在现代控制理论中的工作而闻名,并以他的名字命名了一个自适应控制器,称为卡尔曼滤波器。 1957年以后,随着计算机的发明和太空计划的开始,现代控制方法变得越来越流行。 计算机产生了对数字控制方法的需求,而空间计划需要创造一些“先进的”控制技术, 如 “最优控制” 、 “鲁棒控制” 、 “非线性控制” 等。 这些最后的课题,以及其他几个,在研究工程师中仍然是活跃的研究领域。 模板:-

控制工程的分支

在这里,我们将简要列出控制工程领域内的各种不同方法。 通常,这些方法之间的界限是模糊的,甚至完全被抹去。

经典控制
控制方法,其中使用Laplace,Fourier或Z变换对描述系统的ode进行变换,并在变换域中进行处理。
现代控制:将高阶微分方程分解为一阶方程组的方法。 系统的输入、输出和内部状态由称为“状态变量”的矢量来描述。
鲁棒控制
考虑任意外部噪声/干扰的控制方法,以及由系统本身和环境的热量引起的内部不准确。
最优控制
在一个系统中,性能指标被确定,并被安排成一个“成本函数”。 成本函数被最小化,以创建具有最低成本的运营系统。
自适应控制
在自适应控制中,控制随时间改变其响应特性,以更好地控制系统。
非线性控制
非线性控制是控制工程中最年轻的分支,它包括不能用线性方程或常微分方程来描述的系统,而这些系统通常几乎没有可用的支持理论。
博弈论
博弈论是控制理论,特别是鲁棒控制和最优控制理论的近亲。 在博弈论中,外部干扰不被认为是随机噪声过程,而是被认为是 “对手”。 每个玩家都有一个成本函数,他们试图最小化,而他们的对手则试图最大化。

这本书肯定会涵盖前两个分支,如果时间允许,希望能扩展到涵盖后面的一些分支。

MATLAB

有关在控制系统中使用matlab的信息,请参阅
附录

MATLAB® 是控制工程领域常用的编程工具。 我们将在本书致力于此目的的特定章节中讨论MatLab。 MATLAB不会出现在这些特定部分之外的讨论中,尽管在一些示例问题中可能会使用MATLAB。 有关MATLAB在控制工程中的使用概述,请参见附录Control Systems/MATLAB

有关MatLab的一般信息,请参阅:MatLab Programming

有关正确引用MATLAB的更多信息,请参阅:
资源

几乎所有关于控制系统、线性系统和系统分析主题的教科书都使用MatLab作为课文的一个组成部分。 在认可的大学学习该主题的学生肯定会在他们的教科书中看到这些材料,并且很可能将MATLAB作为课程的一部分。 MATLAB附录就是从这个角度编写的。

将来,本书可能会扩展到包括有关Simulink®的信息。

还有许多其他软件工具在控制系统的分析和设计中很有用。 根据投稿人的经验和之前的知识,可以在本书的附录中添加其他信息。

关于格式

本书将在整个过程中使用一些简单的约定。

数学惯例

数学方程式将使用{{eqn}}模板进行标记,以便为其命名。 以这种方式标记的方程式很重要,应特别注意。 例如,请注意该等式右侧的标签:

[拉普拉斯逆变换]

解析失败 (带SVG或PNG备选的MathML(建议用于现代的浏览器和辅助工具):从服务器“https://wikimedia.org/api/rest_v1/”返回无效的响应(“Math extension cannot connect to Restbase.”):): {\displaystyle f(t) = \mathcal{L}^{-1} \left\{F(s)\right\} = {1 \over {2\pi i}}\int_{c-i\infty}^{c+i\infty} e^{st} F(s)\,ds}

以这种方式命名的方程式也将被复制到本书末尾的 方程式术语表 中,以供参考。

斜体将用于正文中出现的英文变量、函数和方程。 例如ejf(t)X(s)都是斜体。 Wikibooks包含一个LaTeX数学格式引擎,尽管由于大小和字体的不同,将尝试不使用与其他文本内联的格式数学方程式。 希腊字母和其他非英语字符不会在文本中使用斜体,除非它们出现在多个斜体变量中(为方便编辑)。

标量时间域函数和变量将用小写字母和括号中的t表示,例如: x(t), y(t), 和 h(t). 离散时间函数将以类似的方式编写,只是使用[n]而不是(t)

傅立叶,拉普拉斯,Z和星变换函数将用大写字母表示,然后在括号中使用适当的变量。 例如: F(s), X(jω), Y(z), 和 F*(s).

矩阵将用大写字母表示。 作为时间函数的矩阵将用一个大写字母表示,括号中后跟一个t。 例如: A(t) 是矩阵,a(t) 是时间的标量函数。

时变矩阵的变换将以大写粗体字母显示, 例如H(s)

使用LaTeX渲染的数学方程式将出现在单独的行中,并将与文本的其余部分缩进。

文本约定

与正文相切或辅助的信息将放在这些“侧边框”模板中。

示例将出现在文本框模板中,该模板显示为填充文本和方程式的大灰色框。

重要定义:也将出现在文本框模板中,除非我们将使用此格式来表明它是一个定义。

{{#invoke:Message box|mbox}}

警告: 警告信息将出现在这些“警告”框中。这些方框将指出常见错误或其他需要注意的事项。

Control Systems

System Identification →