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

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

3天内不再提示

“万能”的PID

痞子衡嵌入式 来源:痞子衡嵌入式 作者:痞子衡嵌入式 2022-09-09 10:13 次阅读

最近跟一个同事聊了聊天,他说一直用的位置式PID,从来没在具体项目中用过增量式PID,感觉两者没啥区别呀?

于是跟他讨论了一番,不由得让人深思~

1

“万能”的PID

PID是一种非常经典的控制类算法,凭着它的简单易用在工程上得到了广泛的应用,并且影响力也是极高,那为什么说其简单易用呢?

可以说只要你对PID的主要的参数对系统的影响理解得足够好,完全可以通过手动试凑的方式来获得一套合适的PID参考,所以对一些非控制类的工程师应用起来也是非常友好的。

当然还有一个非常重要的原因,PID算法对大部分系统稳定性、鲁棒性以及可靠性都非常的高,有调试PID控制算法经验的朋友应该都有类似的感觉,即便根据经验随便给系统一套参数都可以到达一个不错的控制效果。

所以在很多人眼里这算法就是"万能的",适应的场景也非常的广泛,然而自古有一种规律"熊掌和鱼不可以兼得",PID算法虽然适应性非常广泛,对于处理一些特定的应用场景,或许其并不会最优的解决办法。

基于大家在实际应用中各种各样的需求,曾经一个发展涌现了非常的PID的变种,也就是对PID算法在特定的应用场景进行优化、或者与其他一些控制方法进行结合,以便达到相应控制场景下的不错控制效果,比如微分先行PID、PID与智能控制的算法的结合等等。

当然如果PID算法实在无法满足需求了,那也不能勉强,就只能考虑寻找另外更为匹配的控制策略,比如现在非常流行的自抗扰控制技术等等。

2

PID的理解

PID算法主要就是三项,比例(P)-积分(I)-微分(D),在连续的时间域内的表达式如下:

f97f0c50-2fe3-11ed-ba43-dac502259ad0.png

从上面的公式可以看出PID算法是一个非常纯粹的数学表达式,既然是数学表达式那必然可以通过数学的方式进行分析,拉式变换一下,获得传递函数,然后采用控制理论分析方法,结合被控对象分析其对动态系统的稳定性、准确性以及快速性进行分析,从而达到性能上的最优解,这个控制系统的设计过程不是本文重点,暂时就不进行展开了。

还记得最开始了解这个算法的时候,有一句话非常相信的彰显其魅力所在:P-I-D分别代表着当前、过去和未来。P对当前误差的抑制作用;I对历史误差的累积控制,以便消除静态误差;D根据误差的变化率进行补偿,从表达式也非常容易从根本上理解这几句话。

3

数字PID

在前面跟大家简单描述了连续域内的PID算法表达式,而连续域中该算法需要通过相应的模拟电路来进行实现,特别是一些没有数字芯片嵌入式系统是经常可见的。

但随着数字系统的应用,特别是单片机系统,数字PID更加得到广泛的应用,被大部分人所熟知的两种数字PID,分别是位置式PID和增量式PID。

大部分的教材都会描述着两种形式的数字PID,然而这些教材一上来就介绍位置式PID与历史状态相关,过去会对现在的控制输出产生影响,而增量式PID仅仅只与最近的几次误差数据相关。

如下是位置式PID表达式:

f99c5c6a-2fe3-11ed-ba43-dac502259ad0.png

而增量式PID的形式则可以通过位置式进行如下表达式处理得到:

f9b1951c-2fe3-11ed-ba43-dac502259ad0.png

如下便可以得到增量式的表达式:

f9c22f44-2fe3-11ed-ba43-dac502259ad0.png

这样看来增量式PID只与最近的两次误差有关系,不会存在累积误差的问题,说来增量式PID必然是更好的,那为何还要介绍位置式PID呢?

也有伙计在自己的程序中使用增量式PID的表达式,毕竟增量式PID其输出仅仅只是控制量的增量,最后还是需要把输出量进行累积,这与位置式根本没啥区别。

于是很多初学者,甚至一些用PID多年的工程师对此都抱有一丝疑问。

其实这两种数字PID的应用场景是有区别的,增量式PID控制输出的仅仅只是控制量的增量,其主要是应用在执行机构带有积分部件的被控对象,而位置式PID其输出的是实际的控制量,则用于不带积分环节的执行机构。

当然如果在一些不带积分环节的执行结构系统中你执意要使用增量PID的形式也无伤大雅,只是最后用数字积分进行处理后输出,其与位置式PID式没有差异,增量式PID的优势并没有展现,因为真正单独使用增量式PID的执行机构的积分环节是连续的,这是数字离散的方式无法比拟的。

审核编辑 :李倩

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

    关注

    125

    文章

    1556

    浏览量

    102710
  • PID算法
    +关注

    关注

    2

    文章

    172

    浏览量

    24299

原文标题:不要只成为PID调参工程师

