用最简单的话认识全貌。
PS:默认都是线性系统,即输入和输出之间是线性的(默认你知道什么是线性)。

初步认识控制

假设你在推箱子,你推的力气是 f f f,箱子位移是 x x x,质量是 1 1 1,没有摩擦力,那么根据简单物理知识:

f = m a = x ¨ f=ma=\ddot{x} f=ma=x¨
需要格外注意的一点,不管是f还是x都是关于时间t的函数,这个式子其实长这样,这就是系统的模型
f ( t ) = m a = x ¨ ( t ) f(t)=ma=\ddot{x}(t) f(t)=ma=x¨(t)
假设 f ( t ) = 1 f(t)=1 f(t)=1,解为 x ( t ) = 1 2 t 2 x(t)=\frac{1}{2}t^2 x(t)=21​t2,得到了非常重要的输出关于时间的函数。

我们思考一个问题,因为F不会每次都是一样的,我们推动的力气可能是任何关于时间的函数,难道我们要每次都带入F去求解一个复杂的微分方程吗,有没有一个更好的办法?答案是拉普拉斯变换。
拉普拉斯变换很多,记住几个关键的,剩下查表就行了。但是拉普拉斯变换的微分性质是一定要会的重中之重。记住下面两个就够了,高阶形式也是一样的,不过题目一般不会有。真的到高阶了也肯定是软件求解了。
L [ d f ( t ) d t ] = s F ( s ) − f ( 0 ) L\left[\frac{d f(t)}{d t}\right]=s F(s)-f(0) L[dtdf(t)​]=sF(s)−f(0),
L [ d 2 f ( t ) d t ] = s 2 F ( s ) − s f ( 0 ) − f ′ ( 0 ) L\left[\frac{d^{2} f(t)}{d t}\right]=s^{2} F(s)-s f(0)-f^{\prime}(0) L[dtd2f(t)​]=s2F(s)−sf(0)−f′(0)

我们用拉普拉斯变换求解一下看看吧(统一小写代表时域,大写代表s域),我们假设初始值都是0:
F ( t ) = s 2 X ( s ) − s x ( 0 ) − x ˙ ( 0 ) = s 2 X ( s ) F(t)=s^2X(s)-sx(0)-\dot{x}(0)=s^2X(s) F(t)=s2X(s)−sx(0)−x˙(0)=s2X(s)
G ( s ) = X ( s ) F ( s ) = 1 s 2 G(s)=\frac{X(s)}{F(s)}=\frac{1}{s^2} G(s)=F(s)X(s)​=s21​

现在你知道了s域中输出和输入的比值,当你的输出 f ( t ) f(t) f(t)换了后,你只需要求拉普拉斯变换后的 F ( s ) F(s) F(s)带入即可求出 X ( s ) X(s) X(s),然后拉式反变换即可得到结果。无论你的 f ( t ) f(t) f(t)如何改变,都不会对 G ( s ) G(s) G(s)产生影响,这是这个系统中永远不变的式子,即表示了这个系统的内部性质

我们试试看 f ( t ) = 1 f(t)=1 f(t)=1,则 F ( s ) = 1 s F(s)=\frac{1}{s} F(s)=s1​,则 X ( s ) = G ( s ) F ( s ) = 1 s 3 X(s)=G(s)F(s)=\frac{1}{s^3} X(s)=G(s)F(s)=s31​,求拉式反变换 x ( t ) = 1 2 t 2 x(t)=\frac{1}{2}t^2 x(t)=21​t2

对于控制系统来说,我们的任务通产是让输出稳定在某个值,比如我们推物体是希望它正好停在某个地方,但是现在 f ( t ) f(t) f(t)显然是发散的,也就是说系统是不稳定的,关于稳定我们后面再细说。

控制需要做些什么:
你当然会想轻轻推箱子最后力气归于0,但是这个系统没有摩擦力,所以x永远不会稳定,这个系统压根就是不可能稳定的。所以你需要对系统进行改变,比如加入摩擦力。并且你也要更改推箱子的方式,你可能需要快快推但是箱子就会不稳,慢慢推时间很会长。而这些就是控制要做的事情。

幅频响应和相频响应

想想我们的机器人是用什么控制的?当然是电路啊。那一般来说电路肯定都是交流电吧,也就是不同频率正弦信号的组合(当然任何波通过傅里叶变换都可以变成正弦信号的组合,这样更好)。实验和理论告诉我们对于线性系统,输入正弦波,输出也是同频率正弦波,改变的只有幅值和相位(想想线性系统其次叠加性很容易理解)。那么,要是我们知道对于系统对于不同频率信号的响应不是就可以很容易的分析输入输出的关系了吗?

