基于proteus的热式热水器温度控制系统的仿真研究毕业论文.doc_第1页
基于proteus的热式热水器温度控制系统的仿真研究毕业论文.doc_第2页
基于proteus的热式热水器温度控制系统的仿真研究毕业论文.doc_第3页
基于proteus的热式热水器温度控制系统的仿真研究毕业论文.doc_第4页
基于proteus的热式热水器温度控制系统的仿真研究毕业论文.doc_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

本科生毕业设计(论文)资料第一部分 设计说明书基于proteus的热式热水器温度控制系统的仿真研究 摘 要热水器在工业生产和家庭生活中的应用是非常普遍的,而热水器的核心技术之一就是温度控制方面,也就是说温度控制器的技术对热水器的发展起着至关重要的作用。所以温度控制器的研究对于提高热水器产品的质量,是具有很重要的现实意义的。本课题主要针对热式热水器中温度控制的特点及实现准确温度控制的意义,设计了一种基于单片机的控制系统,整个系统的设计内容包括硬件和软件两个部分。硬件电路主要以AT89C51单片机为微处理器,详细设计了温度信号采集电路,温度数码显示电路,键盘设置温度电路,报警电路,光耦隔离输出电路,模拟加热电路。软件部分主要针对加热装置的控制模式进行了编程。温度传感器DS18B20采集到的温度转换成电压信号反馈到单片机,然后与温度的给定值进行比较,通过比较来控制加热装置,从而达到控制温度的目的。关键词:单片机,热水器,温度控制,AT89C51,DS18B20ABSTRACTWater heater is common in industrial production and family life application,and the temperature control is one of the core technology of water heater,which means temperature control technology plays a vital role for the development of water heater. Thus, the research of temperature controller has very important practical significance for improving water heater quality. Regarding to the feathers and the significance of hot water heater temperature control, this subject designs a kind of system based on single-chip microcomputer control.The system includes hardware and software.Hardware circuit is designed the AT89C51 as main microprocessors, and the hardware circuit includes the temperature signal acquisition circuit,temperature digital display circuit, the keyboard set temperature circuit, alarm circuit, light coupling isolation output circuits, analog heating circuit.The softeware is mainly aimed at heating device programming.Temperature sensor DS18B20 collects the temperature and converse it into voltage signal, feedbacks to the microcontroller, then compared with the given temperature value, by which to controle the heating device, so as to control the temperature.Keywords:SMC,water heater,temperature control,AT89C51, DS18B20目 录摘 要IABSTRACTII第1章 绪 论11.1 课题背景11.2 系统任务11.3 设计思路2第2章 热式热水器温度控制系统的硬件设计32.1 AT89C51单片机简介32.1.1 AT89C51单片机资源简介32.2 数字温控芯片DS18B20介绍52.2.1 DS18B20的特性52.2.2 DS18B20的测温原理62.2.3 DS18B20与单片机接口电路72.3 显示驱动电路设计72.4 按键电路设计82.5 光耦隔离输出电路82.6 整体硬件电路9第3章 热式热水器温度控制系统的软件设计103.1 系统软件设计框图103.2 主程序模块113.3 温度采集模块123.4 报警及加热电路模块133.5 温度显示模块133.6 键盘扫描模块13第4章 热式热水器温度控制系统仿真154.1 proteus简介154.1.1软件功能特点154.2 仿真结果15结 论21参考文献22附 录23致 谢31IV 第1章 绪 论本章内容主要叙述了热式热水器方面的行业背景概况,此课题要求的系统任务以及在确定系统任务之后的整体设计思路,重点是关于热水器温度控制系统的设计思路。1.1 课题背景热式电热水器,进入中国市场已有十个年头之久,对于国内消费者来说,也是一个并不陌生的产品了。从一个边缘产业到逐渐成长为重心行业,产品技术上也趋于成熟和稳定,经过十年本土化、特色化的改造后,即热式电热水器终于迎来了发展高峰期。更多的企业拥入其中,据相关数据显示,目前国内已有300多家企业涉足此类产品的生产,其中主要集中在珠三角、长三角一带。现在市场上的热水器按利用能源类型分为燃气热水器、电热水器及电热-太阳能复合式热水器等。按照加热方式不同分为直热式电热水器和热泵式热水器。直热式电热水器又分为两个类别:即贮水式电热水器和快热式电热水器。相比前者,后者具有不需预热及保温,即用即热,出水温度恒定,体积小巧,节能,寿命长等优点。但是,它也存在诸如功率大、制作工艺复杂,价格偏高等问题。随着技术的不断成熟、成本不断降低、产品价格不断下降,快热式电热水器正迎来爆炸式的市场增长。参照国外的发展情况经验,在欧洲和东南亚,曾经是燃气式和贮水式的天下,快热式电热水器的市场经过20年的发展,占有率达到50%。目前中国市场即热式电热水器的销售比率只占3%,这表明即热式电热水器在中国有极为广阔的市场前景。1.2 系统任务设计一热式热水器温度闭环控制系统,系统方框图如下图1.1所示: 放大器控制器热水器测量装置输出温度反馈温度给定温度图1.1系统方框图(1)热水器温度工作范围:063;(2)检测分辨率1;(3)键盘是采用拨动开关,实现温度设定范围为:063;(4)给定温度用2位LED用动态或静态扫描技术显示;(5)实际温度用2位LED用动态或静态扫描技术显示;(6)增加预警系统,当加热到设定的温度时,则发出报警信号。1.3 设计思路热式热水器温度闭环控制系统包括检测系统、显示系统、按键设置温度系统、模拟加热系统、报警系统、单片机控制系统等六个部分。系统选择性能优良的DS18B20温度传感器来模拟检测热水器内的温度;用两个两位的数码管来分别显示实时设定温度和实际温度;采用两个按键来分别设置温度的十位和个位;采用一个绿色LED灯来模拟加热装置(灯亮则表示启动加热装置,灯灭表示关闭加热装置);采用一个红色LED灯来模拟报警信号(灯亮则表示实际水温高于预设水温,讲产生报警信号并关闭加热装置;灯灭则表示实际水温要低于预设水温,此时系统处于加热状态);核心的单片机控制系统采用常用的AT89C51芯片,接收传感器反馈回来的温度信号,与设定温度值进行比较处理并作出是否开启加热装置的命令。总体结构图如下图1.2所示:单片机键盘输入电路显示电路温度控制电路测温电路报警电路图1.2系统总体原理框图第2章 热式热水器温度控制系统的硬件设计本章的重点是热式热水器温度控制系统的硬件设计,主要包括控制处理器以及实现其他设计功能的硬件模块。2.1 AT89C51单片机简介2.1.1 AT89C51单片机资源简介AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。2.1.1.1主要特性-与MCS-51 兼容 -4K字节可编程闪烁存储器 -寿命:1000写/擦循环 -数据保留时间:10年 -全静态工作:0Hz-24MHz -三级程序存储器锁定 -1288位内部RAM -32可编程I/O线 -两个16位定时器/计数器 -5个中断源 -可编程串行通道 -低功耗的闲置和掉电模式 -片内振荡器和时钟电路2.1.1.2管脚说明VCC:供电电压 GND:接地P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。 P3口也可作为AT89C51的一些特殊功能口,说明如下: P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1) P3.4 T0(记时器0外部输入) P3.5 T1(记时器1外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入 XTAL2:来自反向振荡器的输出2.2 数字温控芯片DS18B20介绍美国Dallas半导体公司的数字化温度传感器DS18B20是世界上第一片支持 “一线总线”接口的温度传感器,在其内部使用了在板(ON-B0ARD)专利技术。全部传感元件及转换电路集成在形如一只三极管的集成电路内。“一线总线”独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。现在,新一代的DS18B20体积更小、更经济、更灵活,使你可以充分发挥“一线总线”的优点。 同DS18B20一样,DS18B20也支持“一线总线”接口,测量温度范围为-55C+125C,在-10+85C范围内,精度为0.5C。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。与前一代产品不同,新的产品支持3V5.5V的电压范围,使系统设计更灵活、方便,而且新一代产品更便宜,体积更小。2.2.1 DS18B20的特性(1)适应电压范围更宽,电压范围:3.05.5V,寄生电源方式下可由数据线供。 (2)独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。 (3)DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。 (4)DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内。 (5)温范围55125,在-10+85时精度为0.5。 (6)可编程的分辨率为912位,对应的可分辨温度分别为0.5、0.25、0.125和0.0625,可实现高精度测温。 (7)在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快。 (8)测量结果直接输出数字温度信号,以“一线总线”串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力。 (9)负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。2.2.2 DS18B20的测温原理DS18B20的测温原理如图2.1所示,图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在-55所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2 计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。 DS18B20在正常使用时的测温分辨率为0.5,如果要更高的精度,则在对DS18B20测温原理进行详细分析的基础上,采取直接读取DS18B20内部暂存寄存器的方法,将DS18B20的测温分辨率提高到0.10.01。图 2.1 DS18B20测温原理图2.2.3 DS18B20与单片机接口电路P3.7口和DS18B20的引脚DQ连接,作为单一数据线。U4即为温度传感芯片DS18B20,本设计虽然只使用了一片DS18B20,但由于不存在远程温度测量的考虑,所以为了简单起见,采用外部供电的方式,如左图2.2所示。测温电缆采用屏蔽4芯双绞线,其中一对线接地线与信号线,另一对接VCC和地线,屏蔽层在电源端单点接地。图 2.2 DS18B20与单片机接口电路2.3 显示驱动电路设计采用74HC245总线驱动器,是典型的TTL型三态缓冲门电路。主要作用是将信号的功率放大。第1脚DIR,为输入输出端口转换用,DIR=“1”高电平时信号由“A”端输入“B”端输出,DIR=“0”低电平时信号由“B”端输入“A”端输出。第29脚“A”信号输入输出端,A1=B1、A2=B2、A3=B3、A4=B4、A5=B5、A6=B6、A7=B7、A8=B8,A1与B1是一组,如果DIR=“1”OE=“0”则A1输入B1输出,其它类同。如果DIR=“0”OE=“0”则B1输入A1输出,其它类同。第1118脚“B”信号输入输出端,功能与“A”端一样,不再描述。第19脚OE,使能端,若该脚为“1”A/B端的信号将不导通,只有为“0”时A/B端才被启用,该脚也就是起到开关的作用。第10脚GND,电源地。第20脚VCC,电源正极。如下图2.3所示:图 2.3 74HC245驱动器的电路连接2.4 按键电路设计采用独立按键接口,这种方式是各种按键相互独立,每个按键接一根输入线,一根输入线按键的工作状态不会影响其他输入线上的工作状态。因此,通过检测输入线的电平状态可以很容易判断哪个按键被按下。独立式按键电路配置灵活,软件简单。但每个按键需要占用一根输入口线,在按键数量较多时,需要较多的输入口线且电路结构复杂,故此种键盘用于按键较少或操作速度较高的场合。独立式按键电路按键直接与单片机的I/O口连接,通过读I/O口,判定每个I/O口的电平状态,即可识别按下的键。由于只有四个按键,因此按键接口电路的设计比较简单,单片机P3.2和P3.3端口设定为输入状态,平时通过电阻上拉到Vcc,按键按下时,对应的端口的电平被拉到低电平,如下图2.4所示。这样就可以通过查询有无外部中断来判断有没有按键按下,按键各接一根输入线,一根输入线的按键工作状态不会影响其他输入线上的工作状态。通过内部判断是否产生外部中断,即可识别按下的键。2个按键定义如下:P3.2:个位按键,按此键则设定温度的设定值个位加一。P3.3:十位按键,按此键则设定温度的设定值十位加一。图 2.4 按键电路2.5 光耦隔离输出电路光耦隔离就是采用光耦合器进行隔离,光耦合器的结构相当于把发光二极管和光敏(三极)管封装在一起。发光二极管把输入的电信号转换为光信号传给光敏管转换为电信号输出,由于没有直接的电气连接,这样既耦合传输了信号,又有隔离作用。在此系统中,使用的绿色LED灯模拟加热装置与红色LED灯模拟报警信号装置的控制就是采用的光耦隔离电路,单片机产生的命令信号通过光电耦合隔离电路传送给加热装置和报警装置。电路如下图2.5所示,U5为光电耦合隔离装置:图 2.5 光电耦合隔离输出电路2.6 整体硬件电路系统整体的硬件电路设计如下图2.6所示:图 2.6 整体硬件电路第3章 热式热水器温度控制系统的软件设计整个系统需要对每一个硬件模块进行软件设计。在这一章,主要针对每个硬件电路模块编程,然后进行系统的整合,最后输入到控制处理器中实现所有设计功能。3.1 系统软件设计框图如下图3.1所示: 主 程 序温 度 采 集模块报警电路模块温度显示模块键盘扫描模块温度控制模块图3.1系统软件设计框图根据设计要求,首先要确定软件设计方案,即确定该软件应该完成那些功能;其次是规划为了完成这些功能需要分成多少个功能模块,以及每一个程序模块的具体任务是什么。一般划分模块应遵循下述原则:1)每个模块都应具有独立的功能,能产生一个明确直观的结果 。2)模块长度要适中。模块太长时,分析和调试比较困难,失去了模块化程序结构的优越性;模块太短则信息交换太频繁,也不合适。3)每个模块之间的控制参数应尽量简单,数据参数应尽量少。控制参数是指模块进入开始运行和退出停止运行的条件及方式,数据参数是指模块间的信息交换方式、交换量的多少及交换的频率。该系统的软件由五大模块组成:主程序模块、温度采集模块、报警及加热电路模块、温度显示模块、键盘扫描模块。下面将对这几个模块具体阐述,相对应的汇编程序语言详见附录。3.2 主程序模块计算机基本的被独立提供出来的程序,它能够调用子程序,而不被任何子程序所调用,它是计算机程序的中心部分。主程序的设计内容一般包括:主程序的起始地址,中断服务程序的起始地址,有关存储单元及相关部件的初始化和一些子程序调用等等。主程序模块的主要内容是对整个系统进行初始化,并且包含调用子程序。在本课题研究的系统中,主程序主要为两个部分:第一个是对系统初始化,如打开相关中断,设置相关引脚的电平信号以及设置初始实际水温和设定水温的数值 。此系统中主程序初始化包括以下内容:1)外部中断0采用边沿触发:SETB IT02)打开中断允许命令:SETB EA3)打开外部中断0:SETB EX04)外部中断1采用边沿触发:SETB IT15)打开外部中断1:SETB EX16)设置初始实际水温和设定水温都为0*/主程序模块MAIN1: SETB IT0 SETB EA SETB EX0 SETB IT1 SETB EX1 SETB P3.6 SETB P3.2 ;初始化系统 MOV 74H,#0 MOV 75H,#0 MOV 76H,#0 MOV 77H,#0 ;设置初始显示温度MAIN: LCALL GET_TEMPER ;调用温度采集程序 LCALL CVTTMP LCALL DISP1 ;调用显示程序 AJMP MAIN3.3 温度采集模块该模块主要对温度传感器DS18B20的操作,主要包括以下几个内容:A、DS18B20的初始化 1) 先将数据线置高电平“1”;2) 延时;3) 数据线拉到低电平“0”; 4) 延时; 5) 数据线拉到高电平“1”; 6) 延时等待(如果初始化成功则在15到60毫秒时间之内产生一个由DS18B20所返回的低电平“0”。据该状态可以来确定它的存在,但是应注意不能无限的进行等待,不然会使程序进入死循环,所以要进行超时控制); 7) 若CPU读到了数据线上的低电平“0”后,还要做延时; 8) 将数据线再次拉高到高电平“1”后结束。B、DS18B20的写操作 1) 数据线先置低电平“0”; 2) 延时;3) 按从低位到高位的顺序发送字节(一次只发送一位);4) 延时;5) 将数据线拉到高电平;6) 重复上1到6的操作直到所有的字节全部发送完为止; 7) 最后将数据线拉高。C、DS18B20的读操作 1)将数据线拉高“1”; 2)延时; 3)将数据线拉低“0”; 4)延时;5)将数据线拉高“1”; 6)延时;7)读数据线的状态得到1个状态位,并进行数据处理; 8)延时。程序内容详见附录。3.4 报警及加热电路模块此模块主要控制报警功能,当实际水温高于设定水温时红灯亮报警,当实际水温低于设定水温时绿灯亮开启加热装置。使用单片机AT89C51的P3.5和P3.6分别作为红灯和绿灯的输入信号。当单片机内部对温度进行处理后的结果来设定这两个引脚的电平信号。当P3.5的信号为高电平时,此时报警电路被触发,红灯亮,系统处于报警状态。当P3.6的信号为高电平时,此时加热电路被触发,绿灯亮,系统处于加热状态。程序内容如下:LEDH: CLR P3.6 SETB P3.5 ;报警电路被触发,红灯亮,系统报警 SJMP PLAY PLAY1: SETB P3.6 ;加热电路被触发,绿灯亮,开启加热装置 CLR P3.5 SJMP PLAY3.5 温度显示模块该系统中的温度显示采用两个两位的数码管显示,一个显示设定温度,另一个显示实际温度。软件设计中将实际水温数据的十位和个位分别存放在地址为74H和75H的单元中,设定水温的数据的十位和个位存在地址为76H和77H的单元中。根据设计要求,设定水温范围是在0-63,那么通过程序设计设定水温只能从0增加到6,当设定水温为0到5时,个位可以从0增加到9然后循环增加,当设定水温十位为6时,个位只能从0增加到3然后循环增加。而实际水温则通过温度传感器来模拟,因采用的是两位数码管显示,故可调节范围为0-99。3.6 键盘扫描模块此模块的主要作用是通过按键来设定水温,系统设置了两个按键,一个调节个位,另一个调节十位。按键设定水温在该系统的软件设计中是采用外部中断的方式来实现的。在程序中需要设定通过按键实现的功能,此系统中个位按键的基本原则是按一次设定温度的个位加1,加到9后转为0再继续增加,但是当十位为6时,是加到3后转为0再继续增加;十位按键的基本原则是按一次设定温度的十位加1,加到6后转为0再继续增加。程序内容如下:*/中断程序,按键设定温度模块ZINT0: PUSH ACC ;进入外部中断0,保护现场 INC 75H ;按键个位加一 MOV A,76H CJNE A,#6,L1 ;判断十位是否等于6 MOV A,75H CJNE A,#4,ZINT01 ;判断个位是否等于4 MOV 75H,#0L1: MOV A,75H CJNE A,#10,ZINT01 ;判断个位是否等于10 MOV 75H,#0ZINT01:POP ACC RETIZINT1: PUSH ACC ;进入外部中断1,保护现场 INC 76H ;按键十位加一 MOV A,76H CJNE A,#7,ZINT11 ;判断十位是否等于7 MOV 76H,#0ZINT11:POP ACC RETI第4章 热式热水器温度控制系统仿真整个温度控制系统的设计包括硬件设计和软件设计。这一章的主要内容是将硬件设计部分和软件设计部分连接起来通过proteus软件进行仿真,将系统的设计功能通过仿真模拟体现出直观的效果。4.1 proteus简介Proteus软件是英国Labcenter electronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台。在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。4.1.1软件功能特点1)实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。2)支持主流单片机系统的仿真。目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。3)提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2等软件。4)具有强大的原理图绘制功能。总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大。本章介绍Proteus ISIS软件的工作环境和一些基本操作。4.2 仿真结果1、打开已经设计好的电路图文件,运行仿真。首先,数码管显示的设定水温与实际水温。设定的温度初始状态为0,假设实际温度为20,由于元器件的不精确与各种不良因素的干扰,数码管显示有1的误差。如下图4.1所示:图4.1 初始温度显示2、设置设定水温。系统中有两个按键,一个为温度十位的设置键,按一下加一;另一个是温度个位设置键,按一下加一。现设定温度63,假设实际水温为31,如下图4.2所示:图4.2 温度设置3、模拟加热和报警装置。系统采用一个绿色LED灯来模拟加热装置,采用一个红色LED灯来模拟报警信号。当绿灯亮则表示开启加热装置,系统处于加热状态;当绿灯灭则表示关闭加热装置,系统处于停止加热状态。当设定水温高于实际水温时,系统自动启动加热装置;当设定水温低于实际水位时,系统自动关闭加热装置。当红灯亮则表示设定水温低于实际水温,发出报警信号;当红灯灭则表示设定水温高于实际水位,系统处于加热状态。1)当设定温度为62,假设实际水温为35,则此时绿灯亮,红灯灭,如下图4.3所示: 图4.3 加热状态2)当设定温度为50,假设实际水温为62时,则此时绿灯灭,红灯亮,如下图4.4所示:图4.4 报警停止加热状态4、整体电路仿真如下图4.5和图4.6所示:图4.5 整体电路仿真图(加热状态)图4.6 整体电路仿真图(报警状态)通过上述仿真,实现了系统设置水温、自动加热和报警等功能。当实际水温低于设定水温时系统自动开启加热装置,当水温上升到设定温度后系统会自动停止加热并且产生报警信号。软件和硬件部分系统整合后,通过系统仿真实现了热水器温度控制系统的各项设计功能。结 论经过近三个月的学习设计,我学到了很多新的知识,培养和锻炼了我的创新能力和实际操作的能力,在毕业设计过程中给我最大的感受就是理论上和实际应用是有很大的差距的,只有在实践中检验理论的时候,自己才会认识到很多的问题。像在之前的单片机的汇编语言学习中感觉挺简单,但是要把这些程序组织起来设计成一个系统的程序还是有难度的,也只有在实践中自己才能认识到很多问题,才能更深刻的认识到理论中的一些基本问题,也才能发现自己身上的不足和很多未知的新问题。软件方面采用模块化编程,提高了通用性,思路也比较清晰,使整个系统的程序简洁很多,并且可移植性较强。设计中使用的MCS-51单片机,体积小,重量轻,抗干扰能力强,对环境要求不高,价格低廉,可靠性高,灵活性好。本设计的温度控制检测和报警系统,只是单片机广泛应用于各行各业中比较简单的一例。使用的DS18B20温度传感器具有微型化、低功耗、高性能、抗干拢能力强、易配微处理器等优点,特别适合于构成多点温度测控系统,可直接将温度转化成串行数字信号供微机处理。从DS18S20读出或写入DS18S20信息仅需要一根口线,其读写及温度变换功率来源于数据总线,该总线本身也可以向所挂接的DS18S20供电,而无需额处电源。在这次设计过程中,体现出自己单独设计的能力以及综合运用知识的能力,体会了学以致用、突出自己劳动成果的喜悦心情,从中发现自己平时学习的不足和薄弱环节,从而加以弥补。参考文献1 曾屹,彭楚武单片机原理与应用S中南大学出版社,2009:18-327.2 楼然苗,李光飞单片机课程设计指导M北京航空航天大学出版社,2007:55-73.3 周润景,张丽娜基于proteus的电路及单片机系统设计与仿真M北京航空航天大学出版社,2006:3-336 4 周润景,刘映群Proteus入门实用教程M机械工业出版社,2007:267-3325 张永枫单片机应用实训教程S.西安电子科技大学出版社,2005:107-2676 肖洪兵,胡辉,郭速学跟我学单片机S北京航空航天大学出版社,2002:192-218.7 赵晓安. MCS-51单片机原理及应用Z. 天津:天津大学出版社,2001:66-120.8 周航慈. 单片机应用程序设计技术M.北京航空航天大学出版社,1991:05-100.9 余锡存,曹国华.单片机原理及接口技术S.西安电子科技大学出版社,2002:20-86.附 录附录1:系统软件设计的源程序ORG 0000HLJMP MAIN1ORG 0003HLJMP ZINT0ORG 0013H LJMP ZINT1TMPL EQU 29HTMPH EQU 28HFLAG1 EQU 38HDATAIN BIT P3.7*/主程序模块MAIN1: SETB IT0 SETB EA SETB EX0 SETB IT1 SETB EX1 SETB P3.6 SETB P3.2 MOV 74H,#0 MOV 75H,#0 MOV 76H,#0 MOV 77H,#0MAIN: LCALL GET_TEMPER LCALL CVTTMP LCALL DISP1 AJMP MAIN*/温度采集,控制温度模块INIT_1820: SETB DATAIN NOP CLR DATAIN MOV R1,#3TSR1: MOV R0,#107 DJNZ R0,$ DJNZ R1,TSR1 SETB DATAIN NOP NOP NOP MOV R0,#25HTSR2: JNB DATAIN,TSR3 DJNZ R0,TSR2 CLR FLAG1 SJMP TSR7TSR3: SETB FLAG1 CLR P1.7 MOV R0,#117TSR6: DJNZ R0,$TSR7: SETB DATAIN RETGET_TEMPER: SETB DATAIN LCALL INIT_1820 JB FLAG1,TSS2 NOP RETTSS2: MOV A,#0CCH LCALL WRITE_1820 MOV A,#44H LCALL WRITE_1820 ACALL DISP1 LCALL INIT_1820 MOV A,#0CCH LCALL WRITE_1820 MOV A,#0BEH LCALL WRITE_1820 LCALL READ_18200 RETWRITE_1820: MOV R2,#8 CLR CWR1: CLR DATAIN MOV R3,#6 DJNZ R3,$ RRC A MOV DATAIN,C MOV R3,#23 DJNZ R3,$ SETB DATAIN NOP DJNZ R2,WR1 SETB DATAIN RETREAD_18200: MOV R4,#2 MOV R1,#29HRE00: MOV R2,#8HRE01: CLR C SETB DATAIN NOP NOP CLR DATAIN NOP NOP NOP SETB DATAIN MOV R3,#9RE10: DJNZ R3,RE10 MOV C,DATAIN MOV R3,#23RE20: DJNZ R3,RE20 RRC A DJNZ R2,RE01 MOV R1,A DEC R1 DJNZ R4,RE00 RETCVTTMP: MOV A,TMPH ANL A,#80H JZ TMPC1 CLR C MOV A,TMPL CPL A ADD A,#1 MOV TMPL,A MOV A,TMPH CPL A ADDC A,#0 MOV 73H,#0BH SJMP TMPC11TMPC1: MOV 73H,#0AHTMPC11:MOV A,TMPL ANL A,#0FH MOV DPTR,#TMPTAB MOVC A,A+DPTR MOV 70H,A MOV A,TMPL ANL A,#0F0H SWAP A MOV TMPL,A MOV A,TMPH ANL A,#0FH SWAP A ORL A,TMPLH2BCD: MOV B,#100 DIV AB JZ B2BCD1 MOV 73H,AB2BCD1:MOV A,#10 XCH A,B DIV AB MOV 7

温馨提示

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

评论

0/150

提交评论