一种基于lstm神经网络的mems陀螺仪原始输出信号降噪方法

文档序号:985765 发布日期:2020-11-06 浏览:21次 >En<

阅读说明:本技术 一种基于lstm神经网络的mems陀螺仪原始输出信号降噪方法 (MEMS gyroscope original output signal noise reduction method based on LSTM neural network ) 是由 王燕妮 翟会杰 于 2020-06-30 设计创作,主要内容包括:本发明公开了一种基于LSTM神经网络的MEMS陀螺仪原始输出信号降噪方法,包括以下步骤;1)获取MEMS陀螺仪原始输出数据;2)数据预处理;3)构建降噪模型,基于Keras框架构造建LSTM神经网络模型;4)降噪处理,用训练集数据训练神经网络模型,并保存模型,测试集数据作为训练后模型的输入进行预测处理;5)降噪结果评估,通过降噪评估指标均方误差进行评估。该方法采用LSTM神经网络模型的记忆功能特点,更容易获取陀螺仪输出数据序列的潜在规律,对MEMS陀螺仪原始输出信号降噪的效果显著。(The invention discloses a method for reducing noise of an original output signal of an MEMS gyroscope based on an LSTM neural network, which comprises the following steps of; 1) acquiring original output data of the MEMS gyroscope; 2) preprocessing data; 3) constructing a noise reduction model, and constructing an LSTM neural network model based on a Keras framework; 4) noise reduction treatment, namely training a neural network model by using training set data, storing the model, and performing prediction treatment by using test set data as input of the trained model; 5) and evaluating the noise reduction result by evaluating the mean square error of the noise reduction evaluation index. The method adopts the memory function characteristic of the LSTM neural network model, is easier to obtain the potential rule of the data sequence output by the gyroscope, and has obvious noise reduction effect on the original output signal of the MEMS gyroscope.)

一种基于LSTM神经网络的MEMS陀螺仪原始输出信号降噪方法

技术领域

本发明属于数字信号处理领域,涉及MEMS陀螺仪输出信号降噪,特别涉及一种基于LSTM神经网络的MEMS陀螺仪原始输出信号降噪方法。

背景技术

目前,MEMS陀螺仪输出数据降噪方法有硬件设计和软件编程,软件设计主要进行建立模型,通过合适的滤波器对误差进行修正,优势在于成本低,周期短,而且性能提升的空间较大。常用的建模方法有:

1、利用滑动自回归建模方法,是基于时间序列分析建立滑动自回归模型,但滑动自回归模型的阶数太高就无法精确描述随机漂移误差。

2、基于小波分析的建模方法,小波变换能根据信号频率进行不同分辨率分析,然而小波基函数选取不合理就无法精确建模。

3、根据MEMS陀螺仪数据手册建模方法,建模精确度高但不适用于所有MEMS陀螺仪。

4、卡尔曼滤波器因其解算速度快,实时性好而成为常用的MEMS陀螺仪降噪算法,但模型不合理会造成滤波器发散,对外界输入的适应能力差。

而MEMS陀螺仪的随机漂移误差会随着外界环境的变化而变化,且没有明确的规律,难以对其建立准确的误差模型。因此,MEMS陀螺仪输出数据随机误差的辨识与降噪方法研究是本领域技术人员关注的课题之一。

发明内容

针对上述现有技术存在的缺陷或不足,本发明的目的在于,提供一种基于LSTM神经网络的MEMS陀螺仪原始输出信号降噪方法。

为了实现上述任务,本发明采取如下的技术解决方案:

一种基于LSTM神经网络的MEMS陀螺仪原始输出信号降噪方法,其特征在于,按以下步骤实施:

步骤1),获取MEMS陀螺仪原始输出数据

首先搭建主要由MEMS陀螺仪模块、上位机软件、计算机、供电电源组成的MEMS陀螺仪数据采集系统,该系统通过串口通信的方式将采集的数据信息上传到上位机,上位机软件获取MEMS陀螺仪数据主要通过RS-422串口通信协议,它采用平衡传输采用单向/非可逆,有使能端或没有使能端的传输线;MEMS陀螺仪模块通过RS-422串口通信协议转USB接口与计算机USB接口连接,上位机软件通过控制计算机的操作系统调用接口进行采集MEMS陀螺仪原始输出数据;

步骤2),数据预处理

读取步骤1)获取的陀螺仪输出样本数据,进行样本数据格式变换,采用最大最小归一化方法对陀螺仪数据进行归一化处理,将样本数据映射到[0,1]之间,并进一步将样本数据集按7:3的比例划分出训练集数据与测试集数据;

步骤3):建立降噪模型

基于Keras框架构造LSTM神经网络模型,包括1层LSTM和3层Dense层,设置LSTM神经网络模型的结构以及模型参数;

步骤4):降噪处理

将训练集数据通过LSTM神经网络模型进行模型训练,通过损失函数进行参数调整直到模型收敛,并保存模型;以测试集数据作为模型的输入进行降噪处理;

