基于单片机的温度采集报警系统的设计 51单片机温度报警系统

  摘要:设计了一种基于单片机AT89S51和DS18B20温度传感器的温度采集报警系统。该系统性能可靠,结构简单,能实现安全温度内正常显示温度值,超出设定的温度上限则进行声光报警。
  关键词:单片机;温度检测;报警
  中图分类号:TP311.52文献标识码:A文章编号:1007-9599 (2011) 23-0000-03
  Temperature Acquisition Alarm System Design Based MCU
  Wang Rongrong,Liu Haixia
  (Inner Mongolia Technical College of Mechanics and Electrics,Huhhot010070,China)
  Abstract:It designs a microcontroller based on AT89S51 and DS18B20 temperature sensor temperature collection and alarm system.The system has reliable performance,simple structure,can achieve safe temperature within a normal display temperature exceeds the set temperature,upper limit,sound and light alarm.
  Keywords:MCU;Temperature detection;Alarm
  一、系统设计
  基本工作原理
  如图1所示为温度采集报警系统框图。该设计将以单片机控制的温度采集系统为主,利用单片机完成对温度的检测,实现安全温度内正常显示温度值,超出设定的温度上限则进行声光报警。
  系统在温度采集时主要应用了DS18B20芯片,该器件经过初始化后单片机首先进行ROM匹配,当受到测温器件发回的信号时证明该器件正常工作,接着单片机发送温度转换命令进行温度采集,测温的精确度很高,可以精确到小数点后四位。设计中还应用了HD7279芯片进行数码管显示的驱动,一共应用了6位数码管。
  
  图1 温度采集报警系统框图
  二、硬件设计
  (一)测温和控制电路
  1.测温
  测温使用的DS18B20是典型的应用单总线技术的器件。
  顾名思义,单总线只有一根数据线。设备(主机或从机)通过一个漏极开路或三态端口,连接至该数据线,这样允许设备在不发送数据时释放数据总线,以便总线被其它设备所使用。
  DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。DS18B20采用3脚PR-35封装或8脚SOIC封装,其内部结构框图如图2所示。
  
  图2 DS18B20内部结构框图
  DS18B20的测温原理是这样的,器件中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。器件中还有一个计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲进行计数进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55℃所对应的一个基数分别置入减法计数器1、温度寄存器中,计数器1和温度寄存器被预置在-55℃所对应的一个基数值。
  减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器计数到0时,停止温度寄存器的累加,此时温度寄存器中的数值就是所测温度值。其输出用于修正减法计数器的预置值,只要计数器门仍未关闭就重复上述过程,直到温度寄存器值大致被测温度值。
  单总线要求外接一个约5k的上拉电阻;这样,单总线的闲置状态为高电平。不管什么原因,如果传输过程需要暂时挂起,且要求传输过程还能够继续的话,则总线必须处于空闲状态。位传输之间的恢复时间没有限制,只要总线在恢复期间处于空闲状态(高电平)。如果总线保持低电平超过480μs,总线上的所有器件将复位。另外,在寄生方式供电时,为了保证单总线器件在某些工作状态下(如温度转换期间、EEPROM写入等)具有足够的电源电流,必须在总线上提供强上拉[1]。
  主机控制DS18B02完成温度转换必须经过三个步骤:初始化、ROM操作指令、存储器操作指令。必须先启动DS18B02开始转换,再读出温度转换值。本系统仅挂接一个芯片,在软件设计中使用默认的12位转换精度,外接供电电源,读取的温度值高位字节送单元,低位字节送WDLSB单元,再按照温度值字节的表示格式及其符号位,经过简单的变换即可得到实际温度值。
  2.控制
  AT89S51是美国ATMEL公司生产的低电压、高性能CMOS8位单片机;片内含有4k字节的可反复擦写的只读程序存储器(EPROM)和128字节的随机存取数据存储器(RAM);器件采用AMTEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统;片内置通用2位中央处理器(CPU)和Flash存储单元,功能强大的AT89S51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。
  
  图3 测温和控制电路
  (二)显示控制电路
  HD7279A是一片具有串行接口的,可同时驱动8位共阴式数码管(或64个LED点阵)的智能显示驱动芯片,该芯片同时还可连接多达64键的键盘矩阵。该芯片内部含有译码器,可直接接受16进制码,HD7279A还同时具有2种译码方式,HD7279(A)还具有多种控制指令,如消隐、闪烁、左移、右移、段寻址等。HD7279与单片机仅需4条接口线,其中CS为片选信号。当MCU访问HD7279时,应将片选端置为低电平。DATA为串行数据/输出端,当向HD7279发送数据时,DATA为输入端;当HD7279A输出键盘代码时,DATA为输出端。其特点为:
  -串行接口,无需外围元件可直接驱动LED
  -各位独立控制译码/不译码及消隐和闪烁属性
  -(循环)左移/(循环)右移指令
  -具有段寻址指令,方便控制独立LED
  -64键键盘控制器,内含去抖动电路
  -有DIP和SOIC两种封装形式供选择
  显示控制电路如图4所示:
  
  图4显示控制电路
  (三)声光报警电路
  1.发光二极管报警电路的设计
  由4个发光二极管接上电阻后连上单片的RXD的引脚,外接VCC,当单片机的RXD引脚被置低电平后,发光二极管被点亮,起到报警作用。图5所示为发光二极管报警电路。
  
  图5 发光二极管报警电路图
  2.声音报警电路的设计
  如下图所示,用一个Speaker和三极管、电阻接到单片机的TXD引脚上,构成声音报警电路,如图6示为声音报警电路。
  
  图6 声音报警电路图
  三、软件设计
  该设计中主要利用了DS18B20芯片进行测温,该芯片是单总线器件,顾名思义单总线只有一根数据线,因此在通信时时序就显得十分重要,我们在编程时也要十分注意这一点。在程序中测温时首先要对DS18B20进行初始化,初始化过程由单片机发出的复位脉冲和芯片响应的应答脉冲组成,应答脉冲使主机知道,总线上有从机设备,且准备就绪。由于总线上只挂接了一片测温芯片,因此可直接跳过ROM匹配发出测温命令。该设计可实时显示温度值,便于连续观测。软件流程图如下所示:
  
  图7 软件流程图
  四、总结
  本设计研究了一种基于单片机技术的温度采集报警系统。该系统通过以AT89S51单片机为工作处理器核心,利用了DS18B20芯片进行测温,当温度超出设定范围时,单片机输出控制信号,驱动声光报警电路开始报警。该系统操作简单、易懂、智能性高、误报率低,设计后的系统具有操作方便,控制灵活等优点。
  参考文献:
  [1]吴政江.单片机控制红外线防盗报警器[J].锦州师范学院学报,2001
  [2]宋文绪.传感器与检测技术[M].北京:高等教育出版社,2004
  [3]余锡存.单片机原理及接口技术[M].西安:西安电子科技大学出版社,2000
  [4]唐桃波,陈玉林.基于AT89C51的智能无线安防报警器[J].电子设计应用,2003,5(6):49-51
  [5]李全利.单片机原理及接口技术[M].北京:北京航空航天大学出版社,2004
  [6]薛均义,张彦斌.MCS-51系列单片微型计算机及其应用[M].西安:西安交通大学出版社,2005
  [7]徐爱钧,彭秀华.单片机高级语言C51应用程序设计[M].北京:北京航空航天大学出版社,2006
  [8]康华光.电子技术基础(模拟部分)[M].北京:高等教育出版社,2004
  [9]李朝青.单片机原理及接口技术(简明修订版)[M].杭州:北京航空航天大学出版社,1998
  [10]李广弟.单片机基础[M].北京:北京航空航天大学出版社,1994
  [11]阎石.数字电子技术基础(第三版)[M].北京:高等教育出版社,1989
  [12]廖常初.现场总线概述[J].电工技术,1999
  [作者简介]王熔熔,副教授,内蒙古机电职业技术学院信息与管理工程系副主任,宣传部副部长;刘海霞(1965.3-),女,内蒙古呼和浩特市人.内蒙古机电职业技术学院副教授,硕士研究生,研究方向:控制理论与控制工程。
  

推荐访问:单片机 报警系统 采集 温度