PID算法(位置式pid算法和增量式pid算法)

这篇具有很好参考价值的文章主要介绍了PID算法(位置式pid算法和增量式pid算法)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

PID算法介绍

PID 算法是闭环控制系统中常用的算法,PID 分别是 Proportion(比例)、Integral(积分)、
Differential(微分)的首字母缩写。它是一种结合比例、积分和微分三个环节于一体的闭环控
制算法,具体的控制流程如图 8.2.1 所示:
位置式pid公式,算法,机器学习,人工智能

比例环节

u = Kp * e
u ----- 输出
Kp ----- 比例系数
e ----- 偏差
以温度控制系统为例,只采用比例环节的图:
位置式pid公式,算法,机器学习,人工智能
总结:
1.Kp越大,系统响应越快,越快达到目标值。
2.Kp过大会使系统产生较大的超调和振荡,导致系统的稳定性变差。
3.仅有比例环节无法消除静态误差。

比例+积分环节

比例+积分环节的公式如下:
u = Kp * e + Ki * ∑e
u ----- 输出
e ----- 偏差
∑e ----- 累计偏差
Kp ----- 比例系数
Ki ----- 积分系数
以温度控制系统为例,采用比例和积分环节的图:
位置式pid公式,算法,机器学习,人工智能
总结:
1.Ki越大,消除静态误差的时间越短,越快达到目标值。
2.Ki过大会使系统产生较大的超调和振荡,导致系统的稳定性变差。
3.对于惯性较大的系统,积分环节动态响应较差,容易产生超调,振荡。

比例+积分+微分环节

比例+积分+微分环节的公式如下:
位置式pid公式,算法,机器学习,人工智能

总结:
1.Kd或者变化趋势越大,微分环节作用越强,对超调和振荡的抑制越强。
2.Kd过大会引起系统的不稳定,容易引入高频噪声。

注意:在实际的应用中,并不是每一个系统都需要 PID 的三个环节参与控制的,有的系统只需要比例环节或积分环节就可以控制得很好,除此之外,每一个系统的 PID 系数并不是通用的,这需要根据实际的情况去设置。

位置式PID

位置式PID公式:
位置式pid公式,算法,机器学习,人工智能
1.Uk直接对应对象的输出(位置),如果计算出现异常,对系统影响很大。
2.全量计算,要对偏差e进行累加,计算量大。
3.在不带积分部件的对象中可以得到很好的效果,例如电液伺服,温控设备等。

增量式PID

增量式PID公式推导:
位置式pid公式,算法,机器学习,人工智能

总结:
1.增量式PID计算的是相对上一次输出的增量,即Uk=Uk-1 + ▲Uk。
2.增量只与近三次的偏差有关,计算出现异常对系统工作影响较小。
3.计算量少,是实现相对较好。

注意:增量式 PID 公式输出的只是控制量的增量。
我们以一个实例来理解这句话:假设电机实际转速为 50RPM,现在我们要让它加速到 60RPM,
如果采用的是位置式 PID,系统将直接输出 60RPM 对应的控制量(占空比);
如果采用的是增量式 PID,系统将输出提速 10RPM对应的控制量(占空比),此时我们还需要加上上次(50RPM)的输出。

PID参数整定

采样周期选择

采样周期指的是 PID 控制中实际值的采样时间间隔,其越短,效果越趋于连续,但对硬件资源的占用也越高。
选择范围:
理论:香浓采样定理
这个定理可以用来确定采样周期可选择的最大值,当采样周期超出了这个最大的允许范围,我们所得到的信号就会失真,也就无法较好地还原信号了。

经验:实际值突变能力
根据控制对象突变能力选择。假设电机当前转速为 20RPM,我们需要提高
它的转速到 30RPM,此电机的转速在 1s 之内最大可以突变 10RPM(即电机速度的突变能力),如果我们每 1ms 采集一次电机转速,那么每一次采集到的速度变化量最大为 10RPM / 1000 =0.01RPM,很明显,此时最大变化量远远小于当前的速度,这对于我们的 PID 控制效果并没有明显的升,但是却占用了很多的硬件资源,因此,我们需要根据控制对象的突变力来选择采样周期。

PID参数整定方法

理论计算整定法:
依据系统的数学模型,经过理论计算确定 PID 参数。这种方法是建立在理想化条件下的,其得到的参数不一定能够直接使用,还需要结合经验以及实际的系统进行调整。

