智能车制作

标题: 直立速度闭环所遇到的几个问题,希望大家能讨论讨论下 [打印本页]

作者: wen123    时间: 2013-4-25 18:18
标题: 直立速度闭环所遇到的几个问题,希望大家能讨论讨论下
我现在加上速度积分后小车有来回摆动的趋势,但是幅度越来越大,来回的速度越来越快,直到积分饱和倒下,一直也没有官网视频中那么好的效果,不知道为什么?后来就加上速度控制的比例,最后能稳定在3-4cm范围左右来回摆动,外界扰动也能很快回到稳定状态,一直没能达到视频中的静止效果……又试着给定速度匀速跑,当给定速度很小时还可以跑(虽然不是匀速),给定速度大了之后就会出现点头的现象。
问题1:为啥加速度闭环后只能稳定在3-4cm范围左右来回摆动而无法禁止了。这个调了好久了,
问题2:为啥给一定速度时小车速度先是很快的速度,一段时间后才达到设定速度,这是什么原因
问题3:为啥速度闭环时,目标速度设为0,我推它时会稍微有点点头
求各位大侠讨论讨论,,帮帮我

作者: wen123    时间: 2013-4-25 19:00

作者: ♂ˇ邂逅√♀    时间: 2013-4-25 19:04
那我先问你问题:
1.你用什么东西来测速?编码器?编码盘?确保它们采集的数据准确性不?编码器/盘采集的数据有滤波不?最好加个低通滤波
2.你用什么来接收编码器数据?正交解码?还是怎样?这样的问题是为了引出下一个问题:你的极性根据什么来判断?编码器的相位还是PWM?如果是PWM的话,是根据两边还是一边的?
3.来回摆动说明可能你的PI调节的不好。I是很小的量的噢...
作者: fuyuan513    时间: 2013-4-25 19:07
好厉害的说

作者: lyb    时间: 2013-4-25 19:45
“但是幅度越来越大,来回的速度越来越快”这个好像官方的也是这个现象吧
作者: 猎鹰2013    时间: 2013-4-25 19:56
点头 是虚位引起的吧
作者: 嗯哼~    时间: 2013-4-25 20:26
我也遇到了
作者: wen123    时间: 2013-4-25 21:56
♂ˇ邂逅√♀ 发表于 2013-4-25 19:04
那我先问你问题:
1.你用什么东西来测速?编码器?编码盘?确保它们采集的数据准确性不?编码器/盘采集的数 ...

我用的编码器啊,计数一路用单片机自带的计数器一路用cd4520计数还是挺准的啊,,,。。。
作者: wen123    时间: 2013-4-25 21:58
猎鹰2013 发表于 2013-4-25 19:56
点头 是虚位引起的吧

那该怎么解决?个人认为是直立不够硬导致的,但p过大会引起高频抖动,貌似用d消除不了啊


作者: wen123    时间: 2013-4-25 21:59
lyb 发表于 2013-4-25 19:45
“但是幅度越来越大,来回的速度越来越快”这个好像官方的也是这个现象吧

这个是没加p的现象吧
作者: lyb    时间: 2013-4-25 22:03
wen123 发表于 2013-4-25 21:59
这个是没加p的现象吧



作者: wen123    时间: 2013-4-25 22:07
lyb 发表于 2013-4-25 22:03

兄弟你对我那个速度闭环在原点稍微的移动这个问题,你再怎么看
作者: lyb    时间: 2013-4-25 22:14
wen123 发表于 2013-4-25 22:07
兄弟你对我那个速度闭环在原点稍微的移动这个问题,你再怎么看

我的速度反馈加上根本就调不出官方的效果,我正郁闷呢

作者: wen123    时间: 2013-4-25 22:25
lyb 发表于 2013-4-25 22:14
我的速度反馈加上根本就调不出官方的效果,我正郁闷呢

