注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

FY

Johnson 's Blog

 
 
 

日志

 
 

飞思小车PID控制的通俗理解(之二)[原]  

2016-04-28 09:25:45|  分类: 飞控 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
http://blog.eccn.com/space.php?uid=353091&do=blog&id=3994

为了避免教科书公式化的说明,本文用口语化和通俗的语言描述。虽然不一定恰当,但意思差不多,就是那个事。如果要彻头彻尾地弄PID,建议多调试,写几个仿真程序。

      PID一般有两种:位置式PID和增量式PID。在小车里一般用增量式,为什么呢?位置式PID输出与过去的所有状态有关,计算时要对e(每一次的控制误差)进行累加,这个计算量非常大,而明没有必要。而且小车的PID控制器的输出并不是绝对数值,而是一个△,代表增多少,减多少。换句话说,通过增量PID算法,每次输出是PWM要增加多少或者减小多少,而不是PWM的实际值。

下面均以增量式PID说明。

  这里再说一下PID三个参数的作用。P=Proportion,比例的意思,IIntegral,积分,DDifferential微分。

打个比方,如果现在的输出是1,目标输出是100,那么P的作用是以最快的速度达到100,把P理解为一个系数即可;而I呢?大家学过高数的,0的积分才能是一个常数,I就是使误差为0而起调和作用;D呢?大家都知道微分是求导数,导数代表切线是吧,切线的方向就是最快到至高点的方向。这样理解,最快获得最优解,那么微分就是加快调节过程的作用了。

公式本来需要推导的,我就不来这一套了。直接贴出来:飞思小车PID控制的通俗理解(之二)[原] - FY - FY

 

看看最后的结果:

Uk=A*e(k)+B*e(k-1)+C*e(k-2)

这里KPP的值,TDD的值,1/TiI的值,都是常数,哦,还有一个TT是采样周期,也是已知。A  B  C是由P I D换算来的,按这个公式,就可以简化计算量了,因为 P I D 是常数,那么A B C可以用一个宏表示。这样看来,只需要求e(k) e(k-1) e(k-2)就可以知道△Uk的值了,按照△Uk来调节PWM的大小就OK了。PID三个参数的确定有很多方法,不在本文讨论范围内。采样周期也是有据可依的,不能太大,也不能太小。

   ........................

   ........................

   写着写着成了老太婆的裹脚了,本来说拿个程序来说明一下,看来只能在下一文中了。

  评论这张
 
阅读(1)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017