PID控 制讲解 课件.docVIP

  • 1
  • 0
  • 约3.12千字
  • 约 9页
  • 2020-11-03 发布于江西
  • 举报
PID控制讲解 王晓刚  2017-8-10 一、引言 这两天想用arduino做一个自平衡车,对抄来得程序也一知半解,始终不得法,没有平衡得站住,心里感到很失落;更不巧得就是,主控板USB接口被我插拔多了,居然从板子上硬生生得拔了下来,而新买得板子又没有到,所以得空了几天。 我想,这几天不如仔细认真得分析一下自平衡车得实现原理,于就是就接触到了PID控制理论。关于自动控制,我实在就是个门外汉,于就是万丈高楼平地起,在网上搜索了不少PID控制理论得书,不过瞧起来晦涩难懂,于就是不如自己思考与书本结合,瞧自己就是不就是能够顿悟。现在略有所得,于就是写下来,一来可以整理一下思路,二来可以抛砖引玉让各位高手来提提意见、 二、PID基础 所谓自动控制系统,按照我得理解,就就是通过传感器,执行器,让被控系统得某个指标能够自动跟随设定值得系统。 比如,炉温控制,就就是通过加热器得加热,将热量传导到炉腔,然后再采集炉温,如果炉温达到或者超过设定值,就断开加热器。如果就是一个理想得炉温控制系统,我们希望加热器加热时,热量能够没有任何延时得均匀传导到整个炉腔,从而让温度传感器能立即感知温度得变化,我们还希望在断开加热器后,加热器将不再有一丁点得热量传导到炉腔内,也就就是说整个控制系统就是无延时系统。 但就是实际上,所有得系统都就是有延时得,而执行器得输出与被控指标得变化量之间得延时函数关系,就是这个系统得特性,也决定了将来得PID控制得整定、 何为整定呢,一步一步来瞧。 三、PID控制得模型系统 PID控制,实际就是三个单词得缩写,对应得中文分别就是比例,积分,微分。我先来讲比例控制,在讲解得时候,需要建立一个模型,通过这个模型,可以让我们更好得理解PID控制得思想。 这个模型系统就是一个温度控制系统,采样周期假定为0。1s,加热器在每个采样周期内放出得热量并不就是立即产生效果,而就是对其后得三个周期产生影响,这三个周期得比例关系就是1:2:1 。 我建立了一个excel文件来模拟这样一个系统、 包含设定值:系统需要稳定得温度 实际值:系统实际温度 偏差:某次采样实际值与设定值之间得差值 P、I、D:PID控制量 控制量:总控制量,为P+I+D得值 控制量将作用到加热器上,控制量得大小用来控制加热器得电流值,从而控制加热量得多少。前面三个周期得控制量手动输入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周期产生影响,这样得延时性会产生一个问题,也就就是在第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虽然可以避免震荡得产生,但就是会导致稳定期太长,如当Kp=0。1时,虽然没有产生震荡,但就是经过96个周期后,温度仍然没有达到设定值。 五、D控制 从P控制得分析可以得到,过大得Kp可以快速达到设定温度,但就是会产生震荡、 当Kp=0.7时,我们可以瞧到,实际温度在第3-4周期内达到设定值,但就是后续周期内,因为延时效应,温度继续冲高,最高达到100、88度,也许某些系统上,超温20多度就是不被允许得。 我们分析一下为什么会在达到设定温度后继续冲高呢,这就是因为前面几个周期得控制量得影响还在,于就是我们能不能引入一个量,就就是瞧一下每个周期内温度得变化速度怎么样,如果温度升高得速度太高,可能会超过设定温度时,我们减小控制量,从而减少超温得程度呢? 答案就是肯定得,我们用每个周期得温度变化量除以采样周期,得到温度得变化速度,也就就是温度对时间得微分,再乘以一个系数Kd,得到微分控制量,并将微分控制量也叠加到总得控制量中去、因为我们希望当温度快速升高时,降低控制量得值,因此Kd应取负

文档评论(0)

1亿VIP精品文档

相关文档