ImageVerifierCode 换一换
格式:DOCX , 页数:7 ,大小:202.78KB ,
资源ID:8404042      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8404042.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(PID控制讲解.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

PID控制讲解.docx

1、PID控制讲解PID控制讲解王晓刚 2017-8-10一、引言这两天想用arduino做一个自平衡车,对抄来的程序也一知半解,始终不得法,没有平衡的站住,心里感到很失落;更不巧的是,主控板USB接口被我插拔多了,居然从板子上硬生生的拔了下来,而新买的板子又没有到,所以得空了几天。我想,这几天不如仔细认真的分析一下自平衡车的实现原理,于是就接触到了PID控制理论。关于自动控制,我实在是个门外汉,于是万丈高楼平地起,在网上搜索了不少PID控制理论的书,不过看起来晦涩难懂,于是不如自己思考和书本结合,看自己是不是能够顿悟。现在略有所得,于是写下来,一来可以整理一下思路,二来可以抛砖引玉让各位高手来提

2、提意见。二、PID基础所谓自动控制系统,按照我的理解,就是通过传感器,执行器,让被控系统的某个指标能够自动跟随设定值的系统。比如,炉温控制,就是通过加热器的加热,将热量传导到炉腔,然后再采集炉温,如果炉温达到或者超过设定值,就断开加热器。如果是一个理想的炉温控制系统,我们希望加热器加热时,热量能够没有任何延时的均匀传导到整个炉腔,从而让温度传感器能立即感知温度的变化,我们还希望在断开加热器后,加热器将不再有一丁点的热量传导到炉腔内,也就是说整个控制系统是无延时系统。但是实际上,所有的系统都是有延时的,而执行器的输出和被控指标的变化量之间的延时函数关系,是这个系统的特性,也决定了将来的PID控制

3、的整定。何为整定呢,一步一步来看。三、PID控制的模型系统PID控制,实际是三个单词的缩写,对应的中文分别是比例,积分,微分。我先来讲比例控制,在讲解的时候,需要建立一个模型,通过这个模型,可以让我们更好的理解PID控制的思想。这个模型系统是一个温度控制系统,采样周期假定为0.1s,加热器在每个采样周期内放出的热量并不是立即产生效果,而是对其后的三个周期产生影响,这三个周期的比例关系是1:2:1 。我建立了一个excel文件来模拟这样一个系统。包含设定值:系统需要稳定的温度实际值:系统实际温度偏差:某次采样实际值和设定值之间的差值P、I、D:PID控制量控制量:总控制量,为P+I+D的值控制量

4、将作用到加热器上,控制量的大小用来控制加热器的电流值,从而控制加热量的多少。前面三个周期的控制量手动输入0,表示还没有开启自动控制。四、P控制P控制,叫做比例控制,也就是根据偏差值,取一个比例系数,算出控制量。如图:在第1周期,因为设定值为80,而实际值只有30,偏差50,我取得比例系数为1,所以控制量也为50。这50的控制量,将在后续的第2,3,4周期产生影响,分别导致第2,3,4周期温度上升12.5,25,12.5 。在第2周期,设定值为80,实际值是42.5,偏差37.5,于是控制量为37.5。这37.5的控制量,也将在后续的第3,4,5周期产生影响,这样的延时性会产生一个问题,也就是在

5、第3周期时,第1,2周期的控制量的作用,已经使温度升高到76.875度,还没有达到设定温度,还需要加热,但是第1,2周期的控制量的影响还没有消失,于是,在第4周期时,温度已经超过80度,达到108.91度,直到第5周期时达到温度的峰值112.62度。下图是当P系数取1时的温度控制曲线可见当P的系数取1时,实际温度呈现震荡形态,逐渐收敛于设定温度。当P取不同的数值时,有不同的温度控制曲线:Kp=1.4,失稳Kp=0.7,第53周期稳定Kp=0.25,第24周期稳定Kp=0.1,观察期内未稳定可见,Kp取较大的值,可以让实际温度快速到达设定温度,但是会产生震荡,过大的Kp甚至导致失稳;过小的Kp虽

6、然可以避免震荡的产生,但是会导致稳定期太长,如当Kp=0.1时,虽然没有产生震荡,但是经过96个周期后,温度仍然没有达到设定值。五、D控制从P控制的分析可以得到,过大的Kp可以快速达到设定温度,但是会产生震荡。当Kp=0.7时,我们可以看到,实际温度在第3-4周期内达到设定值,但是后续周期内,因为延时效应,温度继续冲高,最高达到100.88度,也许某些系统上,超温20多度是不被允许的。我们分析一下为什么会在达到设定温度后继续冲高呢,这是因为前面几个周期的控制量的影响还在,于是我们能不能引入一个量,就是看一下每个周期内温度的变化速度怎么样,如果温度升高的速度太高,可能会超过设定温度时,我们减小控

7、制量,从而减少超温的程度呢?答案是肯定的,我们用每个周期的温度变化量除以采样周期,得到温度的变化速度,也就是温度对时间的微分,再乘以一个系数Kd,得到微分控制量,并将微分控制量也叠加到总的控制量中去。因为我们希望当温度快速升高时,降低控制量的值,因此Kd应取负值。下图是当Kp取0.7时,不同的Kd对温度控制的影响:Kd=-0.01,最高97.87度,第80周期稳定Kd=-0.05,最高86.64度,第49周期稳定Kd=-0.1,最高83.95度,观察期内未稳定Kd=-0.15,失稳状态可见,当Kd取较小的值,对超温的抑制效果不明显,而当Kd取较大的值,又会导致系统失稳。六、I控制从P控制的分析

8、可以得到,过小的Kp虽然不易产生震荡,但是稳定期太长。如Kp=0.1时,经过了96个周期,仍然没有达到稳定状态。也许某些系统上,过长的稳定时间是不被允许的。我们分析一下为什么会稳定时间如此之慢呢,这是因为过小的Kp值,使得每次的控制量非常小,对系统的影响也非常有限,那么我们能不能引入一个量,就是看一下几个周期内温度的偏差情况,如果偏差依然很大,就加大控制量,从而减少稳定时间呢?答案也是肯定的,我们将前面5周期的温度偏差相加,得到温度偏差的累计值,也就是温度偏差的积分,再乘以一个系数Ki,得到积分控制量,并将积分控制量叠加到总的控制量中去。下图是当Kp取0.1时,不同的Ki对温度控制的影响:Ki

9、=0.01,没有超温,第59周期稳定Ki=0.018,最高80.09度,第34周期稳定Ki=0.05,震荡,最高91.14度,第60周期稳定Ki=0.18,失稳可见,当Ki取较小的值,对缩短稳定时间的作用不明显,而当Kd取较大的值,又会导致系统失稳。七、PID控制到了做一个小小的总结的时候了,在PID控制系统中,P的作用是让实际温度达到设定温度,并且P控制量是主角,它对系统达到设定值起了主要作用。为了减少震荡的产生,我们引入了微分控制,选择适当的微分控制系数,可以降低超温幅度。为了缩短稳定时间,我们引入了积分控制,选择适当的积分控制系数,可以明显缩短稳定时间。该如何设定这3个值,才能又稳定,又

10、准确,又快速的调节实际温度呢,这就是PID参数的整定。如在P控制中,我们已经知道当Kp=0.25时,就算没有Ki和Kd,也只需要24个周期就能稳定,并且最高温度也只有80.04度。那么能不能适当的调节Kp、Ki和Kd的值,使得超温更小,稳定时间更短呢?通过尝试,可以得到当Kp=0.25,Ki=0.02,Kd=-0.031时,只需要21个周期就达到稳定,并且始终没有超温。这就是PID整定对系统的影响。八、结语PID控制被广泛的用在自动控制领域,有些场合只需要P控制就可以满足要求,另外一些场合需要用PI或者PD,或者PID。PID的难点不在理解原理,而是如何设定这三个系数的值,从而使系统又快,又稳,又准的达到设定工作参数。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1