基于单片机的多点温度监测系统设计.doc
《基于单片机的多点温度监测系统设计.doc》由会员分享,可在线阅读,更多相关《基于单片机的多点温度监测系统设计.doc(31页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、基于单片机的多点温度监测系统设计摘要:DS18B20是一种可组网的高精度数字式温度传感器,由于其具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠。PL2303是Prolific公司生产的一种高度集成的RS232-USB接口转换器,可提供一个RS232全双工异步窜行通信装置与USB功能接口便利连接的解决方案。该系统由上位机和下位机两大部分组成。下位机实现温度的检测并提供标准RS232通信接口,芯片使用了ATMEL公司的AT89S52单片机和DALLAS公司的DS18B20数字温度传感器。上位机部分使用了通用PC。该系统可应用于仓库测温、楼宇空调控制和生
2、产过程监控等领域。关键字:温度测量;单总线;数字温度传感器;单片机;转换器Based on SCM more temperature monitoring system designAbstract:DS18B20 is a network of high precision digital temperature sensor, since it has the unique advantages single bus, users can easily set up sensor network, and can make more temperature measurement circ
3、uit become simple and reliable. PL2303 Prolific company is the production of a highly integrated RS232-USB interface converter, can provide a RS232 full-duplex asynchronous channeling line of communication equipment and the USB interface convenient connection function of the solution.The system cons
4、ists of PC and a machine under two main components. A machine to implement the temperature detection and provide standard RS232 communication interface, ATMEL company used chip AT89S52 SCM and DALLAS company DS18B20 digital temperature sensor. PC parts used the general PC. This system can be used in
5、 storage temperature measurement, building the air conditioning control and production process monitoring, etc。Key words:temperature measurement; Single bus; Digital temperature sensors; Single chip microcomputer; converter第一章绪论1.1 系统概述在工、农业生产和日常生活中,对温度的测量与控制占据着极其重要地位。首先让我们了解一下多点温度检测系统在各个方面的应用领域:消防电
6、气的非破坏性温度检测,电力、电讯设备之过热故障预知检测,空调系统的温度检测,各类运输工具之组件的过热检测,保全与监视系统之应用,医疗与健诊的温度测试,化工、机械等设备温度过热检测。温度检测系统应用十分广阔。温度检测系统有则共同的特点:测量点多、环境复杂、布线分散、现场离监控室远等。若采用一般温度传感器采集温度信号,则需要设计信号调理电路、A/D 转换与相应的接口电路,才能把传感器输出的模拟信号转换成数字信号送到计算机去处理。这样,由于各种因素会造成检测系统较大的偏差;又因为检测环境复杂、测量点多、信号传输距离远与各种干扰的影响,会使检测系统的稳定性和可靠性下降。所以多点温度检测系统的设计的关键
7、在于两部分:温度传感器的选择和主控单元的设计。温度传感器应用围广泛、使用数量庞大,也高居各类传感器之首。本设计运用主从分布式思想,由一台上位机(PC微型计算机),下位机(单片机)多点温度数据采集,组成两级分布式多点温度测量的巡回检测系统。该系统采用 RS-232串行通讯标准,通过上位机(PC)控制下位机(单片机)进行现场温度采集。温度值既可以送回主控PC进行数据处理,由显示器显示。也可以由下位机单独工作,实时显示当前各点的温度值,对各点进行控制。下位机采用的是单片机基于数字温度传感器DS18B20的系统。DS18B20利用单总线的特点可以方便的实现多点温度的测量,轻松的组建传感器网络,系统的抗
8、干扰性好、设计灵活、方便,而且适合于在恶劣的环境下进行现场温度测量。本系统可以应用在大型工业与民用常温多点监测场合。如粮食仓储系统、楼宇自动化系统、温控制程生产线之温度影像检测、医疗与健诊的温度测试、空调系统的温度检测、石化、机械等。第二章 系统总体设计21 设计要求多点温度检测,制作3点温度检测系统,检测围为1020。将三点检测的温度采集并通过PC机界面显示出来,LED数码管显示出当前环境温度与三点的平均温度。在PC机驱动界面上分别设定三点的温度报警阈值,当任一被测点得温度不在其设定的检测围时,蜂鸣器报警,同时在PC机界面上显示出相应的报警符号(当被测点温度超出设定的检测围时显示红色报警符,
9、当被测点温度低于设定的检测围时显示白色报警符)被测点温度误差0.5。本设计中采用数字式温度传感器DS18B20来采集温度值并用AT89S52单片机来进行数据处理并控制相关电路的工作,PL2303控制器与PC级相连显示当前测定的温度,具有检测方便、灵活性大、精度高等优点。当温度超过预设温度上下限时,系统将发出警报并记录相应警报的类型和时间。22系统组成方框图传感器模块 下位机(AT89S52) 上位机(PC)LED显示模块PL2303控制模块预警灯显示模块图1系统方框图第三章 系统硬件设计31总体思路在设计这个温度检测系统之前,先了解系统所要实现的各个功能情况。在设计的过程中,除了要让硬件电路简
10、洁外,还要兼顾软件不能过于复杂。这样才能达到设计的实际要求,硬件支持软件,软件带动硬件。本电路设计的主要思路是:对设置的三个温控点进行实时的温度监控,并且把采集的温度通过电脑界面显示出来。最基本的程序是温度采样程序,之后的设定的数码管显示和PL2303控制都是在基本程序上扩展而得到的。主要目的是将三点检测的温度采集并通过PC机界面显示出来,LED数码管显示出当前环境温度与三点的平均温度。在PC机驱动界面上分别设定三点的温度报警阈值,当任一被测点得温度不在其设定的检测围时,蜂鸣器报警,同时在PC机界面上显示出相应的报警符号311系统总体设计图图2 系统总原理图32 各模块电路图321温度测试电路
11、设计这里我们用到温度芯片DS18B20。DS18B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO92小体积封装形式。测温分辨率可达0.0625,被测温度用符号扩展的16位数字量方式串行输出。其工作电源既可在远端引入,也可采用寄生电源方式产生。CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。DS18B20支持“一线总线”接口,测量温度围为 -55C+125C,在-10+85C围,精度为0.5C。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温
12、类消费电子产品等。DS18B20部结构64位ROM 和单线接口存储器和控制器(1) DS18B20的部结构如图所示温度灵敏元件 高速 缓存存储器低温触发器TL电源检测高温触发器TH配置寄存器8位CRC生成器DS18B20部结构图DS18B20有4个主要的数据部件: 64位激光ROM。64位激光ROM从高位到低位依次为8位CRC、48位序列号和8位家族代码(28H)组成。温度灵敏元件。非易失性温度报警触发器TH和TL。可通过软件写入用户报警上下限值。配置寄存器。配置寄存器为高速暂存存储器中的第五个字节。DS18B20在0工作时按此寄存器中的分辨率将温度转换成相应精度的数值,其各位定义如图所示。T
13、MR1R011111MSBDS18B20配置寄存器结构图LSB其中,TM:测试模式标志位,出厂时被写入0,不能改变;R0、R1:温度计分辨率设置位,其对应四种分辨率如下表所列,出厂时R0、R1置为缺省值:R0=1,R1=1(即12位分辨率),用户可根据需要改写配置寄存器以获得合适的分辨率。配置寄存器与分辨率关系表:R0R1温度计分辨率/bit最大转换时间/us00993.750110187.510113751112750(2)高速暂存存储器高速暂存存储器由9个字节组成,其分配如下图所示。当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0和第1个字节。单片机可通过
14、单线接口读到该数据,读取时低位在前,高位在后,数据格式如图所示。对应的温度计算:当符号位S=0时,直接将二进制位转换为十进制;当S=1时,先将补码变为原码,再计算十进制值。温度低位温度高位THTL配置保留保留保留8位CRCLSBDS18B20 存储器映像图MSB温度值格式图DS18B20 温度数据表:232221202-12-22-32-4MSBLSBSSSSS262524典型对应的温度值表:温度/二进制表示十六进制表示+125 +25.0625+10.125+0.50-0.5-10.125-25.0625-5500000111 1101000000000001 100100010000000
15、0 1010001000000000 0000100000000000 0000000011111111 1111100011111111 0101111011111110 0110111111111100 1001000007D0H0191H00A2H0008H0000HFFF8HFF5EHFE6FHFC90HDS18B20最大的特点是单总线数据传输方式,DS18B20的数据I/O均由同一条线来完成。硬件连接电路如下图: VCC=5VDS18B 20 3#DS18B 20 2#DS18B 20 n#DS18B 20 1# 4.7KAT89S52本系统为多点温度测试。DS18B20采用外部供电
16、方式,理论上可以在一根数据总线上挂256个DS18B20,但时间应用中发现,如果挂接25个以上的DS18B20仍旧有可能产生功耗问题。另外单总线长度也不宜超过80M,否则也会影响到数据的传输。在这种情况下我们可以采用分组的方式,用单片机的多个I/O来驱动多路DS18B20。在实际应用中还可以使用一个MOSFET将I/O口线直接和电源相连,起到上拉的作用。对DS18B20的设计,需要注意以下问题(1)对硬件结构简单的单线数字温度传感器DS18B20 进行操作,需要用较为复杂的程序完成。编制程序时必须严格按芯片数据手册提供的有关操作顺序进行,读、写时间片程序要严格按要求编写。尤其在使用DS18B2
17、0 的高测温分辨力时,对时序与电气特性参数要求更高。(2)有多个测温点时,应考虑系统能实现传感器出错自动指示,进行自动DS18B20 序列号和自动排序,以减少调试和维护工作量。(3)测温电缆线建议采用屏蔽4 芯双绞线,其中一对线接地线与信号线,另一组接VCC和地线,屏蔽层在源端单点接地。DS18B20 在三线制应用时,应将其三线焊接牢固;在两线应用时,应将VCC与GND接在一起,焊接牢固。若VCC脱开未接,传感器只送85.0 的温度值。(4)实际应用时,要注意单线的驱动能力,不能挂接过多的DS18B20,同时还应注意最远接线距离。另外还应根据实际情况选择其接线拓扑结构。322主控模块电路设计本
18、系统选用ATMEL公司的AT89系列单片机中的AT89S52,AT89S52单片机是一种新型的低功耗、高性能且含8K字节闪电的8位CMOS微控制器,与工业标准MCS一51指令系列和引脚完全兼容。有超强的加密功能,其片闪电存储器的编程与擦除完全用电实现,数据不易挥发,编程/擦除速度快。AT89S52芯片部有6个中断源:两个外部中断INTO和INT1.三个定时器中断(定时器0,1,2)和一个串行口中断。在本系统中涉与到AT89S52芯片的中断源有五个:分别是外部中断INT1,定时/计数器T0,T1和T2以与串行口中断。本测控系统采用电平激活方式,也即是INT1=0;一旦INT1引脚的采样值为低电平
19、,则TCON寄对于定时器TO和Tl,通过寄存器TMOD,TCON来控制和选择定时/计数器的功能和操作模式。AT89S52的芯片管脚图如图5示。图5 AT89S52芯片管脚323联机模块电路设计整个模块通过PL2303转换器驱动与PC机连接,其模块电路如下图所示。通过一个USB接口与PC机连接,实现对温度的实时监控,并可通过控制界面对温度检测围进行调整控制,当温度不在检测围时显示报警符号。图6 联机模块电路图7联机控制界面截图PL2303介绍与工作原理详见附录二324显示模块电路设计(1)数码管显示电路设计设计中采用一个四位数码管来显示当前环境温度,通过单片机的P1口控制数码管的工作,并在P1口
20、与数码管间接上拉电阻对数码管进行保护,同时也增加了数码管的亮度,电路如图7所示。图8 数码管显示电路(2)发光二极管显示电路设计设计中采用了3个发光二极管作为预警显示灯,采用下拉示串电阻是为了保护发光二极管,如图8所示。 Led1 L1 Led2 L2 Led3 L3图9 发光二极管预警电路第四章 系统软件设计开始41主程序设计系统初始化读取温度采集子程序采集温度并进行数据处理数显并判断是否在正常温度内不报警 Y N判断温度超出上限(Y)或低于下限(N)PC机显示红色预警,蜂鸣器报警 Y NPC机显示白色预警,蜂鸣器报警图10 主程序流程图本软件设计的程序设计包括采集各个点的温度进行数据处理,
21、判断当前测定温度是否在设定的阈值围,若不在则发出报警。主程序调用了4个子程序,分别是数码管显示程序、LED预警显示程序、温度测试程序、单片机与PC机串口通讯程序。LED预警显示程序:实现对温度控制的预警功能。温度测试程序:对温度芯片送过来的数据进行处理,进行判断和显示。数码管显示程序:向数码的显示送数,控制系统的显示部分。串口通讯程序:实现PC机与单片机通讯,将温度数据传送给PC机。程序结构LED预警显示程序温度测试程序数码管显示程序串行口通讯程序图11 程序结构框图42 串行口通讯程序本次通讯中,测控系统分位上位机和下位机之间的通信,系统中单片机负责数据采集、处理和控制,上位机进行现场可视化
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 多点 温度 监测 系统 设计
限制150内