1湖南工业职业技术学院毕业设计课题名称系(院)名称电气工程系专业及班级学生姓名学号指导教师(完成时间为2017年1月6-7日)完成日期年月日2摘要近年来随着计算机在社会领域的渗透,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。本文从硬件和软件两方面来讲述对烘干箱温度的自动控制过程,在控制过程中主要应用AT89C51、ADC0809、LED显示器、LM324比较器,而主要是通过DS18B20数字温度传感器采集环境温度,以单片机为核心控制部件,并通过四位数码管显示实时温度的一种数字温度计。软件方面采用汇编语言来进行程序设计,使指令的执行速度快,节省存储空间。为了便于扩展和更改,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明了,使硬件在软件的控制下协调运作。关键词:单片机系统;传感器;数据采集;模数转换器;温度目录摘要.................................................21绪论...............................................21.1课题的背景及其意义..............................................21.2课题研究的内容及要求............................................31.2.1课题的主要研究的内容......................................32AT89C51系列单片机介绍及硬件设计.....................52.1AT89C51系列单片机介绍..........................................52.1.1AT89C51系列基本组成及特性..................................52.1.2AT89C51系列引脚功能........................................62.1.3AT89C51系列单片机的功能单元................................82.2硬件设计.....................................................112.2.1温度采样部分..............................................112.2.2控制温度.................................................132.2.3模数转换部分..............................................142.2.4模数转换技术..............................................142.2.5积分型模数转换器..........................................142.2.6显示部分..................................................153软件设计...........................................173.1主程序流程图...................................................173.2读温度子程序..................................................173.3计算温度子程序................................................183.4按键流程图.....................................................193.5显示流程图....................................................20结论................................................22谢辞................................................2321绪论1.1课题的背景及其意义现代工业设计,工程建设及日常生活中温度控制都起着重要的作用,早期的温度控制主要用于工厂时间生产中,能起到实时采集温度数据,提高生产效率,产品质量之用。随着人们生活质量的提高,现代社会中的温度控制不仅应用在工厂生产方面也应用于酒店,厂房以及家庭生活中,在有些应用中,如高精度的生产厂房,对温度的要求极其严格,温度的变化极有可能对生产的产品造成极大的影响。因此,这就需要一种能够及时检测温度变化以及温度变化的设备,提供温度数据值,使人们对温度的变化做及时的调整,多点温度控制可根据人们不同的应用环境自行设置该环境的温度值,及时反映生产,生活中温度变化使人们能及时看到温度变化的第一手资料,提示人们温度变化情况,协助人们能及时的调整,起到温度报警作用,使温度控制更好的服务于社会生产,生活。电子技术的飞速发展,给人类的生活带来了根本的的变革,特别是随着大规模集成电路的产生而出现了微型计算机,更是将人类社会带入了一个新的时代。利用微机的强大功能。人们可以完成各种各样的控制。然而,微机造价高,对于大多数的工业控制来说,也并不需要微机那样强大的功能,于是单片机就运用而生了。单片机其实就是一个简化的微机,将微机的CPU,存储器,I/O接口。定时器/计数器等集成在一片芯片上就是单片机了,它主要用来完成各种控制功能。相对微机来说,单片机价格低,非常适合于应用在简单的控制场合以降低成本。另外,单片机是按照工业控制要求设计的,其可靠性很高,可在工业现场复杂的环境下运行。单片机依靠其高的可靠性和极高的性价比,在工业控制,数据采集,智能化仪表,家用电器等方面得到极为广泛的应用。温度是表征物体冷热程度的物理量,温度测量则是工农业生产过程中一个很重要而普遍的参数。温度的测量及控制对保证产品质量、提高生产效率、节约能源、生产安全、促进国民经济的发展起到非常重要的作用。由于温度测量的普遍性,温度传感器的数量在各种传感器中居首位。而且随着科学技术和生产的不断发展,温度传感器的种类还是在不断增加丰富来满足生产生活中的需要。在单片机温度测量系统中的关键是测量温度、控制温度和保持温度,温度测3量是工业对象中主要的被控参数之一。因此,单片机温度测量则是对温度进行有效的测量,并且能够在工业生产中得到了广泛的应用,尤其在电力工程、化工生产、机械制造、冶金工业等重要工业领域中,担负着重要的测量任务。在日常生活中,也可广泛实用于地热、空调器、电加热器等各种家庭室温测量及工业设备温度测量场合。但温度是一个模拟量,如果采用适当的技术和元件,将模拟的温度量转化为数字量虽不困难,但电路较复杂,成本较高。1.2课题研究的内容及要求1.2.1课题的主要研究的内容本文所要研究的课题是基于单片机控制的水温控制系统的设计,主要是介绍了对水箱温度的显示、控制及报警,实现了温度的实时显示及控制。水箱水温控制部分,提出了用DS18S20、AT89C51单片机及LED的硬件电路完成对水温的实时检测及显示,利用DS18S20与单片机连接由软件与硬件电路配合来实现对加热电阻丝的实时控制及超出设定的上下限温度的报警系统。而炉内温度控制部分,采用一套PID闭环负反馈控制系统,由DS18S20检测炉内温度,用中值滤波的方法取一个值存入程序存取器内部一个单元作为最后检测信号,并在LED中显示。控制器是用89C51单片机,用PID算法对检测信号和设定值的差值进行调节后输出控制信号给执行机构,去调节电阻炉的加热功率,从而控制炉内温度。它具有微型化、低功耗、高性能、抗干扰能力强、易配微处理器等优点,特别适合于构成多点的温度测控系统,可直接将温度转化成串行数字信号供微机处理,而且每片DS18S20都有唯一的产品号,可以一并存入其ROM中,以便在构成大型温度测控系统时在单线上挂接任意多个DS18S20芯片。从DS18S20读出或写入DS18S20信息仅需要一根口线,其读写及其温度变换功率来源于数据总线,该总线本身也可以向所挂接的DS18S20供电,而且不需要额外电源。同时DS18S20能提供九位温度读数,它无需任何外围硬件即可方便地构成温度检测系统。而且利用本次的设计主要实现温度测试,温度显示,温度门限设定,超过设定的门限值时自动启动加热装置等功能。而且还要以单片机为主机,使温度传感器通过一根口线与单片机相连接,再加上温度控制部分和人机对话部分来共同实现温度的监测与控制。1.2.2用单片机实现其具体控制功能如下:4(1)能够连续测量水的温度值,用十进制数码管来显示水的实际温度。(2)能够设定水的温度值,设定范围是30℃~90℃。(3)能够实现水温的自动控制,如果设定水温为85℃,则能使水温保持恒定在85℃的温度下运行。(4)用单片机AT89C51控制,通过按键来控制水温的设定值,数值采用数码管显示。52AT89C51系列单片机介绍及硬件设计2.1AT89C51系列单片机介绍2.1.1AT89C51系列基本组成及特性AT89C51是一种带4k字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。而在众多的51系列单片机中,要算ATMEL公司的AT89C51更实用,也是一种高效微控制器,因为它不但和8051指令、管脚完全兼容,而且其片内的4K程序存储器是FLASH工艺的,这种工艺的存储器,用户可以用电的方式达到瞬间擦除、改写。而这种单片机对开发设备的要求很低,开发时间也大大缩短。AT89C51基本功能描述如下:AT89C51是一种低损耗、高性能、CMOS八位微处理器,而且在其片种还有4k字节的在线可重复编程快擦快写程序存储器,能重复写入/擦除1000次,数据保存时间为十年。它与MCS-51系列单片机在指令系统和引脚上完全兼容,不仅可完全代替MCS-51系列单片机,而且能使系统具有许多MCS-51系列产品没有的功能。AT89C51可构成真正的单片机最小应用系统,缩小系统体积,增加系统的可靠性,降低了系统成本。只要程序长度小于4k,四个I/O口全部提供给用户。可用5V电压编程,而且写入时间仅10毫秒,仅为8751/87C51的擦除时间的百分之一,与8751/87C51的12V电压擦写相比,不易损坏器件,没有两种电源的要求,改写时不拔下芯片,适合许多嵌入式控制领域。AT89C51芯片提供三级程序存储器锁定加密,提供了方便灵活而可靠的硬加密手段,能完全保证程序或系统不被仿制。另外,AT89C51还具有MCS-51系列单片机的所有优点。128×8位内部RAM,32位双向输入输出线,两个十六位定时器/计时器,5个中断源,两级中断优先级,一个全双工异步串行口及时钟发生器等。AT89C51有间歇、掉电两种工作模式。间歇模式是由软件来设置的,当外围器件仍然处于工作状态时,CPU可根据工作情况适时地进入睡眠状态,内部RAM和所有特殊的寄存器值将保持不变。这种状态可被任何一个中断所终止或通过硬件复位。掉电模式是VCC电压低于电源下限,当振荡器停止振动时,CPU停止执行指6令。该芯片内RAM和特殊功能寄存器值保持不变,一直到掉电模式被终止。只有VCC电压恢复到正常工作范围而且在振荡器稳定振荡后,通过硬件复位、掉电模式可被终止。2.1.2AT89C51系列引脚功能AT89C51有40引脚双列直插(DIP)形式。其与80C51引脚结构基本相同,其逻辑引脚图如图2-1。图2-1AT89C51逻辑引脚图各引脚功能叙述如下:1.电源和晶振VCC——运行和程序校验时加+5VGND——接地XTAL1——输入到振荡器的反向放大器XTAL2——反向放大器的输出,输入到内部时钟发