基于AT89C52单片机的温控系统设计与实现论文_第1页
基于AT89C52单片机的温控系统设计与实现论文_第2页
基于AT89C52单片机的温控系统设计与实现论文_第3页
基于AT89C52单片机的温控系统设计与实现论文_第4页
基于AT89C52单片机的温控系统设计与实现论文_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 学号: *毕业设计(论文) 题目:基于AT89C52单片机的温控系统设 计与实现院(部)系 所 学 专 业电子信息科学与技术年级、班级2012级本科2班完成人姓名指导教师姓名专业技术职称* 讲师 2016年 6 月 10 日论文原创性保证书我保证所提交的论文都是自己独立完成,如有抄袭、剽窃、雷同等现象,愿承担相应后果,接受学校的处理。专业: 电子信息科学与技术 班级: 2012级2班 签名: 年 月 日*本科毕业设计(论文)摘要本文介绍了基于AT89C52单片机和DS18B20数字传感器组成的温度控制系统,实现了实时温度测量、显示、设置和查询温度值的功能。该系统主要是由以AT89C52单片机

2、为核心实现的最小系统、DS18B20数字温度传感器实时温度采集电路、数码管对实时温度值显示电路、蜂鸣器和发光二极管构成的警报系统以及设置温度值的行列式键盘电路组成。通过添加多个DS18B20数字温度传感器实现多点控测量,被广泛应用于电力工业、煤矿、森林、高层建筑等场所,也可应用于环境恶劣的工业控制现场和民用产品。本文主要给出系统的硬件框架、程序流程图、以及Protel原理图,并通过硬件控制平台实现所设计功能。关键词:单片机;温控系统;温度传感器;测量系统AbstractThe temperature control system composed of microcontroller AT89

3、C52 and digital sensor DS18B20 is introduced in this paper, which achieves functions of real-time temperature measurement, display, setting and query. The system is composed of the smallest system with microcontroller AT89C52 as the core, real-time temperature acquisition circuit of digital sensor D

4、S18B20, real-time digital temperature display circuit composed of pairs of digital tubes, alarm system consisting of buzzer and the light emitting diode and the determinant keyboard circuit for temperature setting. It is widely applied in power industry, coal, forests, high-rise buildings and other

5、places to realize multi-point control measure by adding multiple DS18B20 digital temperature sensors, also it can be applied in harsh industrial control field and in civilian products. Hardware framework, the program flowcharts, and Protel schematics of the temperature control system are included in

6、 this paper and the designed functions are achieved through hardware control platform.Keywords: microcontroller; temperature control system; temperature sensor; measuring system目录第一章 绪论11.1课题研究背景11.2单片机及温控系统研究现状11.3 研究意义1第二章 系统的目标及设计方案32.1研究的内容32.2研究的预期目标32.3总体设计构想3第三章 系统硬件的设计53.1单片机电路设计53.1.1最小系统电路

7、设计53.1.2DS18B20温度传感器的电路设计53.1.3 显示电路设计63.1.4 按键电路设计63.1.5 警报电路设计7第四章 系统软件设计84.1主程序模块设计84.2 读温度值模块84.2.1:读温度值模块流程图94.2.2:DS18B20初始化程序流程图94.2.3:DS18B20写字节和读字节程序流程图104.3 中断模块114.4 温度查询模块124.5 温度设定、报警模块134.6 数码管驱动模块14第五章 系统调试165.1 硬件系统调试165.1.1硬件调试主要分为两步165.2 软件系统的调试165.2.1软件调试主要分为两步看165.3调试中遇到的问题16第六章

8、总结17致谢18参考文献19第一章绪论第1章 绪论1.1 课题研究背景温度,我们每天都要关注的一个环境参数,也是现代工业生产中关注度比较高的被控参数之一。早期的温度控制主要应用于工厂的时间生产中,起到实时温度的采集,以便提高生产效率和产品质量。比如在冶金、钢铁、石化、水泥、玻璃、医药、电子系统等行业,都必须考虑温度对其生产或应用的影响。随着科学技术的不断发展,人们的生活水平不断提高,温度控制系统在民用方面也得到了极大的应用,比如酒店客房的温度控制,大棚蔬菜种植中温度的控制,以及在空调、热水器、冰箱等家用电器上对温度的控制。由于温度的控制对工业生产和民用产品都有极大的影响,导致温度传感器在这两个

