改进的PID算法

news/2024/11/25 7:30:09/

位置式PID算法

在这里插入图片描述
  位置式 P I D PID PID算法是一种比较直观的的 P I D PID PID算法,如系统框图中所示, i n in in表示设定值, e r r o r error error表示差值, u u u表示控制器输出值, o u t out out表示被控量。算法表达式如下:
在这里插入图片描述

增量式PID算法

  增量式 P I D PID PID算法不比位置式更直观,当执行机构需要控制量的增量时,适合采用增量式 P I D PID PID算法,比如步进电机控制。算法表达式如下:
在这里插入图片描述
在这里插入图片描述
  也可用后向差分法进行离散化, P I D PID PID的连续传递函数为
在这里插入图片描述

在这里插入图片描述
s s s表达式代入到 G G Gc ( s ) (s) (s)中,得
在这里插入图片描述
在这里插入图片描述

积分分离PID算法

   P I D PID PID算法中,积分可消除稳态误差,提高控制精度,在系统启动或设定值大幅改变时,被控量与设定值之间会产生较大的偏差,造成过大的积分积累,甚至使控制量超过执行机构允许最大动作范围对应的极限控制量,引起系统过大的超调量,从而振荡,为避免这些不利的情况出现,可在被控量与设定值之间有较大偏差时,取消积分作用,避免超调量增大;当被控量接近设定值时,引入积分控制,消除稳态误差,提高控制进度。
  设被控量与设定值之间的偏差阈值为 X > 0 X>0 X>0,该值人为设定,即
在这里插入图片描述
算法表达式如下:
在这里插入图片描述

梯形积分PID算法

  在 P I D PID PID算法中,积分项的作用就是为了消除稳态误差,故而提高积分项的运算精度能更好的提高控制精度。在单片机中,对于积分运算通常使用累加的形式,也就是矩形积分,即
在这里插入图片描述
上述式子在程序中经常这样使用,但在 P I D PID PID算法中,并不是这样,这不得不从原始的 P I D PID PID算法说起,其表达式如下所示。
在这里插入图片描述
将其离散化,我们将时间 t t t当做一个时刻,即第一时刻,第二时刻,第三时刻,用 k k k表示,相邻两个时刻之间的时长为 T T T,比如说 T = 1 s T=1s T=1s,那么第一时刻即 k = 1 k=1 k=1时表示第一秒,第二时刻即 k = 2 k=2 k=2时表示第二秒,于是
在这里插入图片描述

也就是说,从严格意义来讲,积分项应该为
在这里插入图片描述
为方便编程计算把系数项全部整合在一块,称之为积分系数,所以就把 T T T省略了。积分从图像上来看,就是求面积。因此在单片机中计算积分的思路就是把图形划分为宽度为 T T T高度为 e r r o r ( n ) error(n) error(n) n n n个等份,然后将所有矩形面积相加便可近似为求积分的过程。 T T T越小矩形面积和越接近于积分运算,但在实际工程中, T T T不可能太小,因为 T T T实际上就是采样时间,也是 P I D PID PID的计算周期, T T T过小会加大单片机的负担。这样的计算方式很直观,但计算的精度较低,误差大。假设偏差 e r r o r error error在某段时间服从函数 e r r o r = − a ∗ t + b error=-a*t+b error=at+b,如下所示
在这里插入图片描述
那么积分运算就是指
在这里插入图片描述
很明显,这使得每个矩形上面填充红色的三角形都参与了计算,使得积分运算精度大大降低,为避免出现过大的误差或者进一步提高运算精度,引入梯形积分的概念,只计算 e r r o r error error曲线以下的部分,即梯形的面积
在这里插入图片描述
故梯形积分的 P I D PID PID的表达式为
在这里插入图片描述
  当偏差 e r r o r error error不服从线性关系,或者是其他一些曲线,则不会向示例中那般毫无误差,仍会有些许误差无法计算到,但同矩形积分相比,运算精度已经得到了很大的改善。

