640 likes | 875 Views
第 5 章 智能仪器典型处理功能. 5.1 硬件故障的自检 5.2 自动测量功能 5.3 仪器测量精度的提高 5.4 干扰与数字滤波. 第 5 章 智能仪器典型处理功能. 智能仪器的主要特征是以微处理器为核心进行工作,因而智能仪器具有强大的控制和数据处理功能,使测量仪器在实现自动化,改善性能,增强功能以及提高精度和可靠性方面发生了较大的变革。 本章侧重讨论一般智能仪器都具有的典型处理功能。.
E N D
第5章 智能仪器典型处理功能 5.1 硬件故障的自检 5.2 自动测量功能 5.3 仪器测量精度的提高 5.4 干扰与数字滤波
第5章 智能仪器典型处理功能 智能仪器的主要特征是以微处理器为核心进行工作,因而智能仪器具有强大的控制和数据处理功能,使测量仪器在实现自动化,改善性能,增强功能以及提高精度和可靠性方面发生了较大的变革。 本章侧重讨论一般智能仪器都具有的典型处理功能。 智能仪器的这些功能是通过执行某种专门程序所规定的测量算法来实现的。所谓算法即计算方法,它是为了使计算机获得某种特定的计算结果而制定的一套详细的计算方法和步骤,一般表现为数学公式或操作流程。测量算法则是指直接与测量技术有关的算法。
5.1 硬件故障的自检 所谓自检就是利用事先编制好的检测程序对仪器的主要部件进行自动检测,并对故障进行定位。自检功能给智能仪器的使用和维修带来很大的方便。 5.1.1 自检方式 5.1.2 自检算法 5.1.3 自检软件
为什么要测试ROM和RAM,怎么测试呢? 普遍的看法是:由于担心ROM和RAM芯片损坏,在出厂和使用前应该校验这两种芯片的好坏。测试RAM的方法是写读各个内存单元,检查是否能够正确写入;测试ROM的方法是累加各存储单元数值并与校验和比较。这种认识不能说错,但有些肤浅,照此编出的测试程序不完备。一般来说,ROM和RAM芯片本身不大会被损坏,用到次品的概率也比较小,真正出问题的,大都是其他硬件部分,此醉翁之意不在酒。
ROM测试 测试ROM的真正目的是保证程序完整性。 嵌入式软件和启动代码存放在ROM里,不能保证长期稳定可靠,因为硬件注定是不可靠的。以flash ROM为例,它会由于以下两种主要原因导致程序挥发: 1)到辐射。本身工作在辐射环境里/运输过程中受到辐射(如过海关时被X光机检查)。 2)长时间存放导致存储失效,某些0、1位自行翻转。
RAM测试 测试RAM的真正目的是保证硬件系统的可靠性。 RAM真的是太不容易坏了,我至今还没有看见过一起因为RAM损坏导致的系统不正常现象。不过大部分问题却可以通过RAM测试反映出来。仔细想想,当硬件被生产出来/被插到背板上究竟会发生什么错误呢!是不是感到自己做的板子出问题的可能性更大!请考虑如下几点: 1)生产工艺不过关,过孔打歪了,与临近信号线距离不满足线规甚至打在了线上。 2)由于搭锡引起的信号线粘连。
5.1.1 自检方式 (1) 开机自检。开机自检在仪器电源接通或复位之后进行。自检中如果没发现问题,就自动进入测量程序,如果发现问题,则及时报警,以避免仪器带病工作。开机自检是对仪器正式投入运行之前所进行的全面检查。 (2) 周期性自检。周期性自检是指在仪器运行过程中,间断插入的自检操作,这种自检方式可以保证仪器在使用过程中一直处于正常状态。周期性自检不影响仪器的正常工作,因而只有当出现故障给予报警时,用户才会觉察。 (3) 键盘自检。具有键盘自检功能的仪器面板上应设有“自检”按键,当用户对仪器的可信度发出怀疑时,便通过该键来启动一次自检过程。
5.1.1 自检方式 自检过程中,如果检测仪器出现某些故障,应该以适当的形式发出指示。智能仪器一般都借用本身的显示器,以文字或数字的形式显示“出错代码”,出错代码通常以“Error X”字样表示,其中“X”为故障代号,操作人员根据“出错代码”,查阅仪器手册便可确定故障内容。仪器除了给出故障代号之外,往往还给出指示灯的闪烁或者音响报警信号,以提醒操作人员注意。 一般来说,自检内容包括ROM、RAM、总线、显示器、键盘以及测量电路等部件的检测。仪器能够进行自检的项目越多, 使用和维修就越方便,但相应的硬件和软件也越复杂。
一、 ROM或EPROM的检测 5.1.2 自检算法 由于ROM中存在着仪器的控制软件,因而对ROM的检测是至关重要的。 ROM 故障的测量算法常采用“校验和”方法,具体作法是:在将程序机器码写入ROM的时候,保留一个单元(一般是最后一个单元),此单元不写程序机器码而是写“校验字”,“校验字”应能满足ROM中所有单元的每一列都具有奇数个1。自检程序的内容是:对每一列数进行异或运算,如果ROM无故障,各列的运算结果应都为“1”,即校验和等于FFH。
ROM 地址 ROM 中的内容 0 1 1 0 1 0 0 1 0 1 1 0 0 1 1 0 0 1 2 0 0 1 1 1 1 0 0 3 1 1 1 1 0 0 1 1 4 1 0 0 0 0 0 0 1 5 0 0 0 1 1 1 1 0 6 1 0 1 0 1 0 1 0 7 0 1 0 0 1 1 1 0 (校验字) 1 1 1 1 1 1 1 1 (校验和) 一、 ROM或EPROM的检测 表5-1 校验和算法 理论上,这种方法不能发现同一位上的偶数个错误,但是这种错误的概率很小,一般可以不予考虑。若要考虑,须采用更复杂的校验方法。
二、 RAM的检测 数据存储器RAM是否正常的测量算法是通过检验其“读/写功能”的有效性来体现的。 常选特征字55H和AAH,分别对RAM 中的每一个单元进行先写后读的操作。判别读/写内容是否相符的常用方法是,把该单元的内容求反并与原码进行“异或”运算,若结果为FFH,表明正常。 上述检验属于破坏性检验,一般用于开机自检。若RAM中已存有数据,若要求在不破坏RAM中原有内容的前提下进行检验就相对麻烦一些。
三、 总线的自检 所谓总线的自检是指对经过缓冲器的总线进行检测。 由于总线没有记忆能力,因此需要设置了两组锁存触发器,分别记忆地址总线和数据总线上的信息。这样,只要执行一条对存储器或I/O设备的写操作指令,地址线和数据线上的信息便能分别锁存到这两组触发器中,我们通过对这两组锁存触发器分别进行读操作,便可判知总线是否存在故障。 实现原理如图5-2所示。 具体做法是:使被检测的每根总线依次为1态, 其余总线为0态。如果某总线停留在0态或1态,说明有故障存在。
5.1.2 自检算法 四、 显示与键盘的检测 智能仪器显示器、键盘的检测往往采用与操作者合作的方式进行。检测程序的内容为:先进行一系列预定的操作,然后操作者对这些操作的结果进行验收,如果结果与预先的设定一致,就认为功能正常,否则,应对有关通道进行检修。 键盘检测的方法是: CPU每取得一个按键闭合的信号,就反馈一个信息。如果按下某单个按键后无反馈信息,往往是该键接触不良,如果按某一排键均无反馈信号,则一定与对应的电路或扫描信号有关。
5.1.2 自检算法 四、 显示与键盘的检测 显示器的检测一般有两种方式: 第一种方式是:让显示器全部发亮,即显示出888 …… ,当显示表明显示器各发光段均能正常发光时,操作人员只要按任意键,显示器应全部熄灭片刻,然后脱离自检方式进入其他操作。 第二种方式是:让显示器显示某些特征字,几秒钟后自动进入其他操作。
测试指针 入口地址 故障代号 偏移量 TST0 0 TST1 1 TSTPT TST2 2 偏移=TNUM TST3 3 ………… 上述各自检项目一般应分别编成子程序,以便需要时调用。 设各段子程序的入口地址为TST i(I = 0,1,2…), 对应的故障代号为TNUM(0,1,2…)。编程时, 由序号通过表所示的测试指针表(TSTPT)来寻找某一项自检子程序入口,若检测有故障发生,便显示其故障代号TNUM。 5.1.3 自检软件 表52 测试指针表
一个典型的含有自检在内的 智能仪器程序流程图
智能仪器通常都含有自动量程转换、自动零点调整、自动校准功能,有的仪器还能进行自动触发电平调节。这样,仪器操作人员就省去了大量烦琐的人工调节,同时也提高了测试精度。智能仪器通常都含有自动量程转换、自动零点调整、自动校准功能,有的仪器还能进行自动触发电平调节。这样,仪器操作人员就省去了大量烦琐的人工调节,同时也提高了测试精度。 不同仪器的自动测量功能及性能差别很大,本节仅讨论几种带有共同性的问题。 5.2 自动测量功能 5.2.1 自动量程转换 5.2.2 自动触发电平调节 5.2.3 自动零点调整 5.2.4 自动校准
5.2.1 自动量程转换 自动量程转换可以使仪器在很短的时间内自动选定在最合理的量程下,从而使仪器获得高精度的测量,并简化了操作。许多智能仪器,例如数字示波器、智能电桥、数字多用表等都设置有自动量程转换功能。 例如:某数字电压表共有 0.4V,4V,40V,400V 四个量程,这些量程的设定是由CPU通过特定的输出端口送出量程控制代码来实现的,这些代码就是控制量程转换电路各开关(如继电器)的控制信号,送出不同的控制代码就可以决定开关的不同的组态,使电压表处于某一量程上。 该数字电压表自动量程转换的操作流程如图5-5所示。
自动判别由最大量程开始,逐级比较,直至选出最合适量程。自动判别由最大量程开始,逐级比较,直至选出最合适量程。 本例各量程可使用同一个判断依据,即A/D转换的数据应落在3 999≥N≥399之间。
5.2.2 自动触发电平调节 示波器、通用计数器等仪器触发电平的设定是很重要的。一般情况下,触发电平应设定在波形的中点。有时为了满足其他测量的要求,例如测定波形上升时间或下降时间时,又需要将触发点设定在波形的10%或90%处。过去,要迅速而准确地自动找到理想的触发点是困难的,然而借助微处理器,并辅以一定硬件支持,就可以很好地实现这项功能。 调节原理如框图示。输入信号经过可程控衰减器传输到比较器,而比较器的比较电平(即触发电平)由 D/A转换器设定。
5.2.3 自动零点调整 仪器零点漂移的大小以及零点是否稳定是造成零点误差的主要来源之一。消除这种影响最直接的方法是选择优质输入放大器和A/D转换器,但这种方法代价高,而且也是有限度的。智能仪器的自动零点调整功能,可以较好地解决这个问题。 首先控制继电器吸合使仪器输入端接地,启动一次测量并将测量值存入RAM 中。此值便是仪器衰减器、放大器、A/D转换器等模拟部件所产生的零点偏移值Uos。 接着微处理器通过输出口控制继电器释放,使仪器输入端接被测信号,此时的测量值Uox应是实际的测量值与Uos之和。 最后微处理器做一次减法运算,使Ux=Uox-Uos,并将此差值作为本次测量结果加以显示。 很显然,上述测量过程能有效地消除硬件电路零点漂移对测量结果的影响。
5.2.4 自动校准 为保证仪器精度,仪器必须定期进行校准。 传统仪器校准是通过对已知标准校准源直接测量,或通过与更高精度的同类仪器进行比较测量来实现。这种校准过程必须由专业人员操作,仪器校准后,有时还需要根据检定部门给出的误差修正表对测量结果进行修正,使用很麻烦。 智能仪器能提供自动校准方式。自动校准时,操作者按下自动校准的按键后,仪器显示屏便会提示相应的操作信息, 操作者按提示进行相应操作,仪器便自动完成了仪器的校准 校准存储器法 动态自动校准法
校准存储器法: 操作者按下自动校准的功能键后,仪器显示屏便提示操作者应输入的标准电压;操作者按提示要求将相应标准电压加到输入端之后,再按一次键,仪器就进行一次测量并将标准量(或标准系数)存入到“校准存储器”。然后显示器提示输入下一个的标准电压值, 再重复上述测量存储过程。 当预定的校正测量完成之后,校准程序还能自动计算每两个校准点之间的插值公式的系数,并把这些系数存入“校准存储器” 。正式测量时,它们将同测量结果一起形成经过修正的准确测量值。 动态自校法: 这种方法的优点是不需要采用EEPROM或非易失性RAM,而在内部设置基准电压, 使上述校准过程全部自动地进行。然而内部基准也需要定期校准, 因此,这种方法还不属于校准的范畴,动态自校主要解决由衰减器、放大器、D/A转换器等模拟部件不稳定而引起的精度下降问题。
5.3 仪器测量精度的提高 智能仪器的主要优点之一是利用微处理器的数据处理能力可以减小测量误差,提高仪器测量的精确度。 测量误差按其性质和特性可分为随机误差、系统误差、粗大误差3类。下面分述其处理方法。 5.3.1 随机误差的处理方法 5.3.2 系统误差的处理方法 5.3.3 粗大误差的处理方法
5.3.1 随机误差的处理方法 随机误差是由于测量过程中一系列随机因素的影响而造成的。就一次测量而言,随机误差无一定规律;当测量次数足够多时,测量结果中的随机误差服从统计规律,而且大多数按正态分布。因此,消除随机误差最为常用的方法是取多次测量结果的算术平均值,即 (式5.1) 上式中的N为测量次数,很显然,N愈大,x就愈接近真值,但所需要的测量时间也就愈长。为此,智能仪器常常设定专用功能键来输入具体的测量次数N。测量时,根据实际情况自动变动N值。 例如,某具有自动量程转换功能的电压表,
5.3.1 随机误差的处理方法 某数字电压表设置了由小到大的六挡量程,其编号分别为1,2,…,6。 当工作于最低挡即第1挡量程时, 被测信号很弱,随机误差的影响相对较大,取N=10,第2挡,随机误差影响相对小,因而取N=6。同理,第3挡取N=4;第4挡取N=2;第5挡和第6挡只作单次测量处理,取N=1。 上述过程可以有效地克服仪器随机误差的影响,同时对随机干扰也有很强的抑制作用。因而这一过程可以理解为一个等效的滤波过程。
这种智能电压表的自动量程转换与求平均值工作的过程是:系统运行前将量程预置为最高(Q=6),然后进行测量并判断测量值是否为欠量程。如果为欠量程,则判断这时的Q是否为1,若不为1,则降低一挡量程(即Q=Q-1),再重复上述测量、判断过程,直到不是欠量程或Q=1时为止;若Q为1,则取N=10并进行平均值计算。如果不是欠量程,则判断是否为超量程。如果是超量程,则判断此时Q是否等于6。若此时Q=6,则作过载显示;若Q不等于6,则升高一挡量程(即Q=Q+1),再重复上述测量、判断过程,直到不是超量程为止,然后判断此时的Q等于多少。这种智能电压表的自动量程转换与求平均值工作的过程是:系统运行前将量程预置为最高(Q=6),然后进行测量并判断测量值是否为欠量程。如果为欠量程,则判断这时的Q是否为1,若不为1,则降低一挡量程(即Q=Q-1),再重复上述测量、判断过程,直到不是欠量程或Q=1时为止;若Q为1,则取N=10并进行平均值计算。如果不是欠量程,则判断是否为超量程。如果是超量程,则判断此时Q是否等于6。若此时Q=6,则作过载显示;若Q不等于6,则升高一挡量程(即Q=Q+1),再重复上述测量、判断过程,直到不是超量程为止,然后判断此时的Q等于多少。
5.3.2 系统误差的处理方法 系统误差是指在相同条件下多次测量同一量时,误差的绝对值和符号保持恒定或在条件改变时按某种确定的规律而变化的误差。系统误差的处理不像随机误差那样有一些普遍适用的处理方法,而只能针对具体情况采取相应的措施。本节介绍几种最常用的修正方法。 一、 利用误差模型修正系统误差 二、 利用校正数据表修正系统误差 三、 通过曲线拟合来修正系统误差
一、 利用误差模型修正系统误差 先通过分析建立系统的误差模型,再由误差模型求出误差修正公式。误差修正公式一般含有若干误差因子,修正时,先通过校正技术把这些误差因子求出来,然后利用修正公式来修正测量结果, 从而削弱了系统误差的影响。 不同的仪器或系统其误差模型的建立方法也不一样,无统一方法可循,如图所示的误差模型在电子仪器中是具有相当普遍意义的典型的例子。 图中x是输入电压(被测量),y是带有误差的输出电压(测量结果),ε是影响量(例如零点漂移或干扰),i是偏差量(例如直流放大器的偏置电流),K 是影响特性(例如放大器增益变化)。从输出端引一反馈量到输入端以至改善系统的稳定性。
图中x是输入电压(被测量),y是带有误差的输出电压(测量结果),ε是影响量(例如零点漂移或干扰),i是偏差量(例如直流放大器的偏置电流),K 是影响特性(例如放大器增益变化)。从输出端引一反馈量到输入端以至改善系统的稳定性。 在无误差的理想情况下,有ε=0,i=0,K=1,于是存在关系 y=x。 在有误差的情况下,可以推出 x=y(1K-i 1 R1+1 R2)-ε 可改写成下列简明形式 x=b1y+b0(5.4) 式即为误差修正公式,其中,b0,b1即误差因子。如果能求出b0,b1的数值,即可由误差修正公式获得无误差的x值,从而修正了系统误差。
式(5.4)即为误差修正公式,。如果能求出b0,b1的数值,即可由误差修正公式获得无误差的x值,从而修正了系统误差。式(5.4)即为误差修正公式,。如果能求出b0,b1的数值,即可由误差修正公式获得无误差的x值,从而修正了系统误差。 误差因子的求取是通过校正技术来完成的,误差修正公式 (5.4)中含有二个误差因子b0和b1,因而需要作两次校正。设建立的校正电路如图59(b)所示,图中E为标准电池,校正步骤如下: (1) 零点校正 先令输入端短路,即S1闭合,此时有x=0,于是得到输出为y 0,按照式(5.4)可得方程如下: 0=b1y0+b0 (2) 增益校正 令输入端接上标准电压,即S2闭合,此时有x=E,于是得到输 出为y1,同样可得方程如下: E=b1y1+b0 联立求解上述二方程,即可求得误差因子 b1=E y1-y0b0=E 1-y1 y0 (3) 实际测量 令S3闭合,此时得到输出为y(结果),于是被测量的真值为 x=b1y+b0=E(y-y0) y1-y0 智能仪器每一次测量过程均按上述三步来进行。由于上述过程是自动进行的,且每次 测量过程很快,这样,即使各误差因子随时间有缓慢的变化,也可消除其影响,实现近似于 实时的误差修正。
二、 利用校正数据表修正系统误差 如果对系统误差的来源及仪器工作原理缺乏充分的认识而不能建立误差模型时,可以通过建立校正数据表的方法来修正系统误差。步骤如下: (1) 在仪器的输入端逐次加入一个个已知的标准电压x1,x2,…,xn,并实测出对应的测量结果y1,y2,…,yn。 (2) 如果将实测的yi(i=1,2,…,n)值对应于存储器中的某一区域, yi作为存储器中的一个地址,再把对应的xi值存入其中,这就在存储器中建立了一张校准数据表。 (3) 实际测量时,令微处理器根据实测的yi去访问内存,读出其中的xi。xi 即为经过修正的测量值。 (4) 若实际测量的y值介于某两个标准点yi和yi+1之间,为了减少误差,还要在查表的基础上作内插计算来进行修正。
二、 利用校正数据表修正系统误差 (4) 若实际测量的y值介于某两个标准点yi和yi+1之间,为了减少误差,还要在查表的基础上作内插计算来进行修正。 采用内插技术可以减少校准点从而减少内存空间。最简单的内插是线性内插, 当 yi<y<yi+1时取 线性内插方法是用两点间一条直线来代替原曲线,因而精度有限。如果要求更高的精度,可以采取增加校准点的方法,或者采取更精确的内插方法,例如n阶多项式内插、三角内插、牛顿内插等。
三、 通过曲线拟合来修正系统误差 曲线拟合是指从n对测定数据(xi,yi) 中,求得一个函数f(x)来作为实际函数的近似表达式。 曲线拟合实质就是找出一个简单的、便于计算机处理的近似表达式来代替实际的非线性关系。因此曲线f(x) 并不一定代表通过实际的所有点。 采用曲线拟合对测量结果进行修正的方法是,首先定f(x) 的具体形式,然后再通过对实测值进行选定函数的数值计算,求出精确的测量结果。 • 连续函数拟合法 • 分段曲线拟合法
三、 通过曲线拟合来修正系统误差 • 连续函数拟合法 连续函数拟合法一般采用多项式拟合(当然也不排除采用解析函数,如ex、lnx和三角函数等),多项式的阶数应根据仪器所允许的误差来确定,一般情况下,拟合多项式的阶数愈高,逼近的精度也就愈高。但阶数的增高将使计算繁冗,运算时间也迅速增加,因此, 拟合多项式的阶数一般采用二三阶。 现以热电偶的电势与温度之间的关系式为例,讨论连续函数拟合的方法。
三、 通过曲线拟合来修正系统误差 • 连续函数拟合法 热电偶的温度与输出热电势之间的关系一般用下列三阶多项式来逼近 R=a+bxP+cxP2+dxP3 (5.5) 变换成嵌套形式得 R=〔(dxP+c)xP+b〕xP+a (5.6) 式中,R是读数(温度值), xP由下式导出 xP=x+a′+b′T0+c′’’T02 (5.7) 上式中x是被校正量,即热电偶输出的电压值。T0是使用者预置的热电偶环境(冷端)温度。热电偶冷端一般放在一个恒温槽中,保持在0℃。系数a,b,c,d,a′,b′,c′是与热电偶材料有关的校正参数。
连续函数拟合法 R=〔(dxP+c)xP+b〕xP+a (5.6) 式中,xP=x+a′+b′T0+c′’’T02 多项式算法通常采用式(5.6)所示的嵌套形式。 一个n阶多项式一般需要进行1/2·n(n+1)次乘法,如果采用嵌套形式,只需进行n次乘法,从而使运算速度加快。 首先求出各校正参数a,b,c,d,a′,b′,c′,并顺序地存放在首址为COEF的缓冲区内,然后根据测得的x值通过运算求出R(温度值)。 Solartron 7055/7065 型数字电压表具有处理四种热电偶(T型:Cu/Con; R型:Rt/PtPn;J型:F/Con 和 K型:NiCr/NiAl)的非线性校正功能,这四种热电偶的校正参数已预存在仪器ROM中。使用时,用户只需通过键盘送入热电偶种类及热电偶冷端温度,仪器即能直接显示热电偶测得的温度值。
三、 通过曲线拟合来修正系统误差 2. 分段曲线拟合法 分段曲线拟合法,即是把非线性曲线的整个区间划分成若干段,将每一段用直线或抛物线去逼近。从而回避了高阶运算,使问题化繁为简。 分段基点的选取有等距分段法或非等距分段法之分。 非等距分段法是根据函数曲线形状的变化率来确定插值之间的距离,插值基点的选取比较麻烦,但在相等精度条件下,非等距插值基点的数目将小于等距插值基点的数目,从而节省了内存,减少了计算机的开销。
2. 分段曲线拟合法 (1) 分段直线拟合 分段直线拟合法是用一条折线来代替原来实际的曲线,这是一种最简单的分段拟合方法。 设某传感器的输入/输出特性如图所示,图中分三段直线来逼近该传感器的非线性曲线。 由于曲线低端比高端陡峭,所以采用不等距分段法。 x为测量数据,y 为实际被测变量,各端的线性差值公式为 y3 ;x≥x3 y2+K3(x-x2) ;x2≤x<x3 y1+K2(x-x1) ;x1≤x<x2 K1×x ;0≤x<x1时 y =
设某传感器的输入/输出特性如图所示,图中分三段直线来逼近该传感器的非线性曲线。 由于曲线低端比高端陡峭,所以采用不等距分段法。 x为测量数据,y 为实际被测变量,各端的线性差值公式为 y3 ;x≥x3 y2+K3(x-x2) ;x2≤x<x3 y1+K2(x-x1) ;x1≤x<x2 K1×x ;0≤x<x1时 y =
(1) 分段直线拟合 (2) 分段抛物线拟合 若输入/输出特性很弯曲,而测量精度又要求比较高,可考虑采用多段抛物线来分段拟合 。 如图示的曲线可以分成 四段,每段分别用一个二阶抛物线方程 y=aix2+bix+ci (i=1,2,3,4) 描绘。每一段找出三点xi-1,xi1,xi(含两分段点)。然后解下列联立方程以求出系数ai,bi,ci 。 yi1 = aixi-12 + bixi1+ci yi1 = aixi12 + bixi1+ci yi = aix2i + bixi+ci
如图示的曲线可以分成 四段,每段分别用一个二阶抛物线方程 y=aix2+bix+ci (i=1,2,3,4) 描绘。每一段找出三点xi-1,xi1,xi(含两分段点)。然后解下列联立方程以求出系数ai,bi,ci 。 yi1 = aixi-12 + bixi1+ci yi1 = aixi12 + bixi1+ci yi = aix2i + bixi+ci
5.3.3 粗大误差的处理方法 粗大误差是指在一定的测量条件下,测量值明显地偏离实际值所形成的误差。粗大误差明显地歪曲了测量结果,应予以剔除。 在测量次数比较多时(N≥20),测量结果中的粗大误差宜采用莱特准则判断。若测量次数不够多时,宜采用格拉布斯准则。 当对仪器的系统误差采取了有效技术措施后,对于测量过程中所引起的随机误差和粗大误差一般可按下列步骤处理。 (1) 求测量数据的算术平均值 (2) 求各项的剩余误差 (3) 求标准偏差 (4) 判断粗大误差(坏值) (5) 如果判断存在粗大误差,给予剔除,然后重复上述步骤(1)~(4)(每次只允许剔除其中最大的一个)。 最后,如果判断不再存在粗大误差,则可计算当前算术平均值、各项剩余误差及标准偏差估计值,作为有效的测量结果。
随着测量数据增加,人工计算将相当烦琐和困难,若在智能仪器软件中按排一段程序,便可在测量进行的同时也能对测量数据进行处理。 随着测量数据增加,人工计算将相当烦琐和困难,若在智能仪器软件中按排一段程序,便可在测量进行的同时也能对测量数据进行处理。 图5-14 给出了实现上述功能的程序框图。 一般情况下可直接将采样数据作为测量结果,或进行一般滤波处理即可,以利于提高速度。 只有对被测参数要求比较精确,或者误差影响比较严重时,才需对数据按上述步骤进行处理。
5.4 干扰与数字滤波 实际的测量过程中,被测信号中不可避免地会混杂一些干扰和噪声,在工业现场这种情况更为严重。 在传统仪器中,滤波通过选用不同种类的硬件滤波器予以实现。在智能仪器中,由于微处理器的引入,可以通过程序对采集的数据进行某种处理,消除或减弱干扰和噪声的影响,即数字滤波得方法。 数字滤波具有硬件滤波器的功效,却不需要硬件开销,从而降低了成本。由于软件算法的灵活性,还能产生硬件滤波器所达不到的功效。它的不足之处是需要占用机时。 数字滤波方法有多种,每种方法有其不同的特点和适用范围。 5.4.1 中值滤波 5.4.2 平均滤波程序 5.4.3 低通数字滤波
5.4 干扰与数字滤波 5.4.1 中值滤波 所谓中值滤波是对被测参数连续采样N次(N一般选为奇数),然后将这些采样值进行排序并选中间值。 中值滤波对去掉脉冲性质的干扰比较有效,并且采样次数N愈大,滤波效果愈强,但采样次数N太大会影响速度,所以N一般取3或5。对于变化很慢的参数,有时也可增加次数,例如15次。对于变化较为剧烈的参数,此法不宜采用。 中值滤波程序主要由数据排序和取中间值两部分组成。数据排序可采用几种常规的排序方法,如冒泡法、沉底法等。
FLT10:MOV A,R2 ;R2<R3否? CLR C SUBB A,R3 JCFLT11 ;R2<R3,不变 MOVA, R2 ;R2>R3,交换 XCH A, R3 MOV R2,A FLT11:MOV A, R3 ;R3<R4否? CLR C SUBB A,R4 JC FLT12 ;R3<R4,结束 MOV A, R4 ;R3>R4,交换 XCH A, R3 XCH A,R4 ;R3>R2否? CLRC SUBB A, R2 JNC FLT12 ;R3>R2,结束 MOV A,R2 ;否则R2为中值 MOV R3, A ;中值送入R3 FLT12:RET 5.4.1 中值滤波 中值滤波程序主要由数据排序和取中间值两部分组成。数据排序可采用几种常规的排序方法,如冒泡法、沉底法等。下面给出一个中值滤波程序的实例。 该中值滤波程序采样次数N选为3,三次采样后的数据分别存放在R2,R3,R4中,执行之后,中值放在R3。
5.4.2 平均滤波程序 最基本的平均滤波程序是算术平均滤波程序,见公式 5.1 算术平均滤波对滤除混杂在被测信号上的随机干扰非常有效。一般说来,采样次数N愈大,滤除效果愈好,但系统的灵敏度要下降。为了提高运算速度,程序中常用移位来代替除法,因此 N一般取4,8,16 等。 为了进一步提高平均滤波的滤波效果,适应各种不同场合的需要,在算术平均滤波程序的基础上又出现了许多改进型,例如去极值平均滤波、移动平滑滤波、加权平均滤波等。 一、 去极值平均滤波 二、 移动平滑滤波 三、 加权平均滤波