type
status
date
slug
summary
tags
category
icon
password
文章筛选
PID控制理论框图
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9cef305e-2b0f-490d-9ec3-dc603b2d3615%2F4b3f2b13-0bca-4bda-a2d2-afec23905926%2FUntitled.png?table=block&id=10683bee-e2c6-42d3-afb1-0b7261e5c6ad&t=10683bee-e2c6-42d3-afb1-0b7261e5c6ad&width=547&cache=v2)
r(t):
最终希望达到的值
e(t): 所希望的值与实际值的差(误差值)
u(t): 给被控对象的值
y(t): 被控对象实际输出的值
举个简单的例子,控制智能车的速度。(飞卡比赛基础四轮车) 为了方便,这里以纯P控制,假设其值为Kp=2.
上电后,智能车摄像头采集回来图像,通过图像处理,我们判断出这是直道,想让其以4000的占空比前进(满占空比10000),既40%的速度。此时,r(t)就可以是4000,由于刚上电,此时轮子没有转起来,既编码器采集到的轮子的速度为0(被控对象实际输出的值),所以y(t)=0;误差就为e(t)=r(t)-y(t)。通过比例系数的控制后,u(t)=2*4000=8000(给电机的占空比)。之后继续重复以上控制。PD控制、PI控制、也是如此。
常见的控制方式
一、P控制
接下来在matlab中进行仿真,仿真图如下:
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9cef305e-2b0f-490d-9ec3-dc603b2d3615%2Fe13d159a-bc1e-424a-bd47-f5fa8cea18a0%2FUntitled.png?table=block&id=24f23b80-df18-4cde-8a87-511d704ba051&t=24f23b80-df18-4cde-8a87-511d704ba051&width=707&cache=v2)
其中这个模块
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9cef305e-2b0f-490d-9ec3-dc603b2d3615%2F31b83d39-b587-4a9a-a63e-27dce27f183a%2FUntitled.png?table=block&id=9f466467-000b-4e16-ae16-0b48bdecdc70&t=9f466467-000b-4e16-ae16-0b48bdecdc70&width=69&cache=v2)
是PID控制器。相当于PID控制框图的☟
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9cef305e-2b0f-490d-9ec3-dc603b2d3615%2Fa9e41733-d4b0-4592-8943-1a42e61bafe0%2FUntitled.png?table=block&id=7a577935-cb8e-4eb7-bc9a-4665c0b6583e&t=7a577935-cb8e-4eb7-bc9a-4665c0b6583e&width=181&cache=v2)
下面这个相当与被控对像。(就像上面讲到的电机)
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9cef305e-2b0f-490d-9ec3-dc603b2d3615%2Fad1488bf-4518-49f9-84f3-06871e1e65bd%2FUntitled.png?table=block&id=11fe6953-1cdb-428e-8bf6-d9d6a781f92f&t=11fe6953-1cdb-428e-8bf6-d9d6a781f92f&width=201&cache=v2)
设定P的值为10,查看输出的波形。
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9cef305e-2b0f-490d-9ec3-dc603b2d3615%2Fac6fd273-02c2-47ff-8cf2-57aae0c67480%2FUntitled.png?table=block&id=0fb36f90-fe76-47d2-b7f0-bf0e23014bfb&t=0fb36f90-fe76-47d2-b7f0-bf0e23014bfb&width=388&cache=v2)
下面是输出的波形:
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9cef305e-2b0f-490d-9ec3-dc603b2d3615%2F69a762a5-ce73-4363-9200-3cc7ebac2ce3%2FUntitled.png?table=block&id=70f2fa5b-b70b-4d97-a9b7-41de6d399e15&t=70f2fa5b-b70b-4d97-a9b7-41de6d399e15&width=708&cache=v2)
上图中蓝色的是PID处理后的值,而黄色是误差值。由波形可知,其最终经过PID处理后,其值基本保持在9附近,并没有保持在10。
接下来我们继续增大P的值,将其设置为30,并将P=10,和P=30经过PID处理后,查看其波形,波形如下:
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9cef305e-2b0f-490d-9ec3-dc603b2d3615%2F073be8f1-6481-4707-800b-fc47fc0e946d%2FUntitled.png?table=block&id=63e9c06b-e880-4a01-9f9d-ac875598b691&t=63e9c06b-e880-4a01-9f9d-ac875598b691&width=708&cache=v2)
蓝色的波形是P=30,黄色的P=10。
通过图可以看出,P=30,最终基本稳定在9.67左右,相比与P=10(稳定在9左右),更加的接近我们所期望的值,但是随着P的增大,其系统的稳定性下降,波动太大。
也就说,P的作用为:
系统一旦出现偏差,比例调节立即产生调节作用用以减少偏差,比例作用大,可以加快调节,减少调节时间,减少稳态误差,过大的比例作用,使系统的稳定性下降,甚至造成系统的不稳定。
下面,来看一下P=10和30,系统的实际输出波形比较,其也能很好的理解P的作用。
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9cef305e-2b0f-490d-9ec3-dc603b2d3615%2F5df8d299-551c-465c-98a8-2dd3d89273ca%2FUntitled.png?table=block&id=e4330656-598a-4289-8b88-0ca47fcd3a49&t=e4330656-598a-4289-8b88-0ca47fcd3a49&width=1367&cache=v2)
上图中蓝色的是P=30,黄色的是P=10。
二、PD控制
在只有P控制的条件下,加入D的控制。我们这里的PD控制,与上一个纯P控制作比较。
1、P相同的条件下
(P相同是指纯P控制的P值,与PD控制的P值相同。改变其D值,观察其实际输出波形的区别)
(1) P=10,D=2
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9cef305e-2b0f-490d-9ec3-dc603b2d3615%2Ff378c5e1-e7d8-4c1d-b1c6-ddaabe22260b%2FUntitled.png?table=block&id=ece067ce-9d1a-4fbd-8d9d-9e5296718929&t=ece067ce-9d1a-4fbd-8d9d-9e5296718929&width=235&cache=v2)
其纯P控制实际输出波形,与PD控制实际输出波形如下:
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9cef305e-2b0f-490d-9ec3-dc603b2d3615%2F04e171f0-c7d4-4294-83bc-3cb610097f73%2FUntitled.png?table=block&id=f7b7fa60-d182-4b23-90fe-c0305b1dae86&t=f7b7fa60-d182-4b23-90fe-c0305b1dae86&width=1367&cache=v2)
蓝色的是PD控制,黄色的是纯P控制。明显可以看出加入了D,使其波形更加的稳定。在微分时间选择合适情况下, 可以减少超调, 减少调节时间,使其更快的保持在我们所希望的值附近。(2)在上一步的基础上,增加D的值,观察其输出的波形。增大为D=7,(P=10)。
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9cef305e-2b0f-490d-9ec3-dc603b2d3615%2F3a31f4cb-b159-48c9-90e2-336202cfc794%2FUntitled.png?table=block&id=3a591a5b-b23f-4d0c-9045-8f67d442992b&t=3a591a5b-b23f-4d0c-9045-8f67d442992b&width=1360&cache=v2)
该波形为系统的输出波形,其中,黄色的线是P=10,D=2;蓝色的线是P=10,D=7。
从中可以看出,D的作用为:
减小超调量,减小调节时间(与P控制相比较而言)增强系统稳定性
三、PID控制
在上一个的基础上,加入积分项(I),P=10,i=1,D=7。
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9cef305e-2b0f-490d-9ec3-dc603b2d3615%2Fb6c8def6-9e60-4c61-abde-a506c0aad61f%2FUntitled.png?table=block&id=68af9007-4836-45e8-a87d-da80cb39463f&t=68af9007-4836-45e8-a87d-da80cb39463f&width=1337&cache=v2)
该波形为系统的输出波形,其中,黄色的线是P=10,D=7,i=0;蓝色的线是P=10,D=7,i=1。
从波形可以明显看出,加入积分项后,其输出波形最终稳定9.9左右。所以其有消除稳态误差的作用。
继续增大I,查看其输出波形
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9cef305e-2b0f-490d-9ec3-dc603b2d3615%2Fd7621ba2-f471-4cfd-9f32-4ed6d9e57ff9%2FUntitled.png?table=block&id=dd0b4f1d-262b-4ff6-abbe-65605f1a5ccc&t=dd0b4f1d-262b-4ff6-abbe-65605f1a5ccc&width=708&cache=v2)
蓝色的为i=5,黄色的为i=1,从中可以看出积分项有明显的消除稳态误差的作用。
总结
1、比例(P)控制
具有P控制的系统,其稳态误差可通过P控制器的增益Kp来调整:Kp越大,稳态误差越小;反之,稳态误差越大。但是Kp越大,其系统的稳定性会降低。
由上式可知,控制器的输出u(t)与输入误差信号e(t)成比例关系,偏差减小的速度取决于比例系数Kp:Kp越大,偏差减小的越快,但是很容易引起振荡;Kp减小,发生振荡的可能性小,但是调节速度变慢。单纯的P控制无法消除稳态误差。
2、比例微分(PD)控制
规律:可以反应输入信号的变化趋势,具有某种预见性,可为系统引进一个有效的早期修正信号,以增加系统的阻尼程度,而从提高系统的稳定性。(tao为微分时间常数)
3、比例积分微分(PID)控制
除了积分环节提高了系统型别,微分环节提高了系统的动态性能。
观察PID的公式可以发现:Kp乘以误差e(t),用以消除当前误差;积分项系数Ki乘以误差e(t)的积分,用于消除历史误差积累,可以达到无差调节;微分项系数Kd乘以误差e(t)的微分,用于消除误差变化,也就是保证误差恒定不变。由此可见,P控制是一个调节系统中的核心,用于消除系统的当前误差,然后,I控制为了消除P控制余留的静态误差而辅助存在,对于D控制,所占的权重最少,只是为了增强系统稳定性,增加系统阻尼程度,修改PI曲线使得超调更少而辅助存在。也就是说,通过PID控制,可以使得系统稳、准、快的调节到我们所期望的值
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F9cef305e-2b0f-490d-9ec3-dc603b2d3615%2F7a0852df-fbfd-448d-89dd-476fe5c69d91%2FUntitled.png?table=block&id=fa4878bf-4a0d-4c44-92ce-996face1515f&t=fa4878bf-4a0d-4c44-92ce-996face1515f&width=1353&cache=v2)
稳定性(P和I降低系统稳定性,D提高系统稳定性):在平衡状态下,系统受到某个干扰后,经过一段时间其被控量可以达到某一稳定状态;
准确性(P和I提高稳态精度,D无作用):系统处于稳态时,其稳态误差;
快速性(P和D提高响应速度,I降低响应速度):系统对动态响应的要求。一般由过渡时间的长短来衡量。
- 作者:也平凡
- 链接:https://www.990001.xyz/blog/pid
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。