PID的详细说明

接下来,我将使用示例和算法过程来解释PID的概念

pid:

P比例控制:基本功能是控制对象以线性方式增加,并在恒定比例下动态输出。

缺点:将发生稳态错误

I积分控制:基本功能是消除稳态错误

缺点:将增加过冲的

d差分控制:基本功能是削弱过冲的速度并提高惯性响应速度

1。什么是PID及其功能

上图描述了:设置一个输出目标,反馈系统将输出值发送回。如果它与目标不一致,则存在错误。 PID根据此错误调整输入值,直到输出达到设定值。

为什么我们需要PID?例如,控制温度,我们需要设置一个目标温度值,并且当温度以目标温度值稳定时

例如,我们希望水的目标温度为70,希望只能快速到达70,而没有抖动,并稳定在70

如果我们使用普通的加热方法,并在温度达到70时停止加热,这不是简单而快速吗?当然,它可以在要求不高的情况下使用。但是,如果需求较高,温度达到70后,加热器的剩余温度将继续升高,环境温度将散发热量,因此我们无法在70时稳定水温。

总结一下:我们需要PID的目的无非是无法通过普通控制手段快速,稳定地将其快速,稳定地输出到当前的设置值。

2。公式

解决的公式

KP ———————————————————————————————————————————————————————————————————–

Ki=(Kp*T)/Ti——————————————————————————————————————–

kd=(kp*td)/t ——–差分常数

3。实践例子

小敏的任务为:有一个水桶始终保持在1m的高度。目前,水桶中有0.2m的水。

然后,小ming使用p(比例)方法添加:水,即用1m的误差测量误差,并添加与误差成比例的水量。

令KP=0.4

第一次,误差为e(1)=1-0.2=0.8m,则添加的水量为kp0.8=0.40.8=0.32m。水桶的当前水位:0.2+0.32=0.52

第二次误差为e(2)=1-(0.2+0.32)=0.48m。然后增加的水量为kp*0.48=0.192m。水桶的当前水位为:0.52+0.192=0.712

通过P比率控制,当前价值的快速稳定性得到了完美的解决,但是必须在实际环境中考虑各种影响问题。所以,

小明的新任务:有一个水桶,但是水桶底部有一个孔,它仍然需要保持1m的高度。当前,水桶中有0.20万的水,但是每次添加水时,0.1m的水都会流出。这个示例接近我们实际工程的示例,例如运动摩擦的阻力和损失。

p(比例控制)u=kp e(e是与上次的差异)*

当前的水量为0.2m,当前水量为1m

令KP=0.4。然后u=0.4*e,e=最后水量- 当前水量

第一次,误差为e(1)=1-0.2=0.8m,则添加的水量为kp0.8=0.40.8=0.32m。水库的当前水位:0.2+0.32 -0.1=0.42

第二次误差为e(2)=1-(0.2+0.32)=0.48m。然后增加的水量为kp*0.48=0.192m。水桶的当前水位为:0.52+0.192=0.552

问题在于水位最终稳定在0.75m处。但是,当误差为0.25万时,添加的水量为0.1,每次添加都完全等于缺失的0.1。

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

PID的详细说明

当我们增加KP时,添加值1

随着我们继续增加,它更接近当前价值

当附加值为1.8时,它已经非常接近1m的水,但是摇动也很大。

结论:比例控制引入稳态误差,无法消除。增加比例常数可以减少稳态误差,但是如果它太大,它将导致系统振荡并不稳定。

为了消除稳态误差,第二次添加集成,并使用PI(比例积分控制)。

积分控制是将所有历史错误添加并乘以积分常数。

在同一情况下,现在设置kp=0.4,ki=0.3

第一次,错误是e(1)=1-0.2=0.8m,然后增加的水量为kp0.8=0.40.8=0.32m,ki * e(1)=0.3 * 0.8=0.8=0.24添加的水量=0.256

The second time, the error is e(2)=1-0.66=0.34m, then the added water volume is Kp0.34=0.40.34=0.136m, KI * (e(2)+e(1))=0.3 * 0.342=0.342 The added water volume=0.136m + 0.342=0.478 Current bucket water level: 0.66+ 0.478 – 0.1=1.038

我们发现添加Ki后,有效消除了稳态错误,但发现了过冲的错误

如果我们增加ki怎么办

过冲也会增加,KI值也将减少,并且过冲也会减少。

结论:

只要存在偏差,积分将连续累积直到误差为0。积分项将不再累积并变为常数,这可以抵消稳态误差。

表格中的最后几个项目的输出非常接近0.1,表明没有位置但已发生的过冲部分

因此,为了减少过冲,KD出现了

因此公式是:

令kp=0.4,ki=0.3,kd=0.3,水位0.2,目标水位1

第一次,误差为e(1)=1-0.2=0.8m,然后增加的水量为kp0.8=0.40.8=0.40.8=0.32m,ki * e(1)=0.3 * 0.8=0.8=0.24,kd=0(因为当前的水位差为0.8)添加的水量=0.32m + 0.32m + 0.256=0.56=0.56=0.56=0.56 – 0.2 + 0.56水平。

