数据采集系统中温度数据的数字滤波算法分析

2010-02-15 02:51唐小伟
真空与低温 2010年1期

唐小伟

(兰州物理研究所,真空低温技术与物理国家级重点实验室,甘肃 兰州 730000)

1 引言

随着计算机技术的飞速发展与普及,数据采集系统迅速得到了大量应用。在生产过程中,应用数据自动采集系统可以对生产现场的相关物理量进行自动采集、监视和记录,为提高产品质量、降低生产成本提供了有效的信息和手段。在科学研究中,应用数据采集系统可以获得大量的动态信息,是研究瞬间物理过程的有力工具。

由于工业生产和科学试验现场的电磁环境比较恶劣、干扰源较多时,为了能够减少外界环境对采样数据的干扰,提高测试数据的稳定性与准确性,在进行数据处理之前,一般先要对采样数据进行数字滤波。数字滤波是模拟滤波器的补充,它不需要增加任何硬件设备,可以多个输入通道共用一个数字滤波程序,并且能够对频率很低的信号实现滤波,以克服模拟滤波器的缺陷。但并不是任何一个系统都需要进行数字滤波,有时采取不恰当的数字滤波反而会剔除关键信息[1]。因此,在进行数据采集与处理系统设计时,是否需要进行数字滤波,采取哪种滤波方法都需要结合相应的试验慎重考虑。

2 常用的数字滤波方法

中值滤波即对某一个样本连续采样N次,然后把N个采样值由小到大进行排队,最后选取中间值作为本次采样值。

算术平均值法是计算本次样本的算术平均值,一般算术平均值法适用于压力、流量之类信号的平滑处理,样本越多,平滑度越高,但灵敏度有所降低,因此样本数量的选取应根据实际情况慎重选择。

加权递推平均滤波法适用于系统的纯滞后时间常数较大、采样周期短的过程,它能够对不同采样时间得到的采样值分别给予不同的权系数,以便能够迅速的反映出当前系统所受干扰的严重程度,但这种方法计算量大,降低了数据处理的速度,其实际应用没有算术平均值法广泛。

3 温度数据的采集

温度是表征物体冷热程度的物理量,它可以通过某些材料随温度变化的某些物理特性(如电阻、电压)来间接测量。最常用的感温元件有铂电阻和热电偶。

热电偶适用范围广,测温范围大,响应时间非常快,可用于温度变化速率快、温度变化范围宽的温度测量,但是热电偶在使用中需要参考端(一般采用冰水混合物)补偿,且输出的电压信号很小,使用不方便。

铂电阻利用了金属铂(Pt)的电阻值随温度变化而变化的性质,且这种变化具有良好的重现性和稳定性。通常使用的PT100铂电阻零度阻值为100 Ω,电阻变化率为0.3851Ω℃,铂电阻温度传感器测温精度高,稳定性好,是中低温(-200~650℃)测量最常用的一种温度传感器,它不仅广泛应用于工业测温,而且被制成各种标准温度计供计量和校准使用。铂电阻传感器具有良好的长期稳定性。试验数据表明铂电阻在400℃下持续300 h后,重新测量0℃时的最大温度漂移为0.02℃。铂电阻测量方式有以下3种:

1)两线制:传感器电阻变化值与连接导线电阻值共同构成传感器的输出值,由于导线电阻带来的附加误差使实际测量值偏高,用于测量精度要求不高的场合,并且导线的长度不宜过长。

2)三线制:要求引出的3根导线截面积和长度均相同,测量铂电阻的电路一般是不平衡电桥,可以大大减少导线电阻带来的测量误差,工业上一般都采用三线制接法。

3)四线制:用2条附加的测试线提供恒定的电流,另2条测试线测量铂电阻的电压降,一般用于精确测温。

为了保护温度传感器的感温元件,不使其与被测介质直接接触,避免或减少有害介质的侵蚀、火焰和气流的冲刷与辐射、机械损伤等,一般采用金属保护管(如304号、316号不锈钢)保护感温元件,它同时还用于固定和支撑温度传感器感温元件。在金属保护管和感温元件之间填充有氧化铝或氧化镁等填充物,因此在外界温度发生阶跃变化时,温度传感器具有一定的时间迟滞性。一般来说,影响温度传感器热响应时间的主要因素包括感温元件铠装保护管的材料、直径、壁厚、结构形式、安装方法、置入介质深度以及被测介质的流速、介质种类等,需通过相关试验确定温度传感器的热响应时间。

4 复合数字滤波算法

为了保证温度数据的准确性与稳定性,结合温度数据具有一定迟滞性的特点,有必要对温度数据采取复合数字滤波技术,以便将外界干扰进行有效的剔除。复合数字滤波的基本思想是将中值滤波与算术平均值滤波复合叠加,采用先中值后平均的方式进行数字滤波。

