APP下载

基于BP神经网络的角度误差补偿方法研究*

2021-08-12刘凤伟时慧晶刘春枚

舰船电子工程 2021年7期
关键词:训练样本编码器补偿

刘凤伟 时慧晶 刘春枚

(昆明船舶设备试验研究中心 昆明 650051)

1 引言

某水下试验装置是一种可以升降、旋转、平移的大型试验设施,主要用于测试、验证声呐或其他水声设备声学工作性能指标的重要装置。水听器是水下航行体或其他水声装置重要的敏感元件,主要用于水下物体的精确探测[1]。根据试验目的,将水声装置通过夹具安装至水下试验装置。水下试验装置依据预先设定的水深将被测试验件浸入水中,再根据相关要求旋转不同的角度和平移控制,达到试验目的。

光电编码器具有高精度、高分辨力、输出稳定等优点,广泛应用于仪表测量、现代军事、信号检测、生物工程、工业自动化和航空航天航海等精密检测与控制系统领域[2]。试验装置的旋转角度通过安装好的光电编码器测定,反馈给上位计算机,通过上位计算机闭环控制试验装置的旋转角度。

光电传感器的测量误差具有分布非线性特点,包括被测件的机械安装误差、试验装置的系统误差、角度传感器弹性元件疲劳、运动机件磨损及腐蚀等,长期使用时,为保证其测量精度还必须定期进行校准[2]。本文提出一种基于BP神经网络的水下试验装置角度误差补偿方法,采用水下试验装置试验时的工作数据作为训练样本对BP神经网络模型进行训练和学习,得到模型的结构参数,补偿精度高,收敛速度快,能够克服光电编码器安装、环境等因素对试验装置定位角度精度的影响,大大提高了水下试验装置的定位精度。同时,采用BP神经网络补偿之后,系统还具有网络结构简单、自学习,易于标定操作等优点,在试验装置长期投入运行后,可借助于配套的高精度计量校准设备,得到训练样本,重新对BP神经网络进行训练和学习,可以长期有效地使用。

2 角度测量误差来源及表示

光电编码器安装于水下试验装置的旋转轴上,通过机械传动将试验设施的旋转运动转换为光电编码器的输入轴,经过总结分析,光电编码器的误差来源可包括机械传动轴系误差、光电编码器的机械安装误差、传感器自身系统误差、长期使用元件疲劳带来的动态漂移误差。

标准偏差σ可以表示为

式中,n表示测试点点数;Ei表示光电编码器在第i次测量的误差,Ri表示光电编码器在第i次的测量数据,Ti表示光电编码器在第i次的标准值(理论值),具体表达式为

光电编码器误差最大值emax可表示为

光电编码器误差平均值emean可表示为

3 神经网络模型及误差修正算法

采用神经网络的方法对水下试验装置光电编码器的输出进行补偿的原理图包含传感器测量模型和神经网络补偿模型两部分组成[3],如图1所示。

图1 光电编码器测量误差补偿原理图

图1中,其光电编码器的数学模型为

其中,h表示神经网络温度补偿后的输出值,x为待测试验设施旋转角度值,t为影响因子(环境、安装带来的影响),y为光电编码器的输出量。

将光电编码器的输出量和影响因子作为神经网络的输入样本,经神经网络处理后的输出值h即为期望的消除影响因子干扰后的目标值x。文章通过水下试验装置的试验数据来训练神经网络,经过不断训练和优化,调整神经网络结构参数,经过训练之后,使得整个水下试验装置的测量值h尽量逼近期望值x,实现水下试验装置的角度误差补偿,进而提高水下试验装置的定位精度。

BP网络通过正向传播得到输出结果,如果输出层得不到希望的输出,则转入反向传播,修改各层神经元连接的权值和阀值,再通过不断的迭代,直到信号误差满足要求[4]。

定义:Nv代表训练样本数组,P表示第P组训练样本,hi,p表示对于第P组样本第i个输出节点期望输出值;yi,p表示对于第P组样本第i个输出节点的实际输出值。

