0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

PID控制算法详解(二)

CHANBAEK 来源:GM搬砖基地 作者:GM搬砖基地 2023-03-16 14:57 次阅读

一、积分理解

在上一章的内容中说到了PID的由来以及kp的作用和缺陷,由此引出了ki的出现。为了消除控制对象在PID控制中出现的静态误差,我们通常采用再加误差的积分。

积分的作用:其输出量与输入量对时间的积分成正比。如果输入突变,输出值要等一定时间之后才等于,故由滞后作用。输出积累一段时间之后,即使使输入为零,输出也将保持原值不变,即具有记忆功能。只有当输入反相时,输出才反相积分而下降。

那么为什么要引入积分项就能消除系统所带来的稳态误差呢?初步理解就是积分项是对从开始起,不断累加各个采样时刻的误差,由此,将系统所产生的稳态误差转移到积分上,就消除了系统输出的静差。下面就通过理论与仿真来具体分析:

poYBAGQSvZyAMzm0AADaGz1hXUQ103.png

为保证仿真的有效性,仿真的控制对象与只采用比例P控制对象均为一阶惯性函数。系统输出如下图所示:

poYBAGQSvbKAfBiVAADF2VatyGU528.png

可以从仿真看出,输出逐步趋于期望值最后并稳定于1。其闭环传递函数为:

1/(s+1);

当s趋于0,即时间趋于无穷大时,其输出为1。但是在这里会发现一个巧妙的现象,PI控制的传递函数的分子刚好是控制对象的分母,将积分项的参数设置为Ki,那么其表达式为:

(S+Ki)/(S^2+2S+Ki);

那就是说,Ki我设置什么值都行,但是在仿真的时候,我将Ki的值设置为100的时候,系统的输出出现了抖动,如下图所示:

poYBAGQSvcGAG--SAADqWMtNuxk537.png

按照其闭环传递函数ki的值与最终的输出好像关系不大,但是为什么输出出现抖动呢?查阅资料之后发现,积分前一个采样周期计算出的误差作用于下一个采样周期,所以就会出现抖动,而且这个抖动会一直存在,不会消失,只是时间变长之后,这个存在的误差就忽略不计了。所以ki的参数不能设置太大,那么应该如何设置呢?

看了相关的书籍之后,(从时域分析)要让系统响应无震荡和超调,那就要让系统处于一个临界阻尼状态。欠阻尼状态理解为系统的最佳状态,即ε要在[0,1]之间取值,二阶系统在欠阻尼时的响应为衰减震荡的,所以必然存在超调。从书本上了解到对于一个二阶系统在单位阶跃输入信号作用下的传递函数为:

poYBAGQSvdGAP75XAAAOW-dtf8Y270.png

对于仿真系统而言,其ki的取值应该为ε>1。但是会发现其值为100,已经大于1了,但是系统存在很大震荡。这个时候自己的理解就是经验试凑,逐步逼近最优值。最后试凑出来的参数为kp=1,ki=1.3,输出波形如下图所示,但是会发现系统的系统的响应变慢了。

二、总结:

1.积分项的加入能够消除控制对象所产生的的静态误差,将静差转移到积分项上;

2.积分项从整体来看是有记忆功能的,不断累积系统所产生的的误差,但是细看,积分项的作用只是基于前一个采样周期所产生的误差作用于下一个周期或者下下个周期,因为积分项有延迟作用;

3.由于积分项的延迟作用,在一定程度上影响了系统的响应,所以PID控制中的微分项I就出现了。

三、猜想:

既然积分项有延迟作用,那如果我直接在积分项后面加入输出的反馈,用于消除积分的延迟问题,岂不是能够解决积分的延迟问题。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • PID
    PID
    +关注

    关注

    35

    文章

    1446

    浏览量

    83815
  • 传递函数
    +关注

    关注

    0

    文章

    96

    浏览量

    13794
  • 积分
    +关注

    关注

    3

    文章

    21

    浏览量

    15597
  • 控制算法
    +关注

    关注

    4

    文章

    156

    浏览量

    21495
  • 稳态误差
    +关注

    关注

    0

    文章

    3

    浏览量

    2068
收藏 人收藏

    评论

    相关推荐

    PID控制详解

    一个PID控制详解资料,完整的在下面链接下载PID控制简介PID( Proportional
    发表于 01-20 15:17

    算法篇(PID详解)

    算法篇(PID详解)
    发表于 05-19 10:30

    PID控制详解,硬件实现PID和软件实现PID控制的讲解

    本帖最后由 张飞电子学院郭嘉 于 2021-3-11 17:37 编辑 PID控制详解PID控制简介
    发表于 01-25 17:19

    什么是PID控制算法PID控制算法C语言是如何实现的?

    什么是PID控制算法PID控制算法C语言是如何实现的?特殊情况下的
    发表于 06-29 09:24

    PID控制算法的基本思想是什么?PID控制算法是如何形成的?

    常用的控制算法有哪几种?各自有什么特点?PID控制算法的基本思想是什么?PID
    发表于 06-30 06:04

    什么是PID控制算法呢?PID控制算法有何作用

    什么是PID控制算法呢?PID控制算法有何作用?PID
    发表于 02-25 07:36

    pid算法_什么是pid算法

    PID控制器是一种最优控制。本文讲述了增量式PID算法原理与数字PID
    发表于 01-01 11:58 1.1w次阅读
    <b class='flag-5'>pid</b><b class='flag-5'>算法</b>_什么是<b class='flag-5'>pid</b><b class='flag-5'>算法</b>

    PID控制算法详解

    发表于 04-01 15:23 0次下载

    PID控制算法控制算法

    PID控制算法控制算法
    发表于 11-17 11:43 10次下载

    PID算法详解

    PID算法详解
    发表于 12-17 20:48 12次下载

    四轴PID控制算法详解(单环PID、串级PID)

    四轴飞行器的PID控制算法介绍
    发表于 08-29 14:57 50次下载

    PID控制算法详解PID代码免费下载

    PID控制器参数选择的方法很多,例如试凑法、临界比例度法、扩充临界比例度法等。但是,对于PID控制而言,参数的选择始终是一件非常烦杂的工作,需要经过不断的调整才能得到较为满意的
    发表于 10-22 08:00 5次下载
    <b class='flag-5'>PID</b><b class='flag-5'>控制</b><b class='flag-5'>算法</b>的<b class='flag-5'>详解</b>和<b class='flag-5'>PID</b>代码免费下载

    PID控制算法详解

    PID 控制器以各种形式使用超过了 1 世纪,广泛应用在机械设备、气动设备 和电子设备.在工业应用中PID及其衍生算法是应用最广泛的算法之一
    的头像 发表于 08-22 09:12 9157次阅读

    PID控制算法详解(一)

      过去都是采用位式(两位式‘开关量’)控制方法,即位式控制算法只有两种输出信号(H/L),即开或关、0或1。且位式控制只考察控制对象当前的
    的头像 发表于 03-16 14:55 1224次阅读
    <b class='flag-5'>PID</b><b class='flag-5'>控制</b><b class='flag-5'>算法</b><b class='flag-5'>详解</b>(一)

    PID控制算法详解(三)

     系统的输出量与输入量对时间的微分成正比,即输出量反映输入量的变化率,而不反映输入量本身的大小。因此,可由微分环节的输出来反映输入信号的变化趋势,加快系统控制作用实现。所以常用微分环节来改善系统的动态响应。
    的头像 发表于 03-16 15:01 1327次阅读
    <b class='flag-5'>PID</b><b class='flag-5'>控制</b><b class='flag-5'>算法</b><b class='flag-5'>详解</b>(三)