步骤5):降噪结果评估

通过降噪评估指标均方误差和降噪结果对比图进行评估。

根据本发明,步骤2)中所述对陀螺仪输出样本数据,进行样本数据格式变换的过程为;从统计的角度入手,将陀螺仪的随机误差处理为一组有序的时间序列的随机变量,将陀螺仪数据降噪问题转变为时间序列数据预测。

进一步地,步骤3)中所述的模型参数公式包括:

遗忘门ft=σ(Wf[xt,ht-1]+bf),其中ft∈[0,1]表示t时刻的节点对t-1时刻细胞记忆的选择权重,bf为遗忘门的偏置项,ht-1表示t-1节点的隐层状态信息,非线性函数

输入门it=σ(Wi[xt,ht-1]+bi),其中it∈[0,1]表示t时刻的节点对当前节点信息的选择权重,bi为输入门的偏置项,非线性函数

Figure BDA0002563597440000032

当前节点输入信息

Figure BDA0002563597440000033

其中

Figure BDA0002563597440000034

为偏置项;

输出记忆信息Ct=ft·Ct-1+it·Cin,其中Ct-1表示t-1节点的记忆信息;

输出门ot=σ(Wo[xt,ht-1]+bo),其中ot∈[0,1]表示t时刻的节点细胞记忆信息的选择权重,bo为输出门的偏置项;

t时刻的隐层状态ht=ot·tanh(Ct);

xt表示t时刻LSTM神经网络节点的输入向量,ht表示t时刻LSTM神经网络节点的隐层状态信息;

Figure BDA0002563597440000035

tanh为双曲正切激活函数;Wf为遗忘门的权重矩阵,Wi为输入门的权重矩阵,Wo表示待更新信息的权重矩阵。

本发明的基于LSTM神经网络的MEMS陀螺仪原始输出信号降噪方法,采用LSTM神经网络模型的记忆功能特点,更容易获取陀螺仪输出数据序列的潜在规律,对MEMS陀螺仪原始输出信号降噪的效果显著。

附图说明

图1为本发明的基于LSTM神经网络的MEMS陀螺仪原始输出信号降噪方法的流程框图。

图2是MEMS陀螺仪数据采集流程框图;

图3是降噪结果对比图,其中(a)图是训练集数据降噪结果对比图,(b)图是测试集数据降噪结果对比图。

以下结合附图和实施例对本发明作进一步详细说明。

具体实施方式

参照图1,本实施例给出一种基于LSTM神经网络的MEMS陀螺仪原始输出信号降噪方法,具体的详细实施步骤如下:

步骤1)获取MEMS陀螺仪原始输出数据

准备试验环境:本实例选用MEMS的零位信号,即感知角速度为零状态时的输出信号,选择的试验方法是静态试验。同时为了提高数据的可信度,降低环境和温度变化对输出数据的影响,保持MEMS陀螺仪模块在标准室温25℃下(将MEMS陀螺仪模块放在温度设置为25℃的温控转台内)进行试验,陀螺仪保持静止的状态30min后开始采集数据。

搭建数据采集系统:主要由MEMS陀螺仪模块、供电电源、上位机软件、计算机等组成;通过串口通信的方式将采集的数据信息上传到上位机,上位机软件获取MEMS陀螺仪数据主要通过RS-422串口通信协议,它采用平衡传输采用单向/非可逆,有使能端或没有使能端的传输线。MEMS陀螺仪模块通过RS-422串口通信协议转USB接口与计算机USB接口连接,上位机软件通过控制计算机操作系统调用接口进行采集MEMS陀螺仪数据。

采集数据:如图2所示,设置串口,波特率设置为921600,选择保存路径,供电电源上电,开始传输陀螺仪数据,PC端接收数据后进行校验数据以及数据解算,然后保存到计算机缓存区域,上位机软件调用计算机操作系统获取缓存区接收到的数据,经过解析协议输出MEMS陀螺仪数据。

步骤2)数据预处理

本实施例中,数据预处理主要是准备数据进入神经网络层,包括陀螺仪数据格式变化和数据归一化处理。

读取MEMS陀螺仪样本数据,将样本数据格式进行变换,将陀螺仪样本数据转化为时间序列数据格式,序列样本中的采样点表示为:xi=(x1,…,xi,…,xn),适合进入神经网络层进行时间序列预测。

归一化处理并划分出训练集数据和测试集数据;归一化处理的目的是为了消除量纲的影响,避免神经网络训练过程中,遇到大量纲影响从而训练模型,采用最大最小归一化方法进行归一化处理,将样本数据映射到[0,1]之间。并划分训练集数据和测试集数据,准备数据进入神经网络层;

最大最小归一化方法公式:

Figure BDA0002563597440000051

归一化处理后将样本数据集按7:3的比例划分出训练集数据与测试集数据,准备进入神经网络层。