带死区的PID算法

  带死区的 P I D PID PID算法主要用于存在闭环死区的系统,当系统达到稳态时,系统的输出值仍在设定值上下有微小的震荡,其算式为
在这里插入图片描述
   e ( k ) e(k) e(k)表示偏差, e e e0表示人为设定的一个阈值,当 e ( k ) = 0 e(k)=0 e(k)=0时,控制器的输出也会逐渐降为 0 0 0,这是由于积分的原因,而对于 P D PD PD P P P控制,当 e ( k ) = 0 e(k)=0 e(k)=0时控制器的输出会迅速衰减到 0 0 0。例如直流电机的位置控制,当电机转动到预定位置时,如果存在一些干扰,电机会在预定位置上下震荡,此时引入一个死区,位置环控制器输出就会为0,系统也就稳定下来了。

变速积分PID算法

  变速积分 P I D PID PID算法与积分分离 P I D PID PID算法本质上相同,都是为了减小系统超调,提高系统响应速度,但是积分分离 P I D PID PID算法较为粗暴,变速积分 P I D PID PID算法则是根据偏差 e r r o r error error的大小来改变积分的速度,偏差越大,积分越慢,反之越快。即积分项的表达式为
在这里插入图片描述

β β β是关于偏差 e r r o r error error的函数,即
在这里插入图片描述
其中 A , B A,B A,B表示人为设定的阈值,则变速积分PID算法的表达式为
在这里插入图片描述

带滤波器的PID算法

  当系统中存在高频干扰时,会使得系统变得不稳定,另外,在 P I D PID PID算法中,微分项会将高频干扰放大,所以需要将高频干扰过滤掉,从而使系统稳定,故引入低通滤波器。假设该滤波器传递函数为
在这里插入图片描述
该滤波器的转折频率为20 H z Hz Hz,对如下系统
在这里插入图片描述
当干扰信号频率低于20 H z Hz Hz,设为10 H z Hz Hz,输出曲线如下
在这里插入图片描述
左图为带滤波器的输出响应,右图不带滤波器,可以看出此时两个系统输出很不稳定,波动都很大,再看看干扰信号频率大于20 H z Hz Hz时的情况,设为100 H z Hz Hz,输出曲线如下
在这里插入图片描述
很明显,此时带有滤波器的系统输出相比于之前10 H z Hz Hz干扰信号时的输出波动幅度要小很多,此时不带滤波器的系统输出已经受到剧烈干扰,带有滤波器的系统输出波动幅度更小。在加大干扰信号的频率,设为10 k H z kHz kHz,输出曲线如下
在这里插入图片描述
此时带有滤波器的系统输出几乎已经没有了波动。
  在编程中使用带滤波器的 P I D PID PID算法时,需要对滤波器的传递函数进行 Z Z Z变换并离散化,其公式为
在这里插入图片描述
—— a a a表示滤波系数,取值 ( 0 , 1 ) (0,1) 0,1之间
—— Y ( n ) Y(n) Y(n)表示滤波后的输出值
—— X ( n ) X(n) X(n)表示滤波前的输入值
—— Y ( n − 1 ) Y(n-1) Y(n1)表示上一次滤波的输出值
一阶低通滤波器的系统框图如下
在这里插入图片描述
由此可得
在这里插入图片描述
接着开始 Z Z Z变换并离散化,令
在这里插入图片描述
故而
在这里插入图片描述

基于前馈补偿的PID算法

  对于设定值变化的系统中,为提高系统的跟踪性能,需要加入前馈补偿。既然是提高系统的跟踪性能,那自然就是系统的输出越接近于甚至等于系统的输入,也就是闭环系统的传递函数为 1 1 1。如下图所示
在这里插入图片描述
在这里插入图片描述
  假设有一个被控对象为
在这里插入图片描述