The second time, the error is e(2)=1-0.66=0.34m, then the added water volume is Kp0.34=0.40.34=0.136m, KI * (e(2)+e(1))=0.3 * 0.342=0.342 , KD (e(2) – (e1))=0.3(0.342 – 0.8)=-0.138 The added water volume=0.136m + 0.342 -0.138=0.34电流水平水位:0.66 + 0.478-0.1=0.9

过冲的显着削弱

结论:差异可以削弱过时趋势。

为了更清楚地比较三个系数之间的关系,我们进行了计算比较,并参见下图

假设初始水位为0.2,电流水平为1,流出水位为0.1,kp=0.4,ki=0.3,kd=0.3

首先,数据比较

仔细检查三个数字的最终水量变化。

对于KP,第一幅图中的水位无法达到目标水位。

对于KP和KI,第二幅图中的水位达到目标水位,但是发生了过度调节。

在PID的情况下,在第三张图片具有过冲的情况下,KD将立即减少,有效地抑制了过冲。

注意:PID的三个参数是随意设置的,因此调整后,您需要根据经验不断测试和调试。

使用图比较以下

此参数只是参考。需要连续尝试特定的PID参数设置,直到达到标准

如果在电动机控制场中使用,也控制电动机的电流输出,通常通过PWM控制输出电流,并且电动机的电流速度通过反馈采样电阻知道。也就是说,我们设置了当前速度,采样当前速度,调整PID的三个参数,然后继续尝试达到预定状态。但是,在控制电动机时,将涉及电动机的开环和闭环。开路仅仅是电动机加速度的过程,它等效于从0到预定速度和稳定的电动机的过程,而闭环是随后的稳定操作过程。如果在图中显示

用户评论


万象皆为过客

终于找到一篇对PID的讲解这么详细的文章了!以前看别的资料总是云里雾里,现在我终于明白PID的工作原理是怎么样的!

    有8位网友表示赞同!


滴在键盘上的泪

看完这篇 PID 解释后,感觉自己像开了个新世界的大门一样!之前完全没接触过这方面的内容,这篇写的很生动易懂,赞一个!

    有17位网友表示赞同!


未来未必来

对PID原理理解确实需要认真学习,文章解释得很到位,特别是那张PID框图真是太清晰了,把整个控制过程都展现出来了!

    有16位网友表示赞同!


她最好i

我也想学做一点自动化控制相关的项目,这次看来这个PID是必须的功底,我会好好阅读一下这篇文章来加深理解!

    有10位网友表示赞同!


莫飞霜

说PID复杂一点吧,确实有点难度,不过有了这篇详细的解释,我觉得还是可以慢慢攻克的,毕竟这是一个重要的基础知识。

    有19位网友表示赞同!


君临臣

文章写的真的太好了!以前总是感觉PID很抽象,但是现在看了你的解释,终于明白了它背后的逻辑和控制效果。我现在更有信心去研究下具体的应用场景了!

    有15位网友表示赞同!


在哪跌倒こ就在哪躺下

这篇 文章介绍挺全面的,从 PID 的概念到参数调节,都阐述得比较透彻! 对于初学者来说非常实用,建议收藏起来再次学习!

    有14位网友表示赞同!


放肆丶小侽人

说实话,PID这个概念有点让人望而却步,感觉过于理论化了。希望以后能看到更多基于实际应用的案例分析!

    有10位网友表示赞同!


米兰

文章对 PID 的讲解很棒,但是我个人更喜欢图解或代码实现方面的说明,这样更容易理解和记忆,希望能有更多具体的例子!

    有18位网友表示赞同!


太难

学习完PID就感觉自己跨进了高级层次的控制领域,真是太兴奋了!这篇解释文章给了我很多启发和方向,我会继续深入学习!

    有8位网友表示赞同!


■孤独像过不去的桥≈

这篇 文章介绍 PID 控制器时,感觉忽略了一些实际操作中的关键步骤,比如调试方法、常见问题和解决方案,这部分内容如果能够补充完善,将会更加实用!

    有15位网友表示赞同!


〆mè村姑

我觉得PID是一种非常重要的控制技术,这本书对它的讲解比较全面。但是对于一些更深入的知识点,例如微分项的影响、不同应用场景下的 PID 参数设置等,作者似乎没有进行过多的阐述,希望有后续文章可以补充这些内容!

    有5位网友表示赞同!


Hello爱情风

总觉得这篇 文章对PID原理的解释过于抽象,缺乏生动的案例和实践经验的分享。希望作者能结合实际工程案例来讲解,更加贴近我们日常学习和应用的需求!

    有18位网友表示赞同!


有你,很幸福

对于新手入门来说,这篇文章已经算是很好的入门指南了。不过对于那些已经在接触 PID 领域的朋友来说,文章内容可能显得略显浅薄了些!

    有10位网友表示赞同!


呆檬

对PID原理的理解确实需要多方面的学习积累,这篇的文章只是提供了基础性的了解,还需要通过实践和案例分析来加深理解!

    有9位网友表示赞同!

上一篇
下一篇

为您推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

联系我们

0898-88881688

在线咨询: QQ交谈

邮箱: email@zhutibaba.com

工作时间:周一至周五,9:00-17:30,节假日休息
关注微信
微信扫一扫关注我们

微信扫一扫关注我们

手机访问
手机扫一扫打开网站

手机扫一扫打开网站

返回顶部