文章出处:【微信号:pzh_mcu,微信公众号:痞子衡嵌入式】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    万能转换开关的基本结构、工作原理及性能特点

    万能转换开关是一种广泛应用于工业自动化、电力系统、电气设备等领域的电气开关设备。它具有结构简单、操作方便、性能稳定等特点,能够实现对电路的快速切换和控制。 一、万能转换开关的基本结构 外壳 万能
    的头像 发表于 08-20 10:20 2791次阅读

    万能转换开关的作用有哪些

    万能转换开关是一种广泛应用于工业自动化、电力系统、机械设备等领域的电气元件。它具有多种功能和优点,能够实现对电路的控制、保护和转换。 电路控制功能 万能转换开关最基本的作用是对电路进行控制。它可
    的头像 发表于 08-20 10:18 997次阅读

    万能转换开关的定位结构一般采用哪些

    万能转换开关是一种广泛应用于工业自动化、电力系统、通讯设备等领域的电气开关设备。其主要功能是实现对电路的通断控制、信号转换、状态指示等。在万能转换开关的设计和制造过程中,定位结构的设计至关重要,它
    的头像 发表于 08-20 10:12 2443次阅读

    万能转换开关是什么的主令电器

    万能转换开关,作为一种高度灵活多变的主令电器,在电力工程及工程技术领域扮演着重要角色。其英文名称为CAM switch,即Highly Versatile Change-Over Switch
    的头像 发表于 08-20 10:11 1274次阅读

    万能断路器参数设置的基本原则

    万能断路器是一种广泛应用于电力系统、工业自动化和建筑电气等领域的保护和控制设备。它具有过载保护、短路保护、欠压保护等多种功能,能够有效地保护电气设备和线路的安全运行。为了确保万能断路器的正常工作
    的头像 发表于 08-14 15:50 908次阅读

    万能断路器跳闸后如何复位

    万能断路器是一种广泛应用于电力系统中的保护装置,其主要作用是在电路发生故障时,能够迅速切断电路,以保护电气设备和人身安全。然而,在实际使用过程中,万能断路器可能会出现跳闸现象,这时候就需要进行复位
    的头像 发表于 07-31 15:24 1556次阅读

    万能断路器脱扣怎么恢复

    万能断路器是一种广泛应用于电力系统中的保护设备,它能够在电路发生故障时自动切断电源,以保护电气设备和人身安全。在断路器脱扣后,需要进行恢复操作,以确保电力系统的正常运行。本文将介绍万能断路器脱扣
    的头像 发表于 07-31 15:22 1621次阅读

    万能断路器合不上闸的原因

    以下是万能断路器合不上闸的原因的主要内容: 万能断路器的基本原理和功能 万能断路器是一种用于保护电力系统的设备,可以自动切断故障电路,以防止设备损坏和事故的发生。 万能断路器的主要功能
    的头像 发表于 07-31 15:21 2055次阅读

    万能断路器参数如何设置

    万能断路器是一种广泛应用于电力系统、工业自动化和建筑电气领域的电气设备,其主要功能是在电路中起到过载、短路、欠压等保护作用。正确设置万能断路器参数对于确保设备安全运行和提高系统可靠性具有重要意义
    的头像 发表于 07-31 15:19 1802次阅读

    万能式断路器怎么调电流大小

    万能式断路器(Universal Circuit Breaker)是一种广泛应用于电力系统、工业自动化和建筑电气领域的电气保护设备。它具有过载保护、短路保护和欠压保护等多种功能,能够有效地保护电路
    的头像 发表于 07-31 15:06 1246次阅读

    简述万能电桥测量电容的步骤

    万能电桥是一种测量电感和电容的仪器,具有测量范围广、精度高、操作简便等特点。在测量电容时,万能电桥可以准确地测量出电容的值,为电子电路设计和维修提供了重要的参考数据。下面介绍万能电桥测量电容的步骤
    的头像 发表于 07-26 09:58 849次阅读

    python函数的万能参数

    我们通过一个简单的事例来展示一下函数的万能参数,我们先写一个最简单的函数。
    的头像 发表于 07-17 14:56 325次阅读
    python函数的<b class='flag-5'>万能</b>参数

    AG32的“万能管脚”

    推荐新设计了,也就是说原厂停产这款芯片已经进入倒计时了。客户听说我们的MCU是“万能管脚”的,所以想试一试看能否替换。AG32的确是目前MCU产品中最接近于“万能
    的头像 发表于 07-09 10:00 78次阅读
    AG32的“<b class='flag-5'>万能</b>管脚”

    万能表如何测量电瓶

    电瓶作为汽车、摩托车等交通工具的重要能源储存装置,其性能的好坏直接影响到车辆的正常运行。因此,定期检查电瓶的状态,确保其电量充足、性能稳定,是每位车主都应重视的事项。在众多的电瓶检测工具中,万能
    的头像 发表于 05-20 17:02 1452次阅读

    万能遥控器的设置和使用方法

    万能遥控器是一种能够控制不同品牌电器的设备,它可以将多个遥控器的功能整合到一个遥控器上,方便用户操作。在本文中,我将详细介绍万能遥控器的设置和使用方法。 设置万能遥控器 步骤一:准备工作 在开始设置
    的头像 发表于 01-24 10:57 1.5w次阅读