请选择 进入手机版 | 继续访问电脑版

你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【MCU实战经验】基于STM32F103的二轮平衡车(6轴上位机 源代... 精华  

[复制链接]
joybe 发布时间:2014-4-7 11:05
          前段时间搞了个平衡车,涉及stm32F3  步进电机驱动   陀螺仪mpu3050   加速度计adxl345(也可以用6轴mpu6050)  无线NRF24L01
1 @2 W9 z% r' w. P1 d, K; t5 Q        当初最大问题是卡尔曼滤波(进行陀螺仪与加速度计的数据融合)和pid调节
7 h" \0 r$ h" U# ]) \' ^/ u        对于卡尔曼滤波,经过自己不断深究,其实也不是很复杂,核心是五大公式,涉及矩阵运算,思想是预测值 最优估计值 噪声  协方差的概念,难点:一些参数选择
5 U+ b$ f' u, q& p' C" M2 ]5 x9 W 图片1.png 9 P, B2 n7 ]- i
        说下用卡尔曼滤波的出发点,陀螺仪 加速度计都可以得到角度,而陀螺仪是先得到角速度再经积分才得到角度, 陀螺仪相比加速度计短时间内动态性能好,得到角度精准,但本身有小漂移,随着时间变长,不断积分,误差会越来越大,那就需要用加速度计进行校正, F1 k# w9 j9 J, d3 n& K; B& B
/ z$ w- F0 ?7 B3 v( o2 E) s
1 s  _3 A8 h& U- ?7 P
       对于pid算法,里面涉及二级pid,首先要明白小车速度跟给步进电机的频率是成正比的,就把频率等效为速度
0 P/ n2 V# N9 b( P# m" x. S: m       第一个pid,角度pid,通过测角度反馈给stm32f3产生频率(速度)来进行平衡调节(即调节角度)' A; V5 W; C) k8 z; c5 t
       第二个pid,速度pid,由于角度调节产生了速度变化,而为了不改变设定的速度,需要进行速度调节,它的反馈来自不断角度pid的结果(由于速度跟频率成正比,不需要测速反馈)
1 ~. J' \+ H) J: c       难点:pid整定参数
! M, Y# Y# ]% }7 O& z& y$ u$ T SDC18837.JPG
7 O9 \) ^  \$ B: v3 R, f# O) s4 @; n SDC18838.JPG
$ b$ T) I0 D- ~- E SDC18843.JPG
6 b( r2 {6 J5 i9 f ! Y7 d* [% Z( R8 r
; r+ ~: Y' E4 `3 e  W$ D
代码资料(完美)见下
: Z! A; \% _; ^' H) V3 y6 v8 N balance car nrf24l01程序 完美.zip (6.43 MB, 下载次数: 17981)
3 收藏 56 评论384 发布时间:2014-4-7 11:05

举报

384个回答
孤独的文艺青年 回答时间:2016-8-8 20:57:26
楼主,我用卡尔曼滤波了烧完程序后发现,我快速改变板子的倾角时得到的角度数值很大,比如变化10度时,如果我快速的变化10度,它瞬间可能显示100度以上,而我慢速改变的时候,它是正常的值。这种变化是正常的吗?我用的是MPU6050测速的,然后用的卡尔曼滤波测得倾角。MPU6050的两个轴的角度显示的变化一直是正常的,就是融合后的倾角有这个问题
ynwscfsfi 回答时间:2016-10-16 14:25:20
194244gxbllk83yihulwl9.jpg 194244gxbllk83yihulwl8766.jpg 194244gxbllk83yihulwl45).jpg 194244gxbllk83yihulwl4578.jpg 194244gxbllk83yihulwl4781.jpg 谢谢分享,学习了2 A0 ?* E& L2 k* @
eurphan 回答时间:2015-4-27 22:32:01
不错不错                                    
joybe 回答时间:2014-4-8 13:46:44

RE:【MCU实战经验】基于STM32F3的二轮平衡车(6轴上位机 源代码 卡尔曼滤波资料)心得分享

怎么回复的人这么少
mailiang98 回答时间:2014-4-8 16:41:19

RE:【MCU实战经验】基于STM32F3的二轮平衡车(6轴上位机 源代码 卡尔曼滤波资料)心得分享

卡尔曼滤波和pid调节,这几个算法                                                                                     到时候 可能要请教楼主啊
bangbanghb 回答时间:2014-4-8 21:21:46

RE:【MCU实战经验】基于STM32F3的二轮平衡车(6轴上位机 源代码 卡尔曼滤波资料)心得分享

楼主这么强,学习一下
bxwh 回答时间:2014-4-16 15:08:09

回复:【MCU实战经验】基于STM32F3的二轮平衡车(6轴上位机 源代码 卡尔曼滤波资料)心得分享

楼主的资料下载不了,最近也在研究陀螺仪和卡尔曼滤波,希望楼主能把资料发我一份,谢谢:xzfyx_ok@126.com
梦的回忆 回答时间:2014-4-17 16:38:12

RE:【MCU实战经验】基于STM32F3的二轮平衡车(6轴上位机 源代码 卡尔曼滤波资料)心得分享

学习一下!感谢楼主分享。
梦的回忆 回答时间:2014-4-17 16:42:30

RE:【MCU实战经验】基于STM32F3的二轮平衡车(6轴上位机 源代码 卡尔曼滤波资料)心得分享

楼主,上位机的东西能否给我发一下 gu_tq@163.com 感谢分享!
supermu 回答时间:2014-4-17 16:42:35

RE:【MCU实战经验】基于STM32F3的二轮平衡车(6轴上位机 源代码 卡尔曼滤波资料)心得分享

算法还是关键,就是洞洞板看着怀念啊
hongpeng-257553 回答时间:2014-4-17 20:10:09

RE:【MCU实战经验】基于STM32F3的二轮平衡车(6轴上位机 源代码 卡尔曼滤波资料)心得分享

非常感谢,学习一下。
hongpeng-257553 回答时间:2014-4-17 20:21:54

RE:【MCU实战经验】基于STM32F3的二轮平衡车(6轴上位机 源代码 卡尔曼滤波资料)心得分享

上位机和驱动能否发我一下,525677304@qq.com
joybe 回答时间:2014-4-25 19:08:35

回复:【MCU实战经验】基于STM32F3的二轮平衡车(6轴上位机 源代码 卡尔曼滤波资料)心得分享

回复第 10 楼 于2014-04-17 20:21:54发表:已发送,请接收% h  Y& d& v2 J" ]% p
上位机和驱动能否发我一下,525677304@qq.com 
joybe 回答时间:2014-4-25 19:09:45

回复:【MCU实战经验】基于STM32F3的二轮平衡车(6轴上位机 源代码 卡尔曼滤波资料)心得分享

回复第 7 楼 于2014-04-17 16:42:30发表:已发送,请接收
  @- x- ]3 T2 x楼主,上位机的东西能否给我发一下 gu_tq@163.com 感谢分享! 
njgwx 回答时间:2014-4-27 15:12:24

回复:【MCU实战经验】基于STM32F3的二轮平衡车(6轴上位机 源代码 卡尔曼滤波资料)心得分享

 好,看看!
green3002 回答时间:2014-4-28 10:40:23

RE:【MCU实战经验】基于STM32F3的二轮平衡车(6轴上位机 源代码 卡尔曼滤波资料)心得分享

,不错,很强大
赵大驴 回答时间:2014-4-28 14:14:01

回复:【MCU实战经验】基于STM32F3的二轮平衡车(6轴上位机 源代码 卡尔曼滤波资料)心得分享

 最近也在研究,向楼主学习啊
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版