基于单片机控制的饮水机加热系统设计.docx
- 文档编号:3668044
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:49
- 大小:544.15KB
基于单片机控制的饮水机加热系统设计.docx
《基于单片机控制的饮水机加热系统设计.docx》由会员分享,可在线阅读,更多相关《基于单片机控制的饮水机加热系统设计.docx(49页珍藏版)》请在冰豆网上搜索。
基于单片机控制的饮水机加热系统设计
摘要
随着计算机在社会领域的渗透,单片机的应用正在不断地深入,同时带动传统控制检测日新月益更新。
在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及具体应用对象特点的软件结合,以作完善。
本文介绍了单片机应用于电加热饮水机的一种设计方法,该电加热饮水机具有自动化程度高、安全性好、功能多、使用方便、功率小、加热快、可靠性高等特点。
它以单片机AT80C51为核心,通过3个数码管显示温度和4个按键实现人机对话,使用单总线温度转换芯片DS18B20实时采集温度并通过数码管显示,并提供各种运行指示灯用来指示系统现在所处状态,如:
温度设置、加热、停止加热等,整个系统通过四个按键来设置加热温度和控制运行模式。
并详细地论述了以单K机为处理器的电加热饮水机的硬件、软件设计、系统编程和抗干扰设计等方面的问题。
本系统以ATMEL公司的AT80C51单片机为核心,由DS18B20、信号处理电路、键盘控制电路、LED显示电路、输出控制电路等构成。
关键词:
温度转换;LED显示电路;单片机;键盘控制电路
ABSTRACT
AlongwiththecomputerinthesocialsectorpenetrationandMCUapplicationiscontinuouslythorough,andpushthetraditionalcontroltestonthenewbeneficialupdate.Inrealtimedetectionandautomaticcontrolofthemicrocomputerapplicationsystem,theMCUisoftenasacorecomponenttouse,onlyMCUaspectsknowledgeisnotenough,shouldaccordingtothespecifichardwarestructure,andthespecificapplicationofthecharacteristicsoftheobjectsoftwarecombinationtobeperfect.Thispaperintroducedasingle-chipmicrocomputerwhichusedinelectricheatingwaterdispenserasadesignmethod,theelectricheatingwaterdispenserwithahighdegreeofautomation,securityandmulti-functionaleasytouse,smallpower,heatingquickly,andhighreliability.AT80C51microcontrollerasthecoreofit,throughthethreetemperaturedigitaldisplayand4keystoachieveman-machinedialogue,theuseofsingle-chipbustemperatureconversiontemperatureDS18B20real-timeacquisitionandthroughthedigitaldisplayandoffersavarietyofoperatinglighttoindicatesystemnowliveinthestate,suchas:
temperaturesetting,heating,andstopheating,theentiresystemthroughthefourbuttonstosettheheatingtemperatureandcontroltheoperatingmode.Thepaperdescribedindetailbythesingle-chipprocessorpowerforheatingwaterdispenserhardware,softwaredesign,systemdesign,programmingandanti-jammingproblems.ThecontrollerATMELCorporationAT80C51single-chipmicrocomputerasthecore,bytheDS18B20,signalprocessingcircuit,keyboardcontrolcircuit,LEDdisplaycircuit,putcontrolcircuit,etc.
keywords:
temperatureconversion;LEDdisplaycircuit;keyboardsingle-chipmicrocomputer;controlcircuit
第1章绪论
1.1研究的目的及意义
二十一世纪是科技高速发展的信息时代,电子技术、微型单片机技术的应用更是空前广泛,伴随着科学技术和生产的不断发展,需要对各种参数进行温度测量。
因此温度一词在生产生活之中出现的频率日益增多,与之相对应的,温度控制和测量也成为了生活生产中频繁使用的词语,同时它们在各行各业中也发挥着重要的作用。
目前,单片机在工业控制系统诸多领域得到了极为广泛的应用。
特别是其中的C51系列单片机的出现,由于它具有极好的稳定性,快速性和更准确的运算精度,所以它的出现不但推动了工业的生产,也影响着人们的工作和学习。
温度控制系统在现代工业设计、工程建设及日常生活中的应用越来越广泛。
在日常人们的生活中,温度控制系统的应用和作用也体现到了各个方而,随着人们生活质量的提高,酒店厂房及家庭生活中都会见到温度控制的影子,温度控制将更好的服务社会。
温度控制是工业生产过程中经常遇到的过程控制,有些工艺过程对其温度的控制效果直接影响着产品的质量,因而设计一种较为理想的温度控制系统是非常有价值的。
传统的温度采集电路相当复杂,需要经过温度采集、信号放大、滤波、AD转换等一系列工作才能得到温度的数字量,并且这种方式不仅电路复杂,元器件个数多,而且线性度和准确度都不理想,抗干扰能力弱。
现在常用的温度传感器芯片不但功率消耗低、准确率高,而且比传统的温度传感器有更好的线性表现,最重要的一点是使用起来方便。
本次设计为一个基于单片机的饮水机的温度控制系统,该系统可以实时检测饮水机水箱的水温,并且可以通过数码管显示饮水机水箱水温度数,可以通过键盘或开关选择制冷或加热,可以人为设置水的温度的上下限,如加热,当温度在设定的范围内时正常工作,当低于水温下限时控制加热器加热;如制冷,当温度高于水温上限时控制压缩机制冷,当温度超过设定值时具有示警功能。
1.2单片机的发展趋势
单片机的发展趋势是向大容量、高性能化、外围电路内装化等方面发展。
为满足不同用户的要求,各公司竞相推出能满足不同需求的产品。
1.CPU的改进
(1)增加CPU的数据总线宽度。
例如,各种16位单片机和32位单片机,其数据处理能力要优于8位单片机。
。
(2)采用双CPU结构,以提高数据处理能力。
2.存储器的发展
(1)片内的程序存储器现在普遍采用闪速(Flash)存储器。
Flash存储器能在+5V下读/写,既有静态RAM的读/写操作简便,又有在掉电时数据不会丢失的优点。
使用片内Flash存储器,单片机可不用片外扩展程序存储器,大大简化了其应用系统结构。
(2)加大存储容量。
目前有的单片机片内程序存储器容量可达128KB甚至更多。
3.片内I/O的改进
(1)增加并行口的驱动能力,以减少外部驱动芯片。
有的单片机可以直接输出大电流和高电压,以便能直接驱动LED和VFD(荧光显示器)。
(2)有些单片机设置了一些特殊的串行I/O功能,为构成分布式、网络化系统提供了方便条件。
4.低功耗化
8位单片机产品已CMOS化,CMOS芯片的单片机具有功耗小的优点,而且为了充分发挥低功耗的特点,这类单片机普遍配置有等待状态、睡眠状态、关闭状态等工作方式。
5.外围电路内装化
随着集成电路技术及工艺的不断发展,把所需的众多外围电路全部装入单片机内,即系统的单片化是目前单片机发展趋势之一。
例如,美国Cygnal公司的C8051F0208位单片机,内部采用流水线结构,大部分指令的完成时间为1或2个时钟周期,峰值处理能力为25MIPS。
片上集成有8通道A/D、两路D/A、两路电压比较器,内置温度传感器、定时器、可编程数字交叉开关和64个通用I/O口、电源监测、看门狗、多种类型的串行接口(两个UART、SPI)等。
一片芯片就是一个“测控”系统。
1.3主要研究的内容
1.本系统上电后数码管显示当前测量温度,此时加热指示灯和保温指示灯均不点亮;若此时按“自动加热”键,则单片机自动将预加热温度设置为80℃并开始加热,送出一个加热信号,并点亮加热指示灯;若按“温度设置”键,则进入预加热温度设置界面,此时数码管闪烁显示预先设置的温度,此时通过按键“+”和“-”进行设置温度,预先设置的温度按“5”为梯度递增或递减,设置好温度后再按一次“温度设置”键确定,单片机保存预先设置的温度,并开始加热;
2.如果实测温度大于或等于预先设置的温度,则单片机发出停止加热信号并熄灭加热指示灯,同时点亮保温指示灯,且当超过预设温度时发出报警;
3.当温度下降到预先设置的温度以下5度时,单片机再次发出加热信号,同时熄灭保温指示灯,并且点亮加热指示灯,依次循环控制;
4.完成加热管控制电路、报警电路设计,重点设计好临界点问题。
第2章系统总体的设计
2.1硬件总体的设计
设计并制作一个基于单片机的热水器温度控制系统的电路,其结构框图如图2.1:
图2.1系统机构框图
硬件系统子模块:
(1)单片机最小系统电路部分;
(2)键盘扫描电路部分;
(3)数码管温度显示和运行指示灯电路部分;
(4)温度采集电路部分;
(5)继电器控制部分;
(6)报警部分。
2.2总体方案论证
根据题目的要求,我们提出以下两种设计方案:
方案1:
此方案是釆用传统的二位模拟控制方法,选用模拟电路,用电位器设定给定值,采用上下限比较电路将反馈的温度值与给定的温度值比较后,决定加热或者不加热。
由于采用模拟控制方式,系统受环境的影响大,不能实现复杂的控制算法使控制精度做得较高,而且不能用数码显示%。
方案2:
采用单片机AT80C51为核心。
采用了温度传感器DS18B20采集温度变化信号,该传感器可以直接采集数字信号并通过单片机处理后去控制温度,使其达到稳定。
使用单片机具有编程灵活,控制简单的优点,使系统能简单的实现温度的控制及显示,并且通过软件编程能实现各种控制算法使系统还具有控制精度高的特点。
比较上述两种方案,方案2较好的改善了方案1的不足,并具有控制简单、控制温度精度高的特点,因此本设计电路采用方案2较为合适。
2.3各部分电路方案论证
本电路以单片机为基础核心,系统由前向通道模块、后向控制模块、系统主模块及键盘显示摸块等四大模块组成。
现将各部分主要元件及电路做以下的论证:
(1)温度采样部分
方案1:
采用热敏电阻,可满足0°C〜95°C的测量范围,但热敏电阻精度、重复性和可靠性都比较差,对于检测精度小于1°C的温度信号是不适用的。
方案2:
采用温度传感器DS18B20。
DS18B20具有体积小、质量轻、线形度好、性能稳定等优点。
其测量范围在-55°C〜+125°C,在-10°C〜+85°C时,其精度为0.5°C,当电源电压在5〜10V之间,稳定度为1%时,误差只有±0.01%时,其各方面特性都满足此系统的设计要求。
此外DS18B20是温度电流传感器,对于提高系统抗干扰能力有很大的帮助。
经上述比较,方案2明显优于方案1,故选用方案2。
(2)显示部分
控制与显示电路是反映电路性能、外观的最直观部分,所以此部分电路设计的好坏直接影响到电路整体的好坏。
方案1:
采用可编程控制器8279与数码管及地址译码器74LS138组成,可编程/显示器件8279提供LED的显示信号,并对对LED显示控制。
方案2:
采用单片机AT80C51的串口对主电路进行通信,并对LED显示进行控制这种方案既能很好的控制显示,又能为主单片机极大的减少了程序的复杂性,而且具有体积小,价格便宜等特点。
对比以上两种方案可知,方案1虽然也能够很好的实现电路的要求,但考虑到电路设计的成本以及电路整体的性能,我们方案2更适合。
(3)控制电路部分
方案1:
采用8031芯片,其内部没有程序存储器,因此需要进行外部扩展,这就会给电路增加复杂度。
方案2:
本方案的CPU模块采用2051芯片,其内部具有2kB单元的程序存储器,不需外部扩展程序存储器。
但由于系统用到较多的I/O口,因此芯片资源不够用。
方案3:
采用AT80C51单片机,它内部有8kB单元的程序存储器,因此不需外部扩展程序存储器,而且它的I/O口也足够本次设计的要求
比较以上3种方案,综合考虑单片机的各部分资源和性能,冈此此次设计选用方案3较为合适。
第3章硬件系统设计
3.1硬件电路分析和设计
本次设计主要思路:
通过对单片机编程将温度传感器DS18B20采集的温度由外加驱动电路显示出来,包括对继电器的控制,进行升温控制,当温度达到上下限温度值时,蜂鸣器将进行报警。
P1.7开关按钮是用于确认设定温度的,初始按下表示开始进入温度设定状态,然后可以通过P1.5和P1.6按键设置温度的升降,当再次按下P1.7时,表示确认所设定的温度,然后转入升温或降温。
P2.3所连接的发光二极管用来表示加热状态,P2.5所连接的发光二极管用来表示保温状态。
P2.3连接继电器,P3.1是温度信号线。
所以可知,整个电路都是通过软件控制来实现设计要求的。
3.1.1单片机最小系统电路
因为AT80C51单片机内部自带8K的ROM和256字节的RAM,因此不需要再构建单片机系统的扩展电路。
如图3.1,单片机最小系统有复位电路和振荡器电路。
值得注意的是,单片机的31脚
必须接高电平,否则系统将不能运行。
因为该引脚若不接时为低电平,单片机将会直接读取外部程序存储器,而系统并没有外部程序存储器,所以
必须接VCC。
在按键两端并联一个电解电容,以便滤除交流干扰,增加系统的抗干扰能力。
P0口:
P0口为一个8位漏极开路双向I/O口,每个管脚都可吸收8个TTL门电流。
当P1口的管脚第一次写“1”时,将被定义为高阻输入。
P0口能够作为外部程序数据存储器,它可以被定义为数据/地址的低八位。
在Flash编程时,P0口作为原码输入口,当Flash进行校验时,P0输出原码,此时P0外部电平必须被拉高。
P1口:
P1口是一个内部可以提供上拉电阻的8位双向I/O口,P1口缓冲器能够接收输出4个TTL门电流。
当P1口管脚写入“1”后,被内部上拉为高电平,可用作输入,当P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口会作为低八位地址接收。
图3.1单片机最小系统图
AT80C51的管脚功用:
VCC:
供电电压,在本设计中供电电压为+5V。
GND:
接地。
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口将输出电流,这是由于上拉的缘故。
RST:
复位输入端。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平状态。
ALE:
当访问外部存储器时,地址锁存于锁存地址的低位字节。
在FLASH编程期间,该引脚用于输入编程脉冲。
在平时,ALE端口以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时。
然而,需要注意的是:
每当其被用作外部数据存储器时,将会跳过一个ALE脉冲。
如果想要禁止ALE的输出,可将SFR8EH地址置0。
此时,ALE只有在执行MOVX,MOVC指令时ALE才会起作用。
PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指令期间,每个机器周期PSEN两次有效。
但在访问外部数据存储器时,这两次有效的PSEN信号将不出现。
EA:
EA功能为内外程序存储器选择控制端。
当EA保持低电平时,单片机访问外部程序存储器。
当EA端保持高电平时,单片机将会访问内部程序存储器。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入端。
XTAL2:
来自反向振荡器的输出端。
3.1.2键盘电路
键盘是单片机应用系统中的主要输入设备,单片机使用的键盘分为编码键盘和非编码键盘。
编码键盘采用硬件线路来实现键盘的编码,每按下一个键,键盘能够自动生成按键代码,并具有去抖功能。
虽然这方法使用方便,但硬件较复杂。
非编码键盘仅仅提供键开关状态,通过程序来识别键闭合,消除抖动,产生相应的代码,转入执行该键的功能程序。
非编码键盘中键的数量较少,而且硬件简单,因此在单片机中应用非常广泛。
图为按键和AT80C51的接线图,检测仪共设有4个按键,每个按键都由软件来决定其功能,4个按键功能分别为:
图3.2单片机按键和AT80C51的接线图
(1)SW1:
设定按键(设定按键)
(2)SW2:
加法按键(当前位加5)
(3)SW3:
减法按键(当前位减5)
(4)SW4:
退出设置键(系统初始化)
3.1.3数码管及指示灯显示电路
(1)数码管显示说明
每个数码管的段码都是单片机的数据口输出,即各个数码管输入的段码都是一样的,为了使其分别显示不同的数字,可采用动态的显示方式,即先只让最低位显示0(含点),经过一段延时后,再只让次低位显示1,如此类推。
由视觉暂留,只要我们的延时时间足够短,就能够使得数码的显示看起来非常的稳定清楚,过程如表3-1。
表3-1数码管编码表
段码
位码
显示器状态
08H
01H
□□□□□□□0
abH
02H
□□□□□□1□
12H
04H
□□□□□2□□
22H
08H
□□□□3□□□
a1H
10H
□□□4□□□□
24H
20H
□□5□□□□□
04H
40H
□6□□□□□□
aaH
80H
7□□□□□□□
本系统设计中使用了3个数码管,其中前两位通过动态扫描用来显示实测温度,当我们设置加热温度的时候,两个数码管是闪烁的,以便提示目前处在温度设置状态。
而第三位数码管通过静态用来显示符号“℃”。
(2)运行指示灯的说明
该热水器温度控制系统中使用到3个数码管和3个LED指示灯。
其中,右上角的红色LED为电源指示灯;数码管右边的红色LED为加热指示灯,当刚开机或温度降到设定温度5℃以下时,该灯就会点亮,表明目前饮水机处于加热状态;当温度上升到设定温度时,该LED熄灭,与此同时数码管右边的绿色LED亮,表示饮水机目前处于保温状态,用户可以使用热水器内热水;当温度再次下降到设定温度5℃以下时,绿色LED熄灭,同时红色加热的LED灯点亮,就这样,不断循环。
图3.3LED数码管显示电路图
3.1.4温度采集电路
(1)DS18B20介绍
Dallas半导体公司的数字化温度传感器DS1820是世界上第一片支持“一线总线”接口的温度传感器。
一线总线具有独特而且经济的特点,使用户可以轻松地组建传感器网络,为测量系统的构建引入全新简洁的概念。
实时温度直接以“一线总线”的数字方式传输,极大的提高了系统的抗干扰性。
DS18B20性能特点:
1)独特的单线接口方式:
DS18B20在I/O处理器连接时,只需要一个I/O口,即可实现微处理器同DS18B20的双向通讯。
2)测温范围:
-55°C〜+125°C,在-10°C〜+85°C时,其精度为0.5°C。
3)分辨率:
DS18B20的分辨率由9〜12位(包括1位符号位)数据在线编程决定。
4)温度转换时间:
DS18B20的转换时间与设定的分辨率有关,当设定为9位时最大转换时间为93.75ms;10位时,为187.5ms;11位时,为375ms;12位时,为750ms。
在使用过程中,测得12位时,一般为5〜7.5ms。
其DS18B20的管脚配置和封装结构如图3.4所示。
图3.4DS18B20封装
引脚定义:
1)DQ为数字信号输入/输出端;
2)GND为接地端;
3)VDD为外接供电电源输入端;
(2)DS18B20的单线(1-wirebus)系统
单线总线结构是DS18B20的突出特点,但也是理解和编程的难点。
需要从两个角度来理解单线总线:
第一,单线总线只定义了一个信号线,而且DS18B20智能程度较低,所以DS18B20和处理器之间的通信必然要通过严格的时序控制来完成。
第二,DS18B20的输出口是漏级开路输出,这里给出一个微控制器和DS18B20连接原理图。
这种设计使总线上的器件要在合适的时间驱动它。
显然,总线上的器件与(wiredAND)关系。
这就决定:
(1)微控制器不能单方面控制总线状态。
之所以提出这点,是因为相当多的资料上认为,微控制器在读取总线上数据之前的I/O口的置1操作是为了给DS18B20一个发送数据的信号。
这是一个错误的观点。
因为如果当前DS18B20发送0,即使微控制器I/O口置1,总线状态还是0;置1操作是为了是I/O口截止(cutoff),以便确保微控制器能够正确的读取数据。
(2)除了DS18B20发送0的时间段,其他时间段其输出口自动截止。
自动截止是为确保:
一,在总线操作的间隙总线处于空闲状态,即高态;二,确保微控制器在写1的时DS18B20能够正确读入。
由于DS18B20采用的是1-Wire总线协议方式,即在一根数据线实现数据的双向传输,而对AT89S52单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。
①DS18B20的复位时序,如图3.5
图3.5DS18B20的复位时序图
②DS18B20的读时序
对于DS18B20的读时序分为读0时序和读1时序两个过程。
对于DS18B20的读时隙是从主机把单总线拉低之后,在15秒之内就得释放单总线,以让DS18B20把数据传输到单总线上。
DS18B20在完成一个读时序过程,至少需要60us才能完成。
DS18B20的读时序图如图3.6所示。
图3.6DS18B20的读时序
③DS18B20的写时序
对于DS18B20的写时序仍然分为写0时序和写1时序两个过程。
对于DS18B20写0时序和写1时序的要求不同,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 控制 饮水机 加热 系统 设计