陈玉杰智能饮水机控制系统设计(共40页).doc
精选优质文档-倾情为你奉上石家庄铁道大学四方学院毕业设计智能饮水机控制系统设计The Design of Intelligent Water Machine Control System 2016届 电气工程 系 专业 电气工程及其自动化 学号 学生姓名 陈玉杰 指导老师 孙秀婷 完成日期2016年5月22日毕业设计成绩单学生姓名陈玉杰学号班级方1110-7专业 电气工程及其自动化毕业设计题目智能饮水机控制系统设计指导教师姓名孙秀婷 指导教师职称讲师评 定 成 绩指导教师得分评阅人得分答辩小组组长得分成绩:主任签章:年 月 日毕业设计任务书题目智能饮水机控制系统设计学生姓名陈玉杰学号班级方1110-7专业电气工程及其自动化承担指导任务单位电气工程系导师姓名孙秀婷导师职称讲师一、主要内容以STC89系列单片机为核心,设计一个智能饮水机控制系统,该系统能检测饮水机中的水温和水量并用数码管显示,有制冷和加热两种模式。当水量低于设定值时禁止制冷或加热;当水量高于设定值时,则通过制冷片制冷或通过加热器加热,从而控制饮水机在一定的温度范围内工作。二、基本要求1. 以STC89系列单片机作为核心,实现饮水机的控制,控制精度高。2. 具有水温和水位的显示和控制,并且设定值可以按键进行调整。3. 电路原理图设计,Protel印刷电路图设计。4. 使用Keil C编程,实现相关逻辑控制。5. 程序流程图,编写程序代码。三、主要技术指标(或研究方法)1. 系统供电电压24V;单片机工作电压为3.85.5V。2. 温度和液位传感器的安装位置和使用方法。3. 模式选择和水温的温度控制方法。4. 论文正文不少于1万字,查阅文献资料不少于15篇,其中外文文献2篇以上,翻译与课题有关的外文资料不少于3000汉字。四、应收集的资料及参考文献单片机开发语言关于STC89系列单片机开发文档相关传感器、显示器件等的使用和典型电路五、进度计划第 1 周第 2周 收集资料,完成开题报告第 3 周 需求分析,概要设计第4 周第 6 周 详细设计第 7 周 中期检查第 8 周第11周 写论文第12周第13周 论文审核定稿第14周第15周 答辩教研室主任签字时间 年 月 日毕业设计开题报告题目智能饮水机控制系统设计学生姓名陈玉杰学号班级方1110-7专业电气工程及其自动化专心-专注-专业一、研究背景 指导教师签字时 间 年 月 日摘要目前国内所使用的饮水机绝大部分只能实现一些例如,储存,加热、保温的基本功能。但是随着人们生活水平的逐步提高,简单的饮水机远远不能满足人们的日常需求。人们对于饮水机功能更加智能化的要求,使得饮水机的销售方面更加的有市场竞争力,本课题研究智能饮水机控制系统。这次的设计主要完成饮水机控制系统硬件电路设计和软件的编程,并对所使用的硬件设施进行分析,系统使用单片机STC89C52进行控制,用DS18B20温度传感器采集水的温度,通过液位传感器检测水位,加热工作和制冷工作则通过两个继电器的导通与断开来控制工作是否进行。显示部分通过数码显示器分别显示水温高低和液位的情况,并通过指示灯显示来确定加热模式或制冷模式是否在运行。通过软件编程,将各个模块整合为智能饮水机控制系统,经调试,所设计的智能饮水机控制系统,具有操作简单、生产成本低、使用安全等优点,具有很大的市场竞争力,发展前景广阔,有效的满足了人们对于智能饮水机的需求。关键词:STC89C52单片机温度传感器液位传感器AbstractCurrently the vast majority of domestic water dispenser can be used to achieve some, for example, storage, heating, insulation basic functions. But with the gradual improvement of people's living standard, simple fountain can not meet people's daily needs. More intelligent people for drinking functionality requirements, making sales more dispenser market competitiveness, this research intelligent dispenser control systems.The program is designed primarily to complete the dispenser control system hardware circuit design and software and hardware facilities and used for analysis, control system using a microcomputer STC89C52 with DS18B20 temperature sensors collect water temperature, water level by level sensor heating and cooling work work turned on and off through two relays to control the work is carried out. Display section displays the situation and the level of high and low temperature, respectively, through the digital display, and the display is determined by heating mode indicator or cooling mode is running. Through software programming, the various modules integrate smart dispenser control system, the debugging, the design of intelligent dispenser control system, simple operation, low production cost, safety, etc., has great market competitiveness, development prospects broad, effectively meet the needs of the people for the smart dispenser.Key words:STC89C52 SCM Temperature Sensor Level Sensors目录8 第1章绪论1.1研究的目的及意义随着人们生活水平的日益提高,他们对于物质生活的需求也越来越不容易得到满足,对于智能饮水机的要求向着多功能化和智能化的方向发展着,在日常生活中其他的家用电器也向着这个方向发展着。对于智能饮水机的设计融合了很多计算机关于硬件方面和软件方面的设计研究成果。因为饮水是人类日常生活中不可或缺的一部分,它与人们的生活息息相关,所以对于智能饮水机的研究设计,非常的有前景,智能饮水机具有强大的市场竞争力。科学知识的进步改变了世界,使人们的生活更加的文明开化,尤其是人们对于机械智能控制的广泛应用,使人们的生产生活带来了巨大的变革。利用科技知识和微型计算机的功能,使得人类的生活变得更加的方便。然而,对于整个计算机来说,整体结构过于精密且贵重,计算机的很多功能在人们的日常生产生活中,得不到全面而充分的应用,所以只需实现微型计算机部分功能的单片机应运而生。单片机与微型计算机相比更加的便于使用,单片机可以根据不同的实际要求作出不同的改变。 所以智能饮水机采用单片机作为系统的控制部分,对于单片机的使用使得智能饮水机的控制系统有了可靠的保障,也降低了生产的成本,使得智能饮水机有了广阔的发展前景1。1.2国内外研究的现状智能饮水机的出现大大的提高了人们的生活质量,使得水源的二次污染得到了很大的避免,随着经济的进步,但是环境的污染问题也是日益加重,人们也重视到了自身饮水的问题。因此,智能饮水机在家用电器方面的领域中,特别是近些年,发展迅速。(1)国内研究现状智能饮水机行业在我国属家电类的新兴产业,兴起于二十世纪八十年代,当时人们对于饮水机的购买率普遍不高,但是经济的发展,生活品位的提高,人们的看待事物的目光也在不断地变化,人们对于水质看得越来越重,而智能饮水机对于提升人们的饮水质量有很大的帮助,饮水机市场也相继推出了电解纯净水机、电解离子水机、直饮水机、活性净水机等,这些都是中国饮水机生产企业把握发展形势开发制造的全新饮水概念的饮水机。目前国内对于智能饮水机的技术掌握已经非常的全面,功能也非常的丰富,饮水机也朝着一机多用、智能化的方向发展2。 (2)国外研究现状国外家用产品智能化已经非常的普及了,大部分的家用电器均用单片机控制,目前的饮水机均采用单片机控制,而且已经向超智能的方向发展,更加的人性化。在国外智能饮水机,尤其是在特别是一些家用电器生产和发展迅速的国家应用都比较普遍,并且在国外人们对于智能家用电器的认知和使用都已经普及,智能型的家用电器在国外已经有很强的市场竞争力3。随着人们的生活水平和日常家电的不断发展,现在的饮水机正朝着节能化、智能化、多功能化的方向发展。智能饮水机可以帮助人们实现大多数情况下的环境下的供水需求,也可以完成对于水位监视,水温的控制等工作。智能饮水机有着广阔的市场和需求。1.3研究的主要内容本设计主要是对以前所学C语言和单片机知识的总结,是将理论应用于实际的一个过程。该设计的目的是设计一个主要能实现水温和水位显示和控制的智能饮水机,并能够实现无水不工作、显示工作模式的功能。(1)整体方案的设计方案所选择的芯片,在便于操作的基础上,要能够实现控制设计任务的基本要求。本文设计的智能饮水机是采用STC89C52单片机作为主控芯片,通过ADC0832型 AD转换器、DS18B20温度传感器、Water Sensor水位传感器、TEC1-12706型制冷片、数码显示管以及加热器,实现智能饮水机对于水温、水位的实时显示以及对于水温的控制等功能。(2)设计方案原理本设计的软件设计主要包括系统主程序以及液位采集子程序、温度设定子程序等设计。整个系统程序采用模块化结构设计,程序相对比较优化易修改,调试系统软件的开发是用C语言编程实现的。通过软件编程使单片机通过控制不同的工作模块来控制饮用水的水温,利用AD转换器连接液位传感器完成将水位数据传输入单片机,通过DS18B20温度传感器将水温信息输入单片机,输入的信息经过单片机的处理经数码显示器直观的显示出来。工作的模式通过按键来控制,将按键产生的高低电平的变化输入单片机,发出相应的程序,进入相应的工作模式。通过Keil C编程将各模块衔接成整体并实现各模块之间的逻辑控制。第2章系统总体设计方案2.1系统实现的功能基于单片机STC89C52控制,本次设计的智能饮水机能基本实现,当所设计的饮水机达到或超过设定的最低水位时,饮水机开始工作,通过按键可以输入想要设定的加热到的最高水温和制冷到的最低水温,后通过按键选择加热或是制冷的模式,继电器控制加热模式或制冷模式的导通,加热器或是制冷器开始工作,当达到设定的水温时,停止加热或制冷,进入待机模式。2.2设计思路电路总体上分为主控电路、数码显示电路、传感器信息输入电路、整流稳压电路、工作模块电路,完成智能饮水机各模块的逻辑控制,通过软件实现。整流稳压电路的作用是为单片机等模块电路提供稳定的直流低压电源。传感器电路部分由温度传感器和液位传感器连接AD转换器构成,它是一个电路简单,工作性能稳定,能完成需要的信号采集的功能。数码管显示电路是单片机将从传感器输入的信息经内部处理后以高低电平的形式输入数码显示电路,使人直观看出水温和水位。按键模块与单片机主控制模块连接,直接向单片机输入信息,通过软件编程来实现不同的功能。继电器部分通过核心控制电路控制,以单片机输出信号来控制加热模式和制冷模式。2.3总体设计框图按照系统功能的具体要求,在保证系统功能达到设计要求,尽量降低设计成本,确定系统的总体框图如图2-1所示。在设计本系统时,采用模块化设计法,分步设计各个单元功能模块,系统的硬件部分主要分为主控制模块、电源模块、水位传感器输入模块、温度传感器输入模块、按键输入模块、加热模块、制冷模块、数码显示模块和指示灯等。该设计以STC89C52单片机作为控制核心,主控制模块根据接收到的水温和水位的信息,通过与事先设定的各种信息进行比较来判断饮水机是否运行以及运行的模式;液位传感器模块由液位传感器和模/数转换芯片组成,用于检测饮水机内的水位,并将检测到的结果以电信号的方式传回主控芯片进行分析处理;当液位传感器检测到饮水机内并没有水时,整个系统不会工作。实现了智能饮水机防干烧的功能节约了资源。整个系统结构简单、精度高、具有一定的开发价值。加热装置水位传感器单 片 机制冷装置温度传感器数码显示按键指示灯图2-1系统框图2.4系统设计选择2.4.1主控芯片主控芯片是一个系统的控制工作中心,它是整个系统最核心的部分。故在选择主控芯片时要综合各方面的条件、资源,有以下两种方案并进行优劣比较。方案一:AT89C51是低电压、高性能CMOS型8位单片机,器件采用非易失性存储、高密度技术生产,兼容标准MCS-51指令系统,片内置通用8位CPU和FLASH存储单元。其片内FLASH工艺的4K程序存储器让用户可以瞬间擦除、改写。这种单片机对开发设备要求低,开发时间短。写入程序可进行加密,AT89C51性价比高。AT89C51可构成真正的单片机最小应用系统,缩小系统体积,增加系统的可靠性,降低系统的成本。5V电压供电,擦写时间短,AT89C51芯片安全性高。P0口是三态双向口,通称数据总线口,因为只有该口能直接用于对外部存储器的读/写操作4。方案二:STC89C52单片机的指令系统和AT89C51系列兼容,但实际操作起来却存在很大不同:AT89C51要用下载器,STC89C52可以USB转串口下载,下载软件到STC厂家网站。STC单片机执行指令的速度很快,大约是AT的330倍。执行速度快,非定时器控制延时受影响,STC要加长延时,大约是AT的1030倍。STC单片机对工作环境的要求低,电压低于5伏时仍然正常工作,这方面STC优于AT5。根据以上方案,因为在大学的实习期间,我们着重学习了单片机的使用方法,且初步的了解和使用了C语言来进行程序的设计,所以选择使用STC单片机。2.4.2温度传感器方案一:采用热敏电阻。热敏电阻对于温度变化产生相应的阻值变化,它的阻值和金属阻值相比通过不同温度变化更加明显;热敏电阻可以检测的温度非常广泛,热敏电阻所占空间少,适合测量一些难以测温的场所,便于携带,使用方便,电阻值选择区间非常大;其可塑性高,能够批量生产,稳定性好,过载能力强。但是热敏电阻的阻值与温度的关系非线性严重,且热明电阻已损坏,对于相同温度阻值幅度大,所以不适合作为水温度的检测。方案二:采用DS18B20温度传感器。DS18B20是单线数字温度传感器,即“一线器件”,它具有携带方便、可以使用的电压压值区间大、封装方式经济,适合于设计经济的测温系统,应用十分广泛。DS18B20接线方便,封装可以适用于多种场合,型号有很多。传感器的可塑性非常高,可以根据不同用途进行改变。封装后的温度传感器可用于各种非极限温度场合。使用寿命长,可以在恶劣环境下使用,可适用于多种场合,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。综上所述,DS18B20温度传感器原理简单,实现方便,使用广泛,技术成熟6。使用这类温度传感器电路简单,工作性能稳定,能完成需要的信号检测功能。因此,本设计选择方案二。2.4.3液位传感器方案一:Arduino 液位传感器。其具有操作方便,便于携带,可靠性高,价格低廉的特点,水位传感器通过一组金属导线线迹根据水量来判断水位。能够实现液位到模拟信号的转换,输出的模拟值经过模数转换器转换后将信息输入单片机。方案二:超声波液位传感器。超声波传感器是通过声波的反射特点,通过计算发射和接受到发射声波的时间差来计算出液位信息的。超声波是一种振动频率很高的机械波,由换能晶片在导通电源的情况下发生振动产生的,超声波的穿透能力很强。超声波会在不同的介质间产生显著反射产生反射回波。因此超声波检测可以应用于多个方面以超声波作为检测手段,可以通过超声探头产生超声波并接收超声波7。通过两种方案的比较,两者均能满足要求,由于超声波液位传感器的价格过高,故采用第一种方案。2.4.4数码显示模块方案一:采用液晶显示模块。工作原理是-基于电子束在电子透镜调制下扫描、激发荧光粉而实现显示。CRT是一种广泛使用的显示器。它是使用模拟方式来显示的。特点是:显示清晰,稳定性高,有很强的自主创新能力,缺点:安装携带不方便,工作环境危险,不节能环保,损坏后不便于维修,长期使用会对于视力产生危害8。方案二:采用LED数码管显示模块。数码管实际上是由七个发光管组成8字形构成的,加上小数点就是8个,这些段分别由八个引脚来控制,并由驱动电流驱动发光显示。本次设计我们采用方案二,用共阳极接法,未采用液晶显示,数码管显示是我们所学且经常使用的,技术比较成熟,而液晶显示处于刚刚接触的状态,故采用方案二。2.4.5电源模块在本设计中,加热器独立供电。制冷模块电源采用直流12V供电;单片机控制系统及其他模块均采用直流5V供电。方案一:电脑USB串口供电。能够为单片机提供稳定的正五伏特直流电压,USB串口线获得途径非常广泛。方案二:采用电源变压器供电,工作时可直接接通220V电源,在不超过单片机工作电压范围的情况下,又可以驱动其他模块。用法简单,低电压更加容易获得。所以,经比较我们选择方案二给系统供电。2.4.6加热模块本设计为智能饮水机,对于智能饮水机来说,为其加热饮水的加热器选择就显得十分重要。我们综合考虑了以下两种方案。方案一:采用陶瓷加热器,陶瓷加热器的特点寿命长,安全,绿色环保。方案二:采用电加热器。电加热器是通过在螺旋的金属管中安装加热用的电阻丝,电阻丝与金属管壁之间通过绝缘材料隔断,当加热器接通电源后可以实现加热。与陶瓷加热器相比,普通的电加热器更加的常见,而且价格更加便宜,获取渠道更加的广泛,所以采用方案二。2.4.7制冷模块方案一:压缩机制冷。制冷压缩机是通过气体流动实现热量转移的机器。是制冷系统的核心装置,它的工作过程是,首先吸入温度低,压力低的气体,通过电机压缩气体后,向工作装置外排出,压力大的气体,为制冷循环提供能量,实现制冷过程。 方案二:半导体制冷片制冷。够制冷是半导体在电场的作用下电子从p区要穿过n区就需要耗能产热,若热量被散发,因平衡的需要会补充吸热,实现半导体制冷。因此半导体制冷片在使用时必须要保证热端的散热效果,否则不但不能制冷而且会造成制冷片的损坏9。通过对比压缩机的制冷效果更好,但是根据设计的实际情况和两者间巨大的经济差距,所以采用方案二半导体制冷。第3章系统硬件设计3.1概述智能饮水机通过单片机为主要控制模块,加热模式和制冷模式的工作各通过一个继电器控制,通过按按键可实现对于温度的调节目的,用温度传感器和液位传感器采集温度和水位信息。此次的毕业设计主要由主控模块、温度采集模块、液位采集模块、加热模块、制冷模块数码显示模块、电源模块等构成。单片机控制系统运行,它的各个端口与其他电路模块连接起来,通过Keil C编程使单片机完成对硬件电路的导通控制,可以实现智能饮水机的温度显示功能和液位显示的功能,实现对于水温的设定。3.2主控模块智能饮水机控制单元是整个智能饮水机系统的核心部件,完成整个系统的逻辑控制。设计采用的是STC89C52单片机,设计包括单片机的复位电路,最小系统电路等。3.2.1主控芯片STC89C52单片机采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。芯片内集成了通用8位中央处理器和Flash存储单元,功能强大的微型计算机的STC89C52可为许多嵌入式控制应用系统提供高性价比的解决方案10。该单片机中有一个8位的微处理器,与通用的微处理器基本相同,同样包括了运算器和控制器两大部分,只是增加了面向控制的处理功能,不仅可处理数据,还可以进行位变量的处理。STC89C52引脚图如图3-1所示。可编程输入/输出引脚,STC89C52单片机有4组8位的可编程I/O口。P0口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0不具有内部上拉电阻。对P0端口写“1”时,引脚用作高阻抗输入。在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1口:P1口是一个具有内部上拉电阻的8位准双向I/O口线。P1 口能驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流。此外,P1.0和P1.1分别作定时器2的外部输入端和定时器2的外部控制端。在flash编程和校验时,P1口用作输入低8位地址字节。 图3-1STC89C52引脚图P2口:P2口是一个具有内部上拉电阻的8 位双向I/O口。P2 可以驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器时,P2口送出高8位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址访问外部数据存储器时,P2输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节。P3口:P3口是一个具有内部上拉电阻的8位双向I/O口。P2可以驱动4个二进制逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在flash编程和校验时,P3口也接收一些控制信号。P3口是一个多用途的端口,可以作为一个准双向I/O口;也可以按位独立定义。P3口亦作为STC89C52特殊功能(第二功能)使用,P3口第二功能表,见表3-111。表3-1P3口第二功能表端口功能描述P3.0RXD,串行口输入P3.1TXD,串行口输出P3.2INT0,外部中断0P3.3INT1,外部中断1P3.4T0,计数器0计数输入P3.5T1,计数器1计数输入P3.6WR,外部RAM写入选通信号P3.7RD,外部RAM读出选通信号此外,STC89C52可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式下,冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,适应不同需求。3.2.2晶振电路STC89C52要形成时钟,须外附加电路。STC89C52单片机的时钟产生方法有内部时钟方式和外部时钟方式。单片机晶体振荡模块采用内部时钟方式,利用芯片内部的时钟电路,在XTAL1、XTAL2引脚上外接定时控制元件,即可构成自激振荡器。STC89C52芯片内部有用于构成振荡器的高增益反相放大器,在芯片的外部,XTAL1和XTAL2之间接晶体振荡器和微调电容,形成反馈电路,振荡器工作。STC89C52单片微机的内部方式的晶振电路如图3-2所示,晶体振荡器的工作频率一般可以在1.212MHz间选择,电容C1、C2通常选择在10pF到30pF之间取值。所以本设计中,振荡晶体的震荡频率选择12MHZ,微调电容的容值选择22pF12。图3-2 晶振电路3.2.3复位及复位电路(1)复位操作复位是单片机的初始化操作。其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。单片机启动运行时,都需要先复位,单片机本身是不能自动进行复位的,必须配合相应的外部电路复位。除PC之外,复位操作还对其他寄存器有影响,它们的复位状态见表3-2。表3-2特殊功能寄存器SFR的复位状态寄存器复位状态寄存器复位状态PC0000HTCON0XBACC00HTL000HB00HTH000HPSW00HTL100HSP07HTH100HDPTP0000HSCON00HP0P3FFHSBUF不定TMOD0XBPCON0XXX0000B(2)复位信号及其产生RST引脚是复位信号的输入端。复位信号高电平有效,有效时间应持续24个振荡周期以上。若使用频率为12MHz的晶振,复位信号持续时间应超过2µs才能完成复位操作。复位操作有上电自动复位、按键手动复位和外部脉冲复位三种方式。上电自动复位是通过外部复位电路的电容充电来实现,只要接通电源就完成了系统的复位初始化;按键电平复位是通过按压键使复位端经电阻与VCC电源接通而实现的;外部脉冲复位则是由外部提供一个复位脉冲来实现,此复位脉冲应保持宽度大于2个机器周期,复位脉冲过后,由内部下拉电阻保证RST端为低电平。本系统的复位电路采用按键电平复位方式,如图3-3所示。图3-3按键复位电路3.2.4最小系统电路设计主控模块的核心是STC89C52单片机,STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位。给单片机STC89C52加电时,需要进行复位操作,复位后STC89C52的工作环境配置成初始状态,并从程序的开始进行运行。RST引脚接复位电路,本系统采用12MHz的外部晶振电路。单片机的P0.0P0.7口作为数码管显示驱动输出口,提供实时的水的温度信息以及实时的液位信息,同时也可以显示设定的在加热模式下可达到的最高水温的信息,以及制冷模式下可达到的最低水温的信息;P2.4P2.7口分别控制各个数码管的接通情况,每个数码显示管统一的公共极COM都有一个相对应的三极管来控制,相当于数码显示管的开关,P2.4控制的是液位信息的显示,P2.5控制的是水温信息十位的显示,P2.6控制的是水温信息个位的显示,P2.7控制的是水温信息小数位的显示;P2.1和P1.5P1.7实现的传感器信息的输入;P1.0P1.4口控制输入单片机的温度设定和模式选择;P2.0和P3.7口连接单片机输出端,控制两个继电器的导通从而控制加热装置和制冷装置。最小系统电路原理图,如图3-4所示。主控模块是本次设计主要的一个环节,对于其他模块,主控模块起到了将它们连接在一起的功能,STC89C52单片机通过各个引脚,完成输入模块信号的接受和将信号发送给输出模块,实现智能饮水机的功能。图3-4最小系统电路原理图3.3温度采集模块本次设计要求通过智能饮水机控制水的温度,对于温度的采集需要用到温度传感器。故系统需要将温度传感器收集到的水温信息输入到单片机内部,再由单片机经内部处理输出。3.3.1DS18B20温度传感器简介DS18B20是一种应用十分广泛的温度传感器,它的特点是:携带方便,生产成本低,使用环境广泛,稳定性好等。独特的单线接口方式,DS18B20和单片机连接时用一个端口实现单片机和温度传感器的双向信息导通;温度传感器测量的最低温度比标准大气压下水的凝固点低,最高可测量温度在标准大气压下水的沸点高。固有测温误差非常的小,适合用作水的温度测量;支持多点组网功能,多个温度传感器可以并联在一个三线上,最多并联八个,实现多点测温,如果数量过多,会使供电电源电压过低,从而造成信号传输的不稳定;工作电源: 3.05.5V/DC ;在使用中不需要任何外围元件;测量结果以912位数字量方式串行传送;适用于大部分的测温环境;安装方式多样化,便于与其它设备连接13。3.3.2温度采集模块电路设计本设计中使用的是常规的温度传感器,只需外部与单片机连接即可,温度传感器输入端与端口P2.1连接,如图3-5。图3-5温度采集模块电路原理图3.4液位采集模块本次设计要求通过智能饮水机显示饮水机的液位,对于液位的采集需要用到液位传感器。所以系统需要将液位传感器收集到的水位信息输入到单片机内部,再由单片机经内部处理输出。3.4.1Water Sensor简介本次设计采用的液位传感器为哈尔滨奥松机器人科技有限公司设计研发的一款产品,其具有操作方便,便于携带,可靠性高,价格低廉的特点,水位传感器通过一组金属导线线迹根据水量来判断水位。能够实现液位到模拟信号的转换,输出的模拟值经过模数转换器转换后将信息输入单片机。3.4.2A/D转换芯片简介因为本次所选用的液位传感器输出信号为模拟型的,不能够直接输入单片机进行处理,所以需要经过模数转换器的处理,将模拟信号变为单片机可处理的数字信号。本次所选用的模数转换器型号为ADC0832,ADC0832 是美国国家半导体公司生产的一种8 、A/D转换芯片。由于它使用方便,用途广泛,价格低,稳定性高,目前已经有非常广泛的使用率。ADC0832 为8A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。其内部电源输入与整个电路系统是共用的,所以模数转换芯片的电压输入大概为五伏特。转换时间非常的短暂,据有双可作为,以减少数据误差,转换速度快且稳定性能强。可以通过片选使能端输入,可以使用多种信息的处理。经过CLK时钟周期的拉低与拉高期间,DI端数据的输入,从而确定通道的选择。3.4.3 单片机对ADC0832的控制原理一般情况下ADC0832 与单片机的接口一共有4条数据线,分别是DO、DI、CS、CLK。但由于DO端与DI端不会同时输入和输出信息,并且DO端与DI端与单片机的接口均为双向,所以DO和DI 两个端口可以共用一根数据线。当ADC0832未工作时其CS输入端应为高电平,此时芯片不会工作,此时不考虑其他端口的情况。当要进行A/D转换时,须先将CS置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK 输入,DO/DI端则使用DI端输入通道功能选择的数据信号。在第1 个的下沉之前DI端必须是高电平,表示起始信号。在CLK的第二个和第三个时钟周期之前DI端应输入两位数据用于选择CHO口或者CH1口。当此二位数据为"1"、"0"时,只对CH0 进行单通道转换。当2位数据为"1"、"1"时,只对CH1进行单通道转换。二位数据为"0"、"0"时,将CH0作为正输入端IN+,CH1作为负输入端IN-进行输入。二位数据为"0"、"1"时,将CH0作为负输入端IN-,CH1 作为正输入端IN+进行输入。当CLK时钟脉冲第三次被拉低之后DI端的输入电平就失去输入作用,此后DO/DI端则开始利用DO进行转换数据的读取。从CLK第四个脉冲周期后,开始由DO端输出转换数据最高位,随后每一个时钟周期DO端输出下一位数据。直到第11个时钟周期时发出最低位数据,从而完成了一个字节的数据输出。也正是从此位开始输出下一个相反字节的数据,即从第11个字节的下沉输出DATA0。随后输出8位数据,到第19 个脉冲时完成,也标志着一次A/D转换的结束。最后令CS等于一使得芯片停止工作,最后将转换后的数据输进行处理。作为单通道输入时ADC0832的输入电压是05V且8时的电压精度为19.53mV。如果作为由IN+与IN-输入的输入时,可是将电压值设定在某一个较大范围之内,从而提高转换的宽度。在进行IN+与IN-的输入时,如果IN-的电压大于IN+的电压则转换后的数据结果始终为00H。3.4.4液位采集模块电路设计液位采集模块是智能饮水机中监测水位的装置,其原理图如图3-6所示。图3-6液位采集模块电路原理图 图中,传感器采集的液位信息经模数转换器转换后将模拟信号转换为数字信号,输入口DI与输出口DO共用端口P1.7,完成数据的传输功能;端口P1.5,CS作为片选使能端,通过高低电平来控制芯片的导通与停止。端口P1.6,为CLK为芯片时钟周期,用作脉冲信号,通过拉低拉高时钟信号来完成模数转换的过程。第4章系统软件设计4.1概述程序是将各个子模块衔接成一个整体的桥梁,用程序实现系统的逻辑控制功能。让单片机采集温度输入的信号、液位采集模块经过模数转换芯片处理的检测信号,根据信号控制加热装置和制冷装置的工作实现对于智能饮水机水温的控制。为了完成要求设计,在进行软件设计时,常把整个过程分成若干个部分,每一分称为一个模块。所谓“模块”,实质上就是所完成一个特定功能,相对独立的程序段,这种程序设计方法叫模块程序设计法14。本次设计采用模块化结构,程序由主程序温度采集模块执行子程序、液位采集模块执行子程序温度设定子程序等构成。程