智能车制作
标题:
一直在做摄像头,今天我调了调自平衡。
[打印本页]
作者:
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://dns.znczz.com/)
Powered by Discuz! X3.2