一种降低陀螺仪输出误差的方法研究

2016-12-21 00:46陈书钊陈剑鸣
新技术新工艺 2016年10期
关键词:陀螺仪训练样本角速度

陈书钊,马 琨,陈剑鸣

(昆明理工大学 理学院 物理系,云南 昆明 650500)



一种降低陀螺仪输出误差的方法研究

陈书钊,马 琨,陈剑鸣

(昆明理工大学 理学院 物理系,云南 昆明 650500)

为了降低陀螺仪输出误差,减少漂移,建立了BP神经网络模型。应用MATLAB软件,通过已知陀螺仪噪声模型模拟了集成有陀螺仪的传感器模块,产生了一个完备训练样本。通过训练后的神经网络模型较好地还原了真实角速度,降低了各种因素对陀螺仪输出造成的影响,使角速度输出相对实际值的偏差降低了一个数量级,进而降低了漂移。该方法证明,使用BP神经网络可以有效降低陀螺仪的输出误差。

BP神经网络;陀螺仪漂移;陀螺仪误差;误差补偿

1 陀螺仪

陀螺仪在现代社会已经逐渐成为一种必不可少的传感器件,在手游、潜艇和航空航天等多个领域发挥着重要作用。陀螺仪常见的种类主要有压电陀螺仪、振动陀螺仪、光纤陀螺仪、激光陀螺仪和MEMS陀螺仪等。现代陀螺仪相对于较早期的陀螺仪具有明显的优点。光纤陀螺仪的优点在于结构简单、启动时间短、灵敏度高和动态范围宽等,但仍然存在误差和漂移的问题。基于萨格奈克效应的激光陀螺仪,具有与光纤陀螺仪类似的优点,如启动快、动态范围宽、灵敏度高和寿命长等,国外公布的激光陀螺仪最高水平是零漂为5×10-4(°)/h[1]。近30年以来,MEMS(微机电系统)得到了广阔地发展[2-5],相比光纤或激光陀螺仪,其价格要低很多,但精度较低,误差较大。本文主要针对陀螺仪的误差及漂移问题,使用BP神经网络(Back-Propagation Neural Network)进行建模,降低了漂移,使陀螺仪的误差得到了一定程度的降低。

目前的技术限制了陀螺仪的输出精度,随机漂移的存在甚至影响到陀螺仪的正常使用。主要的解决思想是针对特定结构的陀螺仪建立合理的误差模型,对误差进行估计和补偿。常见的方法有小波分析法、Kalman滤波、Allan方差分析法和ARMA模型等[6-7],还有用神经网络对误差做预测的模型,如文献[8]提到的方法。本文的创新之处在于,直接将陀螺仪输出的角速度输入到BP神经网络,神经网络输出比陀螺仪的输出更接近实际的角速度数据。经验证,通过大量合理训练后的BP神经网络,输出的角速度误差得到明显降低。

2 BP神经网络模型的应用

2.1 BP神经网络

BP神经网络是一种误差逆向传播多层前馈网络,可用于模式识别、函数逼近、分类和数据压缩等领域。BP神经网络具有较强的泛化性能,使网络能够合理地响应训练一定范围以内的任何数据,但对一定范围以外的数据响应效果较差。把训练样本输入网络后,神经元刺激通过各中间层传到输出层,输出层的各神经元输出网络对输入信号的响应。之后,神经元刺激会按着减小目标输出与实际输出误差的方向,从输出层出发经由中间层传回至输入层,并在这个过程中修改各神经元的连接权重。随着训练的进行,网络对输入的响应逐渐接近目标响应。这种算法称为误差逆向传播算法(Back-Propagation Algorithm)。

2.2 陀螺仪的神经网络优化模型

引起陀螺仪误差的因素是多方面的[9],与陀螺仪所在环境的温度有关[10],与陀螺仪内部组成结构有关,也与传感器的运动状态有关。除此之外,还有大量随机信号混杂在陀螺仪的输出数据中。使用神经网络处理问题的一个优势在于,无需对陀螺仪产生误差的内在机理做详细研究,只需考虑引起误差的相关因素并结合合理的训练,即可得到满意的输出结果,达到降低误差的效果。

本文主要针对常见的六轴、九轴惯性传感器,即具有加速度、角速度和磁场强度(九轴)多输出的集成传感器模块(这些传感器模块一般还集成了温度传感器),研究如何使用BP神经网络对传感器模块的角速度输出进行优化。神经网络模型结构图如图1所示,该模型将传感器模块输出的三轴加速度、温度和单轴角速度作为本网络模型的输入,将对应的单轴角速度作为网络模型的输出。

图1 神经网络模型结构图

