鉴于此,本设计采用AT89C51作为中央处理单元,采用数字式温度传感器DS18B20作为温度采集模块,采用LCD1602作为显示模块,加之按键控制模块以及温度报警模块来完成。旨在实现8路温度巡回检测、指定通道温度查询、温度超限报警以及日期时钟显示等功能。这样的设计可以使温度检测的实时性更高、电路连接更简单、操作更方便、测量更精确,并且可以同时检测多路的温度,加之报警装置的设计,还使得控制者可以及时地进行温度调整。
1. 系统方案设计
本设计主要介绍以单片机AT89C51为核心的多路温度检测系统,其主要功能和指标如下。
(1)利用温度传感器测量8点温度。
(2)温度检测范围为:-10℃~+105℃。
(3)采用LCD显示,可以显示日期和时钟。
(4)通过按键可以实时调整日期与时钟,温度与日期可以切换显示。
(5)能够轮流查询并显示8点的温度值。
(6)通过按键可以查看任一点的温度值。
(7)通过按键设置报警温度上下限,并能超限报警。
此系统的各个模块都要以能实现以上功能及指标为准绳进行设计。
1.1 温度采集模块的设计方案
对于温度检测系统来说,温度采集模块至关重要,这关系着整个系统性能的好坏[3]。温度采集模块可以采用模拟温度传感器来设计,也可以采用数字温度传感器设计。
方案一 基于模拟温度传感器的设计方案
该方案采用模拟温度传感器AD590作为温度测量元件,现场温度经AD590采样后变换为模拟电压信号,再经低通滤波器滤掉干扰信号后送放大器,信号放大后送模/数转换器转换为数字信号送至单片机[4],采用多个温度传感器对各点温度进行采集。其模块框架如图1所示。
图1 模拟温度传感器温度采集模块框图
此方案中AD590的运用虽然使得系统的软件设计变得简单,但是集成温度传感器AD590的输出是比较弱的电流信号,需要后续放大及A/D转换电路。对于需要测量8路温度的多路温度检测系统来说,这样的设计使得整个系统的电路变得复杂,这将给后来的调试工作带来不便。此外,如果采用普通的运放来放大采样信号的话,很难保证温度测量的精度,但是如果采用专门的测量放大器就会使系统的成本变高,因为专门的测量放大器的价格比较高。
方案二 基于数字温度传感器的设计方案
该方案采用数字温度传感器DS18B20作为温度测量元件,采用8个DS18B20对各点温度进行检测。其模块框架如图2所示。
图2 数字温度传感器温度采集模块框图
此方案采用了数字温度传感器DS18B20,这改变了传统的温度测量方式。DS18B20可以将现场采集到的温度数据直接转换为数字信号,然后通过总线将此信号传送给单片机进行数据处理,这就使得温度采集模块的电路变得简单。此外,DS18B20不仅体积小,测量精度高,而且还具有较高的性价比,使用起来也灵活方便[5]。此种设计方案不仅满足整个系统设计的需要,而且较方案一更经济实用。
综上所述,本设计选用方案二作为温度采集模块进行设计。
1.2 温度显示模块的设计方案
方案一 数码管显示
本方案采用4位LED显示器来巡回显示各路温度,其中第1位显示路数,第2至4位显示该路的温度值。LED显示器常用的显示方式有动态显示和静态显示两种,为了充分利用单片机有限的I/O资源,本方案采用动态显示方式。但是动态显示需要循环扫描每一个数码管,编程较复杂,占用单片机较多的时间[6]。对于需要检测8路温度的多路温度检测系统来说,LED显示器的巡回显示使得显示周期较长,不能及时地将变化温度反映出来,这样不利于控制者及时地采取措施进行温度调整。 51单片机多路温度检测系统的设计+电路图+源程序+流程图(2):http://www.youerw.com/zidonghua/lunwen_1338.html