技术领域
本发明涉及磁传感器误差校正,具体涉及一种基于海鸥算法的三分量磁传感器误差校正方法。
背景技术
目前, 国内外学者对三分量磁传感器的校正提出很多方法,有线性神经网络、椭圆拟合法等,但是目前校正所使用的算法,精确度与运行速度不足,甚至无法两者同时达到。
发明内容
本发明的主要目的在于提供一种基于海鸥算法的三分量磁传感器误差校正方法。
本发明采用的技术方案是:一种基于海鸥算法的三分量磁传感器误差校正方法,包括:
建立磁传感器误差模型;
总量补偿方法;
基于海鸥算法求解补偿系数计算。
进一步地,所述建立磁传感器误差模型包括:
三轴非正交误差求解;
灵敏度不一致误差求解;
零偏误差求解;
误差模型建立。
更进一步地,所述三轴非正交误差求解包括:
假设
根据泰勒展开,忽略高阶小量,认为
更进一步地,所述灵敏度不一致误差求解包括:
假设三分量磁传感器三轴的灵敏度分别为
更进一步地,所述零偏误差求解包括:
假设三分量磁传感器三轴的零偏分别用
更进一步地,所述误差模型建立包括:
将三分量磁通门传感器三轴非正交性、灵敏度不一致性和零偏这三个误差因素叠加后:
因此最终可表示为:
更进一步地,所述基于海鸥算法求解补偿系数计算包括:
根据误差模型建立补偿模型:
根据总量补偿建立目标函数:
其中,T为地磁总量N:样本数量;
使用海鸥算法对总量补偿推出的目标方程进行参数求解。
本发明的优点:
本发明的方法,采用海鸥算法代码简单,运行速度较快,且全局收敛与局部收敛能力都比较强。
除了上面所描述的目的、特征和优点之外,本发明还有其它的目的、特征和优点。下面将参照图,对本发明作进一步详细的说明。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
图1是本发明的三个误差因素叠加后进行建模的理论值图;
图2是本发明的三个误差因素叠加后进行建模的观测值图;
图3是本发明的加入信噪比为40分贝噪声后的观测值图;
图4是本发明的补偿后的地磁场观测值图;
图5是本发明的观测姿态对应的磁感应强度图;
图6是本发明的加入噪声校正后的地磁场观测值图;
图7是本发明的加入噪声校正后的观测姿态对应的磁感应强度图;
图8 是本发明的三轴磁传感器坐标系图;
图9 是本发明的误差模型建立补偿模型图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参考图1至图9,一种基于海鸥算法的三分量磁传感器误差校正方法,包括:
建立磁传感器误差模型;
总量补偿方法;
基于海鸥算法求解补偿系数计算。
本发明的方法,采用海鸥算法代码简单,运行速度较快,且全局收敛与局部收敛能力都比较强。
1.磁传感器误差模型
三分量磁传感器在使用之前需要进行自身性能误差的校正分析。三分量磁通门传感器校正的关键是校正模型的建立和模型系数的求解,分析三轴非正交性、灵敏度不一致性和零偏这三个误差因素。
(1)三轴非正交误差
为了建立单个三分量磁通门传感器自身性能的误差校正模型,首先建立如图所示的三轴磁传感器坐标系。假设和是标准正交坐标系,实际磁场信号在正交坐标系上的投影分别为和;假设和分别为三分量磁传感器的三个轴,其输出磁场信号分别为和。如图建立的标准正交坐标系和三分量磁传感器的三个轴之间满足如下关系:(1)标准正交坐标系轴与三分量磁传感器轴重合;(2) 标准正交坐标系坐标面与三分量磁传感器共面。
假设
实际中三分量磁传感器很难保证三轴完全正交,但是在加工工艺上其角度误差可以控制在1°以内。因此角度参数
(2)灵敏度不一致误差
考虑三分量磁传感器三轴之间的增益(也称灵敏度)在实际应用中会存在不一致性,从而导致测量到的磁场值与标准坐标系下的磁场值也会产生偏差。假设三分量磁传感器三轴的灵敏度分别为
(3)零偏误差
考虑三轴磁通门传感器的磁芯存在剩磁,以及内部电路放大调理部分也会存在零点偏移,二者共同作用,使得磁传感器在测量某一磁场时,三轴方向上会叠加不同的固定磁场,也就是零偏误差
(4)误差模型建立
将三分量磁通门传感器三轴非正交性、灵敏度不一致性和零偏这三个误差因素叠加后:
因此最终可表示为:
设总场强为T=50000nT,磁偏角D=5°,磁倾角I=5°进行建模,左图为理论值,右图为观测值。
当加入信噪比为40分贝噪声后:
2. 补偿方法
在补偿方法中,由于地磁场的准确三分量获取难度大,且条件苛刻,因此采用总量补偿法。该方法仅需已知当地地磁总量Te,便可求得补偿参数。
根据误差模型建立补偿模型:
根据总量补偿建立目标函数:
其中,T为地磁总量N:样本数量;
由上述方程可知应求解
训练样本初始化:随机提取仿真测量值中30组数据作为训练样本,将其除以磁场总量进行归一化处理;
初始化种群Ps:随机产生±2范围内的9个参数,解算出大小为30的初始化种群;
设置最大迭代次数为10000,计算海鸥新位置Ps,更新最佳海鸥位置和适应值,截至条件为达到最大次数或得到目标适应度值。
输出最佳海鸥位置,得到9个参数。
3. 基于海鸥算法(SOA)求解补偿系数
海鸥是遍布全球的海鸟,海鸥种类繁多且大小和身长各不相同。 海鸥是杂食动物,吃昆虫、鱼、爬行动物、两栖动物和蚯蚓等。 大多数海鸥的身体覆盖着白色的羽毛,经常用面包屑来吸引鱼群, 用脚发出雨水落下的声音来吸引藏在地下的蚯蚓。海鸥可以喝淡水和盐水,通过眼睛上方的一对特殊腺体,将盐从它们的体内排出。 海鸥以群居式生活,利用智慧来寻找和攻击猎物。 海鸥最重要特征是迁徙和攻击行为,迁徙是动物从一个地方到另一个地方根据季节更替而移动,寻找最丰富的食物来源以便获取足够能量。在迁移期间,动物成群结队地出行。迁徙时每只海鸥的所在位置不同,以避免相互碰撞。 在一个群体中,海鸥可以朝着最佳位置的方向前进,改变自身所在的位置。海鸥经常会攻击候鸟,在进攻时海鸥群体做出螺旋形的运动形态。
步骤:
迁徙(全局搜索):
在迁移过程中, 算法模拟海鸥群如何从一个位置移动到另一个位置。 在这个阶段,海鸥应该满足三个条件:避免碰撞:为了避免与邻居 ( 其他海鸥 ) 碰撞,算法采用附加变量A 计算海鸥的新位置。
Cs(t)表示表示不与其他海鸥存在位置冲突的新位置, P s ( t ) (海鸥当前位置, t 表示当前迭代, A 表示海鸥在给定搜索空间中的运动行为。
f c可以控制变量 A 的频率,它的值从 2 线性降低到 0 。
最佳位置方向:在避免了与其他海鸥的位置重合之后,海鸥会向最佳位置所在的方向移动。
M s(t)表示最佳位置所在的方向, B 是负责平衡全局和局部搜索的随机数。
rd是[0,1]范围内的随机数。
靠近最佳位置 : 海鸥移动到不与其他海鸥相撞的位置后,就
向着最佳位置的所在方向进行移动,到达新的位置。
Ds为海鸥新位置。
攻击(局部搜索):
海鸥在迁徙过程中可以不断改变攻击角度和速度, 它们用翅膀和重量保持高度。当攻击猎物时,它们就在空中进行螺旋形状运动。 x 、 y 和 z 平面中的运动行为描述如下:
其中 r 是每个螺旋的半径, θ 是 [0 , 2π] 范围内的随机角度值。u 和 v 是螺旋形状的相关常数, e 是自然对数的底数。海鸥的攻击位置前面的式子可得:
设置相应参数:fc=2,u=1,v=1
使用海鸥算法对总量补偿推出的目标方程进行参数求解。解出补偿的9个参数,得到最终补偿后的三分量。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
机译: 一种使用误差校正算法的电力需求预测方法及系统
机译: 基于遗传算法的惯性/地磁传感器标定方法
机译: 一种基于学习算法的内窥镜视频信息的分析和使用它的装置提供一种方法