ST MCU Finder
安装免费手机应用,
寻找理想的ST MCU

[应用相关] 关于陀螺仪求解的问题!

[复制链接]
845|48
 楼主 | 2019-8-16 14:26 | 显示全部楼层 |阅读模式
void Fix_Dat_result(void)
{
        //////////
        ax_G=(float)(ax*9.8/13107);
        ay_G=(float)(ay*9.8/13107);
        az_G=(float)(az*9.8/13107);
}


使用特权

评论回复
 楼主 | 2019-8-16 14:27 | 显示全部楼层
当根据陀螺仪、加标计算出加速度与姿态之后。该如何求出各个轴的加速度分量呢?

使用特权

评论回复
 楼主 | 2019-8-16 14:29 | 显示全部楼层
  加计和陀螺仪都能计算出姿态,但为何要对它们融合呢,是因为加速度计对振动之类的扰动很敏感,但长期数据计算出的姿态可信,而陀螺仪虽然对振动这些不敏感,但长期使用陀螺仪会出现漂移,因此我们要进行互补,短期相信陀螺,长期相信加计。不过,其实加计无法对航向角进行修正,修正航向角需要磁力计,也就是下次要总结的9轴数据融合。

使用特权

评论回复
 楼主 | 2019-8-16 14:29 | 显示全部楼层
在融合之前先要对传感器原始数据进行一些处理。理想情况下,加速度计水平放置时,XY轴应该是0输出的,仅Z轴输出1个G,因此,我们需要对加速度计进行XY轴的零点校准(注意Z轴可不能一起校准去了~);同样的,陀螺仪在水平静止放置时各轴输出应为0,因此需对陀螺仪进行三轴的校准。方法就是把机体标准水平静止放置时采集它个一两百次数据求个平均作为校准值保存起来喽,然后工作状态下各轴输出的数据就是采集来的数据减去校准值喽。仅此还不够,陀螺仪不进行滤波还可以接受,但加速度计噪声比较大,所以至少也得来个滑动窗口滤波,我用了20深度的滑动窗口,数据还是有很大波动,不过最后计算出的姿态角只有0.3度左右的抖动(我看大家一般都是建议8深度就够了,所以单滑动窗口滤波效果是没法做到更好了,可以考虑加个卡尔曼滤波?还没研究,不过这样处理器运算量就上去了)。(11.28补充:后面改对加计使用8深度滑动滤波,陀螺仪进行16阶凯撒窗滤波后只有0.1不到的波动,不过凯撒滤波参数的整定还不会,用的别人整定的一组参数,近期继续研究)。

使用特权

评论回复
 楼主 | 2019-8-16 14:30 | 显示全部楼层
545945d564d6bab69e.png

使用特权

评论回复
 楼主 | 2019-8-16 14:30 | 显示全部楼层
HMC5883L 磁力计校准

使用特权

评论回复
 楼主 | 2019-8-16 14:30 | 显示全部楼层
422385d564d7fa85b6.png

使用特权

评论回复
 楼主 | 2019-8-16 14:30 | 显示全部楼层
方法一.修正的输出可以根据下面的方法来计算:
        1)在磁场干扰的条件下进行,数据收集设备被旋转360°。
        2)数据进行分析,以产生偏差的偏移和灵敏度的比例因子,以补偿所述干扰。

使用特权

评论回复
 楼主 | 2019-8-16 14:30 | 显示全部楼层
990045d564d9b2fbff.png

使用特权

评论回复
 楼主 | 2019-8-16 14:32 | 显示全部楼层
490415d564e0645ec6.png

使用特权

评论回复
 楼主 | 2019-8-16 14:33 | 显示全部楼层
地磁偏置的原因:

使用特权

评论回复
 楼主 | 2019-8-16 14:33 | 显示全部楼层
ST集成传感器方案实现电子罗盘功能

使用特权

评论回复
 楼主 | 2019-8-16 14:33 | 显示全部楼层
  电子罗盘是一种重要的导航工具,能实时提供移动物体的航向和姿态。随着半导体工艺的进步和手机操作系统的发展,集成了越来越多传感器的智能手机变得功能强大,很多手机上都实现了电子罗盘的功能。而基于电子罗盘的应用(如Android的Skymap)在各个软件平台上也流行起来。

  要实现电子罗盘功能,需要一个检测磁场的三轴磁力传感器和一个三轴加速度传感器。随着微机械工艺的成熟,意法半导体推出将三轴磁力计和三轴加速计集成在一个封装里的二合一传感器模块LSM303DLH,方便用户在短时间内设计出成本低、性能高的电子罗盘。本文以LSM303DLH为例讨论该器件的工作原理、技术参数和电子罗盘的实现方法。