那你的是什么效果啊、/
作者: 昌林旺旺    时间: 2013-4-26 01:29
帮顶
作者: 猎鹰2013    时间: 2013-4-26 03:02
wen123 发表于 2013-4-25 21:58
那该怎么解决?个人认为是直立不够硬导致的,但p过大会引起高频抖动,貌似用d消除不了啊

加个死区 看看 不过我调着调着 貌似好很多了  就没去弄个它
作者: wen123    时间: 2013-4-26 07:11
昌林旺旺 发表于 2013-4-26 01:29
帮顶

谢谢
作者: wen123    时间: 2013-4-26 07:11
猎鹰2013 发表于 2013-4-26 03:02
加个死区 看看 不过我调着调着 貌似好很多了  就没去弄个它

好的,我去试试
作者: lyb    时间: 2013-4-26 09:35
wen123 发表于 2013-4-25 22:25
那你的是什么效果啊、/

向一边走可以回来,之后就向另一边加速跑下去了

作者: yahui123    时间: 2013-4-26 09:55

作者: ベ咔布奇シ诺    时间: 2013-4-27 10:25
同样问题颇多,还得自己熬啊
作者: kido    时间: 2013-4-27 12:54
:o:o:o
作者: verm    时间: 2013-4-27 16:56

作者: 山人    时间: 2013-4-28 16:17

作者: 荷马111    时间: 2013-4-28 17:41
♂ˇ邂逅√♀ 发表于 2013-4-25 19:04
那我先问你问题:
1.你用什么东西来测速?编码器?编码盘?确保它们采集的数据准确性不?编码器/盘采集的数 ...

编码器和编码盘加低通滤波是什么意思?是多次取平均值吗?还是其他的软件的处理方法,或者硬件滤波?

作者: ♂ˇ邂逅√♀    时间: 2013-4-28 17:44
荷马111 发表于 2013-4-28 17:41
编码器和编码盘加低通滤波是什么意思?是多次取平均值吗?还是其他的软件的处理方法,或者硬件滤波?

我写个式子,你感受一下下...

speed=speed*0.8+speedNew*0.2
其中,0.8+0.2=1,只要符合和是1就行了。speed是上次采集的最终数据,speedNew是速度刚刚采集到的数据。经过这样滤波,我大概是0.5+0.5那样子吧,效果很好~~~

作者: 荷马111    时间: 2013-4-28 17:56
♂ˇ邂逅√♀ 发表于 2013-4-28 17:44
我写个式子,你感受一下下...

speed=speed*0.8+speedNew*0.2

明白了,谢谢了。我用的是20ms采集一次编码器,然后取五次累加,求平均。稳定性还好,不过和你的对照起来,有些浪费CPU资源。能留个qq交流吗,我的是1120052221.

作者: yahui123    时间: 2013-4-28 18:00

作者: 龙少3    时间: 2013-4-28 19:15
呵呵
作者: 红杏爱蓝颜    时间: 2013-5-1 15:32
表示和楼主遇到的问题很类似呀,楼主解决了一定要说一声呀,谢谢啦!!!
作者: 圣徒    时间: 2013-5-1 22:41
求lz帮忙啊
已经两天了,来回5cm晃啊,
真心求帮助
作者: wen123    时间: 2013-5-1 23:25
红杏爱蓝颜 发表于 2013-5-1 15:32
表示和楼主遇到的问题很类似呀,楼主解决了一定要说一声呀,谢谢啦!!!

好的,希望你也是喔,,,,搞好了互相说一下啦
作者: wen123    时间: 2013-5-1 23:26
圣徒 发表于 2013-5-1 22:41
求lz帮忙啊
已经两天了,来回5cm晃啊,
真心求帮助

好没搞定啦
作者: wen123    时间: 2013-5-1 23:27
♂ˇ邂逅√♀ 发表于 2013-4-28 17:44
我写个式子,你感受一下下...

speed=speed*0.8+speedNew*0.2

