亿加合和智能车制作

标题: 速度环,求帮忙看看,求指点 [打印本页]

作者: 这...很复杂.    时间: 2015-1-4 12:06
标题: 速度环,求帮忙看看,求指点
单独直立的部分已经调好的了,[attach]73119[/attach]这一部分是叠加PWM输出,有一个怪怪的情况,就是不管这个符号是正还是负,如果I给2,P给0,刚上电的时候他能直立,过一下下就出现抖动,然后倒地(我个人是觉得是 他要回来原地的时候就倒下了),轮子疯转,请问这是什么情况呢??给点帮助 谢谢[attach]73120[/attach][attach]73121[/attach]

作者: zhou1994    时间: 2015-1-4 12:12
因为你的编码器线数太大。而直立又不够硬。
作者: 这...很复杂.    时间: 2015-1-4 12:20
zhou1994 发表于 2015-1-4 12:12
因为你的编码器线数太大。而直立又不够硬。

意思是要加硬直立吗?200线的。。。
我直立给的P是33,

作者: zhou1994    时间: 2015-1-4 12:22
这...很复杂. 发表于 2015-1-4 12:20
意思是要加硬直立吗?200线的。。。
我直立给的P是33,

数字大小没意义,你把速度的总输出,限幅到直立总输出的40%。然后再试

作者: 这...很复杂.    时间: 2015-1-4 12:24
zhou1994 发表于 2015-1-4 12:22
数字大小没意义,你把速度的总输出,限幅到直立总输出的40%。然后再试

好的,谢谢~

作者: 戥家三少    时间: 2015-1-5 16:15
zhou1994 发表于 2015-1-4 12:22
数字大小没意义,你把速度的总输出,限幅到直立总输出的40%。然后再试

不是速度总输出限幅,而是积分项要限幅,电机疯转的原因是积分项累加太多,减不下来
作者: zhou1994    时间: 2015-1-5 16:23
戥家三少 发表于 2015-1-5 16:15
不是速度总输出限幅,而是积分项要限幅,电机疯转的原因是积分项累加太多,减不下来

第一。他只给了i参数。所以你觉得这2个限幅的结果又什么差别?第二,对积分限幅,我觉得是一种不正确的做法,比如说你向前推,有了2000的误差,但是你限幅到200,就被你省去1800的误差,往回走就只有200误差的效果,就不会回到原来的点,但是你对输出限幅,2000的误差我只输出200,每次回一点,10次之后,就会完整的回到误差为0的点。个人看法。若有错误,还望指教。

作者: 乁year    时间: 2015-1-5 16:55
zhou1994 发表于 2015-1-4 12:22
数字大小没意义,你把速度的总输出,限幅到直立总输出的40%。然后再试

赞同!这个太软了!

作者: 戥家三少    时间: 2015-1-5 18:24
zhou1994 发表于 2015-1-5 16:23
第一。他只给了i参数。所以你觉得这2个限幅的结果又什么差别?第二,对积分限幅,我觉得是一种不正确的做 ...

积分是静态偏差,跟你加死区电压的原理差不多,不是像你说的恢复的意思

作者: 戥家三少    时间: 2015-1-5 18:36
zhou1994 发表于 2015-1-5 16:23
第一。他只给了i参数。所以你觉得这2个限幅的结果又什么差别?第二,对积分限幅,我觉得是一种不正确的做 ...

从整个PID来讲,当达到稳定时,其实就只有积分项可能有输出。因为稳定时,偏差为0,偏差的趋势为0,只有偏差的积累可能不为0.那么这就说明了积分是用来消除物理导致的摩擦或各种使对象达不到目标值的常数。那么反过来看直立控制的PD的作用,P代表恢复力,D代表阻尼力,对应回速度控制也是一样,所以你说它要恢复的,应该是P起作用,如果是I起作用的话,你这时的I就做不到克服摩擦力的效果,因为你需要克服的摩擦力是正反方向变化的,而I做不到维持不变的前提下来克服。然后积分项限幅也是很好理解的。上面提到它是克服摩擦力用的,所以它不可能过大

作者: zhou1994    时间: 2015-1-5 21:34
戥家三少 发表于 2015-1-5 18:36
从整个PID来讲,当达到稳定时,其实就只有积分项可能有输出。因为稳定时,偏差为0,偏差的趋势为0,只有偏 ...

我们再来讨论一下对误差的消除,比如现在的期望脉冲为0,向某个方向移动,产生了1000个脉冲的距离,你对误差和限幅到100个脉冲,那么最终速度控制的输出也就只有100个脉冲的作用了,对吗?
作者: 戥家三少    时间: 2015-1-6 10:52
zhou1994 发表于 2015-1-5 21:34
我们再来讨论一下对误差的消除,比如现在的期望脉冲为0,向某个方向移动,产生了1000个脉冲的距离,你对误 ...

你先研究一下积分分离,相差1000个脉冲在控制里面其实应该算是没用的。在积分分离里面说到,误差如果从偏差大的时候开始积累,将导致后续的积分项需要过长时间的降低。
然后,积分的作用在以上的分析里可以得出,积分主要功能是体现在稳定时,你现在是把它放到不稳定时的情况来说是不太好的。
你想它在相差1000个脉冲时起作用的话,应该是P跟D起作用才对。上年我也弄速度PI弄很久才弄懂。

作者: zhou1994    时间: 2015-1-6 11:49
戥家三少 发表于 2015-1-6 10:52
你先研究一下积分分离,相差1000个脉冲在控制里面其实应该算是没用的。在积分分离里面说到,误差如果从偏 ...

我们在这讨论没什么意义,按照自己的思路走,按照自己的理论走,有自己要的效果,就行。从大一做直立到大二做4轮到现在做第二次直立,我还是坚持我的观点。
作者: 187407    时间: 2015-1-31 14:22
戥家三少 发表于 2015-1-5 18:36
从整个PID来讲,当达到稳定时,其实就只有积分项可能有输出。因为稳定时,偏差为0,偏差的趋势为0,只有偏 ...

三少大神,我们现在已经能够单独地调好直立了,但是加上速度控制时(用的是PI),要么是车跑一截后倒下(是朝着车前进方向相反的地方倒下,用的是e车,),还有就是跑了一截车就在原地抖。希望三少能帮我解惑。。

作者: 戥家三少    时间: 2015-2-2 12:33
187407 发表于 2015-1-31 14:22
三少大神,我们现在已经能够单独地调好直立了,但是加上速度控制时(用的是PI),要么是车跑一截后倒下( ...

感觉是积分项的问题,你把积分项单独拿出来用虚拟示波器看看





欢迎光临 亿加合和智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2