9、行业都得到了广泛的应用,并且促使传感器朝着灵敏性提高,价格降低,产量化生产等特点发展。传感器主要经历了三个发展阶段:模拟集成温度传感器、模拟集成温度控制器、智能温度传感器。现如今温度传感器朝着高精度、多功能、总线标准化、高可靠性及安全性迅速发展。自从1976年intel公司推出第一代单片机以来,经历了从4位、8位发展到16位、32位单片机。单片机主要应用于各行各业的控制体统的开发。具有低成本、功耗低、控制功能多、集成度高、灵活组装等特点。在温度采集与显示系统中,用到自动检测与传感器技术、单片机原理及应用、单片机接口技术、模拟电子技术、数字电子技术等方面的大量知识。1.2 单片机及温控系统研究现

10、状温度采集和呈现,纵观国内外数据采集领域正在发生着重大变化。首先,多点控分布式智能数据采集系统正在迎合人们的发展需求快速发展,提高数据的精准度减少不必要的误差。其次,总线融合性数据采集插件和个人电脑兼容的数据采集系统逐年增加,为数据的采集更加的方便和精准。随着多点控测温在各个领域的应用越来越普遍,致使数据采集设备开始同控制设备相结合,以及向移动端发展的趋势,为工程师测取温度提高了效率和便利,实现在指定的距离范围内就可以接受到采集的数据。据统计,我国的单片机年使用量为1-3亿片,并且每年以大概16%的速度增加,但是相对于世界市场,我国的占有率还不到1%,由于沿海地区的玩具厂、电子厂、家电厂商等多

11、数使用到单片机作为控制芯片,并不断的往内陆发展的趋势,因此学习和研究单片机在我国还是有着广阔的发展前景。1.3 研究意义本文的研究主要是通过温度传感器和单片机结合实现的温度控制系统,其意义不仅可以提高对某地的温度进行实时测取和监控,达到温度的实时回传和在数码管上显示出来的功能,还可以通过自己设定温度限定值来控制温度的最值问题,以及查看多个存储的温度值来计算平均值,减少不必要的误差,使结果更加的有说服力。此次研究为多点控测温系统的搭建和实现提供了基础。如果可以大力推广,就可以研发移动客户端的开发,本文为移动端的开发提供了部分接口,通过移动客户端的操作不仅仅可以减少抄表人员的劳动量以及提高采集和计

12、算的速率,还可以减少硬件的成本开销。19第二章系统的目标及设计方案第2章 系统的目标及设计方案2.1 研究的内容本设计以51单片机为设计开发平台,主要由AT89C52单片机、DS18B20数字温度传感器、数码管、按键和警报电路组成。使用DS18B20可以直接将温度转化成串行数字信号提供给处理器,由于每片DS18B20都有内部存储器用来存储数据,以便在扩展成大型温控系统中挂载多片DS18B20芯片。从DS18B20读写数据只需要一根总线,该总线本身也可以向DS18B20供电,不需要额外的电源。利用本次的设计主要实现温度采集、温度显示、温度设定和温度的保存及查询等功能。2.2 研究的预期目标1.系

13、统能够实现对温度的实时采集和回传,体现出周围温度的变化情况2.通过LED数码管可以显示回传温度的具体值。3.使用按键能够设置和调节温度的上下限额以及查看部分存储中的温度值。4.当系统采集到的数据超过设定额度时可以通过蜂鸣器报警通知我们。2.3 总体设计构想当DS18B20采集到数据后通过总线传递给单片机进行计算,与预先自己通过按键设定的温度值进行对比,来判断是否超出设定值,并把回传的温度值及时的显示在LED数码管上,达到设计要求。其中DS18B20数字温度传感器实现实时温度的采集和存储,LED数码管用来显示实时采集到的温度回传来的温度值,按键设置温度上下限额和查询存储在DS18B20中的温度值

