基于单片机饮水机温度控制设计.docx
《基于单片机饮水机温度控制设计.docx》由会员分享,可在线阅读,更多相关《基于单片机饮水机温度控制设计.docx(17页珍藏版)》请在冰点文库上搜索。
基于单片机饮水机温度控制设计
计算机控制技术课程设计任务书
学生姓名
专业班级
学号
题目
基于AT89C51单片机饮水机温度可控制
课题性质
工程设计
课题来源
自拟
指导教师
主要内容
(参数)
利用89C51设计饮水机温度控制系统,实现以下功能:
1.可以认为的通过独立按键控制饮水机的温度;
2.通过1602液晶显示饮水机温度;
3.可控制饮水机温度的上下温度限并能手动调节;
4.当高于上温度界限,或低于下界温度限是有警报;
任务要求
(进度)
第1天:
熟悉课程设计任务及要求,查阅技术资料,确定设计方案。
第2天:
按照确定的方案设计单元电路。
要求画出单元电路图,元件及元件参数选择要有依据,各单元电路的设计要有详细论述。
第3天:
软件设计,编写程序。
第4-5天:
撰写课程设计报告。
图表清晰、方案合理、设计正确,篇幅不少于6000字。
主要参考
资料
[1]何立民.MCS-51系列单片机应用系统设计.北京航空航天大学出版社,1900
[2]何立民.单片机应用系统(系统配置与接口技术).北京航空航天大学出版社,1994
[3]王之芳.传感器应用技术.西北工业大学出版社,1995
[4]南建辉,熊鸣,王军茹.MCS-51单片机原理及应用实例.清华大学出版社,2004
[5]张毅刚,彭喜源,曲春波等.MCS-51单片机应用设计.哈尔滨工业大学出版社,1997
[6]陈宝江.MCS单片机应用系统指南.北京:
机械工业出版社,1997
[7]万福君.单片微机原理系统设计与开发应用.中国科学出版社,1995
[8]张友德、赵志英等.单片机原理应用与实验.上海复旦大学出版社,.1992
[9]张毅刚等.MCS-51单片机应用设计.哈尔滨.哈尔滨工业大学出版社.1997.12
[10]高海生等.单片机应用技术大全.西安:
西安交通大学出版社,1991.12
审查意见
系(教研室)主任签字:
年月
目录
1引言3
2.总体方案设计4
2.1硬件组成4
2.2总体方案5
3.硬件设计5
3.1单片机选择5
3.1.1单片机最小系统6
3.1.2时钟电路7
3.1.3复位电路8
3.2温度采集电路设计8
3.3显示电路设计9
3.4键盘电路设计10
3.5报警电路设计11
3.6控制电路设计12
4.软件程序设计13
4.1主程序13
4.2温度采集子程序14
4.3独立键盘子程序14
4.41602液晶显示子程序15
4.5控制子程序15
5.总结16
产考文献17
附录A电路原理图18
1引言
温度控制是无论是在工业生产过程中,还是在日常生活中都起着非常重要的作用,过低的温度或过高的温度都会给我们的生活带来不便,特别是水之源,我们都知道水是生命之源,所以我们要珍惜我本身边的每一滴水,现在人们生活的提高,人们越来越重视身体健康,和日常饮食,我们喝水也讲究,比如冬天爱喝100度的水,因为可以取热,而夏天喜欢喝放凉的开水,而现在的饮水机只能喝道开水,我设计的一种饮水机可以调节饮水机保温温度,可以让你喝道健康任意温度的水。
本次设计为一个基于单片机的饮水机的温度控制系统,该系统可以实时检测饮水机水箱的水温,并且可以通过液晶显示饮水机水箱水温度数,可以通过键盘或开关选择制冷或加热,可以人为设置水的温度的上下限,如加热,当温度在设定的范围内时正常工作,当低于水温下限时控制加热器加热;如制冷,当温度高于水温上限时控制压缩机制冷,温度检测范围0~95℃,精度±1℃,当温度超过设定值时具有示警功能。
2总体方案设计
2.1硬件组成
按照设计要求,此饮水机具有温度上下限调节,温度显示,和超过温度上限报警,这就要求电路带有独立按键,1602液晶显示,由于我用的51型单片机内部不带有AD转换电路,所以还有AD转换模块,但我用了DS18B20,它是数字温度传感器,所以不用AD把模拟量传唤为数字量,这样既节省了金钱,有方便设计,DS18B20经过初始化后,再按照要求在转换完成后,可在它的温度寄存器中读取现在的温度。
而且DS18B20有门限温度警报值,一旦温度超过了其值自动提供报警信号,这样就可以用这样性质来控制饮水机的上限温度一旦超过了其值读18B20就可知道,很是方便。
图1.0饮水机温度控制硬件电路图
2.2总体方案
与上图要想达到设计要求及1,要能测得饮水机现在的温度,则可以从DS18B20中读取这样可以得到饮水现在的温度,然后比较一下看看是否在正常情况,如果没达到温度上限,继续加热达到测保温,如果超过这报警,通过键盘调节温度上限,下限,然会通过1602显示温度现在温度。
3硬件设计
3.1单片机选择
AT89C51是一种带8K字节闪存可编程可擦除只读存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位微处理器,俗称单片机。
AT89C51是一种带2K字节闪存可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除1000次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C5C是一种高效微控制器,AT89C2051是它的一种精简版本。
3.1图单片机拐角图
鉴于AT89C51单片机所具有的特性及本设计控制的复杂性和兼顾显示、报警、键盘控制等较高要求,本设计选用AT89C51单片机作为中心控制器。
3.1.1单片机最小系统
如图为电路板最小系统
单片机最小系统如图1.0所示,由主控器AT89C51、时钟电路和复位电路三部分组成。
单片机AT89C51作为核心控制器控制着整个系统的工作,而时钟电路负责产生单片机工作所必需的时钟信号,复位电路使得单片机能够正常、有序、稳定地工作。
图3.2单片机最小系统图
3.1.2时钟电路
单回路流量控制系统设
时钟电路用于产生AT89C51单片机工作时所必需的时钟信号。
其电路与AT89C51的连接如图2.1所示。
AT89C51单片机本身就是一个复杂的同步时序电路,为了保证同步工作方式的实现,AT89C51单片机应在唯一的时钟信号控制下,严格按时序执行指令进行工作,而时序所研究的是指令执行中各个信号的关系。
在执行指令时,CPU首先要到指令存储器中取出需要执行的指令操作码,然后译码,并由时序电路产生一系列控制信号去完成指令所规定的操作。
CPU发出的时序信号有两种,一是用于片内对各个功能部件的控制。
另一种是对片外存储器或I/O口的控制,这种时序对于分析、设计硬件接口电路至关重要。
这也是单片机应用设计者最关心的问题,由最小系统很容易知道其时钟电路的组成,这里就不在多说。
图3.3单片机时钟图
3.1.3复位电路
常用的复位电路有四种方式:
(1)上电复位电路
(2)按键复位电路(3)脉冲复位电路(4)兼有上电复位与按键复位的电路。
由于考虑到结构和成本等原因,在很多设计里面,复位电路通常采用上电复位和按键复位两种。
根据本系统的特性,决定选用最简单的上电复位电路。
该复位电路工作原理为:
在通电瞬间,在RC电路充电过程中,RST端出现正脉冲,保证RST引脚出现10ms以上稳定的高电平,从而使单片机复位。
图3.4单片机复位电路图
3.2温度采集电路设计
本设计中的温度采集系统由DS18B20传感器负责。
DS18B20工作原理为DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。
因为它是数字温度传感器,所以单片机可以直接从DS18B20读出现在饮水水机的温度。
图3.5温度传感器原理图
3.3显示电路设计
大多数的单片机应用系统,都要配置输入设备和输出设备。
本系统的输出设备是显示器,根据本系统的设计特点,采用1602液晶显示温度。
而本系统设计要求温度检测范围0℃~95℃,精度±1℃。
本设计显示电路的应用有两点,一是实时显示引水机水箱的水温值,另一个是显示键盘设定的温度上、下限值。
其电路连接如图2.6所示。
图3.61602液晶显示原理图
通过P10,P11,P12分别和RS,RW,E。
相连接有这三位来控制1602的读写,P20~~P27来输入转换后的温度信号(从DS18B20中的温度寄存器读入到单片机,在经过转换把温度数字信号转化为对应的码值)这样就可以显示从每次的温度信号,通过调节电位器可以调节1602的亮度,这就是显示环节。
3.4独立键盘设计
常用的键盘接口分为独立式按键接口和矩阵式键盘接口。
根据本系统的设计特点及要求,键盘的功能主要是用来设置温度上下限,因此本设计采用独立式键盘来完成这一功能要求。
图3.7独立键盘原理图
2、键盘功能说明
S17:
模式设置键,按一下进入到加热系统设置状态,再按一下切换到制冷系统设置状态。
S18:
步进加键,每按一下,要设置的限制值加1。
S19:
步进减键,每按一下,要设置的限制值减1。
S20:
确定键,确定前面所设的温度值。
所谓的键盘去抖动现象如图所示,在实际中在键盘按下的时候,必然有抖动现象,使得在单片机扫描中出现键盘误判,或多次判别的过程,使得设计出现错误,或不完整,想的不全面。
为了能全面准确,在程序中加入键盘销去抖动的消抖程序则可。
3.5报警电路设计
图3.8独立键盘原理图
当P34为低电平时,蜂鸣器响,也就是说,如果温度超过上限值时,通过DS18B20报警信号使单片机内部P34口拉低,P34为高电平时,蜂鸣器响声停止。
从而达到报警作用。
3.6控制电路设计
控制电路就是用两个I/O口分别控制两个继电器线圈,而两个继电器来分别控制加热器,和压缩机。
来达到加热和制冷的目的,通过两个继电器根据单片机从DS18B20读入的数据打开和闭合来达到控制饮水机温度的控制,这就是我的想法。
下图为部分控制电路。
图3.10控制电路原理图
该电路是由两个固态继电器作为控制开关,一个继电器控制加热装置,另一个继电器控制制冷装置。
固态继电器是一种无触点通断型电子开关,是四端有源器件,其中两个端子为控制输入端,另外两个为输出受控端。
为了实现输入与输出的隔离,器件采用了高耐压的光耦合器。
当输入信号有效时,电路呈导通状态,反之,呈断开状态,可以实现类似电磁继电器的开关功能。
固态继电器将MOSFET、GTR、普通晶闸管等组合在一起与触发电路封装在一个模块中,而且驱动电路与输出电路隔离。
固态继电器是可控硅过零触发器,无触点,不用调节,对电网不会产生波形畸变。
因此,非常适合本设计。
控制电路工作原理:
当AT89C51的RXD口输出一个高电平时,三极管开始工作,驱动继电器k1工作,继电器k1呈导通状态,加热装置开始工作。
同样,当AT89C51的TXD口输出一个高电平时,三极管开始工作,驱动继电器k2工作,继电器k2开关闭合,制冷装置开始工作。
4软件程序设计
系统软件设计也就是程序设计,就是在完成了硬件系统的基础上,再编写相应的程序,下载到芯片里,通过执行程序指令控制硬件,从而实现各种功能。
一般来讲,软件的功能可分为两大类。
一类是执行软件,它能完成各种实质性的功能,如测量、计算、显示、打印、输出控制等。
另一类是监控软件,它专门协调执行模块和操作者的关系,在系统中充当组织协调的角色。
由于用汇编语言编写的程序效率高,程序所占用的空间(内存大大减小)。
我先用汇编来完成这个小项目。
4.1主程序
本设计的软件设计包括主程序
键盘子程序、控制子程序及显示子程序。
结合本系统的功能,程序长度不会超过AT89C51内部的程序存储器,所以硬件上不用外扩程序存储器。
图4.1主程序流程图
4.2温度采集子程序
有温度采集只需向DS18B20读取数据则可,所以不在多说。
4.3独立键盘子程序
图4.2独立键盘软件程序流程图
在按键盘是一定要注意消抖动和松手检测。
这里不再多写。
4.4液晶显示子程序
1602我已在上面详细的说明过,这里不在多讲。
图4.3液晶显示程序流程图
这里不再多写,流程图已经显示的很清楚。
4.5控制子程序
本部分主要是实现声光报警和驱动加热或制冷功能。
由于本设计的控制对象有两路,一路是控制饮水机的热水水箱,另一路是控制凉水水箱,因此,有两个子程序,它们分别为控制子程序1和控制子程序2。
其流程图分别如下:
图4.4上限报警软件流程图图4.5报警下限软件流程图示
5.总结
通过这个小的课程设计,我学到了很多实用的知识,我翻阅了很多资料和文献,从中我学到了很多东西,我设计的这个基于单片机的温度控制,我了解到了我学的东西的用途,他与现实的连接点,我也知道了我知道的欠缺,我还有很多东西去学习,在大学这个黄金的学习时期,我们要抓紧时间学习多学点实用的知识,学而只用才能在这个社会在站着脚。
本设计我了解了AT89C51单片机的很多东西,学到了键盘的使用,液晶显示的原理和使用,还有DS18B20数字温度传感器的使用还有继电器,三极管搭建电路。
总之这次可能设计我收获很大,包裹学到了一些软件的使用。
参考文献
[1]何立民.MCS-51系列单片机应用系统设计.北京航空航天大学出版社.1900
[2]何立民.单片机应用系统(系统配置与接口技术).北京航空航天大学出版社.1994
[3]王之芳.传感器应用技术.西北工业大学出版社.1995
[4]南建辉、熊鸣、王军茹.MCS-51单片机原理及应用实例.清华大学出版社.2004
[5]张毅刚、彭喜源、曲春波等.MCS-51单片机应用设计.哈尔滨工业大学出版社.1997
[6]陈宝江.MCS单片机应用系统指南.北京:
机械工业出版社,1997
[7]万福君.单片微机原理系统设计与开发应用.中国科学出版社.1995
[8]张友德、赵志英等.单片机原理应用与实验.上海复旦大学出版社.1992
[9]张毅刚等.MCS-51单片机应用设计.哈尔滨.哈尔滨工业大学出版社.1997.12
[10]高海生等.单片机应用技术大全.西安:
西安交通大学出版社.1991.12
图5.0饮水机温度控制电路原理图