版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
(此文档为word格式,下载后您可任意编辑修改! )饮水机温度控制的系统设计与仿真摘 要本文设计并实现了一种饮水机温度控制系统。其硬件系统以AT89C52单片机为核心,用温度传感器DS18B20实现温度控制,用液晶屏显示实时温度、时间与预设温度,制作数字温度计,并可实现温度预警控制。单片机系统的软件设计采用C语言进行编程,应用软件采用KEIL和PROTEUS仿真软件模拟实现控制过程。该饮水机控制系统是基于单片机的计算机检测技术的软硬件开发的一种应用,不仅可以创造良好的经济效益,还可优化饮水机温度控制系统。关键词:AT89C52单片机;DS18B20;温度控制TheDesignandSimulationofDrinkingMachineTemperatureControlSystemABSTRACTThispaperintroducesawaterdispensertemperaturecontrolsystem.ThissystemtakesAT89C52asacore,andrealizesthetemperaturecontrolwithtemperaturesensorDS18B20.TheactualtemperatureandthepreinstalltemperaturearedisplayedwiththeLCD,thesimpleintelligenttemperaturecontrolsystemdigitthermometerismanufactured,andmayrealizethetemperatureearlywarningcontrol.Thesoftwareprogrammingusesclanguagetocarryontheprogramming.TheapplicationsoftwareusesKEILandthePROTEUSsimulationsoftwarerealizingthecontrolledprocess.Thewaterdispensercontrolsystemisbasedonanapplicationofthesinglechipcomputertechnologycannotonlycreateagoodeconomicbenefits,butalsooptimizethefountainstemperaturecontrolsystem.Keyword:themicrocontrollerAT89C52;DS18B20;temperaturecontrol.目 录1绪论.......................................................................................................................41.1课题来源...........................................................................................................................41.2课题发展现状及意义........................................................................................................41.3本文设计思路....................................................................................................................51.4本文结构............................................................................................................................52系统的硬件设计....................................................................................................62.1系统工作原理与功能.......................................................................................................62.2硬件系统组成及各模块介绍............................................................................................63系统的软件设计..................................................................................................133.1软件总体设计思路..........................................................................................................133.2主程序软件设计..............................................................................................................143.3键盘子程序软件设计......................................................................................................153.4报警子程序软件设计......................................................................................................163.5显示子程序软件设计......................................................................错误!未定义书签。4系统软件仿真......................................................................错误!未定义书签。4.1Protues介绍....................................................................................错误!未定义书签。4.2KeiluVision4调试软件..................................................................错误!未定义书签。4.3ProteusISIS的仿真步骤与结果...................................................错误!未定义书签。总结.....................................................................................错误!未定义书签。参考文献.......................................................................................................错误!未定义书签。附录...........................................................................................................错误!未定义书签。致 谢 21饮水机温度控制系统的设计与仿真绪论1.1课题来源目前市场大部分饮水机采用了热敏电阻进行温度控制,饮水机从室温把水加热到沸腾,开关断开;之后温度下降,当温度下降到一定时,温控开关闭合,然后继续加热到沸腾,周而复始。这不仅造成能源的浪费,反复烧开的热水被人体吸收后,其中还有重金属等有害物质对人体健康是及其危害的。这种水俗称“千滚水”,千滚水不仅对人体健康有害而且还会造成能源浪费。为了避免饮水机的开水因反复烧开而造成的二次污染,该设计利用AT89C52单片机芯片对水温进行智能控制,使水保持在一个较适合的温度,一方面便于使用者及时饮用,一方面节约能源资源,有较好的发展前景。1.2课题发展现状及意义随着人类社会的不断进步,人类饮用水的供给方式也随其发生着变化,其过程为:河水→井水→自来水→购买桶装水→自制健康纯水。对此已形成了“喝纯净水,用自来水”的现代饮水新观念。我国现阶段的生活饮用水市场,实质上是桶装饮用水、自来水终端制水、管道直饮水三分天下的格局。其中桶装水以85%的绝对优势占据着市场的主导地位,但是桶装水存在着“二次污染”问题以及假冒伪劣等现实问题。管道分质供水在美国等发达国家的普及率为30%左右,目前国内的上海、广州、东莞等地开始试点,但由于工程浩大,近年内难有大的作为。自来水终端制水就产品来分,可以分为对自来水等进行初步过滤的净水器和各种大、中、小型的办公、家用纯水机,普及率在15%左右。可见现在仍普遍用桶装水,但是为避免反复烧开造成的“千滚水”产生的重金属对身体的危害,因而本文设计用单片机来控制水温使其保持在一个较适合的温度,以适于用户的即时饮用。目前饮水机的控制方式可分为普通控制型、智能感应型和微电脑控制型三类。普通控制型饮水机其加热和制冷均自动恒温控制,是目前用户使用最多的机型,并且其价位适中一般为首选。因而,本文在此基础上,做了一些改造使其更为人性化,比如说设置一定的保温温度使其一直处在这已设定温度左右,可供随时饮用,不必担心水温过烫的问题等。该设计可以实时检测饮水机水箱的水温,并且可以通液晶显示饮水机水箱水温度数,可以人为设置水的温度的保温值,当温度在设定的范围内时正常工作,当低于保温温度时控制加热器加热;当温度高于水温保温温度时继电器断开停止加热。另外,其温度检测范围为0~100℃,精度±1℃,并且有一定的时间延迟。该设计操作简单,可视化强,因而有较大的发展空间。1.3本文设计思路整个基于单片机的温度控制系统无论是硬件设计还是软件设计均采用模块化设计思想。先将整个设计系统划分为几个模块,然后自上到下、由大到小、分步细化,然后逐个进行详细射击,最后将各个模块组合起来。系统的设计过程如下:1)首先根据用户对设计系统的具体要求来设计系统的总体构成。2)模块化思想对系统硬件进行模块划分。3)对系统硬件的各个模块在进行细化并对各个细化的具体元器件进行性能比较和型号选择。4)根据硬件电路结合控制系统的要求对软件系统进行功能划分和模块划分。5)进行内部资源分配。6)结合资源分配、控制要求和实际电路进行各个子模块的软件编程设计。1.4本文结构本文第一章为绪论部分,分析了现今饮水机使用状况及应用前景,并总体概括了设计思路。第二章概要介绍了系统总体硬件设计及各个模块的详细介绍,第三章具体概括了软件部分的的具体实现,第四章为编译与仿真结果分析。系统的硬件设计2.1系统工作原理与功能(1)工作原理该系统主要通过传感器来输入数据,传感器将水温温度即室温温度等非电信号转化为电信号,再由信号处理电路,将传感器输出的电信号进行处理 (放大、滤波等),使之满足AD转换的要求,然后由AD转换电路完成将温度传感器输出的模拟信号到数字信号的转换。CPU首先写入命令给DS18B20,然后DS18B20开始转换数据,转换后通过AT89C52来处理数据,由LCD显示屏显示实时温度与时间。并且可以通过外中断来实现对温度的预设,由存储电路存储这一预设温度,通过继电器根据预设温度来控制加热与否。(2)系统功能饮水机温控系统主要是控制水的温度,让用户使用起来方便。首先,第一次加水的时候,通过单片机的控制,烧开时蜂鸣器报警,得到干净卫生的饮用水。其次,温度恒定在设计值附近,使得用户可以随时饮用适合自己温度的饮用水。水加热时,灯亮,当加热到设置的温度时灯灭继电器断开,当低于设置的温度1℃时开始加热直到达到设定的温度。如此往复。另外,该显示器除具有显示温度功能时还可以显示时间也为其一特点。2.2硬件系统组成及各模块介绍按系统的功能设计要求,硬件电路模块包括如下部分:测温电路时钟电路数据保存电路键盘接口电路继电器控制模块显示模块如图2-1所示系统组成的结构框图。电源温度传感器 继电器 指示灯单片机AT89C52报警按键液晶显示图2-1系统结构图温度采集模块温度采集模块功能是对外界水温进行采集,然后将信号传给单片机。测量温度的关键是温度传感器,本文采用DS18B20进行测温,其温度值可以直接读出来,通过核心部件单片机AT89C52控制温度的读写和显示,通过LCD进行显示。1)DS18B20介绍Dallas单线数字温度传感器DS18B20具有“一线器件”体积更小、适用电压更宽、更经济等特点。Dallas半导体公司的数字化温度传感器DS1820是世界上第一片支持“一线总线”接口的温度传感器。“一线总线”独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。DS18B20、DS1822“一线总线”数字化温度传感器同DS18B20一样,DS18B20也支持“一线总线”接口,测量温度范围为-55℃~+125℃,在-10℃~+85℃范围内,精度为±0.5℃。DS1822的精度较差为±2℃。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。其DS18B20的管脚配置和封装结构如图2-2所示[1]。图2-2DS18B20封装引脚定义:①DQ为数字信号输入输出端;②GND为电源地;VDD为外接供电电源输入端(在寄生电源接线方式时接地)。2)DS18B20的单线(1-wirebus)系统单线总线结构是DS18B20的突出特点,也是理解和编程的难点。从两个方面来理解单线总线:一,单线总线只定义了一个信号线,而且DS18B20智能程度较低(这点可以与微控制器和SPI器件间的通信做一个比较),所以DS18B20和处理器之间的通信必然要通过严格的时序控制来完成。二,DS18B20的输出口是漏级开路输出,这种设计使总线上的器件在合适的时间驱动它。显然,总线上的器件与(wiredAND)关系。这就决定:(1)微控制器不能单方面控制总线状态。之所以提出这点,是因为相当多的文献资料上认为,微控制器在读取总线上数据之前的IO口的置1操作是为了给DS18B20一个发送数据的信号。这是一个错误的观点。如果当前DS18B20发送0,即使微控制器IO口置1,总线状态还是0;置1操作是为了是IO口截止(cutoff),以确保微控制器正确读取数据。(2)除了DS18B20发送0的时间段,其他时间其输出口自动截止。自动截止是为确保:1时,在总线操作的间隙总线处于空闲状态,即高态。2时,确保微控制器在写1的时候DS18B20可以正确读入[2]。本设计将温度传感器DS18B20与单片机RXD引脚相连,读取温度传感器的数值。硬件如图2-3:2-4DS1302[3]。图2-3DS18B20硬件电路图时钟电路本文增加的一个功能为显示实时时间,为了更准确的显示时间,硬件电路设置了时钟电路模块,并且由 LCD屏显示。本文选用DS1302做为时钟电路,DS1302的结构及工作原理:如图2-4所示DS1302的引脚排列,其中Vcc1为后备电源,VCC2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768kHz晶振。RST是复位片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,IO引脚变为高阻态。上电运行时,在Vcc≥之前,RST必2.5V须保持低电平。只有在 SCLK为低电平时,才能将 RST置为高电平。IO为串行数据双向输入输出端,SCLK始终是输入端Vcc118Vcc2X127SCLKX236I/OGND45RST图 引脚图本文中RST、SCLK和IO口分别于单片机的 P1.5,P1.6和P1.7口相连。图2-5为时钟电路硬件部分:图2-5时钟电路硬件电路图数据保存电路图2-6数据保存硬件电路图数据保存电路功能就是数据通过单片机的数据口被单片机接收后单片机再通过串口发给计算机,在计算机中用串口调试工具就可以收到单片机发出的数据。本文数据保存电路根据系统的要求,即保存设定的温度以与实际温度比较来控制继电器开合状态,因而采用24C04A,其内存为4K。数据保存电路如图 2-6所示:本设计采用24C04A保存电路SCK和SDA引脚分别接单片机 P2.4和P2.5引脚。键盘接口电路常用的键盘接口电路有独立式按键接口和矩阵式按键接口,根据本设计的功能要求采用独立式按键接口。本设计键盘接口很简单,五个开关分别直接与单片机引脚P1.0--P1.4相连,P1.0与PI.1是读和写命令,P1.2与P1.3负责写入的温度的十位与个位,P1.4引脚负责“开始”命令。电磁继电器控制电路电磁继电器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流,较低的电压去控制较大电流,较高的电压的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用[4]。本模块中继电器与一灯泡相连,加热状态时为灯亮即继电器闭合,保温状态时,灯灭,继电器断开。继电器与单片机相连如图 2-7所示:图2-7继电器硬件电路图本设计中若继电器吸合电源接通开始加热同时灯亮,反之灯灭。显示模块图2-8液晶显示硬件电路图本文采用
LCD
显示温度与时间,因为要显示较多字符所以不选用
LED。一般选用LMO16L
作为液晶模块,其采用
HD44780
控制器,
HD44780
具有简单而功能较强的指令集可以实现字符移动、闪烁功能。单片机控制液晶显示屏系统总共可分为四个环节,分别是单片机控制系统、字符显示模块、控制开关模块和液晶显示屏模块。通过这四个模块的协调工作就可以完成相应的液晶屏控制和显示功能[5]。如上图2-8所示:本文设计数据口接P0口的输入,并根据不同的按键在字符型液晶上显示不同的字符。LCD的D0—D7引脚分别于单片机P0—P7数据口连接。系统的总体硬件电路本文采用 AT89C52型号的单片机,此型号单片机是一个低电压,高性能 CMOS8位单片机。AT89C52有40个引脚,32个外部双向输入输出( IO)端口,同时内含2个外中断口,3个16位可编程定时计数器 ,2个全双工串行通信口, 2个读写口线。AT89C52
可以按照常规方法进行编程
,但不可以在线编程
(S
系列的才支持在线编程)。其将通用的微处理器和
Flash
存储器结合在一起,特别是可反复擦写的
Flash存储器可有效地降低开发成本
[6]。由系统所要实现的功能将各个模块与单片机连接构成系统整体硬件电路,如图
2-9所示:图2-9总硬件电路图系统的软件设计为了便于系统维护和功能扩充,采用了模块化程序设计方法,系统各个模块的具体功能都是通过子程序调用实现的。本设计的软件设计包括主程序,键盘子程序,报警子程序,显示模块子程序等。3.1软件总体设计思路良好的设计方案可以减少软件设计的工作量,提高软件的可读性,扩展性和通用型。本系统的设计方案和步骤如下:按照系统的功能要求来逐级划分模块。明确各模块之间的数据流传递关系,为增强各模块的独立性,力求数据传递少,便于软件编制和调试。确定软件开发环境,选择设计语言,完成模块功能设计,并分别调试通过。按照开发式软件设计结构,将各模块有机的结合起来,即成一个较完善的系统。3.2主程序软件设计主程序主要包括对显示子程序,键盘子程序,报警子程序的控制和调用。下图流程图是按照其本设计所要实现的功能来的设计的。主程序流程图如图 3-1:主程序初始化LCD初始化LCD显示温度设定目标温度N设定温度大于报警值99度
DS18B20读取温度LCD显示温度实温大于N继续加热灯亮设定温度Y继电器断开停止加热灯灭Y报警3-1主程序流程图3.3键盘子程序软件设计在执行程序的时候只需逐位判断P3.2,P3.3,P3.4,P3.5口是高电平还是低电平,若为高电平,则表示没有按键按下;若为低电平,则表示有按键按下。在程序的设计当中,考虑了按键的去抖动问题。因为用手按下一个按键时,往往会出现所按键在闭合位置和断开位置之间跳动几下才稳定到闭合状态的情况。在释放一个键的时候,也会出现类似的情况,抖动的时间是不一致的,通常小于 10毫秒,若抖动的问题不解决,就会引起闭合键的多次读入。对于键的抖动处理,一般采用软件延时10毫秒的方法。在发现有按键闭合时,不是立即读入该键值,而是延时一段时间以后,再进行键闭合与否的判断,确认此时是否真的有按键下,有则进行该按键的处理,没有则不进行处理。先判断是否右键按下,再判断是哪个按键,分别按照各个功能执行。键盘子程序如图3-2:开始有按键按下?延时1ms判别键号按键处理返回3-2键盘子程序流程图3.4报警子程序软件设计报警子程序是在当设定的保温温度大于 99℃时,当加热到这个预设温度时,蜂鸣器报警提示水烧开,继电器断开,停止加热,温度下降,停止报警。报警子程序中响乐用到的头文件如下:#include<reg52.uchartempflag; 温度正负标志位externucharqian,bai,shi,ge;externuchartime[7],timestr[9],datestr[11],weekstr[2];sbitrelay=P3^7;sbitspeaker=P3^6;sbitkey_read=P1^0;sbitkey_write=P1^1;sbitkey_shi=P1^2;sbitkey_ge=P1^3;sbitkey_start=P1^4;ucharconvert_parameter(uchart_shi,uchart_ge);voidmain(void){bitt_cflag=1,time_flag=1;uchart_shi=0,t_ge=0,temp=0,vtemp=0;lcd1602_init();ds1302_init();playm_init_sound();temp=i2c_read_data(7);*start**while(time_flag){i=0;if(!key_read)i++;if(i>7)i=0;switch(i){case0: { lcd1602_setxy(0,1);lcd1602_printstr("year:");}case1: { lcd1602_setxy(0,1);lcd1602_printstr("month:");}case2: { lcd1602_setxy(0,1);lcd1602_printstr("day:");}case3: { lcd1602_setxy(0,1);lcd1602_printstr("week:");}case4: { lcd1602_setxy(0,1);lcd1602_printstr("lcd1602_printstr("settemperature");delayms(1000);while(!key_start);}}**while(t_cflag){if(!key_read){lcd1602_init();clearscreenlcd1602_write_cmd(0x80);lcd1602_printstr("lastinputT:");lcd1602_setxy(8,1);lcd1602_write_data(0xdf);lcd1602_write_data(0x43);lcd1602_setxy(6,1);t_shi=temp10;t_ge=temp%10;lcd1602_write_data(0x30+t_shi);lcd1602_write_data(0x30+t_ge);delayms(1000);while(!key_read);}lcd1602_write_cmd(0x80);lcd1602_printstr("pleaseinputT:");lcd1602_write_cmd(0x80+0x40);lcd1602_setxy(8,1);lcd1602_write_data(0xdf);lcd1602_write_data(0x43);lcd1602_setxy(6,1);lcd1602_write_data(0x30+t_shi);lcd1602_write_data(0x30+t_ge);if(!key_shi)if(t_shi<9)t_shi++;elset_shi=0;while(!key_shi);if(!key_ge)if(t_ge<9)t_ge++;elset_ge=0;while(!key_ge);if(!key_write){temp=t_shi*10+t_ge;i2c_write_data(7,temp);lcd1602_init();clearscreenlcd1602_write_cmd(0x80);lcd1602_printstr(" writing... ");delayms(1000);while(!key_write);}if(!key_start){t_cflag=0;lcd1602_init();clearscreenlcd1602_printstr("
start
");delayms(1000);temp=t_shi*10+t_ge;while(!key_start);}}lcd1602_init();clearscreenwhile(1){***********************************ds1302_get_time(&time);convert_timestring(&time);convert_datestring(&time);convert_weekstring(&time);lcd1602_setxy(0,1);lcd1602_printstr(×tr);lcd1602_setxy(0,0);lcd1602_printstr(&datestr);lcd1602_printstr("week");lcd1602_printstr(&weekstr);lcd1602_setxy(12,1);lcd1602_write_data(0x32);lcd1602_setxy(9,1);l
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年雷替曲塞项目可行性研究报告
- 护士个人工作计划范文5篇
- 公司与个人租房合同
- 北京邮电大学《视频后期剪辑》2023-2024学年第一学期期末试卷
- 北京邮电大学《计调操作实务》2023-2024学年第一学期期末试卷
- 建设工程监理合同范本
- 《老人与海》读书笔记(集锦15篇)
- 2025版进户门行业创新发展与技术合作合同
- 2025年度新能源汽车充电桩安装服务合同范本3篇
- 二零二五年分享69家政服务员工培训成果评估合同3篇
- 《新编MPA英语阅读教程教学参考书》正文(第一-第十五单元)第二稿
- “青蓝工程”师徒结对体育青年教师总结反思
- 设备维护检查修理三级保养记录表
- 施工安全风险分析及应对措施表
- 《针灸推拿》题库
- 2023年上海市初中物理竞赛复赛试题银光杯
- GB/T 20475.2-2006煤中有害元素含量分级第2部分:氯
- GB 18218-2000重大危险源辨识
- 油田视频监控综合应用平台解决方案
- 福建省泉州市各县区乡镇行政村村庄村名明细及行政区划代码
- 酒精性脑病的护理查房实用版课件
评论
0/150
提交评论