14、,当温度比设定值高时,就会触发蜂鸣器报警和点亮发光二极管。系统总设计如图2-1所示:DS18B20温度采集电路AT89C52单片机控制最小系统数码管显示电路按键调节电路警报系统电路图2-1系统总设计图实验证明该温控系统能够达到0.2的静态误差,0.45的控制精度。本系统的模块包括以下几个部分:最小系统模块、温度检测模块、七段式数码管显示模块、按键调节模块和警报模块。1、最小系统模块(控制模块)最小系统是由单片机AT89C52芯片在供电系统、复位电路和信号发生器装置电路组成的。整个温控系统在最小系统和程序控制下,实现对温度的上下限额的判断和设置、LED温度的显示、发光二极管的亮灭和蜂鸣器的报警功

15、能。2、温度检测模块由DS18B20温度传感器直接采集实时温度传递给最小系统进行对测到的温度值进行处理。 3、显示模块四位一体的七段共阴极的LED数码管显示DS18B20检测到的实时温度。4、按键控制模块由四个按键控制调节,用来调节和查询温度的额度值。5、报警模块由蜂鸣器和发光二极管组成的报警装置,当温度超过设定值就会报警。第三章系统硬件的设计第3章 系统硬件的设计3.1单片机电路设计3.1.1 最小系统电路设计6 单片机最小系统是有晶振电路、加电复位、按钮复位、ISP下载接口和电源指示组成。如图3-1所示。其中晶振为12MHZ的标准晶振,接入单片机的XTAL1、XTAL2。复位电路采用了人工

16、复位的方式,按下按键SO使单片机复位。接到AT89C52的RST管脚。电源模块采用的是直流稳压电源,产生5V的稳定直流电压供电。图3-1 单片机最小系统3.1.2 DS18B20温度传感器的电路设计 由于DS18B20温度传感器的特性可以知道,其与单片机的接口采用一条信号总线传输信号,电路设计如图3-2所示:图3-2 DS18B20电路设计 1号管脚为接地、2号管脚为信号总线、3号管脚为电源线。当DS18B20处于写操作和温度A/D转换的操作时,总线应该有上拉,上拉开启时间最大为10us。采用寄生电源供电方式VDD端接地。3.1.3 显示电路设计显示电路是由四位一体的共阴极数码管进行显示当前测

17、得的温度值,精确到0.1,数码管由三极管9013进行驱动,通过单片机的P0.0到P0.7八个端口接数码管的八个引脚,在VCC与管脚之间添加一个1K的排阻保护。如图3-3所示图3-3 显示电路设计3.1.4 按键电路设计按键电路是用来实现调节设定报警温度的上下限度和查看上下限报警温度的功能,如图3.4所示:图3-4 按键电路设计 3.1.5 警报电路设计警报电路的作用为:当测量温度大于设定的最高温度或小于设定的最低温度时,就发出警报提醒,该电路是由一个蜂鸣器和红色发光二极管组成。如图3-5所示。图3-5 警报电路设计第四章系统软件设计第4章 系统软件设计4.1 主程序模块设计1主程序需要调用3个

18、子程序,分别为:1、实时温度显示的程序:驱动数码管显示实时测到的温度数据2、查询记录温度值的程序:查看过去存储在可电擦只读存储器(EEPRAM)中的温度值,最多可查看10个值。3、温度设定、警报驱动的程序:设定警报测量值,当温度越过这个值时就产生警报。4.1.1主程序流程图如图4-1所示图4-1 主程序流程图4.2 读温度值模块该模块需要调用4个子程序,分别为:1、DS18B20初始化子程序:通知单片机DS18B20在总线上已经做好准备,等待传输数据2、 DS18B20写字节子程序:对DS18B20进行写入数据,发出命令3、 DS18B20读字节子程序:读取DS18B20存储器(EEPROM)

19、中的数据4、延时子程序:对DS18B20操作的时候有一个时间的控制4.2.1 读温度值模块流程图如图4-2所示:图4-2 读温度值模块流程图4.2.2 DS18B20初始化程序流程图如图4-3所示:图4-3 DS18B20初始化程序流程图4.2.3 DS18B20写字节和读字节程序流程图如图4-4和图4-5所示: 图4-4 DS18B20写字节程序流程图 图4-5 DS18B20读字节程序流程图4.3 中断模块7该模块需要调用两个子程序,分别为:读温度值程序:定时读取DS18B20测到的温度值,进行实时更新温度值记录温度值程序:定时记录温度值到存储器,为以后查询提供便利放在中断模块中的原因:不