我们换一个复杂一点的系统:

系统方程:
m ⋅ d 2 r d t 2 + b ⋅ d r d t + k ⋅ r = k F ( t ) m \cdot \frac{d^{2} r}{d t^{2}}+b \cdot \frac{d r}{d t}+k \cdot r=k F(t) m⋅dt2d2r​+b⋅dtdr​+k⋅r=kF(t)
转移函数:
Y ( s ) = R ( s ) F ( s ) = k m s 2 + b s + k = ω n 2 s 2 + 2 ξ ω n s + ω n 2 Y(s)=\frac{R(s)}{F(s)}=\frac{k}{m s^{2}+b s+k}=\frac{\omega_{n}^{2}}{s^{2}+2 \xi_{\omega_{n}} s+\omega_{n}^{2}} Y(s)=F(s)R(s)​=ms2+bs+kk​=s2+2ξωn​​s+ωn2​ωn2​​
其中 ω n = k m , ξ = b 2 k m \omega_{n}=\sqrt{\frac{k}{m}},\xi=\frac{b}{2\sqrt{km}} ωn​=mk​ ​,ξ=2km ​b​
带入 s = j ω s=j\omega s=jω,则:(这里非常关键,换完的拉普拉斯变换其实就是傅里叶变换,也就是根据频率展开了)
∣ Y ( j ω ) ∣ = 1 ( 1 − ( ω ω n ) 2 ) 2 + 4 ξ 2 ( ω ω n ) 2 , ∠ Y ( j ω ) = − artan ⁡ 2 ξ ω ω n 1 − ( ω ω n ) 2 |Y(j \omega)|=\frac{1}{\sqrt{\left(1-\left(\frac{\omega}{\omega_{n}}\right)^{2}\right)^{2}+4 \xi^{2}\left(\frac{\omega}{\omega_{n}}\right)^{2}}},\angle Y(j \omega)=-\operatorname{artan} \frac{2 \xi \frac{\omega}{\omega_{n}}}{1-\left(\frac{\omega}{\omega_{n}}\right)^{2}} ∣Y(jω)∣=(1−(ωn​ω​)2)2+4ξ2(ωn​ω​)2 ​1​,∠Y(jω)=−artan1−(ωn​ω​)22ξωn​ω​​

上面两个式子一个是幅值,一个是相位,对于某个输入频率来说,这是两个定值。我们把这两个函数画出来。

上面是幅值响应设输出比输入为K,幅值取了20logK,因为值域范围很大,这个就是波特图。当输入等于输出时,就是0。
下面是频率响应,因为是因果信号,总是相位滞后的(频域相位滞后表现为时域上时间的延迟,你状态一开始是0不能一下子变成1吧,总得有个时间差)。
我们可以发现这是个低通系统,频率低的输入信号可以通过,频率高的则基本衰减没了。
假设输入是一个阶跃信号:

输出长这样,低频信号被保留了,你通过修改系统参数可以改变系统延迟时间,但是超调量(吐出去的部分)会增加,如何权衡也是你设计控制系统的要考虑的:

系统稳定性

零极点:
G ( s ) = ( s − b 1 ) ( s − b 2 ) 2 ( s − a 1 ) ( s − a 2 ) 2 G(s)=\frac{(s-b_1)(s-b_2)^2}{(s-a_1)(s-a_2)^2} G(s)=(s−a1​)(s−a2​)2(s−b1​)(s−b2​)2​
s = b 1 s=b_1 s=b1​是一阶零点, s = b 2 s=b_2 s=b2​是二阶零点, s = a 1 s=a_1 s=a1​是一阶极点, s = a 2 s=a_2 s=a2​是二阶极点
如果存在 a i = b j a_i=b_j ai​=bj​,则存在零极点对消

一般来说,传递函数的极点全在左半平面就是稳定的,有一个在右半平面就是不稳定的。有极点在原点则是会有稳态分量(不稳定),在原点以外的纵轴会有正弦信号(临界稳定)。很好理解,下面是拉普拉斯变换平移性质:
L [ f ( t ) e − a t ] = F ( s + a ) L\left[f(t) e^{-a t}\right]=F(s+a) L[f(t)e−at]=F(s+a)
一旦a<0,就会出现右半面极点,也就会出现不稳定的 e ∣ a ∣ t e^{|a|t} e∣a∣t分量。

