多点温度测量系统设计
- 格式:doc
- 大小:903.00 KB
- 文档页数:61
基于单片机的分布式多点温度测量系统的设计摘要近年来单片机技术取得了巨大的发展,它具有安全、稳定、高效等特点。
而温度测量在我们的日常生活与企业生产中具有非常重要的作用。
本文介绍了一种以at89c51单片机为核心,具有多点温度测量、存储和显示功能的分布式多点温度测量系统,并对该系统的的软件和硬件两个方面进行了介绍。
关键词 at89c51单片机;多点温度测量;传感器中图分类号tp368.1 文献标识码a 文章编号 1674-6708(2013)94-0205-020 引言近年来,随着生产技术的不断发展与提高,许多地方都需要用到温度控制,例如种植大棚蔬菜时,需要实时监控大棚中的温度情况。
人们的日常生活中也常常需要用到温度测量,例如登山探险时,需要随时获知所在区域的温度信息。
传统的温度测量系统大多是单点温度测量设备,这种温度测量系统不仅测量精度达不到要求,而且无法进行多点温度测量,这些缺点严重制约了单点温度测量仪的应用。
单片机具有功能强大、安全性能高、稳定性强、体积较小、经济性较强等特点,可广泛应用于多种测控领域。
采用单片机来进行温度测控具有测量精度高、灵活性强、使用方便等特点,而且还可大幅度降低能耗。
多点温度测量系统可同时测定多个温度测量点的温度信息,并实时储存、传输以及显示温度。
本文介绍的基于单片机的分布式多点温度测量系统具有温度测量、信息储存以及图形化显示等功能。
1系统设计原理本文采用at89c51单片机作为系统的测控核心器件,温度测量传感器采用ds18b20,为了实现多点温度测量,系统中需要设置多个ds18b20测温传感器,然后将各个测温传感器测得的温度信息显示在dm-162显示屏上。
ds18b20测温传感器产自美国半导体公司dallas,该传感器属于智能数字总线式温度传感器。
ds18b20的工作温度最低为-55℃,最高为+125℃,它能够在不进行任何转换的情况下直接测量出温度信息。
ds18b20测温传感器的测量精度非常高,其分辨率可达到0.0625℃。
基于热敏电阻的多点温度测量系统0.引言在现代农业中,许多情况下需要温度测量,用来测量温度的传感器种类很多,热敏电阻器就是其中之一。
热敏电阻灵敏度高、稳定性好、体积小、电阻值大等特点,已广泛于温度测量和控制领域。
在所有被动式温度传感器中,热敏电阻的灵敏度(即温度每变化一度时电阻的变化)最高,在温室大棚内,温度测量精度一般在±0.51ºC 左右,在这种情况下,,热敏电阻的引线长度在100200 米,对测量造成的误差可以忽略不计,使测量系统的电路简单、使用方便。
1.热敏电阻的测量电路在多点温度测量系统中,热敏电阻采用温度-频率法测量框其中f=1.442695041/(C1*(R1+2*Rt ))从上式可以看出,当C1、R1 为固定值时,555 时基电路的输出频率f 仅仅与Rt 有关,而热敏电阻的阻值Rt 与测量的温度有关。
因此,需要测量的温度由Rt 热敏电阻转换成电阻值,通过555 时基电路转换成频率信号,单片机通过P3。
5(T1 口)对频率进行测量,就可以计算出测量的温度值。
多路控制开关的组成与工作原理如在2.单片机的应用单片机为AT89C52,片内有256B RAM 和8KB 的Flash ROM,可以反复多次改写程序,十分方便。
单片机的定时器/计数器T1 工作在方式1,作为16 位的外部脉冲计数器,记录555 电路输入的脉冲数。
单片机的定时器/计数器T0 也工作在方式1,作为16 位定时器用,记录单片机CPU 的时钟脉冲。
在编写程序时,使T0 的定时时间为0.1 秒,通过T1 在0.1 秒内测量到的脉冲数,就可以计算出频率值,从而知道被测量的温度值。
参考程序如下:(CPU 振荡。
理工科类大学毕业设计论文南开大学本科生毕业设计中文题目:基于单片机的多点温度测量系统设计英文题目:Design of based on the microprocessor multipoint temperature measurement system学号:****姓名:****年级:****专业:电子信息科学与技术系别:电子科学系指导教师:****完成日期:****摘要通过运用DS18B20数字温度传感器的测温原理和特性,利用它独特的单线总线接口方式,与AT89C51单片机相结合实现多点测温。
并给出了测温系统中对DS18B20操作的C51编程实例。
实现了系统接口简单、精度高、抗干扰能力强、工作稳定等特点。
本文介绍基于AT89C51单片机、C语言和DS18B20传感器的多点温度测量系统设计及其在Proteus平台下的仿真。
利用51单片机的并行口,同步快速读取8支DS18B20温度,实现了在多点温度测量系统中对多个传感器的快速精确识别和处理,并给出了具体的编程实例和仿真结果。
关键词:单片机;DS18B20数字温度传感器;Proteus仿真;C51编程AbstractWith using the measuring principle and characteristics of the numerical temperature sensor of DS18B20,making use of special characteristics of single line as the total line, and combine together with AT89C51 to realize several points temperature measuring. Also this paper gives the example of the C51 program which is used to operate to the DS18B20. Make system have characteristics of simple, high accuracy, strong anti- interference ability, stable work etc.This design introduced AT89C51 monolithic integrated circuit temperature control system design from the hardware and the software two aspects. A multipoint temperature measurement system based on DS18B20 and AT89C51 microcontroller is designed and simulated by Proteus in this paper, including software and hardware design of this system. The system has such advantages as novel circuit design, quick measurement speed, high measurement accuracy, and good practicality.Key words: SCM;DS18B20;Proteus simulation;C51 program目录摘要 (I)Abstract ............................................................................................... I I 第一章绪论 (1)1.1温度智能测控系统的研究背景与现状分析 (1)1.2温度智能测控系统的工作原理 (2)第二章单片机简介 (3)2.1单片机的定义 (3)2.2单片机的基本结构 (4)2.3单片机执行指令的过程 (5)2.4单片机的特点 (6)第三章数字温度传感器DS18B20原理 (7)3.1概述 (7)3.2主要特征 (7)3.3引脚功能 (8)3.4工作原理及应用 (8)3.5单片机对DS18B20的操作流程 (8)3.6 DS18B20与单片机的接口 (9)3.7 DS18B20芯片ROM指令表 (9)3.8 DS18B20芯片存储器操作指令表 (10)3.9 DS18B20复位及应答关系及读写隙 (11)第四章系统硬件设计 (12)4.1系统结构设计思路 (12)4.2系统框图 (13)4.3系统硬件设计 (13)第五章系统软件设计 (16)5.1 系统软件设计思路 (16)5.2系统软件设计 (21)第六章系统运行结果 (27)第七章结束语 (31)参考文献 (32)致谢 (33)第一章绪论1.1温度智能测控系统的研究背景与现状分析温度是一个和人们生活环境有着密切关系的物理量,也是一种在生产、科研、生活中需要测量和控制的重要物理量,是国际单位制七个基本量之一,同时它也是一种最基本的环境参数。
基于STM32的多点温度采集系统设计摘要:本文介绍了一种基于STM32的多点温度采集系统设计,该系统实现了对多个测点的温度采集,可广泛应用于物联网、环境监测、科学实验等领域。
文章首先介绍了该系统的硬件组成和软件设计,然后详细说明了各个模块的实现方法和细节,最后进行了测试和分析。
实验结果表明,该系统稳定可靠,具有较高的测量精度和较低的功耗,具有良好的应用前景。
关键词:STM32;温度采集;多点采集;物联网;环境监测一、概述随着物联网和环境监测技术的迅速发展,温度传感器越来越广泛地应用于各个领域。
温度采集系统可以帮助人们获取物理环境中的温度数据,从而提高环境安全性和生产效率,对于科学实验和工业制造行业尤其重要。
本文介绍了一种基于STM32的多点温度采集系统设计,该系统能够同时实时监测多个测点的温度数据,具有较高的精度和较低的功耗,可广泛应用于物联网、环境监测、科学实验等领域。
二、系统硬件设计该系统主要由STM32微控制器、多个DS18B20温度传感器、LCD显示屏、蜂鸣器、SD卡模块和电源模块等组成,如图1所示。
其中,STM32作为控制中心,与多个DS18B20温度传感器进行通信,获取温度数据,并将数据显示在LCD屏幕上。
电源模块采用锂电池供电,通过电源管理模块和充电管理模块对系统电源进行管理,以确保系统运行的稳定性和可靠性。
该系统的软件设计包括底层驱动程序和上层应用程序。
底层驱动程序主要实现与DS18B20温度传感器的通信,包括初始化DS18B20传感器、发送指令、读取温度数据等操作。
上层应用程序主要实现数据采集、处理、显示和存储等功能,包括读取传感器数据、计算温度值、显示温度值、存储温度数据等操作。
四、系统功能模块实现4.1 DS18B20传感器驱动程序DS18B20是一个数字式温度传感器,使用1-Wire总线方式进行通信,具有精度高、响应快、体积小等特点。
该系统采用STM32的GPIO接口模拟1-Wire总线方式与DS18B20传感器进行通信。
基于STM32的无线多点式温度测量系统下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by the editor. I hope that after you download them, they can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!In addition, our shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts, other materials and so on, want to know different data formats and writing methods, please pay attention!无线传感网络(WSN)是一种广泛应用于各种领域的技术,其能够实现对各种环境参数的实时监测和数据传输。
多点温度检测系统设计论文一、引言多点温度检测是一种常见的传感器应用技术,在工业控制、环境监测以及医疗领域都有重要的应用。
传统的温度检测系统通常只能测量一个点的温度,无法满足实际需求。
因此,设计一种多点温度检测系统,能够同时测量多个点的温度,对于提高温度检测的精度和效率具有重要的意义。
二、系统设计思想多点温度检测系统的设计思想是通过多个温度传感器进行温度测量,并将测量结果传输给中央控制单元进行数据分析和处理。
系统的设计需要考虑以下几个方面:传感器的选择和布置、通信方式的选择、数据处理算法以及系统的集成与控制。
1.传感器的选择和布置传感器的选择关系到整个系统的性能,常见的温度传感器有热电偶、热敏电阻、半导体温度传感器等。
在选择传感器时需要考虑温度范围、精度要求、响应时间等因素。
传感器的布置也需要考虑被测对象的特点,合理布置传感器可以提高温度测量的准确性。
2.通信方式的选择多点温度检测系统需要将多个传感器的测量结果传输到中央控制单元进行处理和分析。
通信方式的选择需要考虑传输距离、数据传输速率、抗干扰能力等因素。
常见的通信方式包括有线通信和无线通信,根据具体的应用场景选择合适的通信方式。
3.数据处理算法4.系统集成与控制三、系统实施方案在系统实施方案中,需要具体考虑系统的硬件设计和软件开发。
1.硬件设计硬件设计包括传感器的选择和布置、通信模块的选择和接口设计,以及中央控制单元的选取和接口设计。
根据实际需求进行硬件设计,确保系统的稳定性和可靠性。
2.软件开发软件开发包括系统的数据处理算法、通信协议的设计和编程,以及系统的控制逻辑和用户界面的设计。
根据具体的应用需求进行软件开发,确保系统的易用性和性能优化。
四、系统实验和测试在系统实验和测试中,需要对系统的性能进行评估和验证。
可以通过与已有的温度检测系统进行对比实验,评估多点温度检测系统的优劣势。
同时,还需要对系统的稳定性和可靠性进行测试,以确保系统在实际应用中的可用性。
目录摘要2 ABSTRACT 3 第一章绪论4 §1.1 系统背景4 §1.2 系统概述4 第二章方案论证5 §2.1 传感器部分5 §2.2 主控制部分6 §2.3 系统方案6 第三章硬件电路设计7 §3.1 电源以及看门狗电路7 §3.2 键盘以及显示电路9 §3.2 温度测试电路11 §3.3 串口通讯电路15 §3.4 整体电路16 第四章软件设计16 §4.1 概述16 §4.2 主程序方案16 §4.3 各模块子程序设计18 第五章系统调试20 §5.1 分步调试20 §5.2 统一调试20 结束语21 参考文献22 附录一:软件流程图24 附录二:电路原理图25 致谢27多点温度检测系统设计作者:谭诗炜(电信200201 班)指导老师:冯杰摘要DS18B20 是一种可组网的高精度数字式温度传感器,由于其具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠.本文结合实际使用经验,介绍了DS18B20 数字温度传感器在单片机下的硬件连接及软件编程,并给出了软件流程图.该系统由上位机和下位机两大部分组成.下位机实现温度的检测并提供标准RS232 通信接口芯片使用了ATMEL 公司的AT89C51 单片机和DALLAS 公司的DS18B20 数字温度传感器上位机部分使用了通用PC.该系统可应用于仓库测温、楼宇空调控制和生产过程监控等领域关键字:温度测量;单总线;数字温度传感器;单片机AbstractAs a kind of high-accuracy digital net temperature sensor,DS18 B20 can be used building a sensor net easily. It can also make the net simple and reliable with it's special 1-wire interface .This paper introduces the application of DS18B20 with single chip processor.The system is constituted by two parts the temperature measured part and displayed part. The temperature measured part has a RS232 interface. It used AT89C51 of ATMEL company and DS18B20 of DALLAS company .The displayed part uses PC .This system is applied in such domains as warehouse detecting temperature;air-conditioner controlling system in building and supervisory productive process etc.Key words:temperature measure;single bus;digital thermometer;single chip processor;第一章绪论§1.1 系统背景在工、农业生产和日常生活中,对温度的测量及控制占据着极其重要地位.首先让我们了解一下多点温度检测系统在各个方面的应用领域:消防电气的非破坏性温度检测,电力、电讯设备之过热故障预知检测,空调系统的温度检测,各类运输工具之组件的过热检测,保全与监视系统之应用,医疗与健诊的温度测试,化工、机械…等设备温度过热检测•温度检测系统应用十分广阔.§1.2 系统概述本设计运用主从分布式思想,由一台上位机(PC 微型计算机),下位机(单片机)多点温度数据采集,组成两级分布式多点温度测量的巡回检测系统.该系统采用RS-232 串行通讯标准,通过上位机(PC)控制下位机(单片机)进行现场温度采集•温度值既可以送回主控PC进行数据处理由显示器显示.也可以由下位机单独工作,实时显示当前各点的温度值,对各点进行控制. 下位机采用的是单片机基于数字温度传感器DS18B20 的系统.DS18B20 利用单总线的特点可以方便的实现多点温度的测量,轻松的组建传感器网络,系统的抗干扰性好、设计灵活、方便而且适合于在恶劣的环境下进行现场温度测量.本系统可以应用在大型工业及民用常温多点监测场合.如粮食仓储系统、楼宇自动化系统、温控制程生产线之温度影像检测、医疗与健诊的温度测试、空调系统的温度检测、石化、机械…等•第二章方案论证温度检测系统有则共同的特点:测量点多、环境复杂、布线分散、现场离监控室远等.若采用一般温度传感器采集温度信号,则需要设计信号调理电路、A/D 转换及相应的接口电路,才能把传感器输出的模拟信号转换成数字信号送到计算机去处理.这样,由于各种因素会造成检测系统较大的偏差;又因为检测环境复杂、测量点多、信号传输距离远及各种干扰的影响,会使检测系统的稳定性和可靠性下降.所以多点温度检测系统的设计的关键在于两部分:温度传感器的选择和主控单元的设计.温度传感器应用范围广泛、使用数量庞大,也高居各类传感器之首.§2.1 传感器部分采用热敏电阻,可满足40 摄氏度至90摄氏度测量范围,但热敏电阻精度、重复性、可靠性较差,对于检测1 摄氏度的信号是不适用的.而且在温度测量系统中,采用单片温度传感器,比如AD590,LM35 等.但这些芯片输出的都是模拟信号,必须经过A/D 转换后才能送给计算机,这样就使得测温装置的结构较复杂.另外,这种测温装置的一根线上只能挂一个传感器,不能进行多点测量.即使能实现,也要用到复杂的算法,一定程度上也增加了软件实现的难度.方案二:在多点测温系统中,传统的测温方法是将模拟信号远距离采样进行AD 转换,而为了获得较高的测温精度,就必须采用措施解决由长线传输,多点测量切换及放大电路零点漂移等造成的误差补偿问题.采用数字温度芯片DS18B20 测量温度,输出信号全数字化.便于单片机处理及控制,省去传统的测温方法的很多外围电路.且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好.在0—100 摄氏度时,最大线形偏差小于1摄氏度.DS18B20 的最大特点之一采用了单总线的数据传输,由数字温度计DS1820 和微控制器AT89C51 构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接.这样,测温系统的结构就比较简单,体积也不大且由于AT89C51可以带多个DSB1820,因此可以非常容易实现多点测量•轻松的组建传感器网络.采用温度芯片DS18B20 测量温度,可以体现系统芯片化这个趋势•部分功能电路的集成,使总体电路更简洁,搭建电路和焊接电路时更快•而且,集成块的使用,有效地避免外界的干扰,提高测量电路的精确度.所以集成芯片的使用将成为电路发展的一种趋势.本方案应用这一温度芯片,也是顺应这一趋势.§2.2 主控制部分此方案采用PC机实现.它可在线编程,可在线仿真的功能,这让调试变得方便•且人机交互友好但是PC机输出信号不能直接与DS18B20通信•需要通过RS232电平转换兼容,硬件的合成在线调试,较为繁琐,很不简便.而且在一些环境比较恶劣的场合,PC 机的体积大,携带安装不方便,性能不稳定,给工程带来很多麻烦!此方案采用AT89C51 八位单片机实现•单片机软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制•而且体积小,硬件实现简单,安装方便•既可以单独对多DS18B20 控制工作,还可以与PC 机通信•运用主从分布式思想,由一台上位机(PC 微型计算机),下位机(单片机)多点温度数据采集,组成两级分布式多点温度测量的巡回检测系统,实现远程控制•另外AT89C51 在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟•§•3系统方案综上所述,温度传感器以及主控部分都采用第二方案•系统采用针对传统温度测温系统测温点少,系统兼容性及扩展性较差的特点,运用分布式通讯的思想•设计一种可以用于大规模多点温度测量的巡回检测系统•该系统采用的是RS-232 串行通讯的标准,通过下位机(单片机)进行现场的温度采集,温度数据既可以由下位机模块实时显示,也可以送回上位机进行数据处理,具有巡检速度快,扩展性好,成本低的特点•实际采用电路方案如下图:第三章硬件电路设计系统底层电路的功能主要包括:多点温度测试及其相关处理,实时显示温度信息,与上位机通讯传输温度数据•硬件设计主要包括以下几个模块:电源以及看门狗电路,键盘以及显示电路,温度测试电路,串口通讯电路•下面对电路分模块进行说明§3.1电源以及看门狗电路a. 电源电路因为单片机工作电源为+5V,且底层电路功耗很小•采用7805三端稳压片即可满足要求• 具体电路图如下:b. 看门狗电路考虑到底层电路板的工作环境相对恶劣,单片机会受到周围环境的干扰,而出现程序跑飞,死机…等一些不可预知的不正常工作现象•工作人员也不可能到现场对单片机重起,本设计为单片机电路添加一个外部看门狗电路•定时查询单片机的工作状态,一但发现异常即对单片机延时重起•保证系统安全可靠的运行•NE56604能为多种微处理器和逻辑系统提供复位信号,其门限电平为4.2V •在电源突然掉电或电源电压下降到低于门限电平时.NE56604将产生精确的复位信号.NE56604内置一个看门狗定时器,用于监控微处理器,以确保微处理器的正常运行•看门狗能产生一个系统复位信号用来终止任何由于微处理器故障而引发的不正常的系统操作.NE56604 的看门狗的监控周期为100mS(典型值).特性.正负双逻辑输出的有效复位信号..精准的门限电平监测..上电复位内部延时..可利用外部电阻调节的内部看门狗定时器..看门狗定时器的监控周期为100mS 典型值..VCC=0.8VDC 时产生有效的复位信号典型值. .仅需很少的外围元件.具体电路图如下:§3.2 键盘以及显示电路键盘电路单片机应用系统中除了复位按键有专门的复位电路,以及专一的复位功能外,其它的按键或键盘都是以开关状态来设置控制功能或输入数据.键盘有编码和非编码两种.非编码键盘硬件电路极为简单.故本系统采用拨码开关来控制.具体电路如下:A. 开关状态的可靠输入键开关状态的可靠输入有两种解决方法.一种是软件去抖动:它是在检测到有键按下时,执行一个10ms 的延时程序后,再确认该键电平是否仍保持闭合状态电平,如保持闭合状态电平则确认为真正键按下状态,从而消除了抖动影响.另一种为硬件去抖动:即为按键添加一个锁存器.两种方法都简单易行,本设计采用的是硬件去抖.B. 对按键进行编码给定键值或给出键号对于按键无论有无编码,以及采用什么编码,最后都要转换成为与累加器中数值相对应的键值以实现按键功能程序的散转转移.为使编码间隔小, 散转入口地址安排方便, 常采用依次序排列的键号.拨码开关值含义0000 实时显示通道一的温度值0001 实时显示通道二的温度值0010 实时显示通道三的温度值0011 实时显示通道四的温度值0100 实时显示通道五的温度值0101 实时显示通道六的温度值0110 实时显示通道七的温度值0111 实时显示通道八的温度值1*** 自动循环显示所有通道的温度C. 选择键盘监测方法对是否有键按下的信息输入方式有中断方式与查询方式两种.本设计采用的查询法,即在在CPU 空闲时调用键盘扫描子程序.温度显示电路设计采用的是共阴极七段数码管.显示方式有动态扫描和静态显示,两种方法在本设计中皆可由于静态扫描要用到多片串入并出芯片,考虑到电路板成本计算.本人采用是节约硬件资源的动态扫描方式.即用两块芯片就可以完成显示功能.显示数据由4511 译码器输出,ULN2003 为位驱动扫描信号.具体电路图如下:§3.2 温度测试电路这里我们用到温度芯片DS18B20.DS18B20 是DALLAS 公司生产的一线式数字温度传感器, 具有3引脚TO-92小体积封装形式•测温分辨率可达0.0625C,被测温度用符号扩展的16位数字量方式串行输出.其工作电源既可在远端引入,也可采用寄生电源方式产生.CPU 只需一根端口线就能与诸多DS18B20 通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路•DS18B20支持一线总线”接口,测量温度范围为-55 C~+125°C,在-10~+85 °范围内精度为±).5 °现场温度直接以一线总线”的数字方式传输,大大提高了系统的抗干扰性•适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等•DS18B20 内部结构(1) DS18B20 的内部结构如下图所示•DS18B20 内部结构图DS18B20 有4 个主要的数据部件:①64位激光ROM.64位激光ROM从高位到低位依次为8位CRC、48位序列号和8位家族代码(28H) 组成•②温度灵敏元件•③非易失性温度报警触发器TH和TL.可通过软件写入用户报警上下限值.④配置寄存器•配置寄存器为高速暂存存储器中的第五个字节•DS18B20 在0 工作时按此寄存器中的分辨率将温度转换成相应精度的数值,其各位定义如图所示•TM R1 R0 1 1 1 1 1MSB DS18B20 配置寄存器结构图LSB其中,TM:测试模式标志位,出厂时被写入0,不能改变;R0、R1:温度计分辨率设置位,其对应四种分辨率如下表所列,出厂时R0、R1置为缺省值:R0=1,R仁1(即12位分辨率),用户可根据需要改写配置寄存器以获得合适的分辨率• 配置寄存器与分辨率关系表:R0 R1 温度计分辨率/bit 最大转换时间/us0 0 9 93.750 1 10 187.51 0 11 3751 1 12 750(2) 高速暂存存储器高速暂存存储器由9个字节组成,其分配如下图所示.当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0 和第1 个字节.单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式如图所示.对应的温度计算:当符号位S=0时, 直接将二进制位转换为十进制;当S=1 时,先将补码变为原码,再计算十进制值.温度低位温度高位TH TL 配置保留保留保留8 位CRCLSB DS18B20 存储器映像图MSB温度值格式图DS18B20 温度数据表:23 22 21 20 2-1 2-2 2-3 2-4MSB LSBS S S S S 26 25 24典型对应的温度值表:温度/c二进制表示十六进制表示+125+25.0625+10.125+0.5-0.5-10.125-25.0625-55 00000111 1101000000000001 1001000100000000 1010001000000000 0000100000000000 0000000011111111 1111100011111111 0101111011111110 0110111111111100 10010000 07D0H0191H00A2H0008H0000HFFF8HFF5EHFE6FHFC90HDS18B20 最大的特点是单总线数据传输方式,DS18B20 的数据I/O 均由同一条线来完成. 硬件连接电路如下图:本系统为多点温度测试.DS18B20 采用外部供电方式,理论上可以在一根数据总线上挂256 个DS18B20, 但时间应用中发现,如果挂接25 个以上的DS18B20 仍旧有可能产生功耗问题.另外单总线长度也不宜超过80M, 否则也会影响到数据的传输.在这种情况下我们可以采用分组的方式,用单片机的多个I/O 来驱动多路DS18B20. 在实际应用中还可以使用一个MOSFET 将I/O 口线直接和电源相连,起到上拉的作用.对DS18B20 的设计, 需要注意以下问题(1) 对硬件结构简单的单线数字温度传感器DS18B20 进行操作,需要用较为复杂的程序完成.编制程序时必须严格按芯片数据手册提供的有关操作顺序进行,读、写时间片程序要严格按要求编写.尤其在使用DS18B20 的高测温分辨力时,对时序及电气特性参数要求更高.(2) 有多个测温点时,应考虑系统能实现传感器出错自动指示,进行自动DS18B20 序列号和自动排序,以减少调试和维护工作量.(3) 测温电缆线建议采用屏蔽4 芯双绞线,其中一对线接地线与信号线,另一组接VCC 和地线, 屏蔽层在源端单点接地.DS18B20 在三线制应用时,应将其三线焊接牢固;在两线应用时,应将VCC与GND 接在一起,焊接牢固若VCC脱开未接传感器只送85.0 C的温度值.⑷实际应用时,要注意单线的驱动能力,不能挂接过多的DS18B20,同时还应注意最远接线距离.另外还应根据实际情况选择其接线拓扑结构.§3.3 串口通讯电路AT89C51 有一个全双工的串行通讯口,所以单片机和电脑之间可以方便地进行串口通讯.进行串行通讯时要满足一定的条件,比如电脑的串口是RS232 电平的,而单片机的串口是TTL 电平的,两者之间必须有一个电平转换电路,我们采用了专用芯片MAX232 进行转换,虽然也可以用几个三极管进行模拟转换,但是还是用专用芯片更简单可靠.具体电路如下:我们采用了三线制连接串口,也就是说和电脑的9 针串口只连接其中的3 根线:第5 脚的GND 、第2 脚的RXD 、第3 脚的TXD. 这是最简单的连接方法,但是对本设计来说已经足够使用了,电路如上图所示.通信线采用交叉接法,即两者信号线对应成为R—T,T—R. 具体连接电路如下:§3.4 整体电路见附件二(电路原理图)第四章软件设计§4.1 概述整个系统的功能是由硬件电路配合软件来实现的,当硬件基本定型后,软件的功能也就基本定下来了.从软件的功能不同可分为两大类:一是监控软件(主程序),它是整个控制系统的核心专门用来协调各执行模块和操作者的关系.二是执行软件(子程序),它是用来完成各种实质性的功能如测量、计算、显示、通讯等.每一个执行软件也就是一个小的功能执行模块.这里将各执行模块一一列出,并为每一个执行模块进行功能定义和接口定义.各执行模块规划好后就可以规划监控程序了.首先要根据系统的总体功能和键盘设置选择一种最合适的监控程序结构,然后根据实时性的要求,合理地安排监控软件和各执行模块之间地调度关系.§4.2 主程序方案主程序调用了 4 个子程序,分别是数码管显示程序、键盘扫描以及按键处理程序、温度测试程序、中断控制程序、单片机与PC机串口通讯程序.键盘扫描电路及按键处理程序:实现键盘的输入按键的识别及相关处理温度测试程序: 对温度芯片送过来的数据进行处理,进行判断和显示数码管显示程序:向数码的显示送数,控制系统的显示部分. 中断控制程序: 实现循环显示功能.串口通讯程序:实现PC 机与单片机通讯,将温度数据传送给PC 机.将各个功能程序以子程序的形式写好,当写主程序的时候,只需要调用子程序,然后在寄存器的分配上作一下调整,消除寄存器冲突和I/O 冲突即可.程序应该尽可能多的使用调用指令代替跳转指令.因为跳转指令使得程序难以看懂各程序段之间的结构关系.而调用指令则不同,调用指令使得程序结构清晰,无论是修改还是维护都比较方便.将功能程序段写成子程序的形式,除了方便调用之外,还有一个好处那就是以后写程序的时候如果要用到, 就可以直接调用这个单元功能模块.主程序流程图如右图:§4.3 各模块子程序设计下面对主要几个子程序的流程图做介绍:(1) 温度测试子程序设计见附录一:温度测试子程序流程图(2) 中断控制程序设计如右图:(3) 串口通信程序设计本次通讯中,测控系统分位上位机和下位机之间的通信,系统中单片机负责数据采集、处理和控制,上位机进行现场可视化检测,通信协议采用半双工异步串行通信方式,通过RS232 的RTS 信号进行收发转换,传输数据采用二进制数据,上位机与下位机之间采用主从式通讯.本人采用的VB环境下PC机与单片机之间实现串行通讯的软硬件方案.VB是Microsoft公司推出的Windows 应用程序开发工具,因其具有界面友好,编程简便等优点而受到广泛的使用,而且Visual Basic 6.0 版本带有专门实现串行通讯的MSCOMM 控件.MSComm控件串口具有完善的串口数据的发送和接收功能•通过此控件,PC机可以利用串行口与其它设备实现轻松连接,简单高效地实现设备之间的通讯.此控件的事件响应有两种处理方式.事件驱动方式:由MSComm 控件的OnComm 事件捕获并处理通讯错误及事件;查询方式:通过检查CommEvent 属性的值来判断事件和错误.1) MSComm 控件的主要属性和方法a. CommPort:设置或返回串行端口号,其取值范围为1—99,缺省为1b. Sett ing:设置或返回串行端口的波特率、奇偶校验位、数据位数、停止位c. PortOpe n:打开或关闭串行端口d. RThreshold: 该属性为一阀值,它确定当接收缓冲区内字节个数达到或超过该值后就产生MSComml-OnComm 事件.e. In put :从接收缓冲区移走一串字符.f. Output: 向发送缓冲区传送一字符串. 软件流程图如下:单片机程序流程图PC 通讯程序流程图参数设定:通信端口选择COM1,波特率设定为1200B/SmPort=1MSComm.Setting= “1200, n, 8, 1 ”.START: MOV SP,#60HMOV TMOD,#20HMOV TH1,#0E6HMOV TL1,#0E6H ;1200B/S,晶振为12MHZMOV PCON,#00HMOV SCON,#50HSETB TR1第五章系统调试§5.1 分步调试1 、测试环境及工具测试温度:0~100摄氏度.(模拟多点不同温度值环境)测试仪器及软件:数字万用表,温度计0~100 摄氏度,串口调试助手测试方法:目测.2、测试方法使系统运行,观察系统硬件检测是否正常(包括单片机最小系统,键盘电路,显示电路,温度测试电路等).系统自带测试表格数据,观察显示数据是否相符合即可. 采用温度传感器和温度计同时测量多点水温变化情况(取温度值不同的多点), 目测显示电路是否正常.并记录各点温度值,与实际温度值比较,得出系统的温度指标. 使用串口调试助手与单片机通讯,观察单片机与串口之间传输数据正确否.3、测试结果分析自检正常,各点温度显示正常,串口传输数据正确.因为芯片是塑料封装,所以对温度的感应灵敏度不是相当高,需要一个很短的时间才能达到稳定.§5.2 统一调试将硬件及软件结合起来进行系统的统一调试.实现PC 机与单片机通讯,两者可以实时更新显示各点温度值.结束语AT89C51的时钟为12M,I/O 口可达32个,高的时钟频率和丰富的I/O,都为实现电路功能提供了非常有利的条件.同时也AT89C51 内含4KB FLASH ROM, 开发环境友好,易用,方便,大大加快本系统设计开发.拨码开关的使用,使操作更为简洁,易懂.实时显示电路的设计,使温度信息更迅速,直观地发布.本制作的设计中使用了传感器的只是插座电路,因此,该系统的可扩展性很强.整个系统硬件简单、可靠,系统成本低.致此本人设计基本完成了预期的目标,系统在硬件自动测试,键盘操作,实时显示方面做的比较好.但是由于时间仓促、条件有限,设计成果并不是很完美,还存在下面问题:串口通讯不稳定未对温度数值统计处理以及存储.我准备在今后的工作过程中进一步完善此设计.参考文献[1] .贾振国.DS1820及高精度温度测量的实现[J].电子技术应用,2000(1):58 - 59.[2] . 余永权. 单片机原理及应用. 北京:电子工业出版社, 1997[3] . 邦田. 电子电路实用抗干扰技术. 北京: 人民邮电出版社,1994[4] . Dallas semiconductor inc,ds18b20 programmable resolution 1 —wiredigital thermometer 2001[Z] .[5] . 曲喜贵. 电子元件材料手册[ M]. 北京:电子工业出版社,1989.422-430.[6] . 黄贤武,郑筱霞,曲波等. 传感器实际应用电路设计[M]. 成都:电子科技大学出版社,1997.4-10.[7] . 刘君华. 智能传感器系统[M] . 西安:西安电子科技大学出版社,1999.[8] . 余永权. Flash 单片机原理及应用[M]. 北京:电子工业出版社,1997.[9] . 邦田. 电子电路实用抗干扰技术[M] . 北京:人民邮电出版社,1994.[10] . 周云波. 由DS18B20 单线数字温度计构成的单线多点温度测量系统. 电子技术应用,1996(2):15- 20.[11] . 吉鹏,马云峰等. 微机原理与接口技术[M]. 北京:高等教育出版社,2001.[12] . 振国. DS1820 及高精度温度测量的实现[J] . 电子技术应用,2000 (1) .[13] . 东耀,汪仁煌. 数字温度传感器在仓库温度检测系统的应用[J]. 传感器世界,2001(12):30- 33.[14] . 月霞,孙传友. DS18B20 硬件连接及软件编程[J]. 传感器世界,2001(12):25- 29.[15] . 一线数字温度传感器资料[M]. 武汉:武汉力源电子有限公司,1996.[16] . 贤武,郑霞,曲波. 传感器实际应用电路设计[M]. 成都:电子科技大学出版社,1997.[17] . 伟正. 单线数字温度传感器的原理与应用[1]. 电子技术应用,2000,6.66-68[18] . DALLAS 公司.DS18B20 数据手册[Z][19] . 周月霞,孙传友. DS18B20 硬件连接及软件编程[J]. 传感器世界,2001,(12).[20] . 单线数字温度传感器资料[M]. 武汉:武汉力源电子有限公司,1996.[21] . 贾东耀,汪仁煌. 数字温度传感器在仓库温度检测系统的应用[J]. 传感器世界,2001(12).[22] . 余永权. ATMEL 89 系列单片机应用技术[M]. 北京:北京航空航天大学出版社2002.[23] . 胡汉才. 单片机原理及系统设计[M]. 北京:清华大学出版社,2002[24] . 李更祥. 单总线数字式智能型温度传感器在测控领域中的应用[J]. 计算机自动测量与控制,1999,7(3):51-53.[25] . 忠梅. 单片机的C 语言应用程序设计[M]. 北京:北京航空航天大学出版社,1997。
2023年 / 第8期 物联网技术250 引 言在很多场合需要进行多点温度数据测量和远程数据传输,因而需要设计一个远程多点温度测量系统,包含多点温度测量和远程数据传输两个方面。
在多点温度测量时,可以布置若干个终端节点,每个终端节点测量温度数据后,通过无线模块发送到中心节点,中心节点接收各终端节点温度数据,实现了在无线模块有效传输距离范围内的多点温度测量数据采集。
早期无线模块大多选择ZigBee 或蓝牙模块[1-2],但这些模块通信距离近,需要进行深度组网,导致成本增加,维护难度变大[3]。
对此,可采用LoRa 模块进行多点数据采集。
LoRa 模块因具备低功耗、远距离、可靠性高的优势[4-6]而得到广泛应用。
中心节点的LoRa 模块与各个终端节点的LoRa 模块可采用透明传输模式,当中心节点的LoRa 模块接收到数据后,将数据传输至单片机,配合WiFi 模块,连接阿里云物联网平台,实现数据的远程访问,用户在PC 和手机端可以远程监测多点温度数据,也可以下发指令至中心节点,实现其他预警等控制功能。
1 系统整体设计远程多点温度测量系统总体设计如图1所示,包括终端节点和中心节点两部分。
终端节点采用单片机STM32F103C8T6读取温度传感器数据,通过LoRa 模块传输至中心节点。
中心节点采用单片机STM32F103RCT6,其中串口1连接LoRa 模块,串口2连接WiFi 模块。
中心节点从LoRa 模块接收各个终端节点的温度测量数据,再通过WiFi 连接至阿里云平台并发送数据,实现远程多点温度测量。
中心节点接入了LCD 显示器,显示接收的温度数据或其他信息。
在I 2C 总线上接入了时钟芯片和存储芯片,用以显示系统实时运行时间和存储相关参数,可以进一步拓展多种控制功能。
图1 系统总体设计结构2 系统硬件设计2.1 终端节点硬件设计图2是终端节点硬件电路设计,其中采用STM32F103C8T6单片机作为主控芯片,在PA0接入了DS18B20温度传感器,这是一款单总线传感器,具备体积小、基于阿里云和LoRa 的远程多点温度测量系统设计苏格诺,刘烨楠,刘静波(南京工程学院,江苏 南京 211167)摘 要:为实现多点温度测量,并把接收的各节点温度数据远程发送至物联网云平台,设计了采用LoRa 组网模块采集多点温度数据,通过阿里云飞燕平台远程接收数据的温度测量系统。
目录摘要 (I)Abstract ............................................................................................................ I I第一章绪论 (1)1.1 课题背景................................................................... 错误!未定义书签。
1.2本课题研究意义 ........................................................ 错误!未定义书签。
1.3本课题的任务 ............................................................ 错误!未定义书签。
1.4系统整体目标 ............................................................ 错误!未定义书签。
第二章方案论证比较与选择 (3)2.1 引言 (3)2.2方案设计 (3)2.2.1 设计方案一 (3)2.2.2 设计方案二 (3)2.2.3 设计方案三 (3)2.3 方案的比较与选择 (4)2.4 方案的阐述与论证 (4)第三章................................................................................................ 硬件设计6 3.1 温度传感器 . (6)3.1.1 温度传感器选用细则 (6)3.1.2 温度传感器DS18B20 (7)3.2.单片机系统设计 (13)3.3 显示电路设计 (16)3.4 键盘电路设计 (17)3.5 报警电路设计 (19)3.6 通信模块设计 (19)3.6.1 RS-232接口简介 (19)3.6.2 MAX232芯片简介 (20)3.6.3 PC机与单片机的串行通信接口电路 (21)第四章................................................................................................ 软件设计22 4.1 软件开发工具的选择 . (22)4.2 系统软件设计的一般原则 (22)4..3系统软件设计的一般步骤 (23)4.4 软件实现 (23)4.4.1系统主程序流程图 (23)4.4.2 传感器程序设计 (24)4.4.3 显示程序设计 (29)4.4.4 键盘程序设计 (31)4.4.5 报警程序设计 (33)4.4.6 通信模块程序设计 (33)第五章调试与小结 (35)致谢 (36)参考文献 (37)附录 (38)系统电路图 (38)系统程序 (39)摘要随着社会的进步和工业技术的发展,人们越来越重视温度因素,许多产品对温度范围要求严格,而目前市场上普遍存在的温度检测仪器大都是单点测量,同时有温度信息传递不及时、精度不够的缺点,不利于工业控制者根据温度变化及时做出决定。
在这样的形式下,开发一种能够同时测量多点,并且实时性高、精度高,能够综合处理多点温度信息的测量系统就很有必要。
本课题以AT89C51单片机系统为核心,能对多点的温度进行实时巡检。
DS18B20是一种可组网的高精度数字式温度传感器,由于其具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠。
本文结合实际使用经验,介绍了DS18B20数字温度传感器在单片机下的硬件连接及软件编程,并给出了软件流程图。
关键词:温度测量;单总线;数字温度传感器;单片机AbstractAs the industry and the society developing, the temperature becomes more and more important and a lot of products are sensitive to temperature. However, temperature measuring apparatus in the market now only can check and measure the temperature of one point, at the same time, the temperature information is not real time and the precision is low. It takes a great of troubles for the industry-controllers to make decision .In this situation, design and implement one applicable system which can watch measure and control the temperature and the measuring results is real time and the precision is great is more essential. In order to meeting this application, this paper talk about The Multiple-Point’s temperature Measuring System.This system based on single chip computer, can inspect and control multiple temperatures in real time. As a kind of high-accuracy digital net temperature sensor,DS18 B20 can be used building a sensor net easily. It can also make the net simple and reliable with it's special 1-wire interface .This paper introduces the application of DS18B20 with single chip processor.Key words:temperature measure;single bus;digital thermometer;single chip processor;第一章绪论1.1课题的背景及其意义二十一世纪是科技高速发展的信息时代,电子技术、微型单片机技术的应用更是空前广泛,伴随着科学技术和生产的不断发展,需要对各种参数进行温度测量。
因此温度一词在生产生活之中出现的频率日益增多,与之相对应的,温度控制和测量也成为了生活生产中频繁使用的词语,同时它们在各行各业中也发挥着重要的作用。
如在日趋发达的工业之中,利用测量与控制温度来保证生产的正常运行。
在农业中,用于保证蔬菜大棚的恒温保产等。
温度是表征物体冷热程度的物理量,温度测量则是工农业生产过程中一个很重要而普遍的参数。
温度的测量及控制对保证产品质量、提高生产效率、节约能源、生产安全、促进国民经济的发展起到非常重要的作用。
由于温度测量的普遍性,温度传感器的数量在各种传感器中居首位。
而且随着科学技术和生产的不断发展,温度传感器的种类还是在不断增加丰富来满足生产生活中的需要。
在单片机温度测量系统中的关键是测量温度、控制温度和保持温度,温度测量是工业对象中主要的被控参数之一。
单片机温度测量则是对温度进行有效的测量并且能够在工业生产中得到了广泛的应用,尤其在电力工程、化工生产、机械制造、冶金工业等重要工业领域中,担负着重要的测量任务。
在日常生活中,也可广泛实用于地热、空调器、电加热器等各种家庭室温测量及工业设备温度测量场合。
但温度是一个模拟量,如果采用适当的技术和元件,将模拟的温度量转化为数字量虽不困难,但电路较复杂,成本较高。
1.2课题研究的内容及要求本次的毕业设计的题目是多点温度监测控制系统设计。
它是多种技术知识的结合,不仅涉及到软件与硬件的设计,而且还将应用电子技术与单片机的应用技术有机结合,使其具有精度高、测量误差小、稳定性好等特点。
仿真的设计技术和实际要求的巧妙结合,使其具备了操作便捷、系统稳定性好等特点,能为它在其它领域的广泛应用打下良好的基础。
因为经过我们调查发现许多应用场合原来就有测温控温仪器,只是随着对生产质量与生产需要的要求在不断地提高,以往的那些测温控温的仪器根本不能满足现在的要求。
其中,有部分应用场合对精度提高的幅度要求也不是特别高。
因此,为了提高性价比,我所设计的系统提出在原有系统的基础上进行一些简单的改良,以此为出发点,主要阐述室温自动控制系统的实现方法。
第二章方案论证比较与选择2.1 引言温度测量的方案有很多种,可以采用传统的分立式传感器、模拟集成传感器以及新兴的智能型传感器。
对于控制系统可以采用计算机、单片机等。
2.2方案设计2.2.1设计方案一采用模拟分立元件,如电容、电感或晶体管等非线形元件,实现多点温度的测量及显示,该方案设计电路简单易懂,操作简单,且价格便宜,但采用分立元件分散性大,不便于集成数字化,而且测量误差大。
2.2.2 设计方案二本方案采用AT89C51单片机为核心,通过温度传感器AD590采集温度信号,经信号放大器放大后,送到A/D转换芯片,最终经单片机检测处理温度信号。
图2.1 方案二的框图如图2.1,采用该方案技术已经成熟,AD转换电路设计较烦琐,而且使用AD590进行温度检测必须对冷端进行补偿,以减小误差。
2.2.3设计方案三本设计运用主从分布式思想,由一台上位机(PC微型计算机),下位机(单片机)多点温度数据采集,组成两级分布式多点温度测量的巡回检测系统。
该系统采用 RS-232串行通讯标准,通过上位机(PC)控制下位机(单片机)进行现场温度采集。
温度值既可以送回主控PC进行数据处理,由显示器显示。
也可以由下位机单独工作,实时显示当前各点的温度值,对各点进行控制。
下位机采用的是单片机基于数字温度传感器DS18B20的系统。
DS18B20利用单总线的特点可以方便的实现多点温度的测量,轻松的组建传感器网络,系统的抗干扰性好、设计灵活、方便,而且适合于在恶劣的环境下进行现场温度测量。
本系统可以应用在大型工业及民用常温多点监测场合。
如粮食仓储系统、楼宇自动化系统、温控制程生产线之温度影像检测、医疗与健诊的温度测试、空调系统的温度检测、石化、机械…等。