控制算法:PID算法

PID算法是什么

PID 控制算法是自动化领域应用最广泛的经典控制算法。

PID 是通过**误差(Error)**来调整输出的反馈机制。误差等于"你想要的目标值"减去"目前的实际值"。

P (Proportional) - 比例:解决"当前"的误差
  • 原理:输出与误差成正比。误差越大,给的力越大。

  • 直观感受:离红线越远,油门踩得越深。

  • 缺点 :存在静差。当车非常接近红线时,误差极小,踩油门的力可能不足以克服摩擦力,导致车停在红线前一点点,永远到不了目标点。

I (Integral) - 积分:解决"累积"的误差
  • 原理:将过去一段时间的所有误差加起来。

  • 直观感受:如果你停在红线前不动了,误差会随时间累积。积分项会发现"我们还没到!",然后慢慢加大油门,直到车刚好停在红线上,消除静差。

  • 缺点 :容易导致超调。力给得太猛,车可能会冲过红线。

D (Derivative) - 微分:预测"未来"的误差
  • 原理:计算速度。

  • 直观感受:如果发现车速极快,正在飞速接近红线,微分项会提前"踩刹车"减速。

  • 作用:它起到了阻尼的作用,能有效减少振荡和超调,让系统更稳。


PID的输出到底是什么东西?

PID的输出应该是初始状态跟目标状态(温度,速度,位置等等),输出从本质来讲是"能量的浓度"。 比如你现在想要让从a点到b点,输出的能量可以说是油门踩下的深度(或者电机的转速,或者pwm的占空比无所谓,他们之间是一种线性关系),pid在t时刻的输出是一个数字,这个数字越大就是在告诉你t时刻应该踩深点,电机转快点,pwm的占空比应该再大一些,他们之间可以理解成一种线性映射的转换关系。

专业点来说,PID的输出是一个控制量,是一个无量纲的数值(比如 float 范围 -1.0 到 1.0,或者 int 0 到 255)。它代表了控制器**"想要"执行器(Actuator)施加多大的修正力度**。代表的是**"致动器的做功强度"或"控制信号的幅值"**。例子: 控制温度时,输出是加热功率(类似于能量流率)。


PID 算法优缺点对比表

维度 优点 (Advantages) 缺点 (Disadvantages)
模型依赖 无需数学模型:典型的"黑盒"控制,不需要知道受控对象的物理方程(如 F=ma),通过试凑参数即可。 缺乏预见性:因为没有模型,它无法预测未来的状态,只能对已经发生的误差做出反应(滞后性)。
计算复杂度 仅涉及加减乘除 难以处理多输入多输出
工程实现 代码实现简单 约束处理能力差
性能表现 鲁棒性较好 调参往往依赖工程师的经验,对于非线性、时变系统很难达到最优状态。
适用范围 工业界 90% 都在用 PID。 不适合精细规划

PID公式


如何使用或者部署PID算法:

1.将PID公式离散化


PID调参经验:

相关推荐
晏宁科技YaningAI7 分钟前
VoIP系统的工程实现模型:从信令控制到媒体传输的完整架构解析
网络·人工智能·架构·系统架构·信息与通信
HLC++19 分钟前
Linux的进程间通信
android·linux·服务器
IT_陈寒22 分钟前
Vue这个特性差点让我加班到凌晨,谁懂啊
前端·人工智能·后端
D2aZXN3FhrDa7e21240 分钟前
佛山AI智能获客系统适配性:工厂门店如何挑选工具
人工智能·美诚科技有限公司
机器之心42 分钟前
WAIC现场,这家公司让一群不同的机器人共用一个大脑
人工智能·openai
小白巨白42 分钟前
玫瑰花园管理系统:AI识病+3D可视化,一套面向中小型玫瑰种植园的数字化管理工具
css·人工智能·计算机视觉·html5
延凡科技1 小时前
多场景落地复盘:端边云架构无人机智能巡检系统设计与实践
大数据·数据结构·人工智能·科技·架构·无人机·能源
科技圈观察1 小时前
壹沓科技WAIC全球首发小沓OS与小沓KE,重塑供应链AI基础设施
人工智能·科技
CV-Climber1 小时前
检索技术的实际应用
人工智能·算法
颜酱2 小时前
01 | 骨架搭建:FastAPI + Vue 跑通第一个 SSE 流式问答
前端·人工智能·后端