PID算法原理分析

本文涉及的产品
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
实时计算 Flink 版,5000CU*H 3个月
实时数仓Hologres,5000CU*H 100GB 3个月
简介: 【10月更文挑战第12天】PID控制方法从提出至今已有百余年历史,其由于结构简单、易于实现、鲁棒性好、可靠性高等特点,在机电、冶金、机械、化工等行业中应用广泛。

今天为大家介绍一下经典控制算法之一的PID控制方法。PID控制方法从提出至今已有百余年历史,其由于结构简单、易于实现、鲁棒性好、可靠性高等特点,在机电、冶金、机械、化工等行业中应用广泛。

在大学期间,参加的智能汽车竞赛中就使用到了PID经典控制算法,对于智能小车的调试更加的方便。

一、PID原理

PID控制方法将偏差的比例(proportional)、积分(integral)、微分(derivative)通过线性组合构成控制量,对被控对象进行控制。

常规的PID控制系统如图所示:

系统的输入r(t)为控制量的目标输出值,输出y(t)为控制量的实际输出值,e(t)为输出量目标值与实际值的偏差量,PID算法的调控是基于e(t)进行的。

比例调节是基于实际值与目标值的偏差量进行线性调节, 在系统中表现为Kpe(t),Kp为比例增益。

比例增益Kp越大调节作用越激进,输入输出的微小偏差都会造成很大的调节动作;相反的Kp越小调节作用越保守,即使输入输出差异很大系统的调节效果都不太明显。

积分调节是利用历史偏差量的累计对系统输出进行调节,在系统种表示为:

积分调节的意义是消除系统的稳态误差。积分增益Ki越大系统的稳态误差消除的越快,Ki越小系统的稳态误差越不易消除,系统的调节精度越差。但是Ki过大会在响应过程产生较大超调,导致积分饱和现象的产生。

微分调节是基于偏差量的变化速率(偏差求导)对系统输出进行调节,在系统种表示为:

微分调节主要起到阻尼的作用,抑制超调。微分增益Kd越大,系统的稳定性越好,调节过程中曲线波动越小。但是Kd若设置过大会使得系统的调节时间增长,抗干扰性减弱。

偏差值在经过三种调节作用后会产生一个控制量u(t),u(t)将通过执行单元控制输出。系统将利用采样单元将输出反馈给输入端进行偏差量计算。

常规PID控制系统中u(t)与e(t)之间的函数关系如下:

分别调节Kp、Ki、Kd参数对PID控制系统性能的影响如下表所示:

二、数字PID控制

随着计算机技术发展,目前多以微控制器或计算机为运算核心,利用软件程序来实现PID控制和校正,也就是数字PID控制。常用的数字PID控制方法有:位置式PID、增量式PID以及步进式PID等。

01

位置式PID

由于计算机的运算是离散的,要想实现数字PID控制首先需要将连续函数进行离散化。

我们用误差的累加替代积分运算,用误差的差分代替微分运算,可得:

其中k为采样序列号(k=0,1,2,3......),e(k)为第k次采样时的误差值,e(k-1)为第k-1次采样时的误差值u(k)为第k次采样时控制量的输出值。在位置式PID中输出u(k)直接控制待控制对象,u(k)的值和控制对象是一一对应的关系。

从式2可以看出,位置式PID需要计算第k次和k-1次的误差,控制器会对偏差进行累加,这样会使得系统的运算量变大,占用内存过多,给计算机带来负担。

同时,控制器的每次输出u(k)都和过去的状态有关,u(k)的大幅变化会导致执行机构的状态大幅变化,系统抗干扰能力差。

为了改善这些问题,有学者提出了数字PID的另外一种实现方法——增量式PID。

02

增量式PID

增量式PID的输出是对被控对象的增量∆u(k),而不是实际的控制量大小。

其中a0=kp+ki+kd, a₁=-Kp-2kd,a₂=kd。

从上式可以看出增量式PID跟k时刻、k-1时刻、k-2时刻的偏差都有关系,但是不会对偏差进行累积,所以相比位置式PID的计算量要小,也不会跟过去的偏差有关联,所以控制系统的稳定性好。

03

步进式PID

当PID系统的设定值发生较大的突变时,系统很容易产生超调,影响其稳定性。为了避免阶跃信号带来的不利影响,有学者提出了步进式PID。

步进式PID不对阶跃信号进行直接响应,而是按照设定的步进规则逐渐增加设定值,使得信号逐步靠近目标值,这样被控对象运行平稳,避免了因突变带来的超调。

这种方法并未改变PID算法结构本身,而是对设定值进行步进处理,使其不产生突变。步进处理方法有很多种,最为常见的是建立一个线性变化函数,确定变化步长,当检测到目标值发生变化后按照步长逐步调整设定值。

Ys=Yn+kT

