实用数值方法(Matlab)加速度检测仪数据仿真及校正声障屏检测仪数据仿真及校正一、问题的叙述本问题改编自一数学建模题,取材于工程测试技术。声障屏是一种插入在声源和接受者之间的减弱噪声影响的设备。在铁路、公路、高速铁路等各种道路行车对周围环境的噪声污染有效控制,并被广泛运用。列车的大幅度加速时,声障屏会因受脉动风交替引起的对声屏障的拉压作用而发生摆动。正常状态下,声屏障的摆动应当在一定的范围内,但是经过长期使用后,摆动会超出正常范围。所以需要对其进行加固维修。由于维修或重建费用高昂,故需声屏障检测仪对声屏障的工作状态进行检测,有针对性的对声屏障进行维修。声障屏检测仪的工作原理,通过内部的加速度传感器进行密集采样,记录车辆经过时声屏障振动而产生的加速度数值。将采集的数据加速度数据通过数值积分转化为震动的位移,并通过震动位移对声屏障状态进行判断。在试验中,传感器采集的数据通常会存在误差包括系统误差和随机误差,由于积分的特性,数据中的每一微小误差经过不断累积的积分运算会造成最终结果的巨大偏离,为了避免数据的结果的巨大误差,需要对采集的数据进行校正,才能使声障屏检测仪的作用得以真正实现。下面给出实例对声屏障检测仪的工作原理和误差进行介绍,给出一组实验实例如图1所示,图1为正常状态下声屏障实验中,加速度的采样数据及积分结果,其中图1(a)为加速度-时间关系图,图1(b)为速度-时间关系图,图1(c)为位移-时间关系图。从图1(b)和(c)中的结果可以明显的看出,当实验结束时,声屏障的位移速度和位移与实际情况存在明显的偏差。(注意:如图1(a)中所言,当加速度到达B点位置时,速度应当为0,位移固定在某个数值,对应图1(b)和1(c)中的A点)(a)加速度-时间关系图(b)速度-时间关系图(c)位移-时间关系图图1实验实例图本问题中,给出了1组正常状态下的声屏障实验采样数据(见附录一),所给出的加速度数据是模拟声屏障震动而用加速度检测仪所测量出的加速度数据,加速度传感器采集频率1000Hz,加速度单位为2/gsm(g为重力加速度),数据为:从A到B后再返回到A,其初速度为0。如图2所示。AABCEFDB图2模拟振动示意图因此,我们需要解决以下两个问题:1)建立仿真模型与求解;建立数值仿真模型,基于加速度的观测值序列,通过模型仿真计算得出速度和位移的观测值(仿真值)。2)误差分析与消除;观察仿真结果,分析随机误差和系统误差,建立随机误差和系统误差模型并进行求解。二、摘要本文首先对所给出数据进行预处理分析,针对声屏障检测仪的工作原理,建立了通过对加速度观测数据进行数值积分来计算速度和位移的仿真模型。并运用数学公式对声屏障检测仪观测数据中存在的各种误差成分及其特性进行了精确刻画。针对不同类型的误差提出了特异性的提取和去除方法。采用复化Simpson积分公式来对加速度进行数值积分,仿真计算各个时刻的速度及位移的观测值并画出其图像。发现随着时间的推移,计算结果存在越来越严重的误差,说明原始数据存在误差。因此有必要在仿真计算前对原始数据进行误差消除处理。之后,分析了随机误差和系统误差的不同成因,针对其不同成因分别建立不同模型来分析消除这两种误差。对于随机误差,本文采用卡尔曼滤波来消除随机误差。卡尔曼滤波的主要思想是:以最小均方误差为最佳估计准则。因此该滤波方法既充分滤除了随机误差,又避免了真实信息的损失。经过卡尔曼滤波之后,数据的方差小于未滤波前方差。对于系统误差,只进行了简单分析,未作深入探讨。关键字:声屏障检测仪,复化Simpson积分,卡尔曼滤波三、问题的分析由题目中提供的实验实例知,仅仅通过原始观测数据进行数值仿真的计算,得到的结果与真实情况相差较大。问题一要求建立仿真模型与求解。建立数值仿真模型,基于加速度的观测值序列,通过模型仿真计算得出速度和位移的观测值(仿真值)。基于av和as物理关系,选用合适的积分方法建立数值仿真模型,通过matlab程序进行求解,得到的结果与真实情况相比较,判断声屏障检测仪是否有明显误差存在。问题二要求对误差进行分析与消除。根据仿真结果,分析随机误差和系统误差的特点,建立随机误差和系统误差模型并进行求解。结合仿真计算的结果与各种误差的特点,选用合适的模型矫正随机误差与系统误差。对模型处理结果进行仿真与分析,检验模型的合理性,并提出进一步的改进方案。四、模型的建立及求解1.问题一模型建立及求解1.1.数据预分析:根据题目中所提供的数据,应用matlab软件,导入数据,绘制数据的加速度散点图,绘制结果如下:图3A-B往返一次加速度随时间变化图由上述加速度散点图可以看出,随着屏障越偏离初始位置,加速度越大。且正负加速度的变化大致对称,符合实际的情况。但也明显存在少数偏差较大的散点。1.2.模型建立对速度-时间、位移-时间进行matlab仿真。设加速振动信号为at,根据av,as间的物理关系,可知速度信号:0()()'()(0)tvtatdtvtv(1-1)位移振动信号00tstvtdtsts(1-2)式中:vt为vt的原函数;0v为初始速度;st为st的原函数;0s为初始位移。数值积分的方法很多,如梯形公式、中矩形公式、simpson公式、牛顿-科特斯公式、复化梯形公式等。用复化simpson公式积分产生的误差可以表示为41cf,其中c为一个较小常数,又因为采样频率f较高(1000fHz),所以积分对速度以及位移的影响极小,在此忽略不计,因此采用复化simpson积分公式[1],可得:速度信号,111014,1,2,...,60iiiiivvaaainfv(1-3)位移信号,111014,1,2,...,60iiiiissvvvinfs(1-4)1.3.模型求解根据模型,运用matlab编写程序(程序见附录程序部分),基于所给数据调用程序求解结果如图4:图4C-D速度和位移往返一次仿真计算后随时间变化图形经过一次来回摆动,速度与位移最终都该变为0,但是实际的仿真结果却是两者都没有变成0,说明有误差存在。1.4.误差分析加速度测量值ca与实际值ra之间存在测量误差。测量误差一般是由随机误差与系统误差组成,即有:craa。随机误差也称为偶然误差,在任何测量中,随机误差都是不可避免的,而且在同一条件下重复进行的各次测量中,随机误差的出现或大或小,或正或负,各有特性而不相雷同。它的出现从表面上看是毫无规律的,似乎是纯属偶然的。而就其总体来说,却具有某些内在的共性,即具有一定的统计规律。利用概率论的一些理论和统计学的一些方法,可以掌握随机误差的若干规律,并对误差大小进行估算。由于密集采样过程中,样本容量均远大于30,故认为随机误差服从正态分布,亦称高斯分布,它满足的概率密度分布函数为:22212fe(1-5)在实际测量中,由于样本容量不能无限大,故此时的算术平均值不是真值,对标准误差的实际处理只能进行估算。利用数理统计理论,可以得到对偏差进行估价的贝塞尔公式为:2111naiisaan(1-6)而as是的最佳估计值。借助matlab软件,可得到本次实验中的数据的标准偏差分别为:0.7063As。从图3中也可以看出加速度的数据不是光滑的正弦函数,这就是因为随机误差的存在所引起的。系统误差的出现一般是有规律的,在同一测量条件下,多次重复测量同一值时,观测值总往一个方向偏差,测量误差的绝对值和正负号在重复多次测量中几乎相同,都保持基本不变。根据图4分布规律,不难看出,每经过一次单方向运动后的速度值总会减小,亦即加速度散点图中的波峰积分值小于波谷积分值。从物理学角度讲,即认为声屏障检测仪所测得的反向加速度值普遍高于正向运动时的加速度值,认为此类误差为系统误差。产生系统误差的原因可能各不相同,但是它们具有共同的特点,即确定的变化规律。2.问题二的模型建立及求解2.1.随机误差模型高斯噪声是概率密度函数服从高斯分布(即正态分布)的一类噪声。这种噪声主要来源于电子电路噪声和低照明度或高温带来的传感器噪声,也成为正态噪声,是实践中经常用到的噪声模型。高斯随机变量z的概率密度函数由下式给出:22{()/2}1()exp2zPz(2-1)其中,z表示图像像元的灰度值;表示z的期望;表示z的标准差。因此,本文主要针对高斯白噪声进行随机误差滤波。2.2.随机误差滤波模型本文采用卡尔曼滤波的方式对于数字图像进行随机误差的消除。卡尔曼滤波器主要解决具有惯性特征的滤波问题。比如基于序列图像的目标跟踪,运动目标的前后两帧图像具有运动特性,应用卡尔曼滤波器效果较好。而两种随机误差即高斯误差和椒盐噪声具有明显统计学特性,卡尔曼滤波能较好的解决以最小均方误差为最佳估计准则,采用信号与噪声的状态空间模型,利用前一时刻的估计值和当前时刻的观测值来更新对状态变量的估计,求出当前时刻的估计值,算法根据建立的系统方程和观测方程对需要处理的信号做出满足最小均方误差的估计。具体滤波方程组[3]如下:首先,我们先要引入一个离散控制过程的系统。可用一个线性随机微分方程(LinearStochasticDifferenceequation)来描述:()(1)()()XtAXtBUtWt(2-2)再加上系统的测量值:()()()ZtHXtVt(2-3)上两式子中,()Xt是t时刻的系统状态,()Ut是t时刻对系统的控制量。A和B是系统参数,对于多模型系统,他们为矩阵。()Zt是t时刻的测量值,H是测量系统的参数,对于多测量系统,H为矩阵。()Wt和()Vt分别表示过程和测量的噪声。他们被假设成高斯白噪声(WhiteGaussianNoise),他们的covariance分别是Q,R(这里我们假设他们不随系统状态变化而变化)。首先我们要利用系统的过程模型,来预测下一状态的系统。假设现在的系统状态是t,根据系统的模型,可以基于系统的上一状态而预测出现在状态:(|1)(1|1)()XttAXttBUt(2-4)式(2-2)中,(|1)Xtt是利用上一状态预测的结果,(1|1)Xtt是上一状态最优的结果,()Ut为现在状态的控制量,如果没有控制量,它可以为0。'(|1)(1|1)PttAPttAQ(2-5)式(2-3)中,(|1)Ptt是对应的covariance,(1|1)Ptt是对应的covariance,'A表示A的转置矩阵,Q是系统过程的covariance。式子就是卡尔曼滤波器对系统的预测。然后收集现在状态的测量值。结合预测值和测量值,可得现在状态(t)的最优化估算值(|)Xtt(|)(|1)()(()(|1))XttXttKgtZtHXtt(2-6)其中Kg为卡尔曼增益:''()(|1)/((|1))KgtPttHHPttHR(2-7)卡尔曼滤波器运行下去直到系统过程结束,不断更新t状态下(|)Xtt的covariance:(|)(())(|1)PttIKgtHPtt(2-8)其中I为1的矩阵。当系统进入1t状态时,(|)Ptt就是式子(2-5)的(1|1)Ptt。具体滤波程序见附录(|1)Xtt(1|1)Xtt2.3.随机误差滤波实验效果A-B滤波后,方差:'0.6615450817987As,滤波前后对比图如下图5A-B往返一次加速度经过二次卡尔曼滤波器滤波后前后对比图由计算结果可知'AAss。且经卡尔曼滤波,图像得到更加满意的仿真结果,使图像更接近实际情况,并避免了有效数据的丢失,进一步证实该滤波去噪方法有效可行。2.4.系统误差分析系统误差(规律性误差),误差来源主要有:1)仪器误差:仪器自身的构造缺陷带来观测值与实际值之间的偏差;2)环境误差:温度,湿度,光线等环境因素造成观测值的不准确;3)理论误差:由于