为啥可以这样,,你能分析一下吗??不懂啊
作者: 沫XY    时间: 2013-5-2 08:40
感觉应该先调死区电压,在调节速度闭环!
作者: 飞思卡尔小虎    时间: 2013-5-2 14:57

作者: wen123    时间: 2013-5-2 16:18
沫XY 发表于 2013-5-2 08:40
感觉应该先调死区电压,在调节速度闭环!

是调完直立过后吗???这么说你是加了死区电压了???不过官方不是没加死区电压吗?也能静止啊,,,你的能
作者: 辛少    时间: 2013-5-2 16:25

作者: /sun一    时间: 2013-5-2 16:40
我的也有这个问题,不过速度加上去,也能跑,校赛迫在眉睫,也顾不得细调了。
作者: 一枕清风    时间: 2013-5-2 16:47
问题2  加速度计中间值小了。

作者: 727589751    时间: 2013-5-4 06:04
请问楼主解决这个问题(匀速)了吗 我们的小车也是这个情况 求传授经验啊
作者: ♂ˇ邂逅√♀    时间: 2013-5-4 23:50
wen123 发表于 2013-5-1 23:27
为啥可以这样,,你能分析一下吗??不懂啊

旧的速度占一定比例a,新的刚测到的速度占比例(1-a),这样a+(1-a)=1.得到的值就是当前速度。这样的做法好处在于:
1.不会因为一时的错误数据(比如编码盘丢线或者程序的问题)造成太大影响
2.不会因为一时的误差数据(在一些弯道障碍等时候轮子不小心飘了而产生的某个瞬间值)造成太大影响
3.速度的最终值会显得更加平滑,速度值的抖动不会太大,然后,就没有然后了...

作者: wen123    时间: 2013-5-5 09:33
♂ˇ邂逅√♀ 发表于 2013-5-4 23:50
旧的速度占一定比例a,新的刚测到的速度占比例(1-a),这样a+(1-a)=1.得到的值就是当前速度。这样的做 ...

谢谢啦啦啦啦啦!!!
作者: 雪山枫叶1    时间: 2013-5-6 22:47
我发现死区电压可以增大可以减小震动艾
作者: 微电部队    时间: 2013-5-6 23:05

作者: 似水、流年。    时间: 2013-5-7 11:01
算法很好啊,用的是PID控制速度吗
作者: lyb    时间: 2013-5-7 19:39
楼主的问题解决了吗?
作者: wen123    时间: 2013-5-7 19:41
lyb 发表于 2013-5-7 19:39
楼主的问题解决了吗?

差不多了。。。你小车跑起来没啊???
作者: lyb    时间: 2013-5-7 19:52
wen123 发表于 2013-5-7 19:41
差不多了。。。你小车跑起来没啊???

没有,我加了速度反馈,没效果啊,他还是向一个方向跑,越跑越快

作者: wen123    时间: 2013-5-7 19:58
lyb 发表于 2013-5-7 19:52
没有,我加了速度反馈,没效果啊,他还是向一个方向跑,越跑越快

pi调大点啊!!
作者: lyb    时间: 2013-5-7 20:08
wen123 发表于 2013-5-7 19:58
pi调大点啊!!

恩,我试试,加个好友吧,以后有问题好请教啊

作者: 风行天下    时间: 2013-5-8 01:46
lyb 发表于 2013-5-7 19:52
没有,我加了速度反馈,没效果啊,他还是向一个方向跑,越跑越快

我和你遇到一样的情况,请问你解决了吗???我都困惑好久了。。。

作者: lyb    时间: 2013-5-8 02:05
风行天下 发表于 2013-5-8 01:46
我和你遇到一样的情况,请问你解决了吗???我都困惑好久了。。。

还没呢,正在解决啊

作者: 风行天下    时间: 2013-5-8 02:15
lyb 发表于 2013-5-8 02:05
还没呢,正在解决啊

加个QQ吧,好交流。我的QQ号:297380248

作者: lyb    时间: 2013-5-8 02:17
风行天下 发表于 2013-5-8 02:15
加个QQ吧,好交流。我的QQ号:297380248

