心_如止水 发表于 2012-4-3 11:19:28

飞思卡尔单轴两轮平衡车制作经验交流,附资料,实时更新

本帖最后由 心_如止水 于 2012-4-3 14:13 编辑

                辛苦了大概两个多月,之前一直都调不好。中间也遇到了很多的问题,但当问题解决后每次都是重大的突破。现在就介绍一下,制作过程中遇到的问题。
                1、关于加速度计的转换系数
                要制作自平衡车,角度和角速度的计算就很重要。关于加速度计和陀螺仪的使用就不多说了,他们一个用来测加速度计,一个用来测角速度。
                把从加速度计读出来的数据转换成角度,要乘以一个比例系数。在转换成角度角度的过程中,可以完全不用三角函数(因为车的倾角其实不会超过正负10度,后面会提到),直接把(最大值-最小值)/90(/2如果有正负的话)作为比例系数就可以了(这样可以和真实角度比较)。其实理论上这个比例系数是什么都可以,因为后面陀螺仪转换系数是根据加速度计的转换比例系数跳出来的,所以加速度计的比例系数无论是什么值都没有影响。
               
                2、关于陀螺仪转换系数
                陀螺仪的转换系数需要根据滤波的波形来调(我是在飞思卡尔公布的官方方案中看到的,经实践千真万确),陀螺仪的转换系数不用去算,只需要通过看波形去调就可以了,直到不超调也不滞后就可以了,具体的可以看附件官网方案中的93页(第二版)。
               
                3、关于滤波
                角度滤波有很多方案,我所知道的是互补滤波、官网的方案和卡尔曼滤波,我的感想是什么滤波都不重要,重要的是参数要调好。

                互补滤波:这是很简单也很实用的方法,其实和官网的方案有一点类似的地方,在网上有一个很著名的20页的PPT文件The Balance Filter,介绍的是互补滤波,相信大家看了之后都会明白的。在文件中,作者把高通滤波系数a和时间常数T(涛,不知道怎么打出来)及采样周期dt用一个公式建立了联系,而我的经验是,我们不要用这个公式去计算。高通滤波系数取0.98(不能比0.98再小了,会不平滑),采样周期根据你程序的需要是多少就多少(5ms的效果会比10ms好很多,越小越好),滤波可以通过调陀螺仪的转换系数达到很好的效果。也就是说,用互补滤波的关键调试参数是陀螺仪转换系数,把加速度计转换系数、高通滤波系数和采样周期定好之后,只需要调试陀螺仪转换系数就可以达到满意的效果了
                PS:互补滤波的效果一定不差,我看过网上用互补滤波和单纯的P控制达到很好的效果的。

                官网滤波方案:我总觉得官网的和互补滤波有些相似,经实验,效果也是很好的。具体的公式在参考方案里面也有。调试的关键就是陀螺仪转换系数。

                卡尔曼滤波:一直没用过,也不会用,主要是没弄懂。我不喜欢用一知半解的东西,因为出现问题的时候排查不出来或者不知道怎么解决问题。网上也有很多卡尔曼滤波的程序,因为一直看不懂,就连试也没试。如果会用的话,效果应该是好的,但我不会用。如果有谁用兴趣的话还请多多指教,互相交流一下。

                4、关于控制
                当然有再好的角度和角速度控制不好的话也是站不好的。控制就用一般的PID控制,PWM=P*角度+D*角速度,这里没用积分控制,效果已经很好了。
                在官网的方案中,还加上了死区电压,我的最大的体会就是,这个死区电压是可以不要的,而且不要更好(或者去一个小一点的值)。
                这样的话就要把P调的很大。具体是多大呢,至少是电机满值的十分之一(五分之一甚至三分之一都是没问题的),例如电机最大输出是1的话,P取0.1、0.2、0.3都是没问题的(官网的方案好像是取的0.3),如果点击最大输出是5000的话,那么P取500、1000、1500都是可以的,(当然前提是加速度计转换系数转换出来的角度值和真实值相当,否则另当别论)。所以车模的角度应该不会超过正负十度,因为当P=0.3的时候,车模有三度多的偏差时电机就满电压输出了。我之前就是一直用一个很小的P去调,原来所有的问题就在于把P调大就可以了。
                至于D的话,大概在P的七十分之一或八十分之一之间都是可以有很好的效果的。这个关系就和加速度转换系数没有关系了。比如官网中P=0.3则D=0.3*1/75=0.004,在我这里P=1000,则D=1000*1/75=13.3,效果都是很好的。PS:这个关系只是在车模静止平衡时的关系,行进中的关系我还没有实验过。

                5、说明
                (1)陀螺仪的过冲是一个严重问题,高通滤波的那个电容是不可取的,要把它去掉才好。
                (2)每一步都是关键,要真正理解原理才会知道怎么调。
                (3)资料不知道怎么上传,他总是说附件超过大小了,有需要的可以留言

               下一步打算把速度控制加上,谁有好的又不是很贵的编码器可以推荐下,谢谢!

               

