1、引言
车载定位定向导航系统是指装载在轮式及履带式车辆上,能自主地为车辆提供方位基准和位置信息的一种装置。
本文所述的车载定位定向导航系统由寻北仪、方位保持仪、里程计、高程计等组成,其中,寻北仪和方位保持仪是极其重要的部分,它们的错误或失效直接影响系统的定向、定位精度,甚至会造成严重后果,因此对其进行准确的故障检测和诊断显得尤为重要。
目前,该系统采用传统的故障检测模式,通过硬件和软件方式比较各模块相关信号的实际值与参考值之差,若超出允许范围,则认为出现异常或故障,其准确性和可控性较差。此外,该系统在性能检测和故障诊断方面还存在以下两点不足:一是受体积和重量等因素的制约,系统设计时没有预留与外部检测仪器(如示波器、万用表等)的接口,因此,无法进行野外环境下的检修;二是系统无法保存并显示内部惯性器件各个时期工作状态的数据,而这些数据对系统的使用、管理和维护具有极其重要的意义。
2、基本思想
获取定位定向导航系统中惯性器件运行时的状态数据是对其进行性能分析和故障诊断的前提条件,由于导航系统本身没有预留检测接口,常规的检测仪器显然无能为力。但我们注意到导航系统内部不但有专用的A/D模块、V/F(电压/频率)转换模块和计算机模块等负责采集惯性器件信号,而且还预留了一个RS-232串行通信端口,在此启发下我们设计了一种检测装置--检测仪,它能在保持导航系统硬件结构不变、性能指标不受影响的前提下,实现对导航系统的性能测试和故障诊断等功能。
为此,我们只需简单地对导航系统软件做一些增补,使之在原来单一的定位定向导航状态工作模式基础上增添了待检测状态的工作模式。检测仪通过RS-232串行口以串行通信的方式与导航系统进行通信以获取系统内部由A/D模块和V/F模块采集到的数据,采用基于BP神经网络的数据处理和分析方法,使得对导航系统的性能检测和故障诊断变得准确、便捷。
检测仪的工作流程如图1所示。当导航系统处于待检测状态时,检测仪通过串行端口向导航系统发送各种检测命令,导航系统随即进入相应的检测状态并把检测数据传送给检测仪,由检测仪完成数据处理和系统性能分析,检测结束后系统自动恢复到导航状态。检测过程中,导航计算机通过中断控制方式接收命令、采集数据和发送数据。操作人员通过检测仪发出各种检测命令后,检测过程由计算机自动完成,无需人工干预。
3、硬件配置
作为专用的检测设备,要求检测仪在车载定位定向导航系统需要检测、维修的任何时间和地点都能够方便地与导航系统对接并进行性能测试和故障诊断。因此检测仪必须具有体积小、重量轻、功耗低、可靠性高、便于携带等特点,能在各种恶劣环境特别是野外环境下使用。根据以上要求,检测仪选用了嵌入式计算机PC/104模块。整个检测仪的硬件配置如图2所示。
PC/104计算机模块是检测仪的核心部分,由于检测仪在检测过程中不但要实时完成大量数据的收发任务,还要实时对获得的各种数据进行复杂的处理、分析和存储,因此要求其有尽可能高的性能。我们选用的PC/104计算机模块具有一个内置浮点运算协处理器的高速嵌入式Pentium CPU、两个16C550等同高速串行口,能够快速可靠地进行RS-232串行通信,迅速准确地完成所赋予的各项功能。 [page]
电源模块的作用是向PC/104计算机模块和液晶显示屏提供+5V和+12V电源。为便于和其它计算机交换数据,检测仪还留有一个以太网口。
4、软件设计
检测仪的软件基于Windows平台的Visual Basic 6.0、Visual C++ 6.0、Matlab6.5和Access 2000设计完成。Visual Basic提供了功能强大且使用方便的串行通信控件"MSComm",在开发Windows应用程序的编程语言中具有独特的优势,但在数据处理等方面功能较弱,Visual C++ 6.0、Matlab6.5可弥补其不足。在数据库操作方面,检测软件使用了Visual Basic提供的数据接口ActiveX数据访问对象(Data Access Object,DAO)来管理数据库。DAO支持对Access数据库的简捷方便的访问,是一种便于使用的应用程序接口。
4.1通信协议
检测仪和导航系统之间的传输波特率为9600位/秒,传输帧格式为:1位起始位,8位数据位,1位停止位,1位偶校验位,共11位数据。双方进行通信时只需将预传送数据的开头加上一个起始判别字节即可。 检测仪和导航系统之间的通信流程为:检测仪发送检测命令--导航计算机发回相关数据。
4.2功能模块的设计
为了便于开发、调试、升级和维护,软件采用了模块化的设计思想,整个软件主要由四个窗体和六个标准模块组成。窗体包括展示窗体、功能选择窗体、导航窗体和检测窗体;标准模块 是检测仪完成各项任务的功能模块,包括CRC校验码计算模块、通信模块、坐标变换模块、数据拆分模块、数据库管理模块和检测数据处理模块等。CRC校验码计算模块用于生成串行通信校验码;通信模块的作用是利用Visual Basic中串行通信控件"MSComm"的"input"和"output"属性和"OnComm"事件完成数据的收发任务;坐标变换模块负责把54坐标转换为地心经纬度坐标;数据拆分模块可把整型数据拆分为字节型数据,以便于通过串口发送;数据库管理模块根据需要把检测的数据保存在数据库中;检测数据处理模块为整个软件的核心,根据检测数据的类型给出相应的处理结果。
4.3检测数据的处理
为准确判断导航系统的工作状态,我们设计了基于BP神经网络的故障诊断方法,作用函数选取S型函数 。由于寻北仪中陀螺仪和加速度计正常工作时的信号均为周期信号,故这些信号可采用同一网络进行性能检测和故障诊断。检测时取得一个周期的信号,首先经过低通数字滤波器以减少、消除检测数据中干扰和噪声的影响,然后进行归一化处理。经过对试验数据的多次仿真试验,我们提取到其故障特征信号为峰值(MAX)、峭度(KUR)、标准差(STD)这三个量作为网络的输入。网络采用离线训练、在线使用的方式。
神经网络的结构如图3所示,其中隐含层神经元个数、各个神经元上的权值和阈值均由大量试验样本数据训练得到。考虑到神经元的作用函数选为S型函数,故选取网络的输出训练样本为0.9(有故障)或0.1(无故障)。神经网络学习算法采用自适应学习率梯度下降反向传播算法,且参数每一步更新不仅考虑当前的梯度方向,而且还考虑前一时刻的梯度方向,从而降低了网络性能对参数调整的敏感性,有效地抑制了训练结果出现局部极小问题。对一个训练好的BP网络来说,根据网络的输出(out)即可判断相应的惯性部件是否工作正常。测试结果表明,采用基于BP神经网络的故障判别方法适合于车载定位定向导航系统惯性器件的故障诊断,准确率高。
5、结论
检测仪的研制成功,解决了车载定位定向导航系统在野外环境下无法进行性能测试和故障诊断的难题。它不但能快速准确地获取导航系统惯性器件的状态信息数据并完成系统的性能分析和故障诊断,还能保证导航系统的正常工作且性能指标不受影响,其工作原理为已有装备的性能检测和故障诊断提供了一种新思路。