好的

作者: 樽中月影﹠    时间: 2013-5-9 00:02
wen123 发表于 2013-5-7 19:41
差不多了。。。你小车跑起来没啊???

楼主是怎么解决的啊,我们也遇到了类似的问题,都调了3天的速度PI了,感觉没什么效果啊,始终达不到官网的效果,和你的好像一样,给速度会有点头的现象,郁闷死了,请楼主赐教啊

作者: wen123    时间: 2013-5-9 00:30
速度点头速度闭环过大,改小点就行了
作者: wen123    时间: 2013-5-9 00:30
樽中月影﹠ 发表于 2013-5-9 00:02
楼主是怎么解决的啊,我们也遇到了类似的问题,都调了3天的速度PI了,感觉没什么效果啊,始终达不到官网的 ...

速度点头速度闭环过大,改小点就行了
作者: FHFF1234    时间: 2013-5-12 16:22
楼主给点经验 我们的速度也调不好 你用到 speed = 0.8*speed+ 0.2*speednew了吗

作者: wen123    时间: 2013-5-14 07:43

作者: liuqifw2010    时间: 2013-5-14 14:44

作者: wen123    时间: 2013-5-16 00:06
FHFF1234 发表于 2013-5-12 16:22
楼主给点经验 我们的速度也调不好 你用到 speed = 0.8*speed+ 0.2*speednew了吗

没有,我的还是求平均值,

作者: FHFF1234    时间: 2013-5-16 12:42
wen123 发表于 2013-5-16 00:06
没有,我的还是求平均值,

这样 啊



作者: new_life    时间: 2013-5-16 17:00
♂ˇ邂逅√♀ 发表于 2013-4-25 19:04
那我先问你问题:
1.你用什么东西来测速?编码器?编码盘?确保它们采集的数据准确性不?编码器/盘采集的数 ...

I是很小的 量是什么意思
作者: wen123    时间: 2013-5-16 21:55
new_life 发表于 2013-5-16 17:00
I是很小的 量是什么意思

积分量不都很小么?
作者: ♂ˇ邂逅√♀    时间: 2013-5-17 01:01
new_life 发表于 2013-5-16 17:00
I是很小的 量是什么意思

不知道如何回答你的问题。因为,不同系统,“小”的定义也不同。有些系统,100是小,有些系统,0.001都算大。只能建议,一点点慢慢调。反正,有一点是肯定的:如果大了,轮子肯定乱了~~~

作者: new_life    时间: 2013-5-17 07:30
猎鹰2013 发表于 2013-4-26 03:02
加个死区 看看 不过我调着调着 貌似好很多了  就没去弄个它

价格死去 貌似 没影响

作者: 唯楚有青    时间: 2013-5-17 08:16
参数还要好好调,加上速度环后,要同时调直立环,加上方向环后还要整合直立与速度环。
作者: Tenacity    时间: 2013-5-17 09:30
加不加死区  影响不大的
作者: wen123    时间: 2013-5-17 12:25
Tenacity 发表于 2013-5-17 09:30
加不加死区  影响不大的

恩呢

作者: xiaoyuyzx    时间: 2013-5-17 21:33

作者: wen123    时间: 2013-5-18 02:03
很晚了睡觉
作者: wen123    时间: 2013-5-18 14:12
xiaoyuyzx 发表于 2013-5-17 21:33

谢谢回复
作者: 小鸣人    时间: 2013-5-18 19:48

作者: 小鸣人    时间: 2013-5-18 19:48
。。。。。。。。。。。。。。。。
作者: 1357674029    时间: 2013-5-18 20:23
可能是陀螺仪的温漂
作者: wen123    时间: 2013-5-20 01:36

作者: 飞鸿印雪    时间: 2013-5-25 10:00
典型的i参数大了
作者: wen123    时间: 2013-5-25 12:20
飞鸿印雪 发表于 2013-5-25 10:00
典型的i参数大了

