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

F4-Discovery连接MPU9250【MD6.12 keil移植】 精华  

[复制链接]
watershade 发布时间:2015-8-8 14:46
阅读主题, 点击返回1楼
1 收藏 12 评论117 发布时间:2015-8-8 14:46
117个回答
andypanfan 回答时间:2016-11-15 08:48:04
感謝分享
怀念过去1 回答时间:2016-11-16 17:25:30
非常感谢楼主的分享。最近想把程序移植到STM32F103上,有几个问题想咨询下楼主:
1. 由于STM32没有FPU,请问MD6.12移植到STM32F1上后,做九轴融合会不会特别慢。
2. 在说明文档里,要求tool chain要支持long long math所以不知道SMT32F1和KEIL能不能行?
谢谢楼主!
怀念过去1 回答时间:2016-11-16 17:33:45
lzm1019 发表于 2016-3-26 18:32
您好!对比您之前#1的代码,发现invensense_adv.h文件有变更,具体为:
---------------------
调用#incl ...

invensense_adv.h文件中,包含了两个mag_disturb.h  但是落下了inv_math.h没有include进去,所以楼主更改了其中一个!
zqclzz-84744 回答时间:2017-2-20 17:24:33
先看看,谢谢
lijain 回答时间:2017-3-2 18:11:44
watershade 发表于 2016-11-13 21:43
惭愧惭愧,最近一直不够精进,所以没有更新。

你好,我最近也在做mpu9250的移植。不过是在往cc2640上移植,它是集成了一个arm3的内核。看你已做完了stm32F4的移植,你能把那个工程给我发一下?我借鉴一下谢谢了!邮箱1632401541@qq.com
alinnet 回答时间:2017-4-12 22:36:20
经验
lijain 回答时间:2017-5-12 10:57:23
你的历程可以f407上运行?
watershade 回答时间:2017-5-12 21:08:36
lijain 发表于 2017-5-12 10:57
你的历程可以f407上运行?

一直在忙别的,MD的原始Demo是在F4discovery上运行的。那块板子是F407,型号你查一下。
lijain 回答时间:2017-5-16 15:51:23
谢谢你的回复,我运行了一下。用串口输出看结果,但是没有数据。我之后检查了连线也没有错。
watershade 回答时间:2017-5-16 22:19:24
lijain 发表于 2017-5-16 15:51
谢谢你的回复,我运行了一下。用串口输出看结果,但是没有数据。我之后检查了连线也没有错。 ...

你用里面提供的工具测试,或者你看一下源代码,会发现这个串口协议不是一连上就源源不断的向你发数据的
epochal 回答时间:2017-5-17 07:06:11
谢谢分享!
tosave 回答时间:2017-7-12 15:31:20
怎么下载不了呢
can-39743 回答时间:2017-10-10 10:56:55
爬楼完毕,谢谢楼主
maiweiqi 回答时间:2017-10-11 14:27:37
一直搞不懂它的九轴磁力计校准是什么回事,是不是打开了校准的功能,然后关闭并保存参数就可以了?
watershade 回答时间:2017-10-12 18:52:11
本帖最后由 watershade 于 2017-10-12 18:53 编辑
maiweiqi 发表于 2017-10-11 14:27
一直搞不懂它的九轴磁力计校准是什么回事,是不是打开了校准的功能,然后关闭并保存参数就可以了? ...

首先声明,我不是专业研究IMU的。我的观点只是根据自己的了解作答,如果有问题,请朋友们指正。
关于你说的校准,我举个例子。你拿到手机之后如果觉得不准,是不是曾经用过校准程序?它怎么做的呐?是不是让你画八字形。对这是一种校准。我使用过一种复杂的校准是转动IMU尽可能的缓慢但是把球面尽可能的布满。这样你会发现也许你得到的不是一个正球面,有些变形的球面。这是为什么?
个人的解释是因为传感器MEMES本身的特性,导致读到的数据并不能让每个轴都达到同样的精度。或多或少有些误差,甚至每个轴获得的读数是否因为轴之间并非真的解耦而出现依赖。导致的。
我上面的说法实际有一些错误,但是你基本可以理解为因为种种原因,它读出的数据就是不准。画不了一个正球形,这就需要根据校准模型去拟合和修正成一个正球。这就是校准。既然我知道自己的不够专业,那就人云亦云给你带来点理论知识。
Hard Iron VS Soft Iron
你搜索一下Soft Iron Calibration和Hard Iron Calibration,你也能搜索到Hard Iron 和Soft Iron Distortions
不要见了洋文就心惊胆战,做逃兵。
不知道中文怎么翻译这两种校准和干扰。不妨直译成“软铁校准”和“硬铁校准”,不好意思铁没有软的(别说液态铁),但是先勉为其难,这样叫吧。
为什么校准呐,是因为有干扰有漂移有误差。误差是校准的主要原因,所以要说明为什么校准或者何种校准先要了解误差是怎样产生的。
噢,对了这里一旦涉及到Iron,就是指Magnetic Sense来说的,不是对加速度和陀螺仪来说的。所以你最好还要了解一下Fusion的原则是什么。这里简单说一下:陀螺仪数据为基础,加速度做一级修正和fusion。在它们的基础上加上指向,同时做第二层的fusion。
【kao,码字太不舒服】
先上一篇洋文,压压惊。magnetometer
这篇文章讲的比较多,文章里面讲的清清楚楚。让我码的字毫无意义。怎么办呐?
那我做个简单的复述吧。首先,看这篇文章,你要明白磁场是什么?传感器所处的磁场是怎样的。
OK,传感器的磁场由地磁场和周围物体磁场产生的。(当然如果是磁性体,自身也有磁场)
那地磁场的特性如何,周围磁场怎样变化。什么特性?
怎么建立物体的磁场模型?

OK,言归正传。
Hard Iron Distortions是周围物体产生的磁场。比如麦克风,磁铁。反正周围能够产生的磁性物质产生的磁场。这种磁性物质将在周围产生一个永久的偏差。但是比如,我之前在测试的时候物体的外壳上有个霍尔传感器,霍尔传感器旁边有一个小磁铁,因而产生了一个永恒切基本不变的磁场。(这个偏差差点让我奔溃,我找了好久才找到)

Soft iron distortions 被认为是所处的磁场本身的偏差和改变。这种磁场会随着传感器的朝向变化而有所变化。这种磁场一般是铁钴镍等磁性金属产生的。通常Hard的比soft的强一些。但是凡事无绝对。
文章的后面讲了偏差和干扰的可视化和修正技术。
看看吧,肚子饿了。做点饭


有的讲的很清楚。这里给个链接,希望不违反社区的规则:Soft & Hard Iron

对了看完给留个言,确保我写的这段文字有点意义

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版