(1)温度检测电路设计。
温度传感器选用DS18B20。DS18B20是由Dallas公司生产的“一线式”数字温度传感器,其全部传感元件及转换电路集成在形状如三极管的集成电路以内。DS18B20与其他的温度传感器相比较,DS18B20具有高精度、高可靠性、高性能、体积小、硬件开销小、适用电压更宽、更经济、更实用、抗干扰能力更强、附加功能更强的特点。DS18B20就是有独特的1-wire接口、只有一个引脚进行通信、数字温度转换输出单总线的数据总线。最高分辨率是12位,测温范围为为-55~+125℃,测温分辨率可达0.062 5℃。CPU能够用一根数据线与多个DS18B20之间进行数据通信,其中,所使用微处理器的端口数量并不多,这样引线的数量要求较少,逻辑电路的数目也少。系统中采用“一线总线”的数字传输方式,增加了系统的稳定性。
(2)主控芯片的选择。
设计中采用单片机实现对温度的检测与控制。在单片机选择方面,由于AT89系列单片机与MCS-51系列单片机的引脚和指令完全相互兼容。然而相对于AVR、ARM等高端一些的单片机而言,AT系列的结构与指令方面相对简单,价格也便宜,而且完全可以达到设计的控制要求,所以,首选AT系列的单片机作为控制核心。
对于AT系列的单片机而言,常用单片机的基本类型有8种。AT89C51有4 kB的内存存储器,适用于本设计。系统中单片机选用的是AT89C51芯片,是由Atmel公司生产的标准型单片机。AT89C51单片机在其片内有4 kB Flash闪速程序存储器,可经受1 000次以上的写入/擦除周期,并有程序存储器加密逻辑,给单片机产品的开发、应用和生产带来了便利。综上所述,加之AT89C51单片机的价格相对便宜,因此控制核心部分选用AT89C51单片机。
3 系统软件整体设计
检测系统软件设计主程序调用了5个子程序,它们分别是温度测试程序、键盘扫描及按键处理程序、LCD显示程序、中断控制程序、单片机与PC机串口通讯程序。温度测试程序的主要功能是对温度芯片送来的数据进行处理,进行判断和显示。键盘扫描电路及按键处理程序的主要功能是实现温度通过键盘输入,按键识别以及相关的温度处理。LCD显示程序的主要功能是利用数码显示传送的数据,控制系统的显示部分。中断控制程序主要实现循环显示功能。串口通讯程序的功能是实现PC机与单片机之间的通信,然后将温度数据传送给PC机。
主程序流程:首先系统进行初始化赋值,依次调用温度显示子程序,键盘扫描子程序,然后把采集来的温度和预先设定的温度进行比较,做出相应的处理,比如高温报警、低温报警。最后把采集的温度值以及处理命令通过串口通信传送到PC机,同时PC机也可以远程进行控制。
4 结束语
通信机房的多路温度检测系统的设计主要是包括系统的构成、系统的整体设计、系统的硬件设计、软件设计等。利用主从分布式的思想,由一台上位机和多个下位机组成两级分布式通信机房的多路温度测量的巡回检测系统,实现温度的采集与控制,具有温度数码显示、高温报警、数据传输与存贮、打印数据曲线、远程控制等功能。系统利用PC机作为上位管理机,使用软件制作了较为人性化的温度控制操作界
面,从而提高了系统的可视化程度,方便了用户的使用。系统通过上位机控制下通过下位机进行现场温度数据采集,采集的温度数据既可以通过RS-232总线传送给主控PC机进行数据处理,屏幕显示或数据打印,也可以由下位机单独工作,由LCD实时显示各点的现场温度。