PID控制算法原理及调参说明
*(K_p)**决定了系统的快速响应能力,但需要谨慎避免过高以免引发不稳定。**(K_i)**可以消除稳态误差,但过高会导致系统振荡。**(K_d)**提供了对误差变化的预测,有助于提高系统稳定性,但过低则可能导致过度反应。
一 原理
1.比例控制(P)
比例控制是PID控制的基础部分,其核心在于对当前误差的响应。误差是设定值(目标值)与实际输出之间的差。比例控制的输出公式为:
P = K p × e ( t ) \ P = K_p \times e(t) \ P=Kp×e(t)
- K_p(比例增益):控制系统对误差的敏感度,增大该值会使系统更快响应,但也可能导致系统不稳定。
- 优缺点:
- 优点:能够快速响应变化。
- 缺点:在稳态时可能存在误差(稳态误差),即实际值无法完全达到设定值。
2. 积分控制(I)
积分控制旨在消除稳态误差,通过对误差进行累积,使得控制系统在长时间运行时能够达到设定值。其公式为:
I = K i × ∫ 0 t e ( τ ) d τ I = K_i \times \int_0^t e(\tau) d\tau I=Ki×∫0te(τ)dτ
- K_i(积分增益):影响误差的累积速度,过大的积分增益可能导致系统过度调整,造成振荡。
- 优缺点:
- 优点:有效消除稳态误差。
- 缺点:容易引起超调和振荡,尤其在增益设置不当时。
3. 微分控制(D)
微分控制用于预测误差的未来趋势,从而对误差的变化做出响应。其公式为:
D = K d × d e ( t ) d t D = K_d \times \frac{de(t)}{dt} D=Kd×dtde(t)
- **K_d
(微分增益)**:控制对误差变化率的反应,增大该值可以减少系统的超调,但对噪声非常敏感。
- 优缺点:
- 优点:提高系统的稳定性和响应速度。
- 缺点:容易对测量噪声产生反应,可能引发不必要的控制调整。
PID控制器的综合输出
PID控制器的输出是以上三部分的综合,公式为:
u ( t ) = K p × e ( t ) + K i × ∫ 0 t e ( τ ) d τ + K d × d e ( t ) d t u(t) = K_p \times e(t) + K_i \times \int_0^t e(\tau) d\tau + K_d \times \frac{de(t)}{dt} u(t)=Kp×e(t)+Ki×∫0te(τ)dτ+Kd×dtde(t)
二 K_p、K_i、K_d对系统的作用与影响
这下把pid给演明白了
从视频可以直观感受到各个参数对于系统调节的作用:
1. 比例增益 (K_p)
作用:比例控制的主要目的是根据当前误差生成控制输出。(K_p)直接影响控制系统对误差的响应强度。
影响:
-
增大(K_p):
- 快速响应:系统对误差变化的响应更快。
- 可能出现超调:当系统接近设定值时,可能会因为过度反应而超过目标值。
- 稳定性问题:过高的比例增益可能导致系统不稳定,产生持续振荡。
-
减小(K_p):
- 响应变慢:系统的调整变得较为缓慢。
- 稳态误差:在稳定状态下可能存在误差,实际值无法完全达到设定值。
2. 积分增益 (K_i)
作用:积分控制的目标是消除稳态误差。它通过累积过去的误差来调整控制输出。
影响:
-
增大(K_i):
- 消除稳态误差:随着时间的推移,系统能够逐渐消除任何持久的误差。
- 可能导致振荡:如果(K_i)设置过高,可能导致系统反应过度,产生振荡或不稳定。
-
减小(K_i):
- 提高稳定性:系统的响应更加平稳,减少振荡。
- 存在稳态误差:可能无法完全消除长时间存在的误差。
3. 微分增益 (K_d)
作用:微分控制预测误差的未来变化,能够提高系统的动态性能。
影响:
-
增大(K_d):
- 提高稳定性:对误差变化率的敏感性可以减少超调,改善系统的稳定性。
- 减少振荡:通过对快速变化的误差进行抑制,能够减小系统的振荡。
-
减小(K_d):
- 响应变慢:系统对误差变化的反应变得迟钝。
- 可能增加超调:缺乏预测性控制可能导致在接近目标时出现较大的超调。
总结
在实际应用中,PID控制器的参数设置通常是一个平衡过程:
- **(K_p)**决定了系统的快速响应能力,但需要谨慎避免过高以免引发不稳定。
- **(K_i)**可以消除稳态误差,但过高会导致系统振荡。
- **(K_d)**提供了对误差变化的预测,有助于提高系统稳定性,但过低则可能导致过度反应。
三 调参方法
1. 手动调节法
手动调节是最直观的方法,适合小规模和简单的控制系统。
- 步骤:
- 设定初值:从小的(K_p)、(K_i)、(K_d)开始,通常设置(K_i)和(K_d)为0。
- 增加(K_p):逐步增加(K_p)的值,观察系统响应。理想情况下,系统应能快速接近设定值。
- 观察超调和稳定性:当系统开始出现超调时,记录下这个值。然后略微减小(K_p)以消除过度反应。
- 引入(K_i):逐步增加(K_i),以消除稳态误差。注意观察,过大的(K_i)可能会引起振荡。
- 引入(K_d):最后添加(K_d)以改善系统的响应速度和稳定性,尤其是对于快速变化的情况。
2. Ziegler-Nichols调节法
这是一个经典的经验法则,适用于多数线性系统。
- 步骤:
- 找出临界增益((K_u)):将(K_i)和(K_d)设置为0,逐步增加(K_p),直到系统出现持续振荡,记录此时的(K_p)值为(K_u)。
- 记录振荡周期((T_u)):同时记录振荡的周期,这个值为(T_u)。
- 计算PID参数:
- K p = 0.6 × K u K_p = 0.6 \times K_u Kp=0.6×Ku
- K i = 2 K p / T u K_i = 2K_p/T_u Ki=2Kp/Tu
- K d = K p ∗ T u / 8 K_d = K_p*T_u/8 Kd=Kp∗Tu/8
在对无人机、水下机器人调参时,注意先对姿态作调整,姿态稳定后再调节位置参数
更多推荐
所有评论(0)