工程整定法:
依靠工程经验,直接在控制系统的试验中进行整定,此方法易于掌握,在实际调参中被广泛采用。工程整定法包括:试凑法、临界比例法和一般调节法。

注意:无论采用哪一种方法所得到的 PID 参数,都需要在实际运行中进行最后调整与完善,因此,在 PID 参数整定中,最重要的就是经验的积累。

PID 各个系数调节的效果:
① 比例系数:调节作用快,系统一出现偏差,调节器立即将偏差放大输出。
② 积分系数:积分系数的调节会改变输入偏差对于系统输出的影响程度。积分系数越大,消除静差的时间越短,但是过大的积分系数则会导致系统出现超调现象,这在具有惯性的系统中尤为明显。
③ 微分系数:微分系数的调节是偏差变化量对于系统输出的影响程度。微分系数越大,系统对于偏差量的变化越敏感,越能提前响应,进而抑制超调,但是过大的微分系数则会让整个系统出现振荡。

试凑法

1.内容:
在闭环的控制系统里,将调节器置于纯比例作用下,从小到大逐渐调节比例系数,直到系统曲线出现等幅振荡,再根据经验公式计算参数。

2.位置式pid公式,算法,机器学习,人工智能
调节思路:
① 先是比例(P),再积分(I),最后是微分(D);
② 按纯比例系统整定比例系数,使其得到比较理想的调节过程曲线,然后再把比例系数缩小 1.2 倍左右,将积分系数从小到大改变,使其得到较好的调节过程曲线;
③ 在这个积分系数下重新改变比例系数,再看调节过程曲线有无改善;
④ 如有改善,可将原整定的比例系数减少,改变积分系数,这样多次的反复,就可得到合适的比例系数和积分系数;
⑤ 如果存在外界的干扰,系统的稳定性不好,可把比例、积分系数适当减小,使系统足够稳定;
⑥ 如果系统存在小幅度超调,可以将整定好的比例系数和积分系数适当减小,增大微分系数,以得到超调量最小、调节作用时间最短的系统曲线;

临界比例法

1.内容:
在闭环的控制系统里,将调节器置于纯比例作用下,从小到大逐渐调节比例系数,直到系统曲线出现等幅振荡,再根据经验公式计算参数。

2.调节思路:
① 将积分、微分系数置零,比例度取适当值,平衡操作一段时间,使控制系统按纯比例作用的方式投入运行。
② 慢慢地增大比例系数,细心观察曲线的变化情况。如果控制过程的曲线波动是衰减的,则把比例系数继续增大;如果曲线波动是发散的,则应把比例系数减小,直至曲线波动呈等幅振荡,此时记下临界比例系数 δK 和临界振荡周期 Tk 的值。
③ 根据记下的比例系数和周期,采用经验公式,计算调节器的参数。
位置式pid公式,算法,机器学习,人工智能

一般调节法

1.内容:
这种方法针对一般的 PID 控制系统所以称之为一般调节法。

2.调节思路:
① 首先将积分、微分系数置零,使系统为纯比例控制。控制对象的值设定为系统允许的最大值的 60%~70%,接着逐渐增大比例系数,直至系统出现振荡;此时再逐渐减小比例系数,直至系统振荡消失,然后记录此时的比例系数,并设定系统的比例系数为前值的 60%~70%。
② 确定比例系数后,设定一个较小的积分系数,然后逐渐增大积分系数直至系统出现振荡;此时在逐渐减小积分系数,直至系统振荡消失,然后记录此时的积分系数,并设定系统的积分系数为当前值的 55%~65%。
③ 微分系数一般不用设定,为 0 即可。若系统出现小幅度振荡,并且通过 PI 环节无法优化,这可以采用与确定比例、积分系数相同的方法,微分系数取系统不振荡时的 30%左右。④ 系统空载、带载联调,再对 PID 参数进行微调,直至满足要求。文章来源地址https://www.toymoban.com/news/detail-603541.html