其中Ys为设定目标值,Yn为当前目标值,T为步长,k为变化系数。当检测到目标值增加时k=1,当目标值不变时k=0,当目标值减小时k=-1。

步进式PID虽然可以减少阶跃信号带来的干扰,但是也会让系统的响应速度变慢,可以调节步长来平衡两者之间的关系。步长越小运行越稳定,系统响应速度越慢,反之亦然。

三、PID算法优化

01

积分饱和优化处理

若系统持续存在一个方向的偏差时,PID控制器的输出由于积分作用不断累加而增大,从而导致控制器输出产生超调进入饱和区。

当系统出现反向偏差时,由于输出饱和而不能对反向的偏差进行快速响应,这种现象称为积分饱和。

常用抑制PID积分饱和方法有: 积分分离法、遇限削弱积分法以及变速积分法等。

//积分分离法

当系统检测到偏差e(k)较大时,取消积分环节,当被控量接近给定值时,误差减小,此时恢复积分环节。这样既不影响控制器的动态性能,又能避免出现严重超调或持续振荡现象。

//变速积分法

根据系统的偏差e(k)大小对积分速度进行调整,当e(k)绝对值很大时减慢积分速度,当e(k)绝对值很小时加快积分速度。在积分饱和时减小积分时间可以达到抑制积分饱和的效果,增强系统的适应性。

//遇限削弱积分法:

当检测到控制量u(k)进入饱和区时不再进行积分项累加,而执行削弱积分的运算。这样不会产生过多的超调量,当需要反向调节时能较快地响应,避免输出长时间停留在饱和区。

02

微分项优化处理

PID算法中微分项与偏差的变化速率有关。如果系统存在频率较高的干扰或突变等情况时,微分项的数值会不断跳变,使控制过程产生系统振荡,影响控制系统的稳定性。

常用的微分环节优化方法如下:

//微分先行

微分项对测量值产生的偏差起作用,而不是对设定值起作用。这样可以避免设定值的变化而产生较大的调节波动,抑制高频干扰引起的系统振荡。

//不完全微分

不完全微分是在微分作用后引入一阶惯性环节,使得在偏差作阶跃式变化时产生的微分调节量,以一种较为平缓的方式输出。这样在不减小微分调节作用的前提下,降低因为偏差突变产生的波动。

//受控微分法

受控量微分PID算法是对控制器的输出值进行微分,而不是对系统响应的实际输出值进行微分,可避免由于系统设定值频繁变化或执行器的振荡产生的系统响应超调量过大。

03

串级PID

所谓串级PID,就是采用多个PID控制器串联工作,外环控制器的输出作为内环控制器的设定值,由内环控制器的输出去操纵外环控制器,从而实现外环被控量的控制效果。串级PID能够有效改善控制质量,在过程控制中应用广泛。

控制系统以外环控制器为主导,保证外环主变量稳定为目的,两个控制器协调一致,互相配合。外环控制器按负荷和操作条件的变化不断纠正内环控制器的设定值,使内环控制器的设定值适应负荷和操作条件的变化。

在电机控制中串级PID十分常见,常用的位置环+速度环+电流环控制结构如图。

在PID控制方法中P、I、D是三种不同的调节作用,在实际应用时可根据需求对三种调节作用进行灵活组合,这也是PID控制方法的魅力所在,它的结构决定了它在实际应用中的多样性与灵活性。

本篇主要从PID原理、数字PID实现方式以及算法优化方面进行了简单介绍,希望能够对大家学习PID算法有所帮助。

