我有用过该产品,对于校准的含义其实很简单; 就相当于把5883L的基准线转换到你所设备上的环境(Sensor所贴片的产品); 目前我所见比较多的是,硬磁; 修正offt的值方式如下(以X轴说明为例): 第一步:是用需校准的sample平放,这样nsor会在各个轴采集到一个max 和min 把其这定义为Xmax(1)和Xmin(1),其它轴类似;同时将该数据作为初始化的值; 第二步:进行360degree旋转,会得到另外的Xmax(2)和Xmin(2); 然后将Xmax(1)和Xmax(2)进行比较,从而选择Xmax=Xmax(1)(while the Xmax(1)>Xmax(2)),Xmin也进行同样的比较; Last:then the Xofft:Xofft=(Xmax(1)+Xmin(1))/2; 该模块主要是考虑校正设备本身磁场的干扰,从而使测量数据更为准确。当然这只是对于要求精度不高的情况下进行设置的;但对于高精度的话,Honeywell 应该也会给你提供一些计算方式的,这你可以询问你买产品的地方, 希望上述能对你有所帮助。 | |||||
彼岸花的花语是什么 | |||||
2010-11-02,18:27:38 |
| ||||
【5楼】 nuli 积分:23 派别: 等级:------ 来自: | 非常感谢楼主的解答! 修正offt的值方式如下(以X轴说明为例): “第一步:是用需校准的sample平放,这样nsor会在各个轴采集到一个max 和min 把其这定义为Xmax(1)和Xmin(1)” 是把X Y Z每个轴的max和min定义为Xmax(1)和Xmin(1)吗? 是否每个轴都要旋转360度,然后将得到的MAX和MIN平均,然后实际测量时得到的值减去这个偏置? 另外平放时,各轴不是只输出一个值吗,如何得到一个max 和min ? 楼主是否可以发个校准部分的程序例子上来,比较容易理解。 | ||||
2010-11-03,17:04:47 |
| ||||
【横店旅游6楼】 COMPASS1 积分:37 派别: 等级:------ 来自: | 回复【5楼】nuli ----------------------------------------------------------------------- 从你所问的问题上来看,可能你还没了解Offt的计算方式, Offt其实就是一个补偿校准值,而对于补偿校准值的得出,就是通过我上一个贴所说的步骤来进行计算的; 如果你能对每个轴都旋转360度的话,效果更好;而你提高的Max和Min,不是平均后的值,如果平均后那就不存在Max和Min一说, 这两个值,是实际你在旋转过程中传感器所采集的数据,通过这样你就可以大概的计算出offt的值(这动作是在calibration时做),在得到offt的值后,后面你所测量的数据就用实际测量的减去offt,那才是你所测量环境的比较准确的磁场值. 你可以通过设定5883L和你的MCU,“单一测量模式”确实只采集一个数据,但是“连续测量模式”就可以进行多个数据的采集,因此在calibration的时候,Honeywell datasheet上有进行说明,使用“连续测量模式”进行校准; 希望上述能对你有所帮助。 | ||||
2010-11-03,17:41:41 |
| ||||
【7楼】 nuli 积分:23 派别: 等级:------ 来自: | 非常谢谢楼主! 我的程序除去效准没有,后面的计算都写好了,急切想把效准加进去。呵呵。资料我看的不够仔细所以问题多多。 我说说理解,请帮我看看对不对。 以X轴为例:罗盘水平旋转一周(连续测量模式),不断比较采样值,最终得到X轴输出的最大和最小值,然后(Xmax+Xmin)/2,就是Xofft 还有一点没明白的:“第一步:是用需校准的sample平放,这样nsor会在各个轴采集到一个max 和千山大佛min 把其这定义为Xmax(1)和Xmin(1)” 是每一点罗盘都输出一大一小两个数据吗?还是其实只有输出一个数据,然后旋转,将这一个数据与下一个数据比较,这样就有一大一小。把这一大一小数据再与下个数据比较,取大和小中间值丢掉,依次下去360度后得到MAX和MIN? | ||||
2010-11-03,19:26:15 |
| ||||
【8楼】 COMPASS1 积分:37 派别: 等级:------ 来自: | 回复【7楼】nuli ----------------------------------------------------------------------- 这就要看你自己在MCU所设定的单位时间内的采样频率,因为你平放置的时候采集数据的模式也是“连续测量模式”, 而你可以通过你的MCU设定单位时间内的采样频率,这样收集的数据就是你所设定的,因此输出的数据 就不会是你所猜想的一个数据,最终你可以将平放时所收集的数据进行比较,就可以输出Xmax(1)和Xmin(1); 草酸钙 而你通过不停的采集数据比较的话,这样就对周围环境磁场就比较精确点,校准性能就相对要高点; | ||||
2010-11-04,10:18:53 |
| ||||
【9楼】 nuli 积分:23 派别: 等级:------ 来自: | 我目前的理解如下: 5883水平放置,以Z感恩帮助过我的人句子轴为参考旋转轴,旋转360度。期间MCU不断采样X轴和Y轴数据,将得到的数据筛选出Xmax Xmin Ymax Ymin. Xofft=(Xmax+Xmin)/2 Yofft=(Ymax+Ymin)/2 请楼主校正。 | ||||
2010-11-04,14:08:16 |
| ||||
怎么加群 |
【10楼】 COMPASS1 积分:37 派别: 等级:------ 来自: | 回复【9楼】nuli ----------------------------------------------------------------------- Yeah, that is correct. Good Luck |
本文发布于:2023-07-27 18:59:23,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/fan/82/1120483.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |