一.课程设计内容运用所学单片机、模拟和数字电路、以及测控系统原理与设计等方面的知识,设计出一台以AT89C52为核心的恒温箱控制器,对恒温箱的温度进行控制。完成恒温箱温度的检测、控制信号的输出、显示及键盘接口电路等部分的软、硬件设计,A/D和D/A转换器件可自行确定,利用按键(自行定义)进行温度的设定,同时将当前温度的测量值显示在LED上。恒温箱控制器要求如下:1)目标稳定温度范围为100摄氏度——50摄氏度。2)控制精度为±1度。3)温度传感器输入量程:30摄氏度——120摄氏度,电流4——20mA。加热器为交流220V,1000W电炉。二.课程设计应完成的工作1)硬件部分包括微处理器(MCU)、D/A转换、输出通道单元、键盘、显示等;2)软件部分包括键盘扫描、D/A转换、输出控制、显示等;3)用PROTEUS软件仿真实现;4)画出系统的硬件电路结构图和软件程序框图;5)撰写设计说明书一份(不少于2000字),阐述系统的工作原理和软、硬件设计方法,重点阐述系统组成框图、硬件原理设计和软件程序流程图。说明书应包括封面、任务书、目录、摘要、正文、参考文献(资料)等内容,以及硬件电路结构图和软件程序框图等材料。注:设计说明书题目字体用小三,黑体,正文字体用五号字,宋体,小标题用四号及小四,宋体,并用A4纸打印。三.课程设计进程安排序号课程设计各阶段名称日期、周次1总体设计,硬件设计2012年12月24日~25日,17周2绘制软件程序流程图,编写软件2012年12月26日~28日,17周3软、硬件仿真调试2012年12月27日,18周4软、硬件仿真调试2013年1月2日~3日,18周5撰写设计说明书2013年1月4日,18周四、.设计资料及参考文献1.王福瑞等.《单片微机测控系统设计大全》.北京航空航天大学出版社,19992.《现代测控技术与系统》韩九强清华大学出版社2007.93.《智能仪器》程德福,林君主编机械工业出版社2005年2月4.《测控仪器设计》浦昭邦,王宝光主编机械工业出版社20015.KeilC51帮助文档五.成绩评定综合以下因素:(1)说明书及设计图纸的质量(占60%)。(2)独立工作能力及设计过程的表现(占20%)。(3)回答问题的情况(占20%)。说明书和图纸部分评分分值分布如下:1、需求分析与设计思路(10分)要求说明设计任务的具体技术指标打算如何实现,根据实现各技术指标的解决方法,提出总体设计的思路和解决方案,说明其中关键问题及其解决办法。2、总体方案设计(10分)根据设计思路,完成:1)软件与硬件分工说明;2)硬件总体框图;3)软件结构图。3、详细设计(35分)根据总体设计:1)用Proteus画出电路原理图;(10分)2)列出元件清单并说明元件选择及参数选择的依据;(5分)3)画出单片机片内资源分配图(或表);(5分)4)画出软件流程图;(10分)5)提交程序清单。(5分)4、使用说明(5分,第3)项为2分,其余每项1分。)1)性能和功能介绍;2)各操作开关、按钮、指示灯、显示器等的作用介绍;3)使用操作步骤;4)故障处理。目录一、摘要……………………………………………………………………………6二、主要任务与目标………………………………………………………………7三、主要内容与基本要求………………………………………………………7四、恒温箱控制系统的硬件设计…………………………………………………71.系统设计…………………………………………………………………72.方案设计……………………………………………………………………8五、恒温箱控制系统框图…………………………………………………………8六、功能模块………………………………………………………………………8七、硬件设计及工作原理…………………………………………………………91.系统功能及工作流程介绍………………………………………………92.微处理器AT89C52…………………………………………………………93.温度传感器………………………………………………………………104.显示部分…………………………………………………………………115.键盘输入电路……………………………………………………………136.输出控制…………………………………………………………………137.温度越线报警电路………………………………………………………148.恒温箱控制器硬件系统图………………………………………………159.PID控制算法……………………………………………………………16八、系统的软件设计……………………………………………………………181.温度传感器DS18B20模块软件设计…………………………………182.键盘管理模块…………………………………………………………203.显示模块………………………………………………………………214.控制模块………………………………………………………………215.温度报警模块…………………………………………………………216.PID控制程序设计……………………………………………………237.主程序模块……………………………………………………………24九、硬件调试……………………………………………………………………25十、仿真调试……………………………………………………………………25十一、设计总结……………………………………………………………………25参考文献…………………………………………………………………………26附录1元件清单…………………………………………………………………27附录2程序清单………………………………………………………………27绪论随着社会发展的需求,人们对恒温箱的应用和需求越来越广泛,在工业生产和日常生活或科学实验中,我们随处都可以看到恒温箱的应用。如,可以根据动物生活习性的需要控制饲养棚合适的温度来进行孵卵或动物培养;在农业上,可用于种子的发芽;在科学实验上,可产生恒温环境用于各种细菌培养等;在医学上,可用于做细菌培养、放射免疫分析、血清溶化、石腊熔化、试管消毒等。常用的恒温箱主要分为三类:高温恒温箱(高于60℃);中温恒温箱(-10~60℃);低温恒温箱(低于-1O℃)。恒温箱的温度控制系统可分为人工调节和自动调节两种方式,人工调节是通过温度计进行测量后手动调节变压器,从而控制产生热量的大小;而自动调节往往通过热电偶传感器进行测温,输出电压值,经放大后加到电机上驱动电机来调节变压器,其优点是可以连续、实时、准确的来控制温度。基于单片机技术的温控器和可编程温度传感器相结合使用是目前恒温箱温度控制较为先进的一种方式。单片机是一种集CPU、RAM、ROM、I/O接口和中断系统等部分于一体的器件,只需要外加电源和晶振就可实现对数字信息的处理和控制。因此,单片机广泛用于现代工业控制中。控制具有体积小、重量轻、价格低、可靠性高、耗电少和灵活机动等许多优点,因此如果能利用单片机进行温度的测量和控制,将会大大提高温度测量和控制的可靠性和灵活性。单片机对温度测量控制过程是借助于传感器、A/D转换器以及扩展接口和执行机构来进行的。在闭环型过程控制中,过程的实时参数由传感器和A/D转换器来实时采集,并由单片机自动记录、处理并控制执行机构动作来进行调节和控制。因此需要对单片机进行扩展和开发,来形成整个单片机温度控制系统。一、主要任务与目标:恒温控制在工业生产过程中举足轻重,温度的控制直接影响着工业生产的产量和质量。本课题基于单片机设计一个恒温箱控制系统,系统包括硬件和软件两部分,其中硬件包括数据采集、显示、控制、报警及温度传感器的设计,软件包括键盘管理程序设计、显示程序设计、控制程序设计和温度报警程序设计。能够实现设置和调节初始温度值,进行数码显示,当加热到设定值后立刻报警。设计过程中设计的控制方案能够保证精度,考虑系统的安全性、可靠性和稳定性。二、主要内容与基本要求:1.主要内容:(1)了解温度传感器特点及其适用范围,针对恒温箱进行合理的选型;(2)掌握控制器单片机的有关知识,并熟悉其编程;(3)对单片机测控程序及其接口技术作重点的掌握;(4)在以上几个内容的基础上,进行课题的总体设计,绘制系统的总体电路。选择合适的相关硬件,最终完成本课题的设计。2.基本要求:运用所学单片机、模拟和数字电路、以及测控系统原理与设计等方面的知识,设计出一台以AT89C52为核心的恒温箱控制器,对恒温箱的温度进行控制。完成恒温箱温度的检测、控制信号的输出、显示及键盘接口电路等部分的软、硬件设计,A/D和D/A转换器件可自行确定,利用按键(自行定义)进行温度的设定,同时将当前温度的测量值显示在LED上。三、恒温箱控制系统的硬件设计1.系统设计要求1)目标稳定温度范围为100摄氏度——50摄氏度。控制精度为±1度。2)温度传感器输入量程:30摄氏度——120摄氏度,电流4——20mA。加热器为交流220V,1000W电炉。3)键盘按键输入,具有设定、加温、减温、复位等。4)显示功能,数码管显示设定值与当前所测温度值。5)具有超温报警功能。6)具有掉电保护功能。2.方案设计1)以应用广泛、性能可靠的MCS51系列单片机组成控制系统。2)温度采样选择数字温度传感器DS18B20。3)利用PP40微型打印机进行温度记录打印。4)单片机与上位机通信采用MAX489构成标准RS-422A通信接口。5)键盘为8键式,完成设定、增温、降温、清除、模式切换、复位、,3位数码管循环显示设定与检测的温度。四、恒温箱控制系统框图五、功能模块根据上面对工作流程的分析,系统软件可以分为以下几个功能模块:(1)键盘管理:监测键盘输入,接收温度预置,启动系统工作。(2)显示:显示设置温度及当前温度。(3)温度检测及温度值变换(4)温度控制:根据检测到的温度控制电炉工作。(5)报警:当预置温度或当前炉温越限时报警。六、硬件设计及工作原理1.系统功能及工作流程介绍根据恒温箱控制器的功能要求,并结合对51系列单片机的资源分析,即单片机软件编程自由度大,可用编程实现各种控制算法和逻辑控制。所以采用AT89C52作为电路系统的控制核心。按键将设置好的温度值传给单片机,通过温度显示模块显示出来。初始温度设置好后,单片机开启输出控制模块,使电热器开始加热,同时将从数字温度传感器DS18B20测量到的温度值实时的显示出来,当加热到设定温度值时,单片机控制声光报警模块,发出声光报警,同时关闭加热器。当自然冷却到设定温度50摄氏度以下时,单片机再次启动加热器,如此循环反复,以达到恒温控制的目的。系统结构框图如图1所示,系统基本硬件电路图如图所示,在本系统中,DP1~DP3用于七段数码显示;P1.0用于接收DS18B20采集到的数字温度信号;P1.6控制光电开关,决定电加热器是否工作;KEY1~KEY3即P1.1,P1.2,P1.3用于按键控制;P1.7和P1.5用于控制扬声器和发光二极管,进行声光报警;串行口用于输出显示段码;P2.0、P2.1用于对数码管进行动态扫描。2.微处理器AT89C52AT89C52单片机是最新的一种低功耗、高性能内含SK字节闪电存储器的8位CMOS微控制器,与工业标准MCS—51指令系列和引脚完全兼容有超强的加密功能,其片内闪电存储器的编程与擦除完全用电实现,数据不易挥发,编程/擦除速度快,它的主要特点有:(1)内部程序存储器为电擦除可编程只读存储器EEPROM,容量SKB,内部数据存储器容量256B(不包括专用寄存器),外部数据存储器寻址空间64KB,外部程序存储器寻址空间64KB;(2)有三个16位的定时器/计数器;(3)可利用两根I/O口线作为全双工的串行口,有四种工作方式,可通过编程选定;(4)内部ROM中开辟了四个通用工作寄存器区,共32个通用寄存器,以适应多种中断或子程序嵌套的情况;(5)内部有6个中断源,分为二个优先级,每个中断源优先级是可编程的;(6)堆栈位置是可编程的,堆栈深度可达128字节;(7)内部有一个由直接可寻址位组成的布尔处