到了这里,关于PID算法(位置式pid算法和增量式pid算法)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 我的PID学习历程---PID位置式和增量式

    前一篇文章实现了使用TB6612驱动电机及编码器测速,但是在实际测速的过程中,如果我们 人为给电机一个阻力,电机的速度将会下降,编码器接口获取到的脉冲数也会减少 。 但是如果要使电机 保持一个恒定的速度 ,即使遇到阻力它的速度也不会下降。这个时候就需要引入

    2023年04月09日
    浏览(75)
  • PID控制器(位置式和增量式)

    PID控制:一种调节器控制规律为比例、积分、微分的控制。其中:P:比例(proportion)I:积分(integral)D:微分(derivative) 式子中Kp为比例系数,Ti为积分时间参数,Td为微分时间常数。 各参数的意义: Kp:比例系数。一般增大比例系数,将加快系数的响应。 Ti:积分时间常

    2024年02月16日
    浏览(50)
  • 【PID】基于Matlab实现增量式PID算法

    ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。 🍎个人主页:Matlab科研工作室 🍊个人信条:格物致知。 增量式PID控制较常规PID更具优势,但有关其参数整定的方法很少,针对这种问题,介绍了增量式PID算法的原理及特点,基于MATLAB平台

    2024年02月14日
    浏览(42)
  • 博途PLC增量式PID和脉冲轴组合控制阀门开度(算法介绍)

    这篇博客我们以S7-1200PLC平台来举例,介绍我们的PID闭环控制器如何控制脉冲轴实现阀门角度控制。SMART PLC PID控制器控制伺服驱动器实现关节角度控制详细内容请参考下面文章: https://rxxw-control.blog.csdn.net/article/details/129658364 https://rxxw-control.blog.csdn.net/article/details/129658364 增量

    2024年01月21日
    浏览(86)
  • STM32增量式pid直流电机调速(内附源码)

            目录 一. 1.硬件组成 2.模块分析         1.TB6612电机驱动模块         2.直流减速电机         3.电源稳压模块 二.接线 三.代码思路讲解(详见源码) 四.STM32cubmx配置 1.系统基础配置:(重要) 2.电机旋转方向引脚配置 3.TIM1每10ms触发一次的定时器中断 4.TI

    2024年02月16日
    浏览(39)
  • STM32之增量式编码器电机测速

    编码器,是一种用来测量机械旋转或位移的传感器。它能够测量机械部件在旋转或直线运动时的位移位置或速度等信息,并将其转换成一系列电信号。 . 按监测原理分类 光电编码器 光电编码器,是一种通过光电转换将输出轴上的机械几何位移量转换成脉冲或数字量的传感器

    2024年02月13日
    浏览(39)
  • 霍尔增量式编码器左右车轮线速度的计算

    对于霍尔式编码器的左右轮线速度计算: 首先线速度=距离s / 时间 t 要获得距离S ,也就是轮子在一段时间内跑过的距离。要先知道一下两个参数: 1.轮子的半径 r 2.轮子转动一圈的脉冲数 cnt 轮子转动一圈的脉冲数:如电机我们选用减速比为1:90的TT直流减速电机,编码器为

    2024年02月15日
    浏览(41)
  • 《LIO-SAM阅读笔记》-为何要引入增量式里程计?

    前言: LIO-SAM在后端中同时维护着两个里程计,一个是增量式里程计,一个是优化后的里程计,其中优化后的里程计是经过imu、回环、gps因子图联合优化后的结果,是整个系统中最准确的位姿估计,那么为什么还需要维护增量式里程计呢? 以下是我的理解 ,不一定正确,如有

    2024年01月22日
    浏览(45)
  • 4 OpenCV实现多目三维重建(多张图片增量式生成稀疏点云)【附源码】

    本文是基于 OpenCV4.80 进行的,关于环境的配置可能之后会单独说,先提一嘴 vcpkg 真好用 从多张图片逐步生成稀疏点云,这个过程通常包括以下步骤: 初始重建: 初始两张图片的选择 十分重要 ,这是整个流程的基础,后续的增图都是在这两张图片的基础上进行的 对于输入图

    2024年02月06日
    浏览(45)
  • STM32CubeMX 直流电机串级PID位置速度控制、HAL库、cubemx、PID、串级PID、位置控制、速度控制、双环控制

    提示:本文章的串级PID位置速度控制,是在前两篇文章速度控制,位置控制的基础上实现的,这一章节中不需要额外的cubemx的配置,只需要写简单的代码即可,复杂的地方在于串级pid的调试过程。 pid是我们在学习单片机中首先要学会的控制算法,而串级pid又是在单pid的基础上

    2024年02月14日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包