up101 发表于 2012-4-3 11:29:00

本帖最后由 up101 于 2012-4-3 11:30 编辑

附件可以分卷压缩。

这儿老规矩貌似不能留邮箱,,

lz还是用的enc03?

心_如止水 发表于 2012-4-3 12:04:42

嗯嗯,是enc03,加速计是mma8451的

xsh2005105326 发表于 2012-4-3 12:42:06

经验宝贵,只有自己经历过了认知就深刻

心_如止水 发表于 2012-4-3 13:33:03

up101 发表于 2012-4-3 11:29 static/image/common/back.gif
附件可以分卷压缩。

这儿老规矩貌似不能留邮箱,,


飞思卡尔比赛规定只能用enc03的陀螺仪,我的加速度计用的是mma8451

wujohn 发表于 2012-4-5 10:50:15

我的控制时p不敢加大,加大后斗得厉害,你用10%+的p的抖啊?

wujohn 发表于 2012-4-5 14:39:26

lz的p是10%+,请问您的角度单位是deg还是rad?另外,lz想买带码盘的电机可以考虑淘宝上二手escap电机,大概45一个,很爽

zixo 发表于 2012-4-6 23:52:04

哥们,我老是下载不了 互补滤波器The Balance Filter.zip !你发到我邮箱里吧970050571的qq.com 谢谢了哦!还得向你学习。

newhand1991 发表于 2012-4-7 09:15:26

和我的感受差不多

wujohn 发表于 2012-4-7 13:32:12

感谢楼主,我调了几个月没有效果,现在改进了滤波,能站立了,但是小车有往一边跑的趋势,不知道lz是否遇到过,这个能否用修改加速度计基准的方法来解决?

心_如止水 发表于 2012-4-7 16:32:06

wujohn 发表于 2012-4-5 14:39 static/image/common/back.gif
lz的p是10%+,请问您的角度单位是deg还是rad?另外,lz想买带码盘的电机可以考虑淘宝上二手escap电机,大概 ...

我之前也是用很小的P,一直抖,但是把P加大后竟然就不抖了,在加大P的同时也把死区电压减小了,P加到30%、40%都没问题的

心_如止水 发表于 2012-4-7 16:33:23

wujohn 发表于 2012-4-7 13:32 static/image/common/back.gif
感谢楼主,我调了几个月没有效果,现在改进了滤波,能站立了,但是小车有往一边跑的趋势,不知道lz是否遇到 ...

往一边加速,往另一边推都推不倒的话就是角度的零点没有调好,调好了就可以站的很好了

ratar 发表于 2012-4-7 18:08:24

下载了,学习一哈

wujohn 发表于 2012-4-8 10:15:17

心_如止水 发表于 2012-4-7 16:32 static/image/common/back.gif
我之前也是用很小的P,一直抖,但是把P加大后竟然就不抖了,在加大P的同时也把死区电压减小了,P加到30% ...

你用的电机驱动是什么?我用7970,线性度较好,感觉p用不着那么大

walton_smith 发表于 2012-4-8 10:17:52

表示支持了,今年的电磁组很坑爹。。。

culapple 发表于 2012-4-11 21:15:09

我的小车也有一边跑的趋势,小车2边不一样重,不平衡啦,配了个重,搞定~

cooleaf 发表于 2012-4-12 08:48:14

想看看那个官方方案(第二版),有谁能上传一下不?而且近来发现论坛下载不了了。

qingyin2009 发表于 2012-4-12 09:27:11

额,去年也是电磁组的,不过方案没怎么换

goolloo 发表于 2012-4-12 11:35:36

qingyin2009 发表于 2012-4-12 09:27 static/image/common/back.gif
额,去年也是电磁组的,不过方案没怎么换

