本文介绍了智能集成温度传感器DS18B20的结构特征及控制方法、单片机控制下的温度报警系统,详细说明其硬件和软件设计,并对其各功能模块做了详细介绍,其主要功能和指标如下:单片机实时检测温度传感器DS18B20的状态,并将DS18B20得到的数据进行处理。上电后数码管显示当前的环境温度,通过按键可设置高低温报警值,当检测到的温度高于设置的报警值上限或者低于设定的报警值下线时,蜂鸣器报警、报警灯亮起并自动开启制冷或制热设备。
2 基本设计方案
利用温度传感器芯片直接将温度数据测出并转化为数字信号,并通过数码管显示。单片机程序控制温度的上、下限值,蜂鸣器报警提示,用外部电路产生显示和控制加热和降使温度回到系统设定范围,来达到设计的要求。[11]
考虑使用温度传感器,结合单片机电路设计,采用一只DS18B20温度传感器,直接读取被测温度值,之后进行转换,依次完成设计要求。单片机快速准确的进行温度采集数据处理、显示控制等工作依靠时钟电路提供时钟频率。温度设定范围通过按键设定。系统开始运行和重新启动靠复位电路实现。系统总体结构如图2。1所示。
温度计电路总体设计方案
3 设计思路
3。1 主控制器模块
方案1:
采用可编程逻辑器件CPLD 作为控制器。CPLD可以实现各种复杂的逻辑功能、规模大、密度高、体积小、稳定性高、IO资源丰富、易于进行功能扩展。采用并行的输入输出方式,提高了系统的处理速度,适合作为大规模控制系统的控制核心。但本系统不需要复杂的逻辑功能,对数据的处理速度的要求也不是非常高。且从使用及经济的角度考虑我们放弃了此方案。
方案2:
采用AT89C51单片机作为整个系统的核心,用其控制温度报警功能,以实现其既定的性能指标。充分分析我们的系统,其关键在于实现温度的自动显示并报警功能,而在这一点上,单片机就显现出来它的优势——控制简单、方便、快捷。这样一来,单片机就可以充分发挥其资源丰富、有较为强大的控制功能及可位寻址操作功能、价格低廉等优点。AT89C51单片机具有功能强大的位操作指令,I/O口均可按位寻址,程序空间多达8K,对于本设计也绰绰有余,更可贵的是AT89C51单片机价格非常低廉。[1]
因此,我们选用第二个方案。
3。 2 温度测量
方案1:
采用数字温度芯片DS18B20 测量实际温度,输出信号全数字化。便于单片机处理及控制,省去传统的测温方法的很多外围电路。且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好。在0—100 摄氏度时,最大线形偏差小于1 摄氏度。由数字温度计DS18B20和微控制器AT89C51构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。这样,测温系统的结构就比较简单,体积也不大。采用51 单片机控制,软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制,而且体积小,硬件实现简单,安装方便。另外AT89C51在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟。[7]
方案2:
采用热电偶温差电路测温,温度检测部分可以使用低温热偶,热电偶由两个焊接在一起的异金属导线所组成(如下图),热电偶产生的热电势由两种金属的接触电势和单一导体的温差电势组成。通过将参考结点保持在已知温度并测量该电压,便可推断出检测结点的温度。数据采集部分则使用带有A/D 通道的单片机,在将随被测温度变化的电压或电流采集过来,进行A/D 转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来。热电偶的优点是工作温度范围非常宽,且体积小,但是它们也存在着输出电压小、容易遭受来自导线环路的噪声影响以及漂移较高的缺点,并且这种设计需要用到A/D 转换电路,感温电路比较麻烦。