恩恩,对
作者: kido    时间: 2013-5-29 23:33
wen123 发表于 2013-5-25 12:20
恩恩,对

楼主,你第2个问题解决了吗?我们也是遇到了这样的问题,很烦恼

作者: wen123    时间: 2013-6-12 11:41
♂ˇ邂逅√♀ 发表于 2013-4-28 17:44
我写个式子,你感受一下下...

speed=speed*0.8+speedNew*0.2

大哥你好!!你这个公式是一阶线性滤波么?还是采样定理得来的?公式1:speed=speed*0.8+speedNew*0.2,,,公式2:speed=speednow*0.8+speedlast*0.2,speedlast=speednow,其中speed为处理的数据量,speednow是当前编码器测得量,speedlast上次编码器测得,那公式2可以滤波吗?我看到不同的人好像用的不一样。。有区别吗?
作者: ♂ˇ邂逅√♀    时间: 2013-6-12 11:45
wen123 发表于 2013-6-12 11:41
大哥你好!!你这个公式是一阶线性滤波么?还是采样定理得来的?公式1:speed=speed*0.8+speedNew*0.2,, ...

这个是一阶低通滤波来的。亲啊,我的那个公式,跟你那公式2,有区别么?...一个样的啊...

作者: wen123    时间: 2013-6-12 14:56
♂ˇ邂逅√♀ 发表于 2013-6-12 11:45
这个是一阶低通滤波来的。亲啊,我的那个公式,跟你那公式2,有区别么?...一个样的啊...

明显有啊。。你的是本次编码器测的速度乘以一个系数再加上上次低通滤波的数据乘以一个系数作为标准的速度量,而我的是本次编码器测的乘以一个系数再加上上次编码器测的数据乘以一个系数作为标准的速度量,不知道哪种可以滤波?speed=speed*0.8+speedNew*0.2,,,公式2:speed=speednow*0.8+speedlast*0.2,speedlast=speednow,其中speed为处理的数据量,
作者: ♂ˇ邂逅√♀    时间: 2013-6-12 16:31
wen123 发表于 2013-6-12 14:56
明显有啊。。你的是本次编码器测的速度乘以一个系数再加上上次低通滤波的数据乘以一个系数作为标准的速度 ...

啊,你这样,如果上次编码器的值有较大误差,那对本次的值仍然有较大影响嚄...你用我的这个式子吧亲...哈!~

作者: wen123    时间: 2013-6-12 21:55
♂ˇ邂逅√♀ 发表于 2013-6-12 16:31
啊,你这样,如果上次编码器的值有较大误差,那对本次的值仍然有较大影响嚄...你用我的这个式子吧亲...哈 ...

亲!已用了你的公式啦,,再问一下,我一开机速度会很快过一段时间再减下来这个是什么原因??我开机延时一下还是这样?是啥原因??上图:[attach]46807[/attach]红色是设定的速度。。黄色时实际的速度。。然后它一开机就冲到好高了,啥原因?
作者: ♂ˇ邂逅√♀    时间: 2013-6-12 22:06
wen123 发表于 2013-6-12 21:55
亲!已用了你的公式啦,,再问一下,我一开机速度会很快过一段时间再减下来这个是什么原因??我开机延时 ...

呃,这啥来的?!~~怎么,预设速度成矩形的?!~~~~黄色那条又一直增加到过头了还不会调节过来的,啥情况吖...

作者: wen123    时间: 2013-6-12 22:11
♂ˇ邂逅√♀ 发表于 2013-6-12 22:06
呃,这啥来的?!~~怎么,预设速度成矩形的?!~~~~黄色那条又一直增加到过头了还不会调节过来的,啥情况 ...

