基于DS18B20的多点温度检测系统

来源 :科技创新导报 | 被引量 : 0次 | 上传用户:stern_pea
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:该文提出了采用单总线数字式温度传感器DS18B20和单片机组成的新型智能多点温度检测系统。在文中,首先介绍了DS18B20的基本特性,然后给出了相应的硬件接口电路、软件流程及主要程序代码。DS18B20具有直接输出数字信号、单总线接口、成本低等优点。经试验,基于单总线器件DS18B20的多点温度检测系统测量温度准确、测温范围宽、体积小、控制方便。
  关键词:单总线 DS18B20 多点测温
  中图分类号:TP21 文献标识码:A 文章编号:1674-098X(2015)01(c)-0100-03
  Abstract:In this paper,a new multi-spot temperature survey system composed of 1-wire temperature sensor DS18B20 and MCU is designed.This article introduces the basic characteristics of DS18B20,and this article also gives the corresponding hardware interface circuit,software flow diagram and the primary code.DS18B20 has a series of characteristics such as digital output,1-wire interface and low cost.Test show that the multi-spot temperature survey system has the advantages of accurate measurement,wide temperature range,small volume and convenient controlling.
  Key Words:1-wire;DS18B20;Multi-spot measuring temperature
  在中央空調系统、冷库系统、反季节大棚等多种系统中都需要多点的温度检测。因此,多点温度检测系统的高效率和低成本对实际生活生产具有重要意义。传统的温度检测系统大都以热电阻、热电偶为传感器,将被检测的模拟信号放大、调理及A/D转换,然后将所得的数字信号送入CPU处理,其可靠性相对较差,且处理电路复杂、成本高,对CPU的资源占用较多。而Dallas公司推出的DS18B20是单总线数字温度传感器,它可以将输入的温度模拟信号直接转换为数字信号,转换给CPU,电路简单。系统设计中可以用总线拓扑,在一根I/O线上挂接多个传感器,非常适合温度的多点测量。
  1 DS18B20简介
  DS18B20是美国Dallas半导体公司生产的单总线数字温度传感器,它将半导体温敏元件、A/D转换器、存储器等做在一个很小的集成电路芯片上,传感器直接输出的是温度信号数字值。它具有微型化、低功率、高性能、抗干扰能力强、电压范围宽、易于与单片机接口等优点,适合于各种温度测控系统。[]DS18B20内部的64位激光ROM用于存储由生产厂家光刻的全球唯一的、且不可更改的64位序列号。CPU通过ROM指令读取总线上挂接的各个传感器ROM识别码以选择单总线上的某一个从器件,未被选中的从器件则忽略CPU的后续指令。即以该序列号为传感器节点的地址。
  2 系统的硬件基础
  测温系统的主要组成部分有温度传感器DS18B20、EEPROM、人机界面(键盘、LCD显示器)和STC15单片机,结构框图如图1所示。
  系统以单总线的形式挂接多个传感器于MCU的某一I/O端口。MCU通过单总线完成于传感器节点的通讯,主要工作包括:节点地址的读取及识别,对选定节点读取或传输数据。EEPROM可以用于对各个传感器64位序列号的存储和简单的温度记录。显示模块选用字符型液晶显示器LCD1602,对测量结果进行显示。
  本设计中的EEPROM可以存储各个传感器的64位序列号并进行简单的温度记录。此处选用的是ATMEL公司基于I2C总线接口的24C64。对于24C64,要在I2C总线上连续发送两个器件子地址,其寻址范围可达16KB。
  3 多点识别的实现与软件设计
  对DS18B20的访问分为3个步骤。(1)初始化:单片机通过单总线,向DS18B20发送一个复位脉冲,单总线上的所有传感器都被复位。(2)序列号访问命令:MCU发送某一个DS18B20的序列号。单总线上所有相连的DS18B20都进行编码匹配,只有编码一致的从芯片才被激活。(3)内存访问命令:MCU对选中的DS18B20发送内存访问命令。
  3.1 关于DS18B20的时序
  单总线(1-Wire)是美国Dallas公司推出的外围串行扩展总线。所有单总线的器件都挂在这跟线上,即仅通过1条连接线,便可以完成全部的控制、通信甚至是供电。与I2C、SPI等芯片间的通信协议不同,单总线协议中并没有专门的时钟线,所以严格的时序控制是通信得以实现的基础。DS18B20的通信协议主要包括复位和应答脉冲时序、写时序和读时序。
  对DS18B20的每一次操作,都是由复位开始的。复位时序如图2。
  首先由单片机发送复位脉冲,然后释放之。若总线上有正常工作的芯片,在15-60us后,传感器芯片会发送存在脉冲——60-240us的低电平信号。此时DS18B20的复位与应答已经完成了,适当延时后既可对其进行读写操作。
  写时序是单片机主动发出的,其开始是主机将单总线从高电平拉为低电平,时序如图3。
  读时序和写时序类似,由主机发起,不同的是主机会进入采样状态,接收数据。   3.2 DS18B20的序列号采集
  在系统的实际应用中,需要测温节点的数字地址与物理位置相一致。即用户需要知道所显示的温度是哪个测温节点测出来的,否则一切都没有意义。
  当新的DS18B20接入系统时,需要读取其64位序列号,将该序列号与用户赋予的人工编码相对应,并存入EEPROM中。如此一来,即使系统掉电以后,各个传感器芯片的序列号也能得以被保存。
  传感器芯片的64位序列号采集流程如图4所示。当单片机发出复位脉冲并受到芯片的应答信号,就对DS18B20发送读ROM命令,即对总线写#33H。此时,传感器芯片会做出发送64位ROM序列号的准备,但是数据的读时序依然是由主机发起。当64位的ROM序列号读取完毕后,就可以将当前单总线器件的序列号存入EEPROM为其开辟的存储空间内。
  3.3 主程序设计
  模块设计是使程序结构化的有效方法。该测温系统的主程序主要分为DS18B20初始化模块、温度转换模块、数据处理模块、显示模块以及上文提到的传感器ROM序列号采集模块,其中序列号采集模块是独立于温度检测之外的。
  初始化模块的主要任务是设置DS18B20的上、下限报警温度及传感器的分辨率,其操作对象是芯片内部高速暂存器RAM的第2、3、4字节。DS18B20内部的高速RAM是由9个字节的高速暂存器和非易失性电擦写EEPROM集成的,其中EEPROM用于存储TH、TL和配置存储器的值。数据是先写入RAM,经校验后在传给EEPROM,这样就可以保证本次设置的参数在下次开机复位之后还会有效。此模块编写为子程序“DS18B20_INT”。
  在温度转换模块中,采用了统一转换,逐个读取的算法。系统中,设置DS18B20为12位分辨率,温度转换的时间为750ms(实际的程序延时设置为1s)。所以,如果要等传感器逐一进行温度转换并读取的话,会对影响系统的实时性:第一个传感器和最后一个传感器测得温度的时间差是分钟级的。所以在温度转换模块中,我们先复位所有的DS18B20,然后发送“跳过ROM”命令(#0CCH)和“温度转换”命令(#44H),这就可以实现用一秒的时间使全部传感器完成温度转换,然后再逐一读取并保存,其中最后一步操作只需要极端的时间。此模块编写为子程序“TEMP_RD”,其流程见图5。
  DS18B20作为温度传感器,突出特点就是它向主机传输的并不是电压或电流等模拟信号,而是不易失真的数字信号。既然是数字信号,其结果就有特定的格式。在DS18B20内部,测温结果存储在暂存RAM中,其字节1的高5位是符号位,字节0的低4位是小数部分,中间7位是整数部分。
  当数据上传到单片机之后,需要经过数据转换才可以存入显示缓冲区供显示子程序读取。数据转换模块的功能是将二进制数据通过查表的方法转换为按十进制位存储的ASCII码,存入显示缓冲区。此模块编写为子程序“DS18B20_DIV”,具体流程见图6。
  4 结语
  基于DS18B20的单总線多点测温系统具有硬件简单的突出优点,易于扩展,成本低廉。在本课题中,由外接的EEPROM保存单总线器件的独有序列号和物理地址,使用方便。本设计经试验条件下测试,工作稳定,使用带屏蔽的三芯电缆,在80米内可准确传输数据。
  参考文献
  [1] 梅丽风,王艳秋,汪毓铎,等.单片机原理及接口技术[M].北京:清华大学出版社,2006.
  [2] 丁向荣.单片机原理与接口技术—— 基于STC15系列单片机[M].北京:电子工业出版社,2012.
  [3] DALLAS公司的DS18B20数据手册.
  [4] 杨海波,张玮,刘晓静,等.一种基于数字温度传感器DS18B20的多功能电子温度计设计[J].中国医学物理学杂志,2013,30(1):3890-3893.
  [5] 韩雪,蒋国平,马幼军.数字式温度传感器DS18B20在温室环境监测中的应用[J].仪表技术传感器,2002(9):29-31.
  [6] 秦芹.一种基于DS18B20的温度采集新方案[J].电子技术,2010(10):62-64.
其他文献
语言是人们交流思想的工具,语言能力是衡量人素质高低的一个重要方面,数学语言能力是反映学生数学素质高低的重要标志,而学生的数学语言能力,是在学习数学的交往和运用的过程
摘要:教师的责任是教书育人,作为教师,想方设法教会学生,让学生都成长为优秀的人才才是教师的幸福。  关键词:教学观念 幸福 感受 情绪 拓展 领域 创造 发展  作为一名小学数学教师,只有不断学习教育教学新观念、新思想,才能跟得上时代的潮流,才能为社会做出贡献。在这里笔者以这几年的学习与实践经验来谈谈自己在数学教学方面的认识。  一、良好的师生关系是教好数学的关键  老师的幸福,在于辛勤地教书育人
我是一名校外科技专职教师,而专业正是环境教育。在接触儿童生态道德教育项目之前,已经接受过来自环境教育专家、环保宣教单位的很多教师培训,参加过各种环境教育活动和项目
在油田的开发过程中,任何一个环节出现问题,都会导致采油工程无法顺利进行,因此,对问题的防治显得万为重要。曙一区超稠油位于辽河断陷西斜坡的中段,构造形态为东北走向倾向南东的
当今初中英语教学已经越来越趋向于能力的培养,特别是综合能力的培养。在整个初中英语教学过程中,听、说、读、写的教学要求在课标中也体现的非常细致,分为几个级别,但在真正的阅读教学过程中,特别是任务型阅读教学中,教师们还是有着各种困惑,现在就我在阅读教学中采用的一些方法粗略的表述出来,与大家同享,有不妥之处请大家指正。  阅读任务型阅读阅读策略精读泛读绝大多数教师都非常重视阅读教学,河北省的初中英语中考
摘 要:ESP课程体系下的语言教学往往和学生的专业之间有着密切的关系,也切实有效地提高了语言的实用性。在全球化经济飞速发展的当今社会,国际间的经济交流越发频繁,这也对我国护理专业学生的英语能力提出了更高的要求。文章将从ESP课程体系的相关理念出发,针对护理专业的实际情况,以护理专业学生英语实际应用能力的提高为目标,提出了在ESP课程体系下护理专业英语教学的课程构建方式。  关键词:ESP课程体系
摘要:高职院校创业教育刚刚起步,创业教育面临诸多问题,校企合作项目植入创业教育正处在探索阶段。校企共建保险服务站创业教育在教育师资和环境构建上进行了研究和实践,为其他校企合作项目的创业教育提供参考经验,探索出适合高职院校创业教育的新模式。  关键词:校企合作创业教育环境基础  在2014年夏季达沃斯论坛上,李克强总理在致辞中指出“只要大力破除对个体和企业创新的种种束缚,形成‘人人创新’‘万众创新’
经济法是高校经管类学科的专业课,课程内容相对抽象难懂,翻转课堂可以提高学生的学习主动性和课堂利用率,是一项价值较高的教学改革探索。但由于时间、技术和资源的有限性,仅凭借