对于网络的结构设计,需考虑影响陀螺仪产生误差的因素以及网络训练复杂度。Kolmogorov定理已经证明,一个具有3层结构的BP神经网络可以接近任意连续函数,可见BP神经网络具有足够的能力优化传感器的输出。在此问题中,输入层的神经元个数与输入特征量个数一致,输出层神经元个数与输出量个数一致,而中间层在Kolmogorov定理的基础上考虑泛化性能结合仿真结果进行选择。对于一个特定的问题,网络的输入特征量越多、训练的数据覆盖范围越广,模型越精确,但同时网络的训练复杂度越高;因此,对于不同问题对陀螺仪的不同要求,应选择合适的训练方法。

本模型将传感器测得的3个坐标轴的加速度数据、实测对应坐标轴(如x轴)的角速度数据和对应时刻的温度数据作为网络的输入,将对应坐标轴(x轴)的角速度数据作为输出。网络的输入层有5个神经元,输出层有1个神经元,而隐层的层数及隐层神经元个数由多次试验后的效果而定(见图2)。由于该网络模型只有1个坐标轴的角速度输出,故3个坐标轴的角速度输出配有3个相同的BP神经网络算法。

图2 5输入1输出神经网络结构图

除了这种设计方法,还可以设计一个集成度更高的算法,即把传感器模块的7个输出量(3个坐标轴的加速度和角速度,1个温度)都作为网络的输入,网络的输出直接得到3个坐标轴的角速度数据(见图3)。在陀螺仪的实际应用中可以经过大量试验测量得到训练数据,训练出完备的网络模型,进而通过这种网络得到非常可靠的数据;但这种网络的训练复杂度非常大,本文主要介绍第1种网络模型。

图3 7输入3输出神经网络结构图

2.3 网络模型的训练样本分析

如前所述,BP神经网络具有很强的泛化性能,所以训练数据的范围应尽可能的大。本文根据实际情况,应用MATLAB软件生成训练数据。由于MATLAB软件的灵活性,可以很方便地生成较为完备的训练数据,并进行模型的仿真与验证。本文设定训练样本的温度数据为-30~50 ℃,单个坐标轴的加速度数据为±8g,角速度数据为±34 rad/s,在这个范围内对各参数以一定间隔生成网络的训练样本。

3 模型的仿真与验证

3.1 训练样本的获得

为了研究BP网络模型在降低陀螺仪误差上的实际性能,应用MATLAB软件生成网络的训练样本。训练样本的生成过程模拟了自然环境中实际的角速度,模拟了传感器模块中角速度的输出与加速度和温度的可能关系[11],以及可能的随机噪声。考虑到BP网络较强的泛化性能,本文对温度的采样间隔是10 ℃,单轴加速度的采样间隔是1g,角速度的采样间隔为2 rad/s。结合上述各参数变化范围,可以产生一个存放输入向量P的5×1 547 595的超长矩阵。与之对应的将产生一个1×1 547 595的输出向量T,输入向量与输出向量构成训练样本集。这个超长的训练样本集包含了传感器可能出现的各种状态,以及对应的输出见表1。

表1 训练样本

3.2 评判效果的指标

设X、Y都是长度为m的实向量,则X相对于Y的相对偏差σXY定义为:

式中,σXY∈[0,∞)。相对偏差σXY描述了X偏离Y的程度,σXY越大偏离越大;反之,则越小。当σXY=0时,X和Y取值完全相同。使用相对偏差可以描述网络模型的输出相对于目标输出的偏离程度,同样可以描述陀螺仪的角速度输出相对于实际角速度的偏离程度。

3.3 仿真结果

本文应用MATLAB软件提供的神经网络工具箱建立了5输入1输出的BP神经网络,并通过MATLAB 软件建立的训练样本对模型进行了训练和仿真。训练样本的状态极度复杂,为了避免网络模型出现过度拟合、泛化性能差和误差大的问题,本文最终选择了2个隐层,每个隐层的神经元个数为20,网络结构如图4所示。网络的训练使用了Levenberg-Marquardt算法,训练完成后随机挑选1个区间,局部放大后如图5所示。

图4 5输入1输出神经网络结构图

图5 3条曲线局部放大图

为了更直观地分析网络模型的输出效果,使用上述定义的相对偏差对神经网络模型的输出与传感器的直接输出进行比较;同时,在20 ℃环境下对完全静止的MPU6050输出的角速度进行采样,计算MPU6050输出的角速度相对于静止状态的相对偏差,以方便进行比较。设网络模型输出相对于模拟实际角速度的相对偏差为σNA,传感器直接输出相对于模拟实际角速度的相对偏差为σSA,静止状态下的MPU6050角速度输出相对于静止状态的相对偏差为σMA。表2列出了上述样本集中随机抽取4个子样本集计算出的相对偏差,全部样本集所有子样本集的平均相对偏差和MPU6050静止状态时随机采样的相对偏差。其中,模拟子样本集选取的都是角速度数据从最小到最大共35个样本,MPU6050静止状态样本集则是在静止状态下任意时刻采取的连续单轴35个样本。由于上述模拟样本集已经包含了传感器模块的所有可能状态,是完备的,所以表2随机抽取的样本具有普遍性,而MPU6050样本集则具有静止状态下的普遍性。