我是让他只跑了一下,地方没那么长。吧方向控制去了。一段时间后可以达到预定值,但为啥刚开始那么大,那个矩形波是我开机几次连续跑的结果。。本来想分几次把设定速度加上去,可还是这样,,上图[attach]46808[/attach]
作者: ♂ˇ邂逅√♀    时间: 2013-6-13 00:53
wen123 发表于 2013-6-12 22:11
我是让他只跑了一下,地方没那么长。吧方向控制去了。一段时间后可以达到预定值,但为啥刚开始那么大,那 ...

实际效果呢?效果如何?!~数据只是参考分析的,效果才重要

作者: wen123    时间: 2013-6-13 01:03
♂ˇ邂逅√♀ 发表于 2013-6-13 00:53
实际效果呢?效果如何?!~数据只是参考分析的,效果才重要

效果感觉和以前一样就是到很长路程,还在加速,,感觉跑的很稳啊。只不过刚开机速度好快看似1.8过一段时间尼玛1.3、这样能行吗?与障碍不直接挂了!!求解啥原因啊?

作者: ♂ˇ邂逅√♀    时间: 2013-6-13 01:04
wen123 发表于 2013-6-13 01:03
效果感觉和以前一样就是到很长路程,还在加速,,感觉跑的很稳啊。只不过刚开机速度好快看似1.8过一段时间 ...

那应该就是算法问题了哦!~~这个啊,得自己研究研究处理处理哈!~~

作者: wen123    时间: 2013-6-13 01:24
♂ˇ邂逅√♀ 发表于 2013-6-13 01:04
那应该就是算法问题了哦!~~这个啊,得自己研究研究处理处理哈!~~

不会吧,,这个跟算法没关系吧,。我感觉速度闭环那块有问题

作者: ♂ˇ邂逅√♀    时间: 2013-6-13 10:09
wen123 发表于 2013-6-13 01:24
不会吧,,这个跟算法没关系吧,。我感觉速度闭环那块有问题

呃...来来去去要么算法要么参数...参数上优化不行了就修改算法吖,咔咔~~

作者: 雨晴    时间: 2013-12-25 16:00
lyb 发表于 2013-5-7 19:52
没有,我加了速度反馈,没效果啊,他还是向一个方向跑,越跑越快

现在也是这个状态啊。。。怎么解决的啊?
作者: 梦在星河之畔    时间: 2014-3-28 22:11
wen123 发表于 2013-5-9 00:30
速度点头速度闭环过大,改小点就行了

楼主速度闭环控制时,角度输出PWM和速度输出PWM的极性是怎么确定的???是相同还是相反????求救啊!!

作者: 梦在星河之畔    时间: 2014-3-28 22:20
唯楚有青 发表于 2013-5-17 08:16
参数还要好好调,加上速度环后,要同时调直立环,加上方向环后还要整合直立与速度环。

大神,求救!!正在速度控制和角度控制的结合上感到困惑,直立和速度环该怎样整合呢????极性如何确定???是相同还是相反????还有,我看别人的技术报告时发现最后方向控制那一块,两个电机输入的极性竟然是相反的,求解!!!!

作者: 海豚    时间: 2014-3-28 23:05
速度方向整对了吗,还是你的速度只有一个方向
作者: 唯楚有青    时间: 2014-4-2 12:54
左边:直立—速度+方向;右边:直立-速度-方向。
作者: 唯楚有青    时间: 2014-4-2 12:55
梦在星河之畔 发表于 2014-3-28 22:20
大神,求救!!正在速度控制和角度控制的结合上感到困惑,直立和速度环该怎样整合呢????极性如何确定 ...

左边:直立-速度+方向
右边:直立-速度-方向


作者: 梦在星河之畔    时间: 2014-4-2 13:13
唯楚有青 发表于 2014-4-2 12:55

嗯,谢谢

作者: mizimizi小麦    时间: 2015-4-21 23:06
♂ˇ邂逅√♀ 发表于 2013-4-25 19:04
那我先问你问题:
1.你用什么东西来测速?编码器?编码盘?确保它们采集的数据准确性不?编码器/盘采集的 ...

I的调节需要像视频中说的在某个点来回摆吗?那样的话I就不小了





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