使用特权

评论回复
 楼主 | 2019-8-16 14:33 | 显示全部楼层
如图1所示,地球的磁场象一个条形磁体一样由磁南极指向磁北极。在磁极点处磁场和当地的水平面垂直,在赤道磁场和当地的水平面平行,所以在北半球磁场方向倾斜指向地面。用来衡量磁感应强度大小的单位是Tesla或者Gauss(1Tesla=10000Gauss)。随着地理位置的不同,通常地磁场的强度是0.4-0.6 Gauss。需要注意的是,磁北极和地理上的北极并不重合,通常他们之间有11度左右的夹角。

207875d564e40f3bb1.png

使用特权

评论回复
 楼主 | 2019-8-16 14:33 | 显示全部楼层
地磁场是一个矢量,对于一个固定的地点来说,这个矢量可以被分解为两个与当地水平面平行的分量和一个与当地水平面垂直的分量。如果保持电子罗盘和当地的水平面平行,那么罗盘中磁力计的三个轴就和这三个分量对应起来,如图2所示。

399185d564e4e0844b.png

使用特权

评论回复
 楼主 | 2019-8-16 14:33 | 显示全部楼层
实际上对水平方向的两个分量来说,他们的矢量和总是指向磁北的。罗盘中的航向角(Azimuth)就是当前方向和磁北的夹角。由于罗盘保持水平,只需要用磁力计水平方向两轴(通常为X轴和Y轴)的检测数据就可以用式1计算出航向角。当罗盘水平旋转的时候,航向角在0?- 360?之间变化。

使用特权

评论回复
 楼主 | 2019-8-16 14:34 | 显示全部楼层
ST集成磁力计和加速计的传感器模块LSM303DLH
在LSM303DLH中磁力计采用各向异性磁致电阻(Anisotropic Magneto-Resistance)材料来检测空间中磁感应强度的大小。这种具有晶体结构的合金材料对外界的磁场很敏感,磁场的强弱变化会导致AMR自身电阻值发生变化。

  在制造过程中,将一个强磁场加在AMR上使其在某一方向上磁化,建立起一个主磁域,与主磁域垂直的轴被称为该AMR的敏感轴,如图3所示。为了使测量结果以线性的方式变化,AMR材料上的金属导线呈45º角倾斜排列,电流从这些导线上流过,如图4所示。由初始的强磁场在AMR材料上建立起来的主磁域和电流的方向有45º的夹角。

245595d564e6f69095.png

使用特权

评论回复
 楼主 | 2019-8-16 14:34 | 显示全部楼层
当有外界磁场Ha时,AMR上主磁域方向就会发生变化而不再是初始的方向了,那么磁场方向和电流的夹角θ也会发生变化,如图5所示。对于AMR材料来说,θ角的变化会引起AMR自身阻值的变化,并且呈线性关系,如图6所示。

72835d564e7e4f3db.png

使用特权

评论回复
 楼主 | 2019-8-16 14:34 | 显示全部楼层
 ST利用惠斯通电桥检测AMR阻值的变化,如图7所示。R1/R2/R3/R4是初始状态相同的AMR电阻,但是R1/R2和R3/R4具有相反的磁化特性。当检测到外界磁场的时候,R1/R2阻值增加∆R而R3/R4减少∆R。这样在没有外界磁场的情况下,电桥的输出为零;而在有外界磁场时电桥的输出为一个微小的电压∆V。

使用特权

评论回复
 楼主 | 2019-8-16 14:35 | 显示全部楼层
LSM303DLH集成三轴磁力计和三轴加速计,采用数字接口。磁力计的测量范围从1.3 Gauss到8.1 Gauss共分7档,用户可以自由选择。并且在20 Gauss以内的磁场环境下都能够保持一致的测量效果和相同的敏感度。它的分辨率可以达到8 mGauss并且内部采用12位ADC,以保证对磁场强度的精确测量。和采用霍尔效应原理的磁力计相比,LSM303DLH的功耗低,精度高,线性度好,并且不需要温度补偿。

  LSM303DLH具有自动检测功能。当控制寄存器A被置位时,芯片内部的自测电路会产生一个约为地磁场大小的激励信号并输出。用户可以通过输出数据来判断芯片是否正常工作。

  作为高集成度的传感器模组,除了磁力计以外LSM303DLH还集成一颗高性能的加速计。加速计同样采用12位ADC,可以达到1mg的测量精度。加速计可运行于低功耗模式,并有睡眠/唤醒功能,可大大降低功耗。同时,加速计还集成了6轴方向检测,两路可编程中断接口。

使用特权

评论回复
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 投诉建议 创建版块 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

在线客服 快速回复 返回顶部 返回列表