算术平均值法和中值滤波法各有不同的缺陷,前者不容易消除由于脉冲干扰引起的采样偏差,而后者由于采样点数的限制,使其应用范围缩小。在外界电磁环境恶劣的情况下,一般采用复合数字滤波法,即先用中值滤波法滤除由于脉冲干扰而有偏差的采样值,然后把剩下的采样值做算术平均。这种方法既可以去掉脉冲干扰,又可以对采样值进行平滑处理。在高、低速数据采集系统中,复合数字滤波能够有效的削弱干扰,提高数据质量。

4.1 复合数字滤波参数的选择

复合数字滤波参数的选择必须结合具体情况,根据试验来确定,主要包括以下3个方面因素:

1)根据测量精度要求确定铂电阻的精度等级类型,结合测温量程确定A/D模数转换器的精度,并据此确定所需采集数据的有效位数。

2)确定数据采集设备实际工作环境所存在的各种主要干扰源频率,据此确定数据采样频率、中值滤波及算术平均滤波样本的大小,一般均普遍存在50 Hz的工频干扰。

3)根据温度传感器响应时间确定数据刷新速率。

4.2 复合数字滤波算法代码分析

以下复合数字滤波核心代码以VB6.0平台为基础,其中包含14路温度数据采集与处理,本代码仅用于说明使用复合数字滤波实现温度数据处理的基本流程。代码中Timer1时钟用于数据采样频率的控制,instep用于数据刷新速率的控制,主程序中需要事先对其进行定义。Timer1时钟的定义应结合系统外界主要干扰源频率确定,数据刷新速率需要结合被测量物体并通过相关试验确定。本代码中利用4×14二维数组实现中值滤波数据的存储,其存储值为A/D模数变换器直接读取值,利用子函数zhongzhi()进行中值滤波计算,利用5×14二维数组实现平均滤波数据的存储,其存储值为中值滤波输出结果。利用子函数pingjun()进行平均滤波计算,在完成一次中值滤波计算与一次平均滤波计算后,平均滤波输出结果作为初次复合数字滤波结果。一般应根据实际情况,结合相关试验确定数据刷新速率instep,通过调节instep对初次复合数字滤波结果再次进行平均滤波计算后作为最终复合数字滤波结果并进行输出。

Private Sub timer1_Timer() //Timer1时钟用于采样频率控制;

instep=Form1.HScroll2.value //数据刷新速率instep由Form1.HScroll2.value赋值;

erer=DoEvents() //调用Datain子程序从A/D模块读取数据;

Call DataIn //A/D模块读取数据(fv1.F(i))填满4×14中值滤波数组,中值滤波样本为4;

For i=0 To 13 //共计14路数据处理;

change(i).zz=change(i).zz+1 //中值滤波数组宽度为4,序号从1到4;

change(i).lefttemp(change(i).zz)=fv1.F(i) //fv1.F(i)为DataIn从A/D模块读取的数据;

If change(i).zz=4 Then //中值滤波数据计算并填满5×14平均滤波数组,平均滤波样本为5;

change(i).pj=change(i).pj+1

change(i).midtemp(change(i).pj)=zhongzhi(change(i).lefttemp())

change(i).zz=0//数组清零,进下一组数据;

End If

If change(i).pj=5 Then //调用平均滤波函数进行平均滤波计算,完成初次复合滤波计算;

change(i).endi=change(i).endi+1

average(i)=pingjun(change(i).midtemp())

endsum(i)=endsum(i)+average(i)

change(i).pj=0

End If

If change(i).endi=instep Then //对初次复合数字滤波结果再次进行平均滤波计算;

endaverage(i)=endsum(i)/instep

change(i).endi=0//数组清零,进下一组数据;

endsum(i)=0 //清零;

End If

Next i//进行下一路数据(共14路)处理;

End Sub //对初次结果再次进行平均滤波结束,形成最终复合数字滤波结果,复合数字滤波结束;

Function pingjun(p()As Single)As Single //平均滤波子函数,样本数为5;

Sum=0

For pji=1 To 5

Sum=Sum+p(pji)

Next pji

pingjun=Sum/5//计算平均结果;

End Function//平均滤波子函数结束;

Function zhongzhi(p()As Single)As Single //中值滤波子函数,样本数为4;

For zzi=1 To 4

For zzj=zzi+1 To 4//数据比较;

If p(zzi)<p(zzj)Then

t=p(zzi):p(zzi)=p(zzj):p(zzj)=t

End If

Next

Next

zhongzhi=(p(2)+p(3))/2//计算中值结果;

End Function //中值滤波子函数结束;

5 结论

经过实际测试,该算法所处理的温度数据刷新速度满足试验测试要求,数据刷新及时,数据显示稳定、准确,并且能够有效的剔除外界环境中主要干扰源的影响,第三方法定计量检定机构校准证书表明该系统在实际环境中运行误差最小仅为0.02℃,完全满足使用要求。

[1]马明建,周长城.数据采集与处理技术[M].西安:西安交通大学出版社,1998.

真空与低温2010年1期

真空与低温的其它文章
撰写参考文献须知