首页 > 编程知识 正文

pid控制电路图(PID控制原理入门分析)

时间:2023-05-05 05:56:12 阅读:121690 作者:451

在此期间,需要使用PID算法来控制电机的转速。 因为之前学的概念变得模糊了,所以在网上查了资料,重新学习了。 但是,大多数是基于字符的描述,很少通过例子展示算法的过程。 这里是记录,也是为初学者理解PID提供很多构想。

目的:

PID的重要性应该不必多说,但该控制领域的应用是最广泛的算法

本论文的目的是通过一个例子展示算法的过程,并说明以下概念

)1)简要说明什么是PID,为什么需要PID,PID起什么作用

)2)了解p (比例环节)作用:基础比例环节

发生缺点:稳态误差。

疑问:稳态误差为什么会发生稳态误差?

(3) I )积分过程)了解作用:消除稳态误差。

增加缺点:超调

疑问:积分为什么能消除稳态误差?

)4)了解d (微分过程)作用:提高惯性响应速度,减弱超调倾向

疑问:为什么能减少超调

)5)了解各比例系数的作用

另一方面,PID是什么,以及为什么需要PID以下,即PID控制的整体框图。 过程在:上设置输出目标,反馈系统返回输出值,如果与目标不匹配则存在误差,PID在该误差http://www.Sina.com/http://www.Sina.com/:中为什么需要PID 例如,即使控制温度,也不能监视温度值。 温度值到达后要停止吗?

我必须在这里先说我们的目标。 因为,我们所有的控制都只是想输出以达到我们的设定。 也就是说,设定目标温度值后,想要什么样的温度变化呢?

例如,如果目标温度为30度,则目标只能是调整输入值,直至输出达到设定值

这样你就知道了,如果使用温度上升就停止的方法,当然要求不高可能就好了。 否则,是疑问,而且是希望其能够快速而且没有抖动的达到30度

需要汇总:PID的理由是,通常的控制手段不能使输出迅速稳定地达到设定值。

如果你对此感到怀疑,我们就用常用的例子开始具体说明吧

二、一个例子在开始之前,需要搬出我们的公式

乍一看,这个公式很威胁。 其实你只要知道微分和积分的基本定义就能理解。 而且最终我们所有的努力也能理解这个公式。 否则,再精巧的比喻也不能真正理解和使用你。

这里假设为温度到了后余温也会让温度继续升高. (如果这个步骤有点太快,稍后再加上对此的说明。 )

Kp-------比例常数ki=(KP*t )/ti------积分常数KD=) KP*TD )/T------微风常数以下我通过一个例子来具体说明这个方程式是如何工作的。

(1)犹豫不决的鹤在任务:中有水桶,需要经常保持1m高,目前水桶里有0.2m的水

)单纯犹豫用kp控制的鹤,用p (比例)的方法加水: ),也就是每次测量与1m的误差,加入与误差成比例的水量

例如Kp=0.5 .

第一次,误差为1-0.2=0.8m,供水量为Kp*0.8=0.4mm。

第二次,误差为1-0.4=0.6m,供水量为Kp*0.6=0.3m

我们发现这太完美了,那么比例环节就能完美地解决问题。 但是,等等,在得出这个结论之前,我们将看到犹豫不决的鹤的新任务

)2)鹤新任务:有桶犹豫不决,桶底破洞仍需保持1m高。 现在水桶里有0.2m的水,但每次加水都会流出0.1m。 这个例子和我们实际工程的例子很接近。温度自身也会通过空气散热的

解决迷茫的鹤的问题吧。

初次还是使用p (比例控制) u=Kp* e

保持Kp=0.5 .不变u=0.5*e

l (最终水位) )在本次输入u中加上上次水位

第一次,误差为1-0.2=0.8m,供水量为Kp*0.8=0.4mm,最终水位为0.4 0.2-0.1=0.5

第二次,误差为1-0.5=0.5mm,供水量为Kp*0.5=0.25mm,最终水位为0.5 0.25-0.1=0.65

发现了问题。 水位最终稳定在0.8m。 这也很清楚。 误差为0.2m时,加水为0.1。 每次放进去正好等于漏了。

这里引入了稳态误差的概念:即与系统达到稳态时的目标的误差。

那么,加大Kp吧。

我们发现误差变小了。 那么,继续加大吧

我们发现系统开始振动了

在这里,您可以使用excel折线图调整参数以观察变化

结论:比例控制引入稳态误差且无法消除。 比例常数变大可以减小稳态误差,但过大会引起系统振动,变得不稳定。

)2) ki控制,引入kp ki

为了消除稳态误差,第二次加入积分,使用PI(比例积分控制) u= [公式]

积分控制就是将历史误差全部加起来乘以积分常数.

这个式子什么意思呢,为啥就能消除稳态误差呢.

还是先设Kp=0.5,Ki= 0.3(这个值我这里是随意设置的)

第一次: 误差为0.8, 比例部分 Kp0.8=0.4, 积分部分 Ki(e(1))= 0.24,加入水量u为0.4+0.24=0.64. 最终水位0.2+0.64-0.1= 0.74m

第二次: 误差为0.26,比例部分Kp0.26=0.13,积分部分Kp*(e(1)+e(2))= 0.318,加入水量u为 0.13+0.318=0.448.最终水位 0.74+0.448-0.1=1.088m



我们发现,虽然过程曲折,但是最终可以稳定到设定值了.

如果 加大Ki 呢

此处使用excel 折线图,大家可以调节参数观察变化

结论:

1 只要存在偏差,积分就不停的累计,直到误差为0, 积分项不再累加,变成一个常数,可以抵消稳态误差.

大家可以看到表2 中系统稳定后,积分项约是0.1.

2 引入积分可以消除稳态误差,但会增加超调,且Ki 增大,超调量也增大.

(3)引入 pd 控制、 kp+ki+kd

为了消除超调 + 提高系统的相应速度 ,我们引入微分作用

现在式子变成了

还是先设Kp=0.5,Ki= 0.5,Kd=0.3

第一次: 误差为0.8, 比例部分 Kp0.8=0.4, 积分部分 Ki(e(1))= 0.24,微分部分 =0 (因为没加水前水位差就是0.8) 加入水量u为0.4+0.4=0.8. 最终水位0.2+0.8-0.1= 0.9m

第二次: 误差为0.1,比例部分Kp0.1=0.5,积分部分Kp(e(1)+e(2))= 0.45,微分部分为Kd*(e(2)-e(1))加入水量u为 0.5+0.45-0.21=0.29.最终水位 0.9+0.29-0.1=1.09m


我们发现对比 上面那张Kp= 0.5,Ki=0.5 的图,这张图的震荡减轻了,这正是微分发生了作用,

大家可以看到表3中 当第2次 误差为0.1 时,上一次误差为0.8 时,微分是一个负数,阻止结果快速的变化.

结论: 微分能够减弱超调趋势.

可是,这个波形还是在震荡啊,是的,别忘了,这个值是我随手设置的,我们不能指望我们随便设一个值 就能使 PID 完美的工作起来,如果你自己用excel 模拟一下你就会发现,如果Ki,Kd 设置大些,这个系统会大幅度震荡起来.

因此我们就需要对Kp,Ki,Kd 整定,其实就是试 怎么使输出达到图1 的要求

当然这个例子其实使用PI 就可以了,我们这里是为了理解其作用的原理.、

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。