type
date
slug
category
icon
password

偏差,给定值 与被控对象输出 之间差值:
经PID控制器,对偏差进行比例放大、积分和微分进行线性求和后 控制对象
- 比例项可以
快速响应偏差
,但不能消除系统稳态误差
- 积分项用于
消除系统稳态误差
,但积分作用太强会使系统超调量加大甚至引起系统震荡
- 微分项能
减小系统超调量
,增加稳定性,同时会加快系统的动态响应速度,减少调整时间,改善系统动态性能
2.1 PID 算法的离散化
数字式PID控制器又两种形式,分为数字 PID 位置型控制算法和数字 PID 增量型控制算法。
2.1.1 数字 PID 位置式控制算法
其中:
- k 为采样序号
- e(k) 为第 K 次的误差
- u(k) 为输出量
- Kp 不变
- Ki = Kp*T / Ti (采集数据的间隔时间为 T)
- Kd = Kp*Td / T
2.1.2 数字 PID 增量式控制算法
其中:
- 增量式 PID 的输出与近三次的偏差有很大关系;
- 推导的是对于上一次来说的调节量,也就是说当前的输出等于上一次加增加的调节量
2.1.3 对比
对比区别
- 增量式算法不需要对积分项累加,控制量增量只与近几次的误差有关,计算误差对控制量计算的影响较小。而 位置式算法要对近几次的偏差的进行积分累加,容易产生较大的累加误差;
- 增量式算法得出的是控制量的增量,例如在阀门控制中,只输出阀门开度的变化部分,
误动作影响小
,必要时还可通过逻辑判断限制或禁止本次输出,不会严重影响系统的工作;而位置式的输出直接对应对象的输出,因此对系统影响较大
;
- 增量式算法控制输出的是控制量增量,
并无积分作用
,因此该方法适用于执行机构带积分部件的对象,如步进电机等,而位置式算法适用于执行机构不带积分部件的对象,如电液伺服阀
;
- 在进行 PID 控制时, 位置式 PID 需要有
积分限幅和输出限幅
,而 增量式 PID 只需输出限幅。
ㅤ | 优点 | 缺点 |
位置式 PID 优缺点 | 位置式 PID 是一种非递推式算法,适用执行机构不带积分部件的对象 | 每次输出均与过去的状态有关,计算时要对 e(k) 进行累加,运算工作量大。 |
增量式 PID 优缺点 | 1. 误动作时影响小,必要时可用逻辑判断的方法去掉出错数据。
2. 手动/自动切换时冲击小,便于实现无扰动切换。
3. 算式中不需要累加。控制增量 Δu(k) 的确定仅与最近 3 次的采样值有关。在速度闭环控制中有很好的 实时性 。 | 1. 积分截断效应大,有稳态误差;
2. 溢出的影响大。有的被控对象用增量式则不太好; |
2.2 C 语言实现
2.2.1 增量式 PID 算法控制
增量式参数验证将代码下载到开发板,调节参数并观察曲线变化,对于不同的 PID 参数,输出调节一定是不一样的,具体如下图:

以上是修改参数后的调节输出;通过数据看到 PID 调节的次数更少了,次数越少说明调节的效果
越好,当然也要根据具体应用来决定需要什么样的曲线。
2.2.2 位置式控制算法
- Author:felixfixit
- URL:http://www.felixmicrospace.top/article/intro_to_pid
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!