步骤3)建立降噪模型,基于keras框架构造LSTM神经网络模型

构建LSTM神经网络模型,LSTM(LongShortMemoryNetwork)长短记忆神经网络是一种特殊的递归神经网络,为了改进梯度消失(不同的隐层之间会存在过去时刻对当前时刻的影响因素,但随着时间跨度的变大这种影响会削弱)这一问题而提出的,善于发掘时间序列数据间的非线性关系,被证明对时间序列预测问题都更有效;而MEMS陀螺仪作为实际存在的物理系统,相邻时间点上的输出会存在状态延续性,将陀螺仪数据处理为时间序列数据后,当前时刻输出与相邻时刻的输出必然存在一定的相关性,可认为时间序列反映了系统的内在规律,因此,将LSTM神经网络模型应用到MEMS陀螺仪的原始输出信号降噪中,通过拟合序列建模的方法来预测系统进一步的输出,以达到对MEMS陀螺仪输出数据较好的降噪效果。

LSTM神经网络模型通过引入“门结构”来处理长时记忆,使其具有长时选择性记忆的模式,这种特殊的结构设计使其更适合预测或处理基于时间的系列数据,通过以下三个“门”结构控制之前信息对当前信息的影响,即:

(1)遗忘门,决定那些单元状态应该被遗忘;

(2)输入门,决定那些新的状态应该被加入;

(3)输出门,根据当前的状态和现在输入,决定输出;

“门结构”模型的公式包括:

遗忘门ft=σ(Wf[xt,ht-1]+bf),其中,ft∈[0,1]表示t时刻的节点对t-1时刻细胞记忆的选择权重,bf为遗忘门的偏置项,ht-1表示t-1节点的隐层状态信息,非线性函数

Figure BDA0002563597440000061

输入门it=σ(Wi[xt,ht-1]+bi),其中,it∈[0,1]表示t时刻的节点对当前节点信息的选择权重,bi为输入门的偏置项,非线性函数

Figure BDA0002563597440000062

当前节点输入信息

Figure BDA0002563597440000063

其中,

Figure BDA0002563597440000064

为偏置项;

输出记忆信息Ct=ft·Ct-1+it·Cin,其中,Ct-1表示t-1节点的记忆信息;

输出门ot=σ(Wo[xt,ht-1]+bo),其中,ot∈[0,1]表示t时刻的节点细胞记忆信息的选择权重,bo为输出门的偏置项;

t时刻的隐层状态ht=ot·tanh(Ct);

其中,xt表示t时刻LSTM神经网络节点的输入向量,ht表示t时刻LSTM神经网络节点的隐层状态信息;

Figure BDA0002563597440000065

tanh为双曲正切激活函数;Wf为遗忘门的权重矩阵,Wi为输入门的权重矩阵,Wo表示待更新信息的权重矩阵。

配置训练模型,包括1层LSTM神经网络层和3层Dense层,设置LSTM神经网络模型的结构以及超参数,主要包括输入数据维度、输出数据维度、每层的节点数、激励函数、学习速率、损失函数、优化函数、批处理数量、迭代次数等。

LSTM层的输入数据维度为1,输出数据维度为1,输入层的激活函数是relu,每层节点数为128,学习率为0.001。激励函数为tanh函数及sigmoid函数,损失函数loss为mse(均方误差),优化函数为Adam函数,批处理数量为1,迭代次数为100;

tanh函数公式为:

Figure BDA0002563597440000071

sigmoid函数公式为:

Figure BDA0002563597440000072

步骤4)降噪处理

降噪主要思路为利用长短期记忆网络LSTM神经网络模型进行时间序列预测,LSTM模型强大的学习能力,从陀螺仪训练数据序列中学习陀螺仪输出数据的运动特征,通过优化器来最小化损失函数loss,进行参数调整使模型直到收敛。

训练LSTM神经网络模型过程是,用70%的陀螺仪样本数据作为训练集数据输入到LSTM神经网络模型的输入层,将得到的输入层的权值和偏置输入到LSTM神经网络模型输出层,再将结果通过全连接网络经过3层Dense层,输出结果为训练模型的降噪结果,保存模型。

进一步地,将剩余30%的陀螺仪样本数据作为测试集的数据,输入到已经训练好的长短期记忆网络LSTM模型中,预测陀螺仪系统进一步输出,实现陀螺仪数据降噪。

步骤5)降噪结果评估

通过降噪评估指标进行评估;客观评价使用均方误差(MeanSquared Error,MSE)作为评价指标,公式如下:

式中,fi是预测值,yi值是观测值。

本实施例中,迭代100次以后的均方误差MSE由0.2046下降为0.0173,均方误差下降了90%。

图3给出了降噪结果对比图,其中(a)图是训练集数据降噪结果对比图,(b)图是测试集数据降噪结果对比图。

11页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种减小激光陀螺温变效应的稳频装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类