目录
打赏
0
0
0
0
452
分享
相关文章
短视频到底如何推荐的?深度剖析视频算法推送原理详细且专业的解读-优雅草卓伊凡-【01】短视频算法推荐之数据收集
短视频到底如何推荐的?深度剖析视频算法推送原理详细且专业的解读-优雅草卓伊凡-【01】短视频算法推荐之数据收集
58 12
短视频到底如何推荐的?深度剖析视频算法推送原理详细且专业的解读-优雅草卓伊凡-【01】短视频算法推荐之数据收集
从公布的前十一批其他算法备案通过名单分析
2025年3月12日,国家网信办发布算法备案信息,深度合成算法通过395款,其他算法45款。前10次备案中,深度合成算法累计3234款,其他类别647款。个性化推送类占比49%,涵盖电商、资讯、视频推荐;检索过滤类占31.53%,用于搜索优化和内容安全;调度决策类占9.12%,集中在物流配送等;排序精选类占8.81%,生成合成类占1.55%。应用领域包括电商、社交媒体、物流、金融、医疗等,互联网科技企业主导,技术向垂直行业渗透,内容安全和多模态技术成新增长点。未来大模型检索和多模态生成或成重点。
从公布的前十一批其他算法备案通过名单分析
从第十批算法备案通过名单中分析算法的属地占比、行业及应用情况
2025年3月12日,国家网信办公布第十批深度合成算法通过名单,共395款。主要分布在广东、北京、上海、浙江等地,占比超80%,涵盖智能对话、图像生成、文本生成等多行业。典型应用包括医疗、教育、金融等领域,如觅健医疗内容生成算法、匠邦AI智能生成合成算法等。服务角色以面向用户为主,技术趋势为多模态融合与垂直领域专业化。
境内深度合成服务算法备案通过名单分析报告
本报告基于《境内深度合成服务算法备案通过名单》,分析了2023年6月至2025年3月公布的10批备案数据,涵盖属地分布、行业应用及产品形式等多个维度。报告显示,深度合成算法主要集中于经济发达地区,如北京、广东、上海等地,涉及教育、医疗、金融、娱乐等多行业。未来趋势显示技术将向多模态融合、行业定制化和安全合规方向发展。建议企业加强技术研发、拓展应用场景、关注政策动态,以在深度合成领域抢占先机。此分析旨在为企业提供参考,助力把握技术发展机遇。
境内深度合成服务算法备案通过名单分析报告
企业监控软件中 Go 语言哈希表算法的应用研究与分析
在数字化时代,企业监控软件对企业的稳定运营至关重要。哈希表(散列表)作为高效的数据结构,广泛应用于企业监控中,如设备状态管理、数据分类和缓存机制。Go 语言中的 map 实现了哈希表,能快速处理海量监控数据,确保实时准确反映设备状态,提升系统性能,助力企业实现智能化管理。
36 3
一级倒立摆平衡控制系统MATLAB仿真,可显示倒立摆平衡动画,对比极点配置,线性二次型,PID,PI及PD五种算法
本课题基于MATLAB对一级倒立摆控制系统进行升级仿真,增加了PI、PD控制器,并对比了极点配置、线性二次型、PID、PI及PD五种算法的控制效果。通过GUI界面显示倒立摆动画和控制输出曲线,展示了不同控制器在偏转角和小车位移变化上的性能差异。理论部分介绍了倒立摆系统的力学模型,包括小车和杆的动力学方程。核心程序实现了不同控制算法的选择与仿真结果的可视化。
53 15
|
1月前
|
【📕分布式锁通关指南 04】redis分布式锁的细节问题以及RedLock算法原理
本文深入探讨了基于Redis实现分布式锁时遇到的细节问题及解决方案。首先,针对锁续期问题,提出了通过独立服务、获取锁进程自己续期和异步线程三种方式,并详细介绍了如何利用Lua脚本和守护线程实现自动续期。接着,解决了锁阻塞问题,引入了带超时时间的`tryLock`机制,确保在高并发场景下不会无限等待锁。最后,作为知识扩展,讲解了RedLock算法原理及其在实际业务中的局限性。文章强调,在并发量不高的场景中手写分布式锁可行,但推荐使用更成熟的Redisson框架来实现分布式锁,以保证系统的稳定性和可靠性。
51 0
【📕分布式锁通关指南 04】redis分布式锁的细节问题以及RedLock算法原理
从第九批深度合成备案通过公示名单分析算法备案属地、行业及应用领域占比
2024年12月20日,中央网信办公布第九批深度合成算法名单。分析显示,教育、智能对话、医疗健康和图像生成为核心应用领域。文本生成占比最高(57.56%),涵盖智能客服、法律咨询等;图像/视频生成次之(27.32%),应用于广告设计、影视制作等。北京、广东、浙江等地技术集中度高,多模态融合成未来重点。垂直行业如医疗、教育、金融加速引入AI,提升效率与用户体验。
深度强化学习中SAC算法:数学原理、网络架构及其PyTorch实现
软演员-评论家算法(Soft Actor-Critic, SAC)是深度强化学习领域的重要进展,基于最大熵框架优化策略,在探索与利用之间实现动态平衡。SAC通过双Q网络设计和自适应温度参数,提升了训练稳定性和样本效率。本文详细解析了SAC的数学原理、网络架构及PyTorch实现,涵盖演员网络的动作采样与对数概率计算、评论家网络的Q值估计及其损失函数,并介绍了完整的SAC智能体实现流程。SAC在连续动作空间中表现出色,具有高样本效率和稳定的训练过程,适合实际应用场景。
492 7
深度强化学习中SAC算法:数学原理、网络架构及其PyTorch实现
基于LSB最低有效位的音频水印嵌入提取算法FPGA实现,包含testbench和MATLAB对比
本项目展示了一种基于FPGA的音频水印算法,采用LSB(最低有效位)技术实现版权保护与数据追踪功能。使用Vivado2019.2和Matlab2022a开发,完整代码含中文注释及操作视频。算法通过修改音频采样点的最低有效位嵌入水印,人耳难以察觉变化。然而,面对滤波或压缩等攻击时,水印提取可能受影响。该项目运行效果无水印干扰,适合实时应用场景,核心逻辑简单高效,时间复杂度低。
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等