铂电阻温度仪的研制
扫描二维码
随时随地手机看文章
摘要:介绍一种基于AT89C52单片机开发的PT100铂电阻温度仪,着重介绍温度值的求解方法。
关键词:温度仪;铂电阻;AT89C52;ICL7135
0 引言
用铂电阻测温时,由于铂电阻的阻值与温度成非线性关系,常用硬件电路对其进行线性补偿,这不但增加了系统的复杂性,而且降低了测量精度。我们分析铂电阻阻值与温度的函数关系,建立温度与电阻值的二次方程,通过求解二次方程的根,计算出被测温度值,此方法调试简单、精度高。
1 数学模型
我们研究的温度测量范围为-50℃~200℃,精度要求±0.2℃。选用PT100铂电阻温度传感器(TCR=0.003851),铂电阻采用恒流供电,如图1。Pt100铂电阻的阻值与温度函数关系如下:
式中,A=3.9083E-3;B=-5.775E-7;C=4.813E-12。
在测量温度范围内,参数C对电阻值的影响甚微,故将-200℃<t<0℃时的函数归一为R(t)=R0(1+At+Bt2)。
以图1为研究对象,放大器输出电压为:
我们设计的温度计测量最大值为200℃,根据R(0)=100 Ω,R(200)=175.86 Ω,只要保证t=200℃时,A/D转换器不溢出,就可先将D0确定为定值,因为我们可以通过调节放大器的放大倍数K来得到t=0℃时A/D转换器的数字量值,不妨令D0等于10000。根据式(7),只要知道了D0,就可通过A/D转换器的采样值计算出温度。
2 硬件电路
系统的硬件主要由TL431恒流电路、AD620增益调节电路、ICL7135 A/D转换器、AT89C52单片机、MAX7219显示驱动、MAX232通信电路等组成,其框图如图2所示。
2.1 信号处理单元
原理图如图3所示。
铂电阻温度传感器采用四线制工作方式。TL431的温漂为50ppm/℃,由TL431组成精密恒流电路,对铂电阻恒流供电,工作电流为I=2.5V /R4=1.04mA;放大器选用AD620仪用放大器,其温度漂移为0.3 μV/℃;R6、C4组成一阶低通滤波,滤除工频干扰,整个电路的增益通过W1调节。
为了获得足够的温度分辨率,A/D转换器选用ICL7135,精度为4位半,ICL7135的时钟信号由AT89C52的ALE引脚16分频得到,频率为115.2kHz。
2.2 数据处理单元
AT89C52是Atmel公司生产的8位单片机,为大家所熟悉,在本系统中,其工作频率为11.0592MHz。MAX7219是MAXIM公司生产的LED驱动芯片,可驱动8位LED数码管,用它来驱动数码管显示,具有结构简单的特点,在本系统中,用它驱动4位LED数码管显示。
3 软件设计
本系统软件的核心是如何计算关系式(9)。
将参数代入,并令D0=10000,化简关系式(9),得:
其中:X=3.3838E3; Y=1.31 81 8E7;Z=-1.7316E2
由式(10)可以方便地计算出被测温度值。
在程序设计中,采用Keil uVision2软件编程,系统软件为模块化结构。温度计算模块设计成子程序,函数输入量为A/D转换器的采样值。代码如下:
4 总结
本文提出的铂电阻温度值求解法,可方便地计算铂电阻温度,其精度与铂电阻的R0值和工作电流无关,只与电路的稳定性相关。要得到足够的测量精度,需选择14位以上的A/D转换器。