表2 随机子样本集相对偏差表

由表2中σSA和σMA对比可知,应用MATLAB软件模拟出的传感器输出和实际角速度很接近用MPU6050实际数据计算的结果,可见模拟结果是满足要求的。从σNA和σSA对比可知,使用BP神经网络优化后的角速度输出相比传感器模块直接输出的角速度,相对偏差降低了1个数量级,相对偏差衡量了测量值与实际值的差距,反应误差的大小,此结果表明,BP神经网络经过完备可靠的训练之后,可以有效地降低陀螺仪输出角速度的误差。

4 结语

针对陀螺仪误差(或漂移)问题一直以来都限制着惯性导航、航空航天和潜艇等各个领域的进一步发展,本文提出了使用BP神经网络对传感器模块输出的角速度进行优化的方法。为了获得高精度、完备的网络模型,需要获取完备可靠的训练样本。本文应用MATLAB软件模拟了传感器模块各种可能的状态,模拟了自然环境的角速度,生成了1组6×1 547 595训练样本矩阵。通过该样本的训练,成功获得了1个5输入1输出、双隐层的BP神经网络,传感器模块输出的角速度经过该BP神经网络后相对偏差降低了1个数量级,降低了偏差,减少了漂移。

[1] 岳明桥, 王天泉. 激光陀螺仪的分析及发展方向[J]. 飞航导弹, 2005(12):46-48.

[2] Liu C. Recent developments in polymer MEMS [J]. Advanced Materials, 2007, 19(22):3783-3790.

[3] Kotzar G, Freas M, Abel P, et al. Evaluation of MEMS materials of construction for implantable medical devices[J]. Biomaterials, 2002, 23(13):2737-2750.

[4] Jeon Y B, Sood R, Jeong J H, et al. MEMS power generator with transverse mode thin film PZT[J]. Sensors & Actuators A Physical, 2005, 122(1):16-22.

[5] Nguyen C T. MEMS technology for timing and frequency control[J]. IEEE Transactions on Ultrasonics Ferroelectrics & Frequency Control, 2007, 54(2):251-270.

[6] 吉训生, 王寿荣. MEMS陀螺仪随机漂移误差研究[J]. 宇航学报, 2006, 27(4):640-642.

[7] 金光明, 张国良, 陈林鹏, 等. MEMS陀螺仪静态漂移模型与滤波方法研究[J]. 传感器与微系统, 2007, 26(11):48-50.

[8] 陈熙源, 万德钧, 程启明, 等. 陀螺随机漂移的神经网络预报方法研究[J]. 东南大学学报:自然科学版, 1998(5):79-83.

[9] 陈旭光, 杨平, 陈意. MEMS陀螺仪零位误差分析与处理[J]. 传感技术学报, 2012, 25(5):628-632.

[10] 陈怀, 张嵘, 周斌, 等. 微机械陀螺仪温度特性及补偿算法研究[J]. 传感器与微系统, 2004, 23(10):24-26.

[11] 房建成, 李建利, 盛蔚. 改进的内框架驱动式硅MEMS陀螺温度误差模型[J]. 北京航空航天大学学报, 2006, 32(11):1277-1280.

责任编辑 郑练

Research of A BP Neural Network Method for Reducing the Output Error of Gyroscope

CHEN Shuzhao, MA Kun, CHEN Jianming

(Department of Physics, Faculty of Science, Kunming University of Science and Technology, Kunming 650500, China)

A BP neural network is built to reduce the error and drifting of the gyroscope. A complete training data is produced by using MATLAB simulating the sensors’ characteristic on existed model. The trained neural network model restores the true angular velocity well, and reduces effects from outside. More important, it not only reduces error between the output and the true value, but also reduces the drifting. This method proves that the BP neural network is effective in reducing gyroscope’s output error.

BP neural network, gyroscope drifting, gyroscope error, error compensation

TN 602

A

陈书钊(1989-),男,硕士研究生,主要从事无线传感网、神经网络、惯性导航和组合导航等方面的研究。

陈剑鸣

2016-06-03

猜你喜欢
陀螺仪训练样本角速度
基于EMD的MEMS陀螺仪随机漂移分析方法
人工智能
我国著名陀螺仪专家——林士谔
圆周运动角速度测量方法赏析
基于匀速率26位置法的iIMU-FSAS光纤陀螺仪标定
基于小波神经网络的网络流量预测研究
微机械陀螺仪概述和发展
宽带光谱成像系统最优训练样本选择方法研究
半捷联雷达导引头视线角速度提取
基于构架点头角速度的轨道垂向长波不平顺在线检测