智能车制作

标题: 一直在做摄像头,今天我调了调自平衡。 [打印本页]

作者: yukunlinykl    时间: 2012-3-21 23:12
标题: 一直在做摄像头,今天我调了调自平衡。
师弟纠结了很久,实在看不下去了,就调了调自平衡,跟大家分享一下经验。

去年年底,我用L3G4200D  (只用了一个陀螺仪)实现了站立,任意长时间不倒。但是会缓慢地在地面到处乱跑。

昨天用规定的ENC-03试了试,确实不咋地,不知道是传感器本身的问题还是外围电路的问题,反冲非常严重。

以至于用去年的程序思想完全不行。

考虑过自己做传感器外围电路,可是时间来不及,就快要校内赛了。

于是硬着头皮上。

过程有些曲折,就不详述了,直接说结果吧。

平衡算法共分三层闭环,最内层是角度环,中间加速度环(加速度的积分),外层路程环。

该三个量各自对应一个系数P1 P2 P3,其微分(角速度,加速度,轮子转速)各自对应一个系数D1 D2 D3

电机占空比 为上述六项之和。

参数调节顺序是: P1 D1 P2 D2 P3 D3 即从内到外从P到D迭代调节,具体来讲大概是:
P1 D1 P1 D1
P2 D2 P2 D2
P1 D1 P1 D1
P3 D3 P3 D3
P2 D2 P2 D2
P1 D1 P1 D1
P2 D2 P2 D2
P3 D3 P3 D3
的顺序

三层闭环的含义是:
角度由角速度积分而得,故会有累积误差,具体表现在为:小车在晃动中朝向一边跑,越跑越歪,最终倒下。
此误差用加速度的积分值修正,因为小车一直歪向一边,则加速度的积分值越来越大,该项则可与角度的累积误差抵消。
加速度的积分也有累积误差,具体表现在为:小车向一个方向跑(没有歪),越跑越快,最优因为电机速度达到上限而倒下。
此误差用路程修正,因为小车朝向一个方向跑,则路程越来越大,该项则可与加速度的误差抵消。

由以上含义也可以看出六个系数的调试顺序。

其实根据我去年的经验,如果角速度足够精确,加速度根本不需要,两层环足够了,只是ENC-03确实令人无语。

按照这个方法,一两天之内应该能立起来。

现在已经立得还可以了,还不是太稳,交给师弟调参数去了。

祝大家好运。

若有不同意见或更好的思路,敬请大家交流。

P.S. 我没有看过清华的方案,所以不知道跟他们是不是有些重复,如果一样,就当我什么也没说吧。

作者: yukunlinykl    时间: 2012-3-21 23:17
对了,关于卡尔曼滤波,呃,怎么说呢,我感觉没用,我一点滤波都没用。
如果非要用,我倒更倾向平均滤波,程序简单,含义明确。
感觉卡尔曼滤波是理论意义非常好的。
我对返回上位机的数据尝试过滤波,用软件做过图,结果是:
取适当参数时,卡尔曼滤波和平均滤波的曲线几乎完全重合。
毕竟低通滤波器都是将测量值往真值附近靠拢。
统计意义上是近似的。

作者: LJG    时间: 2012-3-22 00:10
你好你看过官方的电磁的程序了吗?

作者: whut_RY    时间: 2012-3-22 10:34
顶!
作者: yukunlinykl    时间: 2012-3-22 13:59
LJG 发表于 2012-3-22 00:10
你好你看过官方的电磁的程序了吗?

没有,我没有看过比赛官方任何资料。(除了规则)

作者: zl6977    时间: 2012-3-22 21:41
靠谱
作者: 我の小车    时间: 2012-3-22 22:04
谢了
作者: erchowyo    时间: 2012-3-24 22:12

作者: klain    时间: 2012-3-25 15:44
楼主,你是哪个学校的?  
作者: jzfffzj    时间: 2012-4-7 10:19

作者: whitek    时间: 2012-4-19 10:02
{:soso_e179:}
作者: 月光疾风    时间: 2012-5-5 00:10
高手~
作者: philbar    时间: 2012-5-5 16:41
lz高手哟,基本上和官方方案一样
作者: 赛车小子    时间: 2012-5-5 19:32
请问直立起来需要加编码器吗?
作者: blueskywalker    时间: 2012-5-5 21:10

作者: 许四军    时间: 2012-5-6 12:39
顶一个





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