王晓丹,孟令军,尹维汉,周之丽
(中北大学 电子测试技术国家重点实验室 仪器科学与动态测试教育部重点实验室,太原030051)
随着计算机技术的不断进步,温度控制系统正朝着智能化、高精度、多功能、高可靠性及安全性等高科技的方向迅速发展[1]。在军事、航天和航空等一些特殊的应用场合,对测温装置的要求非常高,为了保证核心器件工作的稳定性,需要高精度的温度控制保证其工作环境。所以,研究如何提高温度测量系统的测温精度具有较强的实际应用价值[2]。
基于此,本文以ARM微处理器作为装置的控制核心,PT1000铂电阻作为温度传感器,设计了一种基于ADS1148的多路高精度测温装置。该装置具有可靠性好、抗干扰能力强、测温精度高等优点。
如图1所示,主控MCU收到指令后完成对4路温度传感器信号的采集控制,读取ADC芯片的转换结果后,把温度数据经过编码、转换、存储到寄存器中并通过串口将数据上传到计算机中,在计算机中通过地面测试上位机读取各通道的温度值并显示。
图1 装置原理框图Fig.1 Block diagram of the device
该装置的主控MCU采用的是意法半导体公司设计的STM32F103RET6,它是基于ARM Cortex-M3内核的32位微处理器[3]。TI公司的ADS1148是高度集成的16位精密ADC芯片,ADS1148模数转换芯片属于测温专用数据采集器[4-5]。主控MCU负责对整个装置进行控制,与信号采集芯片ADS1148之间采用SPI总线进行通信,能够通过SPI接口外接2片、3片、4片或更多片ADC芯片实现采集多通道温度传感器信号,一片ADS1148可以外接4路差分形式输入的模拟信号。
铂电阻由于其具有测温范围宽,性能稳定等优点,而被广泛应用于温度测量中[6]。按照IEC751国际标准,现在常用的PT1000(R0=1000 Ω)是以温度系数为标准统一设计的铂电阻[7]。根据铂电阻温度特性,当工作温度在-200℃~0℃时:
当工作温度在0℃~650℃时:
式中:Rt为在t℃时的电阻值;R0为在0℃时的电阻值。TCR=0.003851 时的系数值为 A=3.9083×10-3℃-1,B=-5.775×10-7℃-2,C=-4.183×10-12℃-4。
装置采用三线制恒流源驱动法驱动铂电阻传感器的测量方案,在ADS1148内部,有2个相同恒流源IDAC,用于驱动三线制接法的PT1000传感器,相比传统运用集成运放设计恒流源电路的方法,该方案简化了电路设计,而且采用外部参考电压源,消除了恒流源的不确定性对测量精度的影响[8]。
ADS1148的外部器件中,RTD对应于PT1000传感器,RLEAD为连接PT1000传感器的导线等效电阻,RCOMP为比较电阻,RBIAS选用的是高精度、低温漂的精密电阻。片上参考电压输入管脚为REFP0和REFN0,参考电压值为
VREF=2×IDAC×RBIAS,运放输入电压值为
VN为PT1000两线段的电势值,因此当RTD=RCOMP时,VIN=VAIN0-VAIN1=0 V,当RTD随温度变化时,对应VIN也会变化,
可以看出,运放的差分输入电压值与导线的电阻值大小无关。
1)PT1000铂电阻传感器与ADS1148的电路连接如图2所示,差分输入方式可以很好地消除导线电阻对测温精度的影响,在每路输入端设计了低通滤波器,以衰减热电偶上的噪声,提高测温精度。
图2 PT1000铂电阻传感器与ADS1148的电路连接Fig.2 PT1000 platinum resistance sensor and ADS1148 circuit connection
2)ADS1148是高度集成的16位精密ADC芯片,本设计充分利用芯片内部资源提高铂电阻的测温精度。ADS1148集成的低噪声可编程增益放大器最大放大倍数可达128倍,能够实现对微弱模拟信号的精确测量;其内部的数字滤波器能够减弱干扰信号对有用信号的影响,提高测温精度;使用内部参考电压源,简化了电路设计。
3)由于铂电阻阻值随温度的变化是非线性的,加上引线电阻的非线性等因素的影响,导致铂电阻温度传感器的输出值与实际温度值存在偏差。所以,为提高测温精度,采用MATLAB软件进行分段线性化处理,实现铂电阻的非线性误差校正。
在测温范围-50℃~150℃划分为-50℃~-10℃、-10℃~90℃、90℃~150℃进行分段线性拟合,得到温度与电阻关系模型:
T=0.25269R-253.02149,-50 ℃~-10 ℃ (6)
T=0.26562R-268.02587,-10 ℃~90 ℃ (7)
T=0.25882R-258.09121,90 ℃~150 ℃ (8)
3个模型最大理论误差分别为0.06314℃,0.04587℃和0.06886℃,能够满足精度要求。
把温度传感器PT1000放置在恒温槽中,设置温度为-50℃并进行初次测试,设定恒温槽温度以每隔20℃变化,待恒温槽的温度稳定后,即开始测试。测温实验结果及误差如表1所示。结果表明,该测温装置的温度测量绝对误差小于±0.1℃,达到了较高的测量精度。在需要高精度测温的场合有很好的实用价值。
表1 铂电阻测温结果及误差Tab.1 Result and error of platinum resistance temperature measurement
在-50℃~150℃温度范围利用选取的3个固定温度的实测值和根据拟合算法测试的温度值描绘出的点,通过这些点拟合出如图3所示的2条直线。根据不同要求,对测温范围所分的段越小,拟合直线就越接近实际温度直线,补偿后测温的精度就越高。通过软件补偿的方法可以避免硬件调节的复杂性和保证测温装置的稳定性,简单可靠容易实现。
图3 测温曲线拟合结果Fig.3 Result of fitting temperature curve
该装置的地面测试上位机是使用MATLAB软件设计的。可通过选择通道显示某一路传感器在一定时间内的温度变化曲线,并实时显示当前通道的温度与平均温度。当把第1路传感器放置在温度为25.6℃的恒温槽中,测得当前通道温度为25.65℃,平均温度为25.62℃,误差均保持在0.1℃以内。
设计了一种基于ADS1148的多路高精度测温装置,和传统的测温方法相比,装置具有电路结构简单、测温精度高、稳定性好等优点。能够满足导弹飞行过程中对弹体各部位温度测试的需求,在高压、高冲击等恶劣环境中也有很好的应用前景。
[1] 王青,董志国,陈大伟.基于CS5524的高精度温度采集系统的实现[J].自动化与仪表,2011,26(5):58-60.
[2] 程建华,罗立成,王鑫哲.高精度温度测量系统的测温补偿算法研究[J].传感器与微系统,2010,29(11):36-39.
[3] 张修太,胡雪惠,翟亚芳,等.基于PT100的高精度温度采集系统设计与实验研究[J].传感技术学报,2010,23(6):812-815.
[4] 张元良,修伟,郎庆阳.石油产品检测中Pt100温度传感器动态补偿研究[J].大连理工大学学报,2010,50(3):351-355.
[5] 朱杰,郭涛.一种Pt100温度传感器的动态热响应模型[J].传感技术学报,2013,26(1):73-77.
[6] 文小玲,易先军,曾涛.高精度温度测控系统[J].仪表技术与传感器,2007(8):46-47,50.
[7] 方益喜,雷开卓,张群飞,等.基于噪声抵消技术的高精度温度测量系统[J].计算机测量与控制,2013,21(8):2074-2076.
[8] 刘国强,唐东红,李兴伟.基于AT89C51单片机的高精度测温系统的研制[J].仪器仪表学报,2005,26(8):258-262. ■