立创梁山派开发板-21年电赛F题-送药小车-直流减速电机PID速度环与位置环调试

PID(Proportional-Integral-Derivative)控制是一种广泛应用于工业和嵌入式系统的控制算法。它通过比较期望的设定点和实际的过程变量之间的差异(称为误差)来调整控制系统的输出。PID控制器结合了比例(P)、积分(I)和微分(D)三种控制方式,以实现对系统的精确控制。比例控制(P):比例控制是根据误差的大小来调整控制器输出。误差越大,输出调整幅度越大。这种控制方式有助于快速地减小误差,但可能导致系统在设定点附近来回波动,无法消除静差。积分控制(I)
摘要由CSDN通过智能技术生成

直流减速电机PID速度环与位置环调试

什么是PID?

PID(Proportional-Integral-Derivative)控制是一种广泛应用于工业和嵌入式系统的控制算法。它通过比较期望的设定点和实际的过程变量之间的差异(称为误差)来调整控制系统的输出。PID控制器结合了比例(P)、积分(I)和微分(D)三种控制方式,以实现对系统的精确控制。

PID控制的三个主要组成部分:

  1. 比例控制(P):比例控制是根据误差的大小来调整控制器输出。误差越大,输出调整幅度越大。这种控制方式有助于快速地减小误差,但可能导致系统在设定点附近来回波动,无法消除静差。

  2. 积分控制(I):积分控制是根据误差累积的总量来调整控制器输出。当系统存在持续的静差时,积分控制有助于消除这种误差,使系统最终达到设定点。但过度的积分控制可能导致系统响应变慢或发生过冲。

  3. 微分控制(D):微分控制是根据误差变化的速度来调整控制器输出。当误差变化速度较快时,微分控制可以抑制系统过冲和振荡。但微分控制对噪声敏感,可能导致输出不稳定。

线性PID算法可以用下式表示:

其中

  • Kp是比例控制

  • Ki是积分控制

  • Kd是微分控制

  • e是误差

  • t:目前时间

  • 丆:是积分变数

上面的式子是连续型的PID公式,但是在嵌入式系统中是不可能连续的,所有的都是数字的离散量。针对PID计算来说,都是间隔一定时间去计算的,改变的只是间隔时间的大小。

离散型的位置式PID和增量式PID公式是将连续时间域的PID公式转换为离散时间域,以便于在数字控制系统中实现。以下是离散型的位置式PID和增量式PID公式以及解释。

离散型位置式PID公式

离散型位置式PID(绝对式PID)公式如下:

u[k] = Kp * e[k] + Ki * T * Σe[k] + Kd * (e[k] - e[k-1]) / T

其中,u[k]是第k个采样时刻的控制器输出,e[k]是第k个采样时刻的误差(设定点与过程变量之差),KpKiKd分别是比例、积分和微分系数,T表示采样时间间隔。

在离散型位置式PID控制器中,比例项直接由当前误差计算,积分项由误差累加求和并乘以采样时间间隔,微分项由当前误差和上一个误差的差分除以采样时间间隔计算。

离散型增量式PID公式

离散型增量式PID(速度式PID)公式如下:

Δu[k] = Kp * (e[k] - e[k-1]) + Ki * T * e[k] + Kd * (e[k] - 2 * e[k-1] + e[k-2]) / T

其中,Δu[k]是第k个采样时刻的控制器输出增量,其他符号含义与上面的离散型位置式PID相同。

在离散型增量式PID控制器中,比例项由当前误差和上一个误差的差来计算,积分项由当前误差乘以采样时间间隔计算,微分项由当前误差、上一个误差和再上一个误差的差分除以采样时间间隔计算。这种控制器适用于需要避免输出突变和过冲的场景。

怎么调节PID呢?

如果某个 P,I,D 参数偏离了原点的 PID 值,控制效果就会变化。控制效果与各个参数的规律如图所示。截取自:链接​​​​​​

 

当然,如果你能记录PID的曲线的话,就可以导入matlab进行自动调节pid参数,网上有挺多教程,大家可以搜一搜。这里我们就只介绍靠经验来调节了(简称瞎鼓捣)。

比较常用的有试错法,这个是一种经验性的方法,通过尝试不同的PID参数值,找到合适的参数设置。基本步骤如下:

  • 首先,将I和D参数设置为0,只保留P参数。

  • 增加P参数,直到系统的响应时间变得合适。过高的P参数会导致系统振荡,过低的P参数会导致系统响应慢。

  • 接着,增加I参数,以减小稳态误差。适当调整I参数,直到系统达到满意的性能。

  • 最后,增加D参数,以降低系统的超调量和提高响应速度。适当调整D参数,直到系统达到满意的性能。

假设我们需要控制一个直流减速电机的速度,为了达到某个设定值。我们将使用PID控制器来调节电机的驱动PWM,来达到所需的速度。

简要步骤如下:

  1. 初始化参数:首先将Kp,Ki,Kd全部设置为0,这样PID控制器不产生任何控制作用。

  2. 调节比例增益Kp:逐渐增加Kp的值,直到系统开始出现持续的振荡(速度在设定值附近上下波动)。此时记录下Kp的值。

  3. 调节积分增益Ki:将Kp设置为刚刚Kp值的一半,然后逐渐增加Ki的值,直到系统的静态误差(速度与设定值的差距)变得很小。过大的Ki值可能导致系统响应过慢或振荡,此时需要适当减小Ki值。

  4. 调节微分增益Kd:保持当前的Kp和Ki值不变,逐渐增加Kd的值,直到系统的动态性能满足要求(例如,要求速度在设定值附近的波动范围和响应时间)。过大的Kd值可能导致系统响应过于敏感或噪声敏感,此时需要适当减小Kd值。

  5. 微调参数:以上步骤得到的Kp,Ki,Kd值可能仍然不是最优解,因此还需要根据实际系统的性能要求进行微调。通常情况下,可以先调整Kp和Ki,然后再调整Kd。在调整过程中,需要关注系统的稳定性、阻尼、响应速度、过冲等性能指标。

这三个参数到底影响了什么?

这里就以恒温热水壶来举例说明了。

Kp(比例增益)

比例项是误差与控制器输出

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值