的最小值来确定参数A、B、C、D和E,最终计算得到椭圆的偏移量x0 、y0 和φ。 (MHx ,MHy)通过坐标变换映射到正圆的坐标为(M′Hx , M′Hy) ,补偿后的航向角表达式为
(2-13)
利用最小二乘椭圆拟合误差补偿法,不需要给定精确的方向。整个补偿过程只需将电子罗盘安装在仪器设备上,在水平面按照一定频率均匀转动一周就可以完成计算和误差补偿的过程。但是其运算量巨大,而且真实的地磁场在干扰下的磁场分布未必是椭圆分布,因此本文最终没有选择该算法进行误差补偿。
2.5.2 基于BP神经网络的误差补偿算法[31]
BP神经网络也称为误差后向传播神经网络,是神经网络模型中使用最广泛的一类。BP神经网络是典型的多层结构,分为输入层、隐层和输出层,层与层之间多采用全互联方式,同一层单元之间不存在相互连接。BP神经网络可以从大量的离散实验数据中,经过学习训练,提取其领域知识,并将知识表示为网络连接权值、阈值的大小及分布,建立起反响实际过程内在规律的系统模型。
BP网络的结构和学习原理:
BP网络是前向网络的核心部分, 体现了神经网络中最精华、最完美的内容。它是一种单向传播的具有三层或三层以上的前向神经网络, 包括输入层、隐层和输出层, 上下层之间实现全连接,而每层神经元之间无连接。一个三层的BP网络理论上可逼近任意的非线性映射, 因此在实际应用中,一般采用三层的BP网络就可以满足需要。如图2.7所示的就是一个三层的BP网络结构图。
图2.7 BP神经网络图
BP网络由正向传播和反向传播组成,在正向传播阶段,每一层神经元的状态只影响下一层神经元的状态, 若在输出层得不到期望的输出值, 则进行误差的反向传播阶段。其具体的学习过程和步骤如下:
(1)选择一组训练样本, 每个样例由输入信息和期望的输出结果两部分组成;
(2)从训练样本中取一样本, 把输入的信息输入到网络中;
(3)分别计算经神经元处理后的各层结点的输出;
(4)计算网络的实际输出与期望输出的误差,如果误差达到要求, 则退出,否则继续执行第5步;
(5) 从输出层反向计算到第一个隐层, 并按照某种能使误差向减小方向发展的原则, 调整网络中各神经元的连接权值(Weight)和阈值(Threshold);
(6) 对训练样本集中的每个样本重复(3)到( 5) , 直到对整个训练样本集的误差达到要求为止。
基于BP神经网络的误差补偿算法
BP网络的特点:
①网络实质上实现了一个从输入到输出的映射功能,而数学理论已证明它具有实现任何复杂非线性映射的功能。这使得它特别适合于求解内部机制复杂的问题。无需建立模型,或了解其内部过程,只需输入,获得输出。只要BP结构优秀,一般20个输入函数以下的问题都能在50000次的学习以内收敛到最低误差附近。而且理论上,一个三层的神经网络,能够以任意精度逼近给定的函数,这是非常诱人的期望;
②网络能通过学习带正确答案的实例集自动提取“合理的”求解规则,即具有自学习能力;
③网络具有一定的推广、概括能力。
由误差分析可知,电子磁罗盘的误差来源很多,并且结构十分复杂,因此本文选用BP神经网络对其进行训练,从而补偿其误差。具体方法是在转台上测得多组实验数据,查表获得每组数据在当地的地磁场理论值,将实验数据作为输入样本,对应的理论值作为目标样本,设置符合精度要求的目标误差,训练神经网络。最后获得该神经网络的训练所得的权值和阈值作为固定的权值和阈值,在电子磁罗盘工作时,测量地磁场获得的三轴磁分量数据进入该神经网络进行训练,从而得到补偿后的磁场信息,可以获得更为精确的航向角。 TMS320C2812电子磁罗盘补偿技术研究(7):http://www.youerw.com/wuli/lunwen_2479.html