智能车制作

标题: 增量式速度PID怎么调,我调的时候遇到了一些问题,希望有人能帮忙解决一下 [打印本页]

作者: 马继勇    时间: 2014-7-8 03:25
标题: 增量式速度PID怎么调,我调的时候遇到了一些问题,希望有人能帮忙解决一下
我的速度PID公式是:

  1. PWM_temp1+=Ki*error1+Kp*(error1-last_error1)+Kd*(error1+pre_error1-2*last_error1);
复制代码

我们先调的P,再调的I,I还没调好,感觉P也没调好。我们看的是上位机显示的编码器测速曲线,我们遇到了以下问题:
  我们给的速度期望是200
1.调P的时候,不会超调。但是P给100以下的时候,测速稳定下来是160,但是稳定所花时间较长;P给100多以上的时候,测速稳定下来是140,但是稳定所花时间较短。所以,我们应该更注重与时间还是稳定时的测速。
    P我选择了稳定时测速更大但时间长的值90,取其70%。

2.调I的时候,I给1才不会超调,但是速度上升的很缓慢;I给大一点就超调了,而且速度震荡一下才稳定,但是速度上升的很快。而且我给的I为同一个值(给的0.15),刚开始跑得时候速度没有马上到期望值200,而是随着跑得时间慢慢增加,速度慢慢往上增加,实验室其他人说这是积分的效果,而且I没有清零,所以一直增加。
所以我感觉I好像没法调了:不超调,但是速度上升极慢;速度上升快,但是超调且震荡。



在此想要求教各位可不可以给我这个小白一点意见[img]file:///C:\Users\ADMINI~1\AppData\Local\Temp\TempPic\@R[T@GCRZHYE~@CX7JF507U.tmp[/img]



作者: 左岸天空    时间: 2014-7-8 06:18
P不用太大,I折中一下不就好了
作者: 马继勇    时间: 2014-7-8 15:59
左岸天空 发表于 2014-7-8 06:18
P不用太大,I折中一下不就好了

主要变化太快了,I给1的时候没超调,反应速度很慢。一加到2就马上超调震荡,没有那个折中点

作者: 左岸天空    时间: 2014-7-8 16:09
为什么不能给1.5
作者: 墨沐    时间: 2014-7-10 19:32
都定义成浮点型变量,一点点的加上去嘛




欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2