20、会因为通过按键调整警报温度的上下限额或者查询历史温度值而停止更新温度值和记录温度值。中断模块程序流程图:如图4-6所示:图4-6 中断模块程序流程图4.4 温度查询模块 该模块需要通过按钮输入,来进行查询,通过加减按钮分别查询上一次和下一次的温度值历史记录,并驱动数码管显示查到的温度值。温度查询模块程序流程图:如图4-7所示:图4-7 温度查询模块程序流程图4.5 温度设定、报警模块该模块和温度查询模块类似,需要通过按钮输入,来进行温度设定,通过加减按钮分别增加和降低警报温度值,当测量到的实时温度高于或者低于设定温度时驱动蜂鸣器发出警报,并点亮发光二极管,实现声光警报。温度设定、警报模块程序流

21、程如图4-8所示:图4-8 温度设定、警报模块程序流程4.6 数码管驱动模块程序流程图如图4-9所示;4-9 数码管驱动模块程序流程图第五章系统调试第五章 系统调试5.1 硬件系统调试5.1.1 硬件调试主要分为两步7第一步:在给单片机系统通电之前首先检查线路是否都连接完整,保证没有短路和开路现象,并核对各种元器件是否正确,特别要检查一下电阻和电容是安全的。并通过简单的计算确保三极管能够有效的驱动数码管的正常发光。最后检查一下二极管是否有极性错误。在做完这些检查后就可以进入第二步。第二步:第一步的初步检测仅仅能够检测到明显的错误,如果需要检测内部错误还要通过软件和硬件联合调试。5.2 软件系统

22、的调试 5.2.1 软件调试主要分为两步看1第一步:按照前面的各个模块设计程序,在Keil软件中使用C语言编写并通过编译,变为单片机可执行文件。如果在编译的过程中有语法错误就会出现错误提醒,及时修改并再次编译,直到通过。第二步:通过烧录软件进行烧录,下载到单片机中进行软硬件结合测试,检测是否符合自己设定的流程。如果发现硬件错误就及时的修改硬件方面的错误,如果发现软件方面的错误就及时修改程序。直到按照原计划能够顺利的运行。5.3调试中遇到的问题主要问题是在硬件方面,由于焊接技术不是太熟练,导致在焊接电阻的时候发生锡条融化过多,导致两个电阻之间粘合在一起。还有焊盘出现脱落的问题,通过老师的指点,找

23、到了原因,是因为锡条和电烙铁离电路板太高引起的。*本科毕业设计(论文)第6章 总结本文详细介绍了AT89C52单片机的发展历程和未来走向、DS18B20的使用方法是介绍和KEIL软件的安装以及使用方法。难点在于DS18B20的使用,即对它的时序控制、初始化以及字节读写方法,因为任何一个环节出现一点点的小错误就会导致测到的数据不真实更甚者可能导致系统的崩溃。在软件设计的过程中,按照自己设计的程序流程图来编写程序,不仅可以提高编写效率更能够避免程序的错误产生,是问题简单化。由于单片机的内存空间有限,所以在定义变量的时候尽量定义为局部变量,并且要避免和全局变量重名现象,否则会产生冲突。在作键盘消抖时

24、,延时的时间一定要把握好,因为延时太短起不到消抖的作用,太长又会产生按下按键没有反应的现象,一般默认的是10ms左右,能够达到很好的消抖的功效。如果对按键进行释放做出判断就可以解决长时间按着按钮导致重复响应的问题。本文可以拓展的方面就是使用多个DS18B20并联,实现多点温度测控,加上上位机就可以实现远程温度监控系统,将具有更大的使用价值和应用前景。致谢时间犹如白驹过隙,大学四年的学习生活很快就要过去,在这四年的学习生活中,收获了很多,而这些成绩的取得是和一直关心帮助我的人分不开的。本论文是在导师的指导下完成的,从论文准备工作开始到至今,经过几个月的反复修改,我的论文已经接近尾声。我要特别感谢我的指导老师杜海涛老师的悉心指导。在我课题设计和论文撰写的过程中,对我进行了严格督促、认真检查和仔细批阅,而且关于

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论