Ep表示第P组样本的均方误差,为

E表示训练样本数组的输出节点的总均方误差,表示为

计算BP网络中各个样本误差的目的是为了改变网络权值,使其更能满足网络需求,使误差减小到精度要求。利用训练样本总均方误差E来调整连接权值系数Wj,k,计算公式如下:

其中,η为学习速率,通常介于0~1之间。

BP神经网络学习步骤如下[5]。

1)给定初始值,Wj,k权值初始化,给定学习速率η,以及期望的阈值(误差输出E);

2)确定BP神经网络的结构参数和其它相关变量定义:设输入向量为yi=[yk1,yk2,yk3,…,ykm],(k=1,2,3,…,n),网络的训练样本个数为n。hi=[hk1,hk2,hk3,…,hkm]为BP神经网络进行n次迭代后的输出,Xi=[xk1,xk2,xk3,…,xkm]为系统期望得到的输出;

3)输入训练样本:依次输入训练样本集Nv=[Nv1,Nv2,Nv3,…,Nvm];

4)正向传播过程:根据输入,计算出网络的输出,并与期望值相比较,如果不满足要求就执行步骤5);否则返回步骤6);

5)反向传播过程:计算同一层的误差,修正权值和阈值,返回步骤3),如果满足误差要求,则执行步骤6);

6)训练结束。

4 试验结果分析

为了得到较好的神经网络训练样本,以及验证经过神经网络修正之后的测量精度和误差,采用高精度光纤陀螺作为校准装置,将其与试验设施同轴安装,试验时将它的输出作为标定值(理论值)。

经过分析试验数据可以得出:经过神经网络补偿之后的水下试验装置其测量精度具有较好的重复性,测量精度达到0.05°。根据文献[2]所述,随着测量次数的增加,光电编码器的标准偏差会减少,增加测量次数,光电编码器的标准偏差无明显变化。同时,水下试验装置在实施试验时,需要耗费的人力、物力、财力较多,并且试验难度也较大,故增加试验次数对于提高光电编码器的精度无太多意义。通过实际摸底试验和查阅参考文献,将试验次数定为20次。

将光电编码器安装至水下试验装置后,试验次数设定为20次,分别得到了误差补偿之前和采用BP神经网络误差补偿之后的试验数据,两次测量数据如表1和表2所示。

表1 未采取算法补偿水下试验装置的测量数据

表2 采取神经网络补偿之后水下试验装置测量数据

通过试验可以得出,采用基于神经网络补偿系统之后,水下试验装置的定位精度得到有效提高,标准偏差大大减小,平均误差降低到大约0.01°。本文采用的BP神经网络模型采用现场试验设施进行误差检测及精度补偿模型进行构建,学习数据采用实际试验过程中的实测数据进行学习,构建的神经网络模型能够较好地反映水下试验装置的实际工况,使得设施具备较好的定位精度。

5 结语

本文针对水下试验装置的定位精度问题,对误差来源进行分析,确定了误差补偿方案和模型。采用基于BP神经网络算法构建误差检测及精度补偿模型,采用实际工况数据作为训练样本对BP神经网络模型进行训练和学习,进而确定模型各结构参数。通过试验比对证明,经过算法补偿之后,试验设施的旋转角度误差得到了较好补偿,定位旋转角度精度得到有效提升。在试验设施长期投入运行后,可借助于配套的高精度计量校准设备,重新得到训练样本对BP神经网络进行训练和学习,达到长期使用的目的。

猜你喜欢

训练样本编码器补偿
人工智能
无功补偿电容器的应用
基于FPGA的同步机轴角编码器
基于PRBS检测的8B/IOB编码器设计
解读补偿心理
宽带光谱成像系统最优训练样本选择方法研究
融合原始样本和虚拟样本的人脸识别算法
基于稀疏重构的机载雷达训练样本挑选方法
JESD204B接口协议中的8B10B编码器设计
植物补偿和超补偿作用