王 茜,仲 超,杨 雷
(1.空军勤务学院,江苏 徐州 221000;2.驻中国空空导弹研究院军事代表室,河南 洛阳 471000)
数据预处理[1]是数据测试的重要环节,对数据进行预处理能确保数据的无差异性和非偶然性。一般数据的预处理包括标度变换、数字滤波、剔除奇异项、剔除趋势项和平滑处理。在部队,导弹测试数据的预处理在导弹测试中占据重要地位,其预处理主要包括量纲消除、剔除奇异项和剔除差异项,预处理后的数据经D9接口输入计算机,进行下一步处理。
国内外研究学者针对数据预处理这一课题有较深入的研究,Fayyad U在其著作《Advances in Knowledge Discovery and Data Mining》中讲明数据变换的聚集过程,提出几种聚集方法。GJ.Williams在其著作《Modeling the KDD Process》中指出数据预处理是KDD的重要组成,并详细阐述了数据清洗问题。我国专家刘乃琦在其著作《IBM-PC混合语言编程技术》中根据数据预处理过程提出几个编程方法并给出实例。本文依据国内外研究成果,针对某型导弹的测试流程,设计数据预处理模块,完成其测试数据的预处理工作。
导弹数据的测试存在偶然性,一般测试时,某些参数会多次测量。参数包括电压、电流、时间和频率等复杂类别,每个参数对应的一组测量值也可能存在奇异项和趋势项[2]。
针对这些情况,需先对参数进行无量纲化,然后剔除参数中的奇异项和趋势项,最终取剔除后每组数据的平均值作为对应参数的实测值。
本文使用Multisim14设计预处理模块电路,使用Matlab调试预处理程序,调试合格后可经emlc命令转化为C语言后烧入单片机,实现对数据的预处理,本文主要根据原理分析和设计电路,对预处理效果进行仿真。
从导弹传入的信号一般在10-3数量级,单片机无法识别,因此,需要对信号放大,信号放大电路如图1所示。
图1 信号放大电路
图中V1和V2是差动放大器[3]同相输入端,V3是差动跟随器输出端,其增益近似为1。差动放大器放大倍数如式(1)所示
差动放大器使用3288RT,此型号放大器漂移小、输入阻抗高、共模抑制比高,适合微小信号输出时使用,还可用作电压比较器,功能较为强大。
模拟信号输入后需经A/D转换器,然后输入单片机中,A/D转换器外部连接电路连接如图2所示。
IN为数据输入端,A/D转换器D0~D7引脚经总线输入至单片机中,外接的3个与门与内置转换电路实现模数转换功能,ADDA、ADDB和ADDC是模数转换区引脚,一般接地。
图2 A/D转换器外部连接电路
采集参数主要为电压和电流信号,电压和电流数据需要进行量纲变换,将有量纲量转化为无量纲量,这里采用Z标准化[4]的方法,量纲消除公式为
而后得到一个参数的多个无量纲采样值,采样数据中可能存在奇异项和趋势项。先对奇异项进行剔除,根据奇异项判断准则,预测值xt′用差分方程计算。
误差限W根据采集系统特征确定。检测出奇异项后,用预测值代替,若有连续两个或以上奇异点出现,则先判断是否满足式(4)
经验证明,K值一般取5,若满足式(3),则不剔除,若满足式(5)
则继续用xt′取代xt,即认为该点必是干扰点。一般采用肖维勒方法剔除奇异项,肖维勒系数可按如下近似公式计算:
如果测量值与平均值之差绝对值大于标准偏差与肖维勒系数[5-6]之积,则该测量值被剔除,即
趋势项的剔除方法为最小二乘法[7],寻找函数,使得与x(t)的误差平方和最小,采样数据为离散化数据,令采样间隔Ts=1,则拟合数据多项式为
误差平方和E(b)的表达式为
因为 bm(1≤m≤M)总为正数,所以 E(b)对 bl求偏导,使其为零,即
式(10)可产生M+1个如下方程
根据N个待处理的xk,可得到(M+1)个bm值,式(9)实际是(M+1)元线性方程组。根据经验,一般M的值在3以内,当M为1时,由式(9)可得以下联立方程组
再联合下式
最终解式(9)可得
由于导弹某些参数测试时需进行多次测量,因此,某些参数对应的的初始值并不是一个单值,而是一组数。这组数若存在奇异项和趋势项,则需剔除并替换。
以该型导弹引信起爆需要的多个多普勒脉冲为例,采样值为 1.503 4、1.506 2、1.503 4、1.502 4、1.498 5、2.500 0、1.500 7、1.506 7、1.499 3、1.496 9。其中2.500 0为奇异项,此项数据保存在“参数n.dat”文件中。程序调试可得如图3所示结果。
图3中2.500 0项已被剔除,由于采样数据较多,奇异项较少,数据不替换不会对最终结果造成影响,因此,这里不进行数据替换。
图3 奇异项剔除结果
以该型导弹陀螺转子不通电转速下降值为例,在1 000 ms的时间内对转子的频率进行测量,对测量值进行曲线绘制,并描述其中趋势项和总曲线,然后对趋势项进行剔除,剔除结果如图4所示:
图4 趋势项剔除结果
这里为方便观测,转子频率设为不变,表现为如图所示的正弦波。趋势项设为时刻变化的连续值,表现为如图的曲线。对两者的混合信号进行处理,剔除趋势项。
本文通过对某型导弹测试流程的分析,依据现阶段研究情况,参考部分文献,设计具备预处理功能的模块,以满足我军在该型导弹测试上的需要。现阶段我军测试技术还有不足之处,未来在数据预处理领域会融入更多如大数据处理技术等高新技术。