PS:如果你学习自动控制原理,会学到很多判断稳定性的方法,因为手动求解非常高次的方程(但是现在都用电脑了,所以实际用起来也没啥用)。我不想花很多在这里,这部分内容很多当然对于考试来说很重要,但是不细讲,先有个理解就好。

系统稳定性和零极点位置:
传递函数的极点代表了系统的模态,也就是说,当激励的频率与极点代表的频率接近或相同时,系统将产生共振,系统的响应达到最大值。
那零点代表什么呢?——与极点相反,代表系统能够屏蔽的的模态,也就是反共振点,换句话说,当激励的频率与零点代表的频率相同时,系统将没有任何响应或响应非常小。
综合起来来说:**系统瞬态响应取决于极点代表的模态;稳态响应取决于激励频率离零点和极点的距离,离极点越近,稳态响应越大,离零点越近,稳态响应越小。**这显然和离极点越近越不稳定想矛盾(对立),所以也要做好权衡。

所以我们通过配置零极点的位置,可以获得满意的频响特性。比如我们希望对某个特定频率放大(带通)就在那个频率放个极点,我们希望某个频率被抑制(陷波器)可以在那里放个零点,具体怎么配置看后面,需要使用反馈。

另外,关于化简有两点。
一是删除过小的零极点,这个很容易想到,比如你输出关于时间的函数是 x ( t ) = e − x + e − 10 x + e − 100 x x(t)=e^{-x}+e^{-10x}+e^{-100x} x(t)=e−x+e−10x+e−100x,显然你的x和第一项关系最大,后面两项基本可以忽略。一般来说差了一个数量级就可以忽略小的。
二是当零极点靠的足够近的时候,可以对消。

另外还有最小相位系统的知识我就不细讲了,大家可以看最小相位系统理解

反馈

内容比较多,后面再补充,可以先看参考知乎JPAN
我这里补充一点对文章中例子的理解:
假设一个系统的传递函数是: G ( s ) = 1 s + 1 G(s)=\frac{1}{s+1} G(s)=s+11​
这个系统的阶跃响应为:

响应到稳定值的63.2%时所需要的时间约为1s,很慢,原因就是截止频率太低了,其伯德图为


为了解决这个问题,我么使用如下结果,这是一个比例控制。如果K很大,等于猛踩油门,肯定会非常快到达我们想要的值。但是如果不加控制,那最后我们就会超出希望到的速度,需要有东西来抑制住,负反馈就是起这个作用,如果输出超过了输入值,则超过的部分会成为反作用力让你的油门踩不下去。

当kp取100的时候,截止频率大幅上升,跟随特性变好。

前面我们说,只要截止频率足够高,输出就能很好的跟随输入,这种说法不是很严谨,因为文章开头就说了,各个频率分量通过系统时,不仅仅是幅值有衰减,相位也是有延迟了,如果相位延迟过多,信号重新叠加后也有可能和输入差别比较大。因此严谨的说法是:当相位延迟在一定范围内,截止频率越高,输出和输入就越接近。怎么定量说这个事呢?——相位裕度。

前面提到,加入PI控制器后,系统的闭环传递函数变得很复杂了,既有极点,又有零点,不太容易分析,因此,自动控制领域的前辈呢想了一个办法,那就是先设计开环前项通道的截止频率和相位裕度,再来分析闭环系统的响应。

当校正后的系统(控制器与G(s)组成的开环前向通道)的幅值响应开始衰减时(输出幅值小于输入,也就是0dB),信号的相位延迟与-180°的距离就是相位裕度。可见,相位裕度越大越好,理论上如果相位裕度达到180°,那就没有任何相位延迟,当然实际上是达不到的,一般来说相位裕度在40°以上,当然根据不同的应用场合会不一样。总结一下:

系统的幅值响应可以用截止频率来约束,相位响应用相位裕度来约束。

