搜索
热搜: ROHM 模拟 车载
查看: 2877|回复: 5

【传感器大派送】地磁传感器与加速度计应用篇

  [复制链接]

该用户从未签到

1

主题

6

帖子

0

精华

初级会员

最后登录
2019-7-11
发表于 2018-11-28 22:35:05 | 显示全部楼层 |阅读模式
本帖最后由 瓶子1 于 2018-11-29 10:08 编辑

在基础篇的基础上,本篇主要以STM32F103为例介绍了利用地磁传感器与加速度传感器融合,进行磁方向角测量的方法。程序中测量结果FX变量即为传感器X轴指向方向角(弧度制)。
代码便于移植,算是散点贡献了。

工程建立在正点原子与野火的部分代码上,在此表示感谢。

硬件平台如图所示。
IMG_1028.JPG
看代码
TIM图片20181128221637.png
这部分代码在初始化传感器后,读取测量结果并记录各轴的极大值极小值。每次启动后需要对装置进行旋转校准。使三轴都能在子午面内转一圈。
实用一点的话,也可以将校准参数写入片上Flash中,在此不再累述。
TIM图片20181128222102.png
第二部分是归一化处理,这个部分很常规,对于罗盘这类偏移量较大的传感器是必须的。
在这里,A,B分别是加速度矢量和地磁矢量。
如基础篇所述,罗姆的罗盘传感器在三轴一致性和线性上表现得相当不错。
接下来就是简单的数学运算了
TIM图片20181128224437.png
注意这里的矢量运算函数在前面有定义,可用自己看一下。
首先对加速度矢量单位化,然后利用施密特正交化过程,消去磁矢量中垂直于地面的分量。得到地平面内的磁矢量。
用地平面内的磁矢量和竖直矢量叉乘就得到了磁东矢量。
接下来就可以解出X轴的指向了。
这样的算法的优势就在于,测量结果和传感器姿态无关。无论传感器是正着倒着,或者各种姿态。FX变量即为x轴磁方向角(前提是完成校准且陀螺仪加速度计的x,y,z轴一致)
罗盘加速度计.rar (293.43 KB, 下载次数: 10)
回复

使用道具 举报

该用户从未签到

2248

主题

1万

帖子

1

精华

论坛元老

最后登录
2024-4-20
发表于 2018-11-29 08:51:15 | 显示全部楼层
多谢分享。。。
回复

使用道具 举报

该用户从未签到

29

主题

668

帖子

0

精华

论坛元老

最后登录
2022-1-26
发表于 2018-11-29 09:56:10 | 显示全部楼层
结算结算是放在哪里的?
你用的是那个变量来表示解算最后的方向?
回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

6

帖子

0

精华

初级会员

最后登录
2019-7-11
 楼主| 发表于 2018-11-29 10:04:55 | 显示全部楼层
xquery 发表于 2018-11-29 09:56
结算结算是放在哪里的?
你用的是那个变量来表示解算最后的方向?

程序中测量结果FX变量即为传感器X轴指向方向角(弧度制)。
要做啥应用自己处理一下就行
回复 支持 反对

使用道具 举报

该用户从未签到

1153

主题

5959

帖子

0

精华

论坛元老

最后登录
2021-2-19
发表于 2018-12-21 12:27:13 | 显示全部楼层
看看了
回复

使用道具 举报

该用户从未签到

0

主题

2137

帖子

0

精华

论坛元老

最后登录
2024-4-20
发表于 2018-12-21 13:45:39 来自手机 | 显示全部楼层
多谢分享
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|罗姆半导体技术社区

GMT+8, 2024-4-20 19:17 , Processed in 0.114565 second(s), 18 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表