去年你们电磁检测那块使用的什么样的放大电路?

fshunj 发表于 2012-4-12 11:46:27

心_如止水 发表于 2012-4-7 16:33 static/image/common/back.gif
往一边加速,往另一边推都推不倒的话就是角度的零点没有调好,调好了就可以站的很好了 ...

大虾,请问你是怎么调节速度环的啊.入弯加速怎么解决,速度太快会失控

nongxiaoming 发表于 2012-4-12 12:05:06

这个不错啊,呵呵我们学校也有人在搞~~

qingyin2009 发表于 2012-4-12 13:19:57

goolloo 发表于 2012-4-12 11:35 static/image/common/back.gif
去年你们电磁检测那块使用的什么样的放大电路?

官方三极管放大的,呵呵,最便宜的

springsky 发表于 2012-5-29 17:24:46

谢谢楼主分享这么宝贵的经验了。

springsky 发表于 2012-5-29 17:26:33

楼主说的高通滤波的那个电容是哪一个?

yyoung 发表于 2012-5-29 21:09:36

mark      

lgupen 发表于 2012-5-30 17:04:01

springsky 发表于 2012-5-29 17:26 static/image/common/back.gif
楼主说的高通滤波的那个电容是哪一个?

陀螺仪信号出来接的那个电容就是楼主说的那个。。。。。

springsky 发表于 2012-5-30 17:34:37

lgupen 发表于 2012-5-30 17:04 static/image/common/back.gif
陀螺仪信号出来接的那个电容就是楼主说的那个。。。。。

哦。是DATASHEET中的那个。

lgupen 发表于 2012-5-31 10:22:18

springsky 发表于 2012-5-30 17:34 static/image/common/back.gif
哦。是DATASHEET中的那个。

就是手册上那个,好像标号是C2吧,记不清了,呵呵。。。。

452296864 发表于 2012-6-2 20:26:54

mark!!!!!!!!!!!!!!!!

uddiao 发表于 2012-6-13 12:08:04

感谢分享~

cai_mouse 发表于 2012-6-17 09:08:23

请问楼主的<<飞思卡官方方案>>能发一下好吗

wangzihan0202 发表于 2012-6-30 23:50:27

我来了 看看你们的作品

xiepan2010 发表于 2012-7-1 08:59:45

你好    求资料!谢谢   xiepan2010@hotmail.com

程科 发表于 2012-7-2 14:34:21

不错 深有体会啊

mytowns 发表于 2012-7-5 10:02:34

我现在也在做一个载人的自平衡电动车,在调程序,谢谢你的调试心得。

尘心远1991 发表于 2012-9-1 01:55:56

很受益,谢谢啦

1yumao 发表于 2012-9-1 21:42:38

cai_mouse 发表于 2012-6-17 09:08 static/image/common/back.gif
请问楼主的能发一下好吗

这个在飞思卡尔官网上有

heimantou 发表于 2012-9-2 15:57:17

很不错的经验。谢谢。

cai_mouse 发表于 2012-9-3 21:42:56

1yumao 发表于 2012-9-1 21:42 static/image/common/back.gif
这个在飞思卡尔官网上有

谢谢!{:smile:}

xiao6ye 发表于 2012-9-4 08:24:50

mark 学习一下~~~

sdlibin007 发表于 2012-9-10 17:20:44

{:smile:}{:smile:}{:smile:}

sweet_xiaowu 发表于 2012-10-14 17:14:28

mark!!!

lehemu 发表于 2012-11-9 16:58:15

mark 一下 学习了

chenjiawei7 发表于 2012-11-10 19:03:55

我的电机的最大值为255,我把P定在25,车怎么抖的非常厉害,一点点都不能控制,加了D以后也不行

chenjiawei7 发表于 2012-11-10 19:24:11

比例这么大怎么可能啊    我用的mpu6050,互补滤波,出来的波形还可以吧

lehemu 发表于 2012-11-11 12:37:28

学习了 mark

hls 发表于 2012-11-11 17:35:23

学习一下啦

freebird_sp 发表于 2012-12-9 11:35:07

官网的方案不知在那里能下载,楼主如果有,请给我发一份。freebird_sp@163.com。谢谢!

Doctor_A 发表于 2012-12-9 11:43:17

智能汽车进军阿莫了。。。