不加前馈补偿,如下
在这里插入图片描述
系统输入为 w = 2 , A = 3 w=2,A=3 w=2,A=3的正弦信号,我们将 p i d pid pid调节到一个没有超调量的合适参数,输出图像如下
在这里插入图片描述

  黄线表示系统输入的信号曲线,蓝线表示系统输出曲线,可以看出,输出曲线不仅幅值较系统输入小,且滞后于系统输入,我们在将 p i d pid pid适当调节,增大超调减小调节时间,系统相应如下
在这里插入图片描述
此时的输出幅值已经很接近系统的输入了,但仍存在误差和滞后,再来看看在现在的 p i d pid pid参数下加入前馈补偿的效果,系统框图如下
在这里插入图片描述
输出曲线如下
在这里插入图片描述
在响应 0.1 s 0.1s 0.1s内已基本重合,在放大看看
在这里插入图片描述
可以看出误差已经非常小,可以忽略不计了,所以加入前馈补偿可以很好地改善系统的跟踪性能。在编程中,使用前馈补偿的 P I D PID PID算法,在计算uf时,可对 1 / G ( s ) 1/G(s) 1/G(s)进行 Z Z Z变换并离散化。


http://www.ppmy.cn/news/443364.html

相关文章

糖尿病预测模型-Pima印第安人数据集-论文_企业科研

糖尿病概述 糖尿病有一型和二型,是由于胰腺分泌胰岛素紊乱或人体无法有效利用其产生的胰岛素而发生的一种慢性疾病,是21世纪人类面临的健康问题之一.糖尿病伴有弥漫性并发症,其包括心血管病变、肾脏疾病、…

《面向基于人工智能的学习健康系统,使用心电图进行人群水平的死亡率预测》阅读笔记

目录 一、摘要 二、十个问题 Q1论文试图解决什么问题? Q2这是否是一个新的问题?

情报领域因果推理智能项目概览:以DAPAR为例

美国国防高级研究计划局(Defense Advanced Research Projects Agency),简称DARPA,提出了旨在从推进人工智能常识推理能力发展、深化机器学习理论研究和推进国防部复杂问题中应用人工智能、深化美军对人工智能的研究和应用的“的下…

基于PSO优化BP神经网络PID控制器matlab仿真

目录 1.算法仿真效果 2.MATLAB核心程序 3.算法涉及理论知识概要 4.完整MATLAB 1.算法仿真效果 matlab2022a仿真结果如下: 2.MATLAB核心程序 ....................................................... .....................................................…

大数据下数模联动的随机退化设备剩余寿命预测技术(部分)

源自:自动化学报 作者:李天梅 司小胜 刘翔 裴洪 摘要 面向大数据背景下随机退化设备剩余寿命(Remaining useful life, RUL)预测的现实需求, 结合随机退化设备监测大数据特点及剩余寿命预测不确定性量化这一核心问题, 深入分析了机理模型与数据混合驱…

智能优化算法总结-数字孪生下的车间调度-APS预告

获取更多资讯,赶快关注上面的公众号吧! 文章目录 总结智能优化算法部分粉丝问题答疑车间调度数据集强化学习求解调度问题时agent很难学习到东西,问题在哪?数字孪生和车间调度 高级计划与排程APS预告 总结智能优化算法 之前仅做了一…

2.11 PID控制算法(三)----PID结果与实际值的关联

文章目录 1、讲解2、举例13、举例24、举例35、调试PID参数 1、讲解 1、AD采样,经过PID计算的值,怎么和PWM对应起来? 2、电机编码采样,经过PID计算的值,怎么与速度对应起来? 这个简单,PID控制原…

智能车复工日记【2】——普通PID、变结构PID、微分先行PID、模糊PID、专家PID

博主联系方式: QQ:1540984562 QQ交流群:892023501 群里会有往届的smarters和电赛选手,群里也会不时分享一些有用的资料,有问题可以在群里多问问。 目录 系列文章前言普通PID舵机参数:电机参数:变结构PI控制(电机控制,这里对公式进行修改采用正态分布公式)微分先行PID(…