1. 引言
在现代自动化控制系统应用中,经常对系统的温度、湿度、电压、电流、压力、流量等参数进行测量和控制。不仅在各行各业,而且在大、中、小型控制系统中采用温度测控技术。热敏电阻有反应灵敏、准确、体积小、成本低、稳定性好等特点,利用单片机和热敏电阻不仅可以解决对温度精确测量的技术问题,还可通过可控硅实现对温度的精确控制。本文以某中药加速仪的设计应用进行阐明。
2. 硬件电路设计
以热敏电阻为测量元件的At89C2051单片机温度测控系统电路原理图略可向作者索取。本文仅对中药加速仪温度测量与控制电路部分进行描述。
2.1温度测量元件
热敏电阻是一种新型半导体感温元件,具有体积小、重量轻、热感应快、灵敏度高、结构稳定、可靠性高、阻值精度高、一致性好的优点。热敏电阻可分为正温度系数和负温度系数两种类型。
负温度系数热敏电阻具有负的电阻温度特性,当温度升高时,电阻值减小;当温度降低时,电阻值增大,其阻值与温度特性曲线是一条指数曲线,非线性较大,在实际使用中要进行线性化处理,但比较复杂,一般只使用线性度较好的一段。如果测出热敏电阻的阻值,就可以间接的算出对应的温度值。MF52-3950型热敏电阻工作温度:-40℃~100℃;时间常数<=3.2S;耗散系数>=0.7 mW/℃;B常数:3950k。中药加速仪的工作温度为40℃~60℃;温度误差范围-2℃~2℃,根据以上情况温度测量元件选用MF52-3950型NTC热敏电阻器。
2.2温度测量电路与原理
用热敏电阻测温的硬件连接见图1。
图1 热敏电阻测温
图1中T1为测量点;TP2(P1.1)为参考电阻R3充放电端;TP1(P1.0)为热敏电阻网络充放电端。
将热敏电阻RT与R2固定电阻并联,当温度改变时,RT阻值改变。
(1)使At89C2051单片机P1.0(TP1)输出高电平(H)、P1.1(TP0)输出低电平(L),此时电阻R1、R2、RT与电容C1构成RC电路并充电。
(2)当测试点T1的电压达到三极管的导通电压时,三极管导通,测试点T2变为低,当89C2051单片机检测到测试点T2变为低电平时记录充电时间t1。
(3)使At89C2051单片机P1.0(TP1) 输出低电平(L)、P1.1(TP0)输出低电平(L), 让电容C1放电。
(4)放电完毕后,使At89C2051单片机P1.0(TP1) 输出低电平(L)、P1.1(TP0) 输出高电平(H),此时电阻R3与电容C1构成RC电路并再次充电。
(5)当At89C2051单片机再次检测到测试点T2变为低电平时记录充电时间t2。
采用充电的办法分别测出参考电阻R3的放电时间t2, 热敏电阻器电阻网络Rw的放电时间t1。则有下面的公式:
Rw=t1×R3 /t2 式中Rw=R1+(RT+Rw)/ (RT×Rw)
K= Rw / R3= t1 /t2
参考电阻R3在中药加速仪的环境工作温度内变化微小,可忽略不计。
热敏电阻温度与阻值的关系有:R=R25 X expB{1/(T+273)-1/(25+273)}
其中:T-被测温度;R25-热敏电阻25℃时的阻值;B-热敏电阻B常数;R-被测温度下热敏电阻阻值
通过以上公式,求出热敏电阻在不同温度下的阻值,可得到不同温度下的RT和 Rw阻值表,再求出对应温度下热敏电阻网络Rw与参考电阻比值表,也就是K值表,这样就得到了不同温度下K值与温度的对应表。K值可通过t1、t2求得,通过计算K值查 找对应表,就可得到对应的温度值。
2.3温度控制电路
At89C2051单片机对温度的控制是通过可控硅实现的,如单片机温度测控系统电路原理图所示。由At89C2051单片机P3.0发出控制信号,控制可控硅的通断就可实现控制温度的目的。At89C2051只要改变P3.0的接通时间就可调节温度的变化。由于中药加速仪存在热惯性和时间滞后等特性,为精确控制温度带来困难,可通过脉冲加热控制法控制温度。即通过测得的温度与设定温度的差值大小,分别采用不同宽度的脉冲,控制P3.0的接通时间达到控温的目的。
图2 主程序流程图
3.软件流程设计
3.1主程序流程设计
温度测控系统的程序设计包括以下几个部分:
(1)键盘扫描、键码识别及温度显示;(2)温度测量与处理;(3)温度控制;(4)过流保护;(5)出错告警。
主程序包括At89C2051的初始化、RC电路充放电处理、温度显示、过流保护及键盘处理。还包括中断服务程序的初始化、定时器初始化、标志初始化、单片机端口初始化等。
3.2外部中断0服务子程序
外部中断0服务子程序温度测量的主程序,用于执行放电操作、启动定时器1、记录放电时间、比值计算查表、判定是否有效温度与热敏电阻开路或短路。
图3 外部中断0服务子程序流程图
外部中断0服务子程序在计算比值时,因为T2/T1值比较小,所以乘以100取整,再进行判断是否为有效温度值范围。在有效值范围内,通过查表得到测量温度。当超出有效温度范围时,可根据比值大小判断热敏电阻器开路或短路,作出报警处理。
在中药加速仪设计中采用比值查表法测量药包的温度,通过验证,测量温度的精度可控制在1℃之内,完全达到设计技术要求。
3.3定时器0服务子程序
定时器0服务子程序包括设置定时器、加热控制、定时判断、设置充电标志等。根据测得的温度与设定的温度差值,当温度差值大于3℃时,采用加热丝持续加热,快速加温至设定温度,程序控制At89C2051单片机P3.0发出控制信号保持可控硅持续导通。当温度差值小于3℃时,由于加热丝存在热惯性和时间滞后等特性,防止温度过冲,采用脉冲加热,程序控制At89C2051单片机P3.0发出脉冲控制信号,控制可控硅导通。当温度差值为0℃时,停止加热,程序控制At89C2051单片机P3.0发出控制信号控制可控硅断开。
图4 定时器0服务子程序流程图
通过在中药加速仪设计实际应用,采用程序控制脉冲加热法控制药包的温度,通过验证,设定温度与药包温度误差范围可控制在-2℃~2℃之内,完全达到设计技术要求。
4.结束语
利用单片机和热敏电阻设计温度测控系统的温度测量比值查表法和温度脉冲加热控制法,通过在中药加速仪设计中的实际应用,已得到充分验证。At89C2051单片机和热敏电阻体积小、重量轻、抗干扰性能强、价格低廉、结构稳定、可靠性高、灵活性好、一致性好、对环境要求不高的优点,应用简单方便。本文的温度测控系统仅是单片机广泛应用的一例,相信单片机的应用会越来越广泛。
本文作者创新点是阐述了利用单片机和热敏电阻设计温度测控系统的温度测量比值查表法和温度脉冲加热控制法,通过在中药加速仪设计的实际应用中,精确测量、控制中药加速仪药包的温度。