一、前言
本科的时候参加飞思卡尔比赛,在队友的神助攻下有幸拿了国奖,比赛中使用了模糊控制算法。这段时间正好看到了模糊控制算法,就把以前的代码翻出来,顺便总结一下PID和模糊控制算法,希望自己能养成记录知识点的好习惯。
二、基于PID 的速度控制
在控制领域,PID算法是应用最广泛的算法之一。小到电机的转速,大到机器人稳定性的控制。在实现智能小车速度的闭环控制时首选简单有效的PID控制算法。
1.PID控制器
PID(Proportion Integration Differentiation)控制器包括P比例、I积分和D微分三个控制单元,协同工作保证控制系统快速到达并稳定于目标值。PID控制算法的公式:
u ( t ) = K p e r r ( t ) + K i ∫ e r r ( t ) d t + K d d e r r ( t ) d t u(t)=K_perr(t)+K_i\int err(t)dt +K_d\frac{derr(t)}{dt} u(t)=Kperr(t)+Ki∫err(t)dt+Kddtderr(t)
对其进行离散化:
u ( n ) = K p e r r ( n ) + K i ∑ k = 0 n e r r ( k ) + K d ( e r r ( n ) − e r r ( n − 1 ) ) u(n)=K_perr(n)+K_i\sum_{k=0}^n err(k) +K_d(err(n)-err(n-1)) u(n)=Kperr(n)+Ki