自动控制原理快速入门+理解相关推荐

  1. 自动控制原理之如何理解梅森公式(内附MATLAB求解传递函数程序)

    文章目录 一道题 总结与归纳 最近在复习自动控制原理,想看看自控的题能不能用matlab来简单地做出来,想到了一个理解梅森公式的角度,记录如下: 一道题 首先我们来看到一道题: 这题看上去挺简单的,但 ...

  2. sklearn快速入门教程:(四)模型自动调参

    上个教程中我们已经看到在sklearn中调用机器学习模型其实非常简单.但要获得较好的预测效果则需要选取合适的超参数.在实际的项目中其实也有不少参数是由工程师借助其经验手动调整的,但在许多场景下这种方式 ...

  3. golang快速入门[8.3]-深入理解IEEE754浮点数

    前文 golang快速入门[1]-go语言导论 golang快速入门[2.1]-go语言开发环境配置-windows golang快速入门[2.2]-go语言开发环境配置-macOS golang快速 ...

  4. 【自动驾驶模拟器AirSim快速入门 | 03】模型训练

    这是机器未来的第20篇文章 写在前面: 博客简介:专注AIoT领域,追逐未来时代的脉搏,记录路途中的技术成长! 专栏简介:掌握基本的自动驾驶概念.模型训练.推理仿真. 面向人群:零基础编程爱好者 专栏 ...

  5. SpringMVC:学习笔记(1)——理解MVC及快速入门

    SprigMVC-理解MVC及快速入门 说明: 传统MVC-->JSPModel2-->Front Controller + Application Controller + Page C ...

  6. 【自动驾驶模拟器AirSim快速入门 | 01】自动驾驶模拟器AirSim实战演练

    这是机器未来的第15篇文章 原文首发地址:https://blog.csdn.net/RobotFutures/article/details/125285472 @toc 1. 项目简介 博主基于微 ...

  7. 【ESP8266 快速入门】硬件:ESP12S/ESP12F最小系统设计及typeC自动下载电路设计

    [ESP8266]ESP12S/12F 最小系统设计及typeC自动下载电路设计 0.引言 ESP8266面向物联网应用的,高性价比.高度集成的 Wi-Fi MCU. 芯片ESP8266EX采用的QF ...

  8. 【自动控制原理】以弹簧振动系统(典型二阶系统)为例理解系统微分方程与传递函数、控制框图的关系,闭环极点与稳定性的关系

    [零]   我始终认为,开始学习一门课程之前,首先要知道这门课程的实际用处或者为什么有这门课程,如果不了解这些,在学习的过程中往往会存在诸多疑问,也很难对这门课程产生兴趣,这也是我们推崇在实践中学习的 ...

  9. 【自动驾驶模拟器AirSim快速入门 | 02】数据预处理:数据挖掘与准备

    这是机器未来的第16篇文章 原文首发地址:https://blog.csdn.net/RobotFutures/article/details/125321082 开源项目: 项目地址:https:/ ...

最新文章

  1. 困惑度 (perplexity)
  2. Xilinx网站资源导读
  3. Java网络编程笔记5
  4. 惠普 g5 服务器 centos安装系统,hp 380G5 安装centos 7
  5. [软件推荐]使用OneNote来构建你自己的知识库(OFFICE2010)
  6. gh-ost 原理剖析
  7. RabbitMQ Network Partitions
  8. idea springboot 发布webservice 发布服务_阿里云发布 Spring Boot 新脚手架,真香
  9. [html] html6即将到来,你最期待的是什么特性呢?
  10. linux 使用systemctl 设置java进程开机启动,管理springboot开机进程
  11. 二叉链表之寻找两节点的最近公共祖先☆
  12. 解决vi/vim中粘贴会在行首多很多缩进和空格的问题
  13. Eclipse中移除native层编译支持
  14. matlab高数数学报告,高等数学实验报告matlab参考答案
  15. 吾爱破解安卓逆向入门教程
  16. 【设计鉴赏】张艺谋《影》震撼人心的海报设计
  17. Java8 LocalDateTime 转时间戳 秒、毫秒
  18. cass打开dwg文件无效_CAD图纸dwg打开提示图形文件无效修复
  19. 2013总结之“酒肉穿肠过,佛在心中坐”
  20. markdown笔记1--设置字体、颜色、图片、背景色

热门文章

  1. 家长八句话来处理小孩子的事儿
  2. mysql+odbc驱动安装,MySQL的ODBC驱动下载、安装以及配置数据源
  3. 莫道前路从来急,人生何处不飞歌!
  4. c++优先队列(priority_queue)用法详解
  5. ListView事件的研究
  6. 37: sudo提权 、 Ansible配置 、 Ansible Playbook 、 Ansible进阶 、 总结和答疑
  7. 子弹短信 android,锤子子弹短信安卓版发布:App开放下载
  8. Java FFmpeg的音视频处理
  9. javac不是内部或外部命令,也不是可运行的程序的解决方法
  10. 2016世界财富500强:13家内地公司 华为进前十