基于热敏电阻的多点温度测量系统
时间:12-08
来源:互联网
点击:
在现代农业中,许多情况下需要温度测量,用来测量温度的传感器种类很多,热敏电阻器就是其中之一。热敏电阻灵敏度高、稳定性好、体积小、电阻值大等特点,已广泛于温度测量和控制领域。在所有被动式温度传感器中,热敏电阻的灵敏度(即温度每变化一度时电阻的变化)最高,在温室大棚内,温度测量精度一般在±0.5—1C左右,在这种情况下,,热敏电阻的引线长度在100—200米,对测量造成的误差可以忽略不计,使测量系统的电路简单、使用方便。
1.热敏电阻的测量电路
在多点温度测量系统中,热敏电阻采用温度-频率法测量框图,如图1所示。
图1温度—频率测量原理
图1中,IC1是555时基集成电路,是一个典型的无稳态多谐振荡器,IC2是AT89C52单片机。R3是555电路输出的电平上拉电阻,使输出的高电平稳定在5V,C2为抗干扰滤波电容,Rt为热敏电阻,f是频率信号输出。
其中 f="1".442695041/(C1*(R1+2*Rt ))
从上式可以看出,当C1、R1为固定值时,555时基电路的输出频率f仅仅与Rt有关,而热敏电阻的阻值Rt与测量的温度有关。因此,需要测量的温度由Rt热敏电阻转换成电阻值,通过555时基电路转换成频率信号,单片机通过P3。5(T1口)对频率进行测量,就可以计算出测量的温度值。
多路控制开关的组成与工作原理如图2所示。
图2 多路开关控制原理
在图2中,IC2 为单片机,IC3、IC4为74LS138集成电路组成,J01--J16为继电器。单片机的P1.0 – P1.2作为二个74LS138的地址,P1.3、P1.4作为二个74LS138的片选信号,单片机改变P1.0、P1.1、P1.2、P1.3、P1.4的值,就可以控制继电器,使热敏电阻依次接入,进行温度信号的测量。采用继电器控制,减少了热敏电阻接入路的接触电阻,可以提高测量的精度。显示设备为5位LED数码管,2位用于显示温度信号的通道号,3位用于显示温度值,其中,2位整数,1位小数。
2.单片机的应用
单片机为AT89C52,片内有256B RAM和8KB的Flash ROM,可以反复多次改写程序,十分方便。单片机的定时器/计数器T1工作在方式1,作为16位的外部脉冲计数器,记录555电路输入的脉冲数。单片机的定时器/计数器T0也工作在方式1,作为16位定时器用,记录单片机CPU的时钟脉冲。在编写程序时,使T0的定时时间为0.1秒,通过T1在0.1秒内测量到的脉冲数,就可以计算出频率值,从而知道被测量的温度值。参考程序如下:(CPU振荡频率为12MHz)
MOV TMOD,#15H ;设置 T0为16位计数方式,T1为16位定时方式
MOV TH0,#00H ;T0计数器清零
MOV TL0,#00H ;
MOV 30H,#14AH ;循环20次,使定时时间为0.1秒
SETB TR0 ;启动T0计数器开始计数
Y1: MOV TH1,#3CH ;T1定时器设置初值
MOV TL1,#ACH ;
SETB TR1 ;启动T1定时器开始计时
Y2: JBC TF1,Y3 ;判别T1定时器计时50mS到否,到则转Y3
AJMP Y2 ;50mS未到,则继续
Y3: DJNZ 30H,Y1 ;判别定时0.1秒到否,未到则继续
CLR TR0 ;定时0.1秒到,清T0、T1溢出标志
CLR TR1 ;
MOV 7BH,TH0 ;将测量的频率值存放在7AH、7BH内存中
MOV 7AH,TL0
在单片机进行频率采样的时候,首先通过多路控制开关输出某温度测量信号的地址值,然后进行温度的测量。
热敏电阻的电阻值与温度存在严重的非线性关系,当频率信号进入单片机CPU后,就可以应用软件的方法,例如最小二乘法,实现对热敏电阻的非线性校正。实践证明,使用这种方法,在-20~80℃的范围内,其测量误差可小于0.2℃。
3.2 数据的滤波处理
在单片机测量到温度信号以后,还需要对检测信号的滤波处理,减少测量过程中的干扰,最简单的方法是算术平均法。对N个采样值,寻找一个Y值作为本次检测的有效值,使Y值与各采样值之间的偏差的平方和为最小,在具体应用中,N值不宜太大,温度测量取N=5-10为好,既保持一定的灵敏度,又有恰当的平滑度。计算方法为:
Y=(X1+X2+….+XN)/N,式中X1、、、、X2、、….XN为N次检测量
实践证明用这种方法能正确测量温度值。在获得正确的测量值后,还需要将它转换成相应的实际温度值。
4.提高测量精度的几个措施
4.1 频率信号的稳定性
在图1中,R1、C1的热稳定性直接影响555时基集成电路的输出频率,要选择温度系数小的金属膜精密电阻,C1采用CBB22的电容。R1、C1、555时基集成电路要经过高、低温老化稳定后使用。每一路用精密电阻箱模拟热敏电阻的温度变化,测量实际的电阻-频率的数据输入单片机,作为测量、计算的依据。
1.热敏电阻的测量电路
在多点温度测量系统中,热敏电阻采用温度-频率法测量框图,如图1所示。
图1温度—频率测量原理
图1中,IC1是555时基集成电路,是一个典型的无稳态多谐振荡器,IC2是AT89C52单片机。R3是555电路输出的电平上拉电阻,使输出的高电平稳定在5V,C2为抗干扰滤波电容,Rt为热敏电阻,f是频率信号输出。
其中 f="1".442695041/(C1*(R1+2*Rt ))
从上式可以看出,当C1、R1为固定值时,555时基电路的输出频率f仅仅与Rt有关,而热敏电阻的阻值Rt与测量的温度有关。因此,需要测量的温度由Rt热敏电阻转换成电阻值,通过555时基电路转换成频率信号,单片机通过P3。5(T1口)对频率进行测量,就可以计算出测量的温度值。
多路控制开关的组成与工作原理如图2所示。
图2 多路开关控制原理
在图2中,IC2 为单片机,IC3、IC4为74LS138集成电路组成,J01--J16为继电器。单片机的P1.0 – P1.2作为二个74LS138的地址,P1.3、P1.4作为二个74LS138的片选信号,单片机改变P1.0、P1.1、P1.2、P1.3、P1.4的值,就可以控制继电器,使热敏电阻依次接入,进行温度信号的测量。采用继电器控制,减少了热敏电阻接入路的接触电阻,可以提高测量的精度。显示设备为5位LED数码管,2位用于显示温度信号的通道号,3位用于显示温度值,其中,2位整数,1位小数。
2.单片机的应用
单片机为AT89C52,片内有256B RAM和8KB的Flash ROM,可以反复多次改写程序,十分方便。单片机的定时器/计数器T1工作在方式1,作为16位的外部脉冲计数器,记录555电路输入的脉冲数。单片机的定时器/计数器T0也工作在方式1,作为16位定时器用,记录单片机CPU的时钟脉冲。在编写程序时,使T0的定时时间为0.1秒,通过T1在0.1秒内测量到的脉冲数,就可以计算出频率值,从而知道被测量的温度值。参考程序如下:(CPU振荡频率为12MHz)
MOV TMOD,#15H ;设置 T0为16位计数方式,T1为16位定时方式
MOV TH0,#00H ;T0计数器清零
MOV TL0,#00H ;
MOV 30H,#14AH ;循环20次,使定时时间为0.1秒
SETB TR0 ;启动T0计数器开始计数
Y1: MOV TH1,#3CH ;T1定时器设置初值
MOV TL1,#ACH ;
SETB TR1 ;启动T1定时器开始计时
Y2: JBC TF1,Y3 ;判别T1定时器计时50mS到否,到则转Y3
AJMP Y2 ;50mS未到,则继续
Y3: DJNZ 30H,Y1 ;判别定时0.1秒到否,未到则继续
CLR TR0 ;定时0.1秒到,清T0、T1溢出标志
CLR TR1 ;
MOV 7BH,TH0 ;将测量的频率值存放在7AH、7BH内存中
MOV 7AH,TL0
在单片机进行频率采样的时候,首先通过多路控制开关输出某温度测量信号的地址值,然后进行温度的测量。
热敏电阻的电阻值与温度存在严重的非线性关系,当频率信号进入单片机CPU后,就可以应用软件的方法,例如最小二乘法,实现对热敏电阻的非线性校正。实践证明,使用这种方法,在-20~80℃的范围内,其测量误差可小于0.2℃。
3.2 数据的滤波处理
在单片机测量到温度信号以后,还需要对检测信号的滤波处理,减少测量过程中的干扰,最简单的方法是算术平均法。对N个采样值,寻找一个Y值作为本次检测的有效值,使Y值与各采样值之间的偏差的平方和为最小,在具体应用中,N值不宜太大,温度测量取N=5-10为好,既保持一定的灵敏度,又有恰当的平滑度。计算方法为:
Y=(X1+X2+….+XN)/N,式中X1、、、、X2、、….XN为N次检测量
实践证明用这种方法能正确测量温度值。在获得正确的测量值后,还需要将它转换成相应的实际温度值。
4.提高测量精度的几个措施
4.1 频率信号的稳定性
在图1中,R1、C1的热稳定性直接影响555时基集成电路的输出频率,要选择温度系数小的金属膜精密电阻,C1采用CBB22的电容。R1、C1、555时基集成电路要经过高、低温老化稳定后使用。每一路用精密电阻箱模拟热敏电阻的温度变化,测量实际的电阻-频率的数据输入单片机,作为测量、计算的依据。
传感器 电阻 温度传感器 电路 555 集成电路 振荡器 单片机 电容 继电器 LED 相关文章:
- 传感器技术中的阻抗测量方法(03-23)
- 电桥测量基础(06-10)
- 适用于微型仪器的精密电容传感器接口(09-06)
- 基于PIR的移动检测系统的实现(11-03)
- 基于霍尔传感器的直流电机转速测量系统设计(11-14)
- NPXI智能传感器的TPMS系统设计(11-29)