浅笑一生 发表于 2012-12-25 20:18:34

学习{:lol:}{:lol:}

zanran8 发表于 2013-1-2 12:22:18

rantingting 发表于 2013-1-2 19:17:01

我就知道飞思的小车模还是比较贵的

seazhui 发表于 2013-1-2 19:32:07

qingyin2009 发表于 2012-4-12 13:19 static/image/common/back.gif
官方三极管放大的,呵呵,最便宜的

我们也是,但是我们有个老师说放大器也可以,而且不贵,1块以下,但是我们的带队老师说要十多块。。。。然后不给用。。。

waterboy2005 发表于 2013-1-3 20:13:31

我现在也在做一个载人的自平衡电动车,在调程序,谢谢你的调试心得

EONE 发表于 2013-1-3 22:08:31

楼主你用的是什么加速度传感器芯片呀,能用来测里程吗

number007cool 发表于 2013-1-7 12:45:29

楼主能否分享下速度环位置环的调试经验

oldersu 发表于 2013-1-7 18:40:15

心_如止水 发表于 2012-4-7 16:33 static/image/common/back.gif
往一边加速,往另一边推都推不倒的话就是角度的零点没有调好,调好了就可以站的很好了 ...

请问,零点是调这个吗?        Angle_ax = (Accel_x - 1250) /16384;   //去除零点偏移,计算得到角度(弧度)

diyeyuye 发表于 2013-1-8 11:19:59

不错不错,现在调试的没有头绪,楼主的这些经验给了我很大的启发啊

diyeyuye 发表于 2013-1-8 11:48:34

楼主你去年写的程序 可以发给我参考一下吗?谢谢{:handshake:}

Gost 发表于 2013-1-16 23:56:47

学习互补滤波器了

业未央 发表于 2013-2-17 11:22:56

EONE 发表于 2013-1-3 22:08 static/image/common/back.gif
楼主你用的是什么加速度传感器芯片呀,能用来测里程吗

你有加速计测里程的方案了吗?

EONE 发表于 2013-2-17 16:41:02

业未央 发表于 2013-2-17 11:22 static/image/common/back.gif
你有加速计测里程的方案了吗?

没有,实现不了

业未央 发表于 2013-2-19 09:42:15

EONE 发表于 2013-2-17 16:41 static/image/common/back.gif
没有,实现不了

我觉得单用加速计实现不了里程的计算,有什么好的想法吗?

Funy 发表于 2013-2-20 10:53:04

业未央 发表于 2013-2-17 11:22 static/image/common/back.gif
你有加速计测里程的方案了吗?

测里程不能用加速度计

Funy 发表于 2013-2-20 10:55:46

http://item.taobao.com/item.htm?spm=686.1000925.1000774.46.LNzu5L&id=17054976850可以参考一下小车
http://item.taobao.com/item.htm?spm=2013.1.w2177705433.2.w6f575&id=21115568265   

853728579 发表于 2013-3-16 20:23:25

大神,能不能给我传个资料,邮箱:853728579@qq.com

墨雪 发表于 2013-3-18 17:30:05

{:time:}很好很强大

墨雪 发表于 2013-3-18 17:34:34

希望楼主能把制作小车的一套软硬件公布下,我也想做一个

ali1019 发表于 2013-4-18 20:11:36

剛想接觸還不懂 , 不過飛思好像把這些東西整成一個自帶MCU的12軸模組 ,不用去算了...

eastleader1982 发表于 2013-4-26 12:30:21

学习了!!!!!!!!!

冏冏有神 发表于 2013-5-22 11:06:55

最近要答辩了,车子还是没能站起来!
向你求助一下,能不能把程序借我看看?
谢了!
qq:843621427

凋零 发表于 2013-6-26 16:16:59

MARK,顶

knowstr 发表于 2013-9-26 10:46:45

收藏了额,慢慢看

am_diy 发表于 2013-10-5 03:35:35

本帖最后由 am_diy 于 2013-10-5 03:45 编辑

心_如止水 发表于 2012-4-7 16:32 static/image/common/back.gif
我之前也是用很小的P,一直抖,但是把P加大后竟然就不抖了,在加大P的同时也把死区电压减小了,P加到30% ...

请问一下,“在加大P的同时也把死区电压减小了” 如何把 死区电压减小呢?谢谢
另外请教一下,我那小车,平衡站立没问题,但是只要前进后退就会趴地问题折腾好几个月了没搞定不知是何原因!!!用的是L298\6050模块、电机是70转每分钟扭力7KG!

am_diy 发表于 2013-10-5 03:40:29

chenjiawei7 发表于 2012-11-10 19:24 static/image/common/back.gif
比例这么大怎么可能啊    我用的mpu6050,互补滤波,出来的波形还可以吧

请问一下,你是用什么软件来看波形的呢?可否分享一下软件吗?谢谢

18814888577 发表于 2013-10-5 14:12:05

做了就知道有多艰难了。。。。。。{:lol:}

didi527769363 发表于 2013-10-5 14:16:24

下载了 谢谢

DVD1478 发表于 2013-11-27 17:10:51

飞思卡官方方案可以分享一下吗?

Arthur244 发表于 2013-11-27 17:44:04

马克一下

liudongyu 发表于 2013-12-16 17:55:48

最近也在弄小车,不过还站不起来~~

木君之上 发表于 2014-4-17 16:17:47

总结的太好了,前两天开始调,搞得很气馁,有问题还请多指教!

木君之上 发表于 2014-4-17 16:23:11

唉,其实遇到好多问题,首先左右电机状态不一样,可能是机械当面左边的装的紧了一点,然后是小车向一边动的时候很灵敏,另外一边比较迟钝。我现在的调试现象是,我P调的有一点角度就能动作,但是这时如果不扶着马上就转的特别暴力了,至少P娇小时车就前后晃,加了D之后有效果,但是出现了很高频率的振动,振动出现在平衡点附近

到底叫什么才好 发表于 2014-5-4 13:31:54

为什么我的电机P调的再大业不会都,感觉反应很慢,但是换同学的电机就能抖

phiyun98 发表于 2014-5-15 09:51:09

总结的太好了正学习中。

andmain999 发表于 2014-5-30 16:50:48

感谢分享!

Fengjianqiang 发表于 2014-6-2 13:04:24

可以发给我学习下吗?我的邮箱是UC17811@163.com。

jiang739707231 发表于 2014-6-12 21:57:34

先收藏学习咯

309579471 发表于 2014-6-15 18:30:07

回帖里看到几个当初一起做车的小伙伴,哈哈 ,没想到大家还在时不时关注下。。。

情迷MJ比莉珍 发表于 2014-10-5 09:41:22

感謝樓主的耐心解答!! 非常感謝!

情迷MJ比莉珍 发表于 2014-10-5 09:42:20

那请问一下楼主的传感器校准是怎么处理的啊。

wgy20141214 发表于 2014-12-31 19:00:32

chenjiawei7 发表于 2012-11-10 19:24
比例这么大怎么可能啊    我用的mpu6050,互补滤波,出来的波形还可以吧

你好,请问能把那个看滤波的软件发到我邮箱吗?谢谢747436687@qq.com

chenjiawei7 发表于 2015-1-2 11:04:20

EXCEL绘图功能

chenjiawei7 发表于 2015-1-2 11:04:49

wgy20141214 发表于 2014-12-31 19:00
你好,请问能把那个看滤波的软件发到我邮箱吗?谢谢

excel绘图功能

xiong57785 发表于 2015-1-2 11:09:18

{:lol:}{:lol:}{:lol:}还是卡尔曼滤波高大上

stevencheng 发表于 2015-1-4 18:36:49

正在学习这块,楼主滤波算法为什么不用卡尔曼,能给新手详细解释下吗?

tangcangeng 发表于 2015-5-22 09:15:29

楼主 请帮我看下这个帖子 谢谢你http://www.amobbs.com/thread-5623212-1-1.html

shixiaohan 发表于 2015-6-3 18:33:21

chenjiawei7 发表于 2012-11-10 19:24
比例这么大怎么可能啊    我用的mpu6050,互补滤波,出来的波形还可以吧

请问这波形时用什么画出的呀,还有数据是怎么导出来的。

chenjiawei7 发表于 2015-6-3 21:19:19

excel绘图

wyudcl 发表于 2015-7-6 14:29:03

谢谢楼主分享,标记下。

Brccq 发表于 2015-10-31 13:39:42

标记一下,谢谢楼主
页: [1] 2
查看完整版本: 飞思卡尔单轴两轮平衡车制作经验交流,附资料,实时更新