版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于51单片机的水温水位检测与控制系统设计摘要水温水位监测控制系统在早期刚发明的时候,主要用于简单的水箱加热和加水,难以达到智能自动控制水温水位的效果,只能满足于平时的水温水位监测控制,很难在一些高端的工业或生活的智能体验方面满足人们日常生活和工业生产的需求。在后续经历了几次工业革命后,特别是经历了信息技术革命后,水温水位监测控制系统得到了质的飞跃,通过C语言编程,然后在单片机上控制数据信号的输入输出,从而控制各个原器件的通断,开始逐渐的完善水温水位监测控制的智能化。随着在各个原器件的推陈出新,一些新的原器件开始优化了之前器件的功能,综合简化了器件的复查程度,可以通过一个器件就能完成原先需要两个器件才能完成的操作,例如DS18B20温度传感器,一个可以自身就可以完成数据的A/D转换,不用再在外部加设数据转化器件,DS18B20相对于之前的热敏电阻来说,其自身的智能性和精确性会比热敏电阻要优越很多,而且其自身带有一个数据传输总线,可以通过单片机的编程根据自己需要设置温度的上限和下限值,其自身的智能性远远优于热敏电阻,所以DS18B20温度采集器是我们此系统监测水温的一个重要部件。其在目前的工厂生产和生活中也是很常见的一种温度监测的器件,其用途十分广泛和普遍。本系统的主要控制器件是89C51单片机,用DS18B20数字温度采集器,水位传感器电路板,水温、水位继电器等器件作为执行部件。通过89c51接收各器件通过A/D转换来的数字信号,执行芯片中的子程序操作,从而控制电路中的水泵和加热棒进行加水和加热的工作,达到检测与控制水温水位的功能。DS18B20数字温度传感器是一种目前广泛应用的温度监测原器件,相对于其他温度采集器,它结构比较简单,不需要外部加设A/D转换器件,仅通过自身的DQ线端口就可以完成温度数据传输交流,而且可以通过外部按键设置温度的上限值,很方便。单片机将温度传感器感应并通过A/D转换过来的数字信号与程序上的监测温度子程序进行比较判断,通过比较比较判断,从而决定是否联通继电器电流,进而控制加热棒。该系统操作简单,可用于平时水箱的水温水位检测与控制,市场前景向好。关键词:单片机;DS18B20;水位检测电路板;数码管 目录TOC\o"1-3"\f\u摘要 页共51页1.绪论1.1课题背景及意义在经历了第二次工业革命之后,特别是电的发明之后,水温水位监测控制系统在那时起就开始可以找到其初步应用痕迹。在当时的社会中,水车的发明就是一个很好的水位控制的雏形,当时的劳动人民通过简单的木质器件和运用水体的流动加上自身的动力,通过水车给农田灌溉,达到控制农田中水位的效果。水位和温度的控制一开始可能只是一些地主和农场主为了灌溉农田,但是随着工业革命的到来,带来了电这个重要的动力,各个发明家陆续涌现,发明了许多水温水位控制的器件,并逐渐从平常运用于灌溉的水车中,应用到工厂的生产和平时的家庭生活中。水温水位监测与控制的应用体现在工业和生活的各个领域,例如,工业上水箱水温水位控制通过旁边的仪表进行显示监控、船舶上的液位控制等,特别是信息工业革命的到来,给水温水位监控系统增加很多智能化的功能模块,在工业和生活方面给人们带来了巨大的改变,计算机信息时代的到来,给水温水位监控系统带来了质的提升,特别是用在单片机控制原器件的领域,通过单片机的程序编程,从而控制原器件的电流通断,大大提升了设备运用的性价比、提高设备的使用时长、做到机械智能控制的特点。本设计主要以介绍51单片机水温水位监测控制系统的设计步骤,其中包括系统设计的总体方案、硬件设计、软件设计和程序调试等。本系统主要以AT89C52芯片作为51单片机的核心,温度监测模块有温度传感器DS18B20为主要监测器件,水位监测模块以水位监测电路板为主要器件,显示模块由四位一体数码管完成,报警系统通过蜂鸣器完成。通过在单片机上的内部软件编程,在外部的硬件操控实现对水温水位的监测控制,在硬件外部链接继电器,水温水位各设置一个继电器,起到控制链接继电器硬件开关的作用。在水温监测的时候,使用者可以再外部通过按键设计温度的上限值,通过DS18B20监测当前水位,然后传输温度数字信号到单片机,再通过单片机输出控制执行命令,控制水温度保持在合适范围内;在水位监测的时候,通过水位传感电路板感应当前水位,当水位到达感应电路单的各个刻度线时,该刻度的电路就会导通,把电流传输到单片机上,单片机通过判断高低电压来进行水位监测子程序的运行,然后把执行信号传给继电器,通过控制继电器电流的通断来控制水泵的加水,从而达到控制水位的效果,控制水位一直保持在一个舒适的水位内。1.2国内和国外的发展现状及发展趋势目前,国外温度水位检测控制系统及仪器仪表发展迅速,在水温水位监控上具有智能化、高精度等特点。然而国内的单片机发展还处于发展阶段,在系统的智能化和高精度上面还远不及发达国家。而且我们现有的水温水位监控系统在高新领域还没有推出特别亮眼的新品,在工业的高速生产方面主要依赖进口的水温水位监控系统,国外的监控系统在面对复杂的环境和操作人员的体验上,更能体现出系统的智能性和高精度性,而国内的水温水位监控系统还停留在简单监控上面,在系统的智能方面没有突出的特点,而且国内生产的器件在水温的精度监测上不足,到此许多工厂和家庭在选择水温水位监控系统生产的产品上,大多都会选用国外的产品,这可能也导致国内生产水温水位监控系统的产品没有精品的一个原因,国内研发资金短缺,市场被国外占领,其发展的阻力很大。在国外科发展的同时,国内水温水位监控系统也在迅猛发展,并在智能化、自适应等各方面取得成果。在日常的生活和工厂的生产活动中也可以看到国内品牌水温水位监控系统的影子,虽然国内的品牌产品在总体上没有国外产品那么高精度,但是国内在智能化的程度上跟国外的一些产品已经分不出差距了,并且国外的产品在国内的价格相对比较昂贵,国内的产品的价格相对比较便宜,所以企业在选择产品上,综合成本和工业需求等因素,会选择国内产品多一点,所以国内的产品的市场还是很广阔的。2.89C51水温水位检测控制系统的总体设计方案2.1水温水位检测控制系统设计的思路51单片机水温水位监测控制系统的设计主要以51单片机为系统主要控制中心。硬件由89C51单片机、4位一体数码管、DS18B20温度采集器、2个继电器、水位传感器电路板等元器件构成。水温的监测通过DS18B20温度采集器完成,通过采集被测物体的温度信号,然后通过A/D转换成数字信号传输到单片机内,执行温度监测子程序功能模块,通过子程序的温度换算,通过I/O串口把执行数据传给数码,数码管根据数据显示当前的水温。在水温监测的过程中,当水温低于10℃时,单片机执行低水温子程序处理,继电器闭合,加热棒开始加热;当加热棒加热到达额定温度时,单片机执行饱和水温语句,继电器自动断开,加热棒停止加热。水位的检测采用水位传感器电路板,用3黄1红4个LED灯指示水位,当水位到达水位传感器电路板1/4水位时,亮一个黄灯,2/4亮两个黄灯,3/4亮三个黄灯,满水位时亮3个黄灯和1个红灯。当水位到达最低水位时,1/4水位刻度线断开,单片机执行低于最低水位语句,蜂鸣器开始报警,继电器自动闭合,水泵开始加水;当加到满水位的时候,满水位刻度线导通,单片机执行满水位语句,继电器断开,水泵停止加水。在电路板上安装水温设置键,减号键和加号键,可以通过外部的按键来设置水位的上限值,从而控制水温的健康范围。在程序控制继电器之外,设置两个独立的点动加热加水按键,实现自定义加热加水。2.2水温水位检测控制系统设计的系统结构该系统的设计主要由89C51单片机主控制部件、外部按键设置、水位传感器电路板、蜂鸣器报警、晶振时钟电路、DS18B20温度传感器等功能模块组成。则系统的结构总框架设计如下图2-1:数码管显示按键设置STC89C5数码管显示按键设置STC89C51水温监控电路复位水温监控电路复位蜂鸣器报警晶振模块蜂鸣器报警晶振模块连接电源水位监控连接电源水位监控图2-1水温水位监控制系统设计的总框设计图2.3水温水位监测控制系统设计说明该系统采用51单片机、防水DS18B20温度传感器、四位一体数码管、水温继电器、按键、水位传感器电路板等器件连接组合而成。水温的监控说明:该系统通过DS18B20温度传感器收集到的温度信号,在自身进行A/D转换成数据信号,传输给单片机,单边机接收到温度的数字信号后,进行温度监测的子程序判断,然后把执行指令传输到数码管和水温继电器执行。当数码管收到单片机的执行数字信号后,根据信号的高低电位控制发光二极管,显示当前的水温;当水温继电器收到温度数字信号后,根据当前水温是否低于设定温度10℃,从而控制加热棒的加热。当水温超过设定温度值时,蜂鸣器就会触发报警,当水温自然冷却低于最高水温时,蜂鸣器就停止报警。水位的监控制说明:该系统选用水位监测电路板进行水位的监测。水位监测电路板上分有4个刻度的水位分界,每到一个水位刻度线,由于水的导电作用,水位刻度线就会与5v电路导通,然后把电流转到单片机内,单片机接到电流后执行水位检测模块,然后把执行电流输送到LED灯上,LED灯根据传输过来的电流进行水位的显示。当水位达到1/4水位刻度线的时候,电路导通,LED灯接收电流,1个黄灯亮起;接下来就是2/4,3/4,满水位,分别亮2个黄灯,3个黄灯,3黄1红全亮。当水位低于1/4水位刻度线的时候,1/4刻度线电路断开,单片机就会执行低水位执行语句,这时蜂鸣器就会报警,水位继电器自动闭合,水泵开始加水;当水位到达满水位的时候,满水位刻度线电路导通,单片机执行满水位语句,继电器自动断开,水泵停止加水。输出方式:两个继电器控制输出器件,分别控制抽水泵和加热器;增设手动加水加热模块,通过点动进行自定义加水加热;2.4水温检测控制结构设计方案一:温度监测的模块使用传统的热敏电阻,热敏电阻是一个之前大家应用很广泛的水温监测器件,其自身结构简单,价格便宜,主要用于检测水体温度,在该系统设计中是一个不错的温度检测器件。方案二:为了考虑在水温监测过程的智能性和精确性,考虑通过单边机进行智能控制,DS18B20是一款可以自身进行A/D转换的温度监测器件,其本身有一根数据传输总线,负责传输当前水温的温度数据,可以很好的实现水温的智能监测控制。通过考虑该系统设计主要以智能控制为主,比较容易看出,方案二相对于方案一来说,在智能控制方面比较有优越性,因此在该设计中采用方案二来实行。该设计的总结构设计如图2-2所示:水温继电器单片机水温继电器单片机DS18B20数码管显示指示灯89C51图2-2水温监测设计总方案水温控制水温控制模块采用该系统中的主要模块-51单片机控制模块,89c51系列单片机相对于传统的数字电路来说,其结构更加简单,功能更加全面,具有较好的稳定性和智能型,并且89c51单片机普遍应用于各个普通电路系统的设计,从性能和性价比方面考虑,是该设计电路主要控制部件的不二之选。(2)温度显示水温的显示以四位一体数码管完成。通过单片机的程序语句反馈,接收DS18B20温度传感器A/D转换成数字信号,通过单片机的控制输出,动态显示当前温度值。(3)温度感应部分温度感应部分,主要以DS18B20为主,因为其自身就可以进行A/D转换,不用再在外部电路增设A/D转换原器件。DS18B20把感应到的温度信号转换成数字信号,通过数据传输总线传输到单片机,单片机接收到数字信号后,执行温度监测子程序,然后通过I/O串口把执行信号传输到水温继电器和数码管,通过数码管显示当前水温,通过水温继电器控制加热棒的加热工作。2.5水位检测控制结构设计在水位的监测控中,主要以以下两种方式为主:方式一:采用通用的刻度水位联通电路的方法,当水位到达指定刻度线时,对应的水位就会导通,电流流入单片机,单片机执行设定好的程序语句,进行输出控制,获得当前水位并通过LED灯显示。这种控制形式的优点是结构简单,成本低,操作方便。其流程图如下图2-3所示:电电路导通输出控制单片机控制水泵水位监测电路板图2-3方案一流程图方式二:采用压力电阻感应水体压力的方式,通过监测不同水量给压力灵敏电阻带来的压力,进行感应输出不同大小的电流数据,通过单片机的子程序判断,衡量目前水位的高度,从而输出执行电流控制LED灯的显示,其衡量水位的精度可能不是很精确。在考虑了该设计的水位监测主要以便捷为止,结合两个方式的特点,拟采用方式一来完成该系统的水位监测模块,因为相对于方式二来说,方案一在精度上比方案二高,其结构上的简易程度要优于方式二,综合性价比、性能上、功能的完成情况上,选择方式一是该设计的最佳选择。3.硬件设计3.1工作原理该系统设计主要通过89c51单片机去控制各个模块的控制执行部件,通过各个双向I/0串口,接收数字信号和输出执行命令,达到控制整个电路的效果。温度监测主要通过DS18B20感应被测物体的温度信号,通过A/D转换成数字信号转送到单片机内执行温度监测模块,然后单片机把子程序判断下的执行命令传输到数码管显示、蜂鸣器报警模块和温度继电器上,控制其执行输出信号。在水位监测模块上,主要通过水位监测电路板感应当前水位的高度,通过联通水位刻度线,从而导通刻度线对应的电路,把电流传输到单片机上,单片机内的水位监测模块根据电流的大小来判断输出电流的大小,输出的电流信号传到LED灯和蜂鸣器上,控制其执行输出命令,完成水位的监测。3.2单片机的选择单片机的选择主要考虑其能否完成该系统设计需要完成的功能,然后再考虑其性能方面,价格方面,性价比如何等,综合考虑,该设计主要以89c51单片机主要控制模块。3.2.1STC89C51功能简介STC89C51RC是作为51单片机的一种主要芯片类型,其输出的最高时钟频率可达80MHz,芯片内包含基础的控制单位和储存单位,拥有32个通用的I/O串口,而且异步的串行口在该系统具有可以通用编辑功能;从P0~P4、电源引脚、地线脚、RST等一共40个引脚,其内部有两个16位的计数器。因为其自身属于一种芯片,可以在其中进行C语言程序的编写,并通过外部的PC端接口烧写进51单片机内,使其可以完成编写程序的功能。3.2.289c51单边机的引脚功能说明VCC:连接电源。;GND:接地。;P0口:P0口有8个双向导通的I/O口,在该系统中主要连接控制LED灯和数码管。接收传输过来的信号并输出执行模块信号到各个器件上;P1口:P1口有8个双向导通的I/O口,在该系统中主要连接控制水位传感器电路板和按键电路,接收传送过来的信号后进行判断和处理。P2口:P2口也有8个双向导通的I/O口,与P0口主要控制数码管数据的输入和输出。P3口:P3口也有8个双向导通的I/O口,在该系统中主要连接控制蜂鸣器、水温水位继电器和温度测量电路。RST:复位串口,主要在电路中启到电路复位的作用。引脚图如下图3-1所示图3-151单片机引脚图3.3温度传感器温度传感部分采用DS18B20温度传感器,其比其他温度感应器来说,与51单片机电路的契合度更高,在器件的性能方面与同等价位的传感器来说是性价比最高的;DS18B20自身可以进行A/D转换,不用再在电路中加设外设A/D转换器就可以把模拟信号转换成数字信号,在电路的制作方面,节约了电路板的焊接空间。3.3.1DS18B20性能及结构DS18B20主要有3个主要端口,VCC端口主要是用于连接外部电源的,为器件提供电流,其电路供电电压为5V,主要以外部电源供电为主;GND端口主要是连接地面的,相当电路中的地线,起到保护电路的作用;DQ端口是该器件的最重要端口,主要负责数据的传输,把感应到的当前温度信号转成数字信号后通过DQ端口传输到单片机内执行温度监测程序。DS18B20的外形及引脚如图3-2所示:图3-2DS18B20的外形及管脚图3.4水位传感器单片机的水位传感器水位控制原理如图3-3所示:图3-3水位传感器原理图图中SW1/2/3/4,对应单片机的P1.0/1/2/3,4个I/0端口,对应4个刻度的水位。水位的合适范围,应控制在1/4-满水位之间。在水位传感器电路板的不同高度,设置固定不变的导体,高度分别对应SW1/2/3/4,用LED灯显示水位变化的情况。其中SW1为下限水位,SW4为上限水位。当水位到达SW1时,SW1端与+5V的电路端导通(因为水也是导体),电流通过导线传送到单边机内,然后单边机执行水位检测控制模块程序,一个黄灯亮,表示当前水位是1/4。其他水位操作按同理进行。当水位低于下限水位时,执行5号端口低于水位下限语句,蜂鸣器响起,继电器闭合,水泵开始工作,往水箱中开始注水,水位不断上升.当水位到达1/4水位的时候,蜂鸣器停止响动,继电器继续闭合,水泵继续加水。当水位上升到上限水位时,由于水的导电作用,使SW4端与+5v电路连通,继电器断开,水泵停止加水,4个LED灯导通,全亮。3.5晶振电路晶振电路又称时钟电路,主要作用是给单片机提供时钟频率,其提供的时钟频率的越高,那么单片机在处理程序的过程中速度就会越快,就好比电脑中的CPU一样。该系统的晶振电路主要由两个30pF的电容和一个晶振组成,其振荡频率为11.0592MHz。晶振电路提供的时钟频率与单片机数据的处理速度是成正比关系的。其晶振电路原理图如下图3-4所示:图3-4晶振电路原理图3.6数码管显示模块介绍数码管在该设计中用于显示温度值,其基本单元是发光二极管。该系统采用的是四位一体数码管,其公共端接到5V的电源上,通过接收来自单片机的输出控制信号,来判断发光二极管的发光位置,从而达到显示当前水温的效果。3.6.1数码管结构
图3-5如图3-5所示,一位数码管通常以7个发光二极管和一个小数点组成,其发光二极管编号分别为ABCDEFG和小数点DP,各位发光二极管会根据高低电压来判断二级管的发光位置,从而形成1~9不同的数字,直观的体现当前的温度值。3.6.2数码管显示原理数码管的温度显示,通过连接单片机的P0和P2的各个I/O串口,控制数码管中发光二极管的发光位置,在不同时间段去控制输出传输端口,从而达到实时显示水温的效果。数码管在显示温度的时候,根据第一位数码管显示一个数字时,其余数码管不显示,经过1ms之后,第二位数码管显示数字,其余134位数码管不显示,第三第四位数码管也是如此循环。由于每一位数码管显示的时间为1ms,对于人的肉眼识别没有那么高速反应,从而会展示一种数码管是同时显示一串数字的,每个数码管的显示之间是没有时间间隔的,所以就可以达到实时显示当前水温的效果。3.7复位电路复位在电路中的一个主要作用,就是使系统中所有的电路从某一工作状态回到初始状态。复位的方法不亚于两种,一种是按键复位,就是在电路板上单独设置一个按键,按下这个按键就可以达到复位的效果。而另一种复位就是上电复位,上电复位一般设置在电路的开关按键上,只要一启动电路开关,电路系统就可以实现自动复位。那么本设计的复位电路就是上采用电复位,由一个22uF的电容和一个10kΩ的电阻组成。一端连接到电源上,另一端连接到接地上,其RST处接到单片机的RST端口上。当按下电路电源开关,这时整个电路会处于高电压状态一段时间,由于另一端接到地下,这时高电压会逐渐流入地下后形成低电压,这从高电压降到低电压的过程中就实现了电路系统的复位。其复位电路如下图3-6:图3-6复位电路原理图3.8继电器模块的介绍继电器一般都是用与自动控制的电路中,可以起到自动控制电流开关的作用,同时连接三极管起到放大电流和防止电流无限放大,在电路中起到开关和保护电路的作用。水温水位继电器主要也是以平时常见的电磁式继电器为主,其由铁芯、电磁线圈、电枢、接触弹片等原器件组成。当接收到单片机传输过来的电流信号后,经过三极管的放大作用,线圈得到电流,会产生一次电磁效应,开始吸引弹簧拨片与其电路公共端连接,形成电流回路,从而带动连接功能器件的工作运作。继电器在该系统设计中分有水位继电器和水温继电器,主要控制其连接的水泵和加热棒的运行工作。在本设计使用的是汇科继电器,它的优点主要是速度快、工作稳定、使用寿命长、重量轻、体积小、使用范围广。本设计安装有两个继电器,分为水位继电器,水温继电器,分别控制水泵加水和加热棒加热,外部加设点动按键控制继电器的开关,从而达到自定义控制加热加水。当水位低于下限水位的时候,水位传感器与5v电路导通,单片机执行低水位语句,单片机输送执行电流,通过三极管的放大作用,线圈产生磁场,吸合铁片,铁片从常开端断开,与常闭端闭合,继电器开始工作,水泵开始加水。当水位到达上限水位之后,电路执行上限水位语句,单片机停止输送电流,继电器由于失去电流的作用,线圈失去磁力作用,铁片从常闭端由于反作用力的作用返回常开端,水泵电路断开,水泵停止加水。与原理图如3-7所示。图3-7继电器原理图3.9蜂鸣器的介绍此设计采用了蜂鸣器的主要用途是报警作用,通电后,当水温或者水位到达最低或者最高值的时候,蜂鸣器就会发出报警声响。蜂鸣器主要受水位传感器和水温传感器的影响,水温传感器通过按键设置水温的上限值,同时通过数码管显示当前设定温度值,当水温超过设定值的时候,蜂鸣器就会响起;当水温低于设定值的时候,蜂鸣器就停止发声;水位传感器运用水体的导电作用,导通水位传感器上的4个刻度水位传感点,与5v电路导通,把电路送至单片机执行水位检测语句。当水位低于1/4水位(1/4水位为水位下限)时,1/4端水位无电流,执行低水位语句,蜂鸣器报警发声,当水位高于1/4水位之后,蜂鸣器停止发声。蜂鸣器报警原理图3-9所示。图3-8蜂鸣器报警原理图3.10按键电路键盘在该系统中,主要用于设置水温的上限值,还有增设的两个外部按键是控制继电器的通断,点动控制加热加水。按键电路在电路板上设有设置键,加法键和减法键。通过设计键进入温度上限值设置界面,通过观察数码管当前的温度值,再根据个人的喜好,增加或减少最好温度上限报警值也是上限额定温度值,下限额定温度值是单片机编程内部设置好的低于上限额定温度值10℃。当目前水温低于设置值10℃时,加热棒就会给水体加热,当设计的温度超过当前的水温时,蜂鸣器就会报警,那当又调设置温度值低于当前温度值时,蜂鸣器就停止报警。其原件的原理图如图3-9所示:图3-9按键电路原理4.单片机水温水位检测与控制系统软件的设计4.1水温水位检测与控制程序设计总体思路水温水位监测控制系统主要通过DS18B20温度传感器监测水温,通过水位监测电路板监测水位,用加热器和水泵控制水箱的温度和水位,通过外部按键设置水温的上限值,当目前水温超过设置的上限值时,蜂鸣器就会报警,其余情况则不报警。水温通过数码管显示当前温度值和设定温度值,水位通过4个LED灯显示4个不同的水位,最后通过上电复位实现程序的循环使用,达到水温水位的监测与控制作用。在按下启动电源通电后,上电复位的原理,对各个器件进行初始化处理,然后DS18B20开始读取当前被测物体的温度信号,并通过数码管显示当前水温。设置主程序为按键设定语句,通过按键来设置最高温度值,当当前温度高于设定最高温度值时,蜂鸣器就会报警,并用数码管显示当前的温度值,通过继电器控制水泵加水和加热棒加热;当水位低于下限,蜂鸣器报警,水位继电器电流导通,水泵开始工作,当水位高于最低水位时,蜂鸣停止报警,水泵继续注水,当水位到达最高水位时,继电器自动断开,水泵停止注水;当水温低与设定值10℃时,水温继电器电流导通,连通加热棒220v的火线端,加热棒开始加热,当水温加热到达额定值的时候,水温继电器断开,加热棒停止加热。系统设计主程序流程图4-1所示开始开始加热读取温度加热读取温度显示温度显示温度显示:水温变化显示:水温变化温度是否的低于下限水温温度是否的低于下限水温YYNN加水读取水位加水读取水位显示水位显示水位显示:水位变化显示:水位变化Y水位是否的低于下限水位Y水位是否的低于下限水位NN设置按键是否按下设置按键是否按下YYN按键操作N按键操作是否满足温控上水条件是否满足温控上水条件温控上水操作温控上水操作YYNN结束结束图4-1主程序流程图4.2温度检测控制程序在温度测试的开始阶段,先对DS18D20温度传感器进行上电复位操作,然后在单片机内编写好温度检测控制模块,通过外部按键设置最大温度报警值。然后通过系统检测设置温度按键是否被按下,当按键被按下时,判断处理按键是增加还是减少,然后通过温度监测子程序进行判断执行,换算温度感应器传输过来的数字信号换算成数码管的数字信号,然后通过数码管显示当前温度值,接下来执行温控子程序,判断当前的温度值是否低于设置温度值10℃或高于设置温度值,从而通过输出控制程序,控制水温继电器的电流通断,控制继电器连接的加热棒的工作状态,达到控制水温的加热效果;当按键没有被按下,就直接执行温度数字信号的处理、显示、判断、控制电机,最后又回到判断按键是否被按下,依此循环,完成对水温的检测与控制。程序原理如下4-2图所示:开始开始DS18B20初始化按键设定是否按按键执行按键程序显示实时温度执行温控程序控制电机启停按键处理是否YYNN图4-2温度程序流程图4.3水位的检测与控制程序在水位的检测与控制系统中,本设计运用水位监测电路板进行监测,运用水泵进行水箱的加水控制,通过4个不同颜色的LED灯显示当前的4个不同水位的高度。当水位低于1/4水位时,执行低与最低水位语句,蜂鸣器开始报警,水位继电器闭合,水泵开始注水;当水位超过1/4水位时,蜂鸣器停止报警,水泵继续加水到满水位,然后继电器断开,水泵停止加水,在加水过程中,水位到达1/4水位刻度,就会导通一个LED黄灯,到达2/4水位时,导通两个LED黄灯,依次类推,反之,水位下降则会断开LED灯与电路的连接,通过上述的流程,以此达到水位的检测与控制作用。水位检测控制程序流程图如4-3所示开始监测水位传感器开始监测水位传感器是否低于1/4水位显示实时液位数据处理子程序控制电机启停是否图4-3水位程序流程图4.4数码管显示程序数码管在接收DS18B20温感器通过A/D得到的数字信号的过程中,通过单片机内部执行温度监控子程序计算温度值,然后通过I/O串口输出数据给数码管,数码管根据输出数据的电压高低来实现发光二极管的发亮位置。由于每位数码管的发光的时间为1ms,二极管的发光时间十分的快,尽管实际上各个数码管并不是同时发光的,但只要数据传输和发光二极管变化的速度足够快,就会给人留下一组相对稳定的数字,不会感觉有闪烁感。,数码管的程序流程图如4-4图所示。开始开始LCD显示界面LCD显示界面接收接收DS18B20信号执行子程序温度换算执行子程序温度换算显示当前温度值显示当前温度值结束结束图4-4数码管显示水温程序流程图5.水温水位检测控制系统的调试在水温水位监控系统的调试过程中,使用的调试软件是STC-ISP下载烧录软件,通过USB线一端连接到电脑,另一端连接单片机USB端口。然后在STC-ISP选择连接好的端口,再在打开文件夹中找到已在Keil5编程软件上做好的水温控制系统程序下载到单片机中进行调试。首先等先在Keil5程序编写软件上编写好设计所需要的程序模块,生成成功后,程序就会生成HEX文件。接下来发是打开STC-ISP程序下载软件,在STC-ISP软件连接端口处找到对应的连接端口,然后在文件中查找到刚才生成的hex文件,选择hex文件并打开,点击下载程序并同时按下单片机的启动按键,当STC-ISP软件显示下载完成,表示实物的程序下载完成。程序下载到实物后,实物连接电源,开始进行功能完成度的检测。打开电源开关进入到系统初始界面,自锁开关旁边的LED指示灯会亮起,把水位传感器,温度传感器DS18B20,加热棒,水泵的送水端放入同一个水箱中,水泵的吸水端放入另一个水源中,此时LED发亮的个数就是当前的水位,数码管显示当前温度值,系统启动成功如5-1图所示图5-1初始界面通电后进入初始界面,此时由于内设定的初始温度值是50摄氏度,当前水温低于设定值10摄氏度,水温继电器闭合,继电器LED灯亮起,加热棒开始加热。当水温加热到设定温度值的时候,水温继电器断开,加热棒停止加热,数码管显示当前温度值。这时,我们通过电路板的水温控制按键,调节水温的设定值,当调节的水温设定值低于当前的水温的时候,蜂鸣器开始报警,这时我们只需要等水温自然冷却就可以了,当水温不高于设定温度值,蜂鸣器就会停止报警;当调节水温设定值低于当前水温10摄氏度的时候,水温继电器闭合,加热棒开始加热。水温检测控制演示如图5-2和5-3所示。图5-2当前水温低于设定值10摄氏度时图5-3当前水温高于设定值时在水位的检测控制中,我们可以通过手动移动水位传感器的在水中的不同的位置,观察水位LED灯和水位继电器的变化。当我们把水位传感器的1/4刻度线与水体接触时,水位传感器与5V的电路导通,输送电流到单片机中,执行水位检测控制语句,这时1个LED等亮起,显示当前的水位是1/4水位,接下来就是依次进行,当2/4,3/4,4/4刻度接触时,就显示2个,3个,4个LED灯。那么当我们移动水位传感器到达低于1/4刻度的时候,这时蜂鸣器就会报警,水位继电器闭合,水泵开始加水,当水位高于1/4水位时,蜂鸣器停止报警,水泵继续向水箱注水,当水位到达满水位后,水位继电器自动断开,水泵停止向水箱注水。其具体演示流程图如图5-4和5-5所示:图5-4水位低于1/4水位时图5-5水位刻度段显示6.结论该系统的设计到这里已经算是完成了,在系统调试的过程中,其设计要求实现的功能也基本可以完全实现。在该系统的设计过程中,设置了上电复位模块、数码管显示模块、温度感应采集模块、水位感应电路板模块、外部按键设置温度模块、蜂鸣器报警模块等。在水温水位监测与控制系统中用到的硬件有,以89c51单片机为主要电路控制中心,通过外部按键设置温度上限值、四位一体数码管显示当前水温值、蜂鸣器报警超过水位下限值和高于水温上限值,BS18B20温感应器采集转换温度信号成数字信号进行处理、水位传感电路板监测水位高低,LED灯连接单片机显示当前水位高度等原器件构成。通过这些原器件的分工合作,各自完成自己对应的控制模块,再加上单片机内部C语言程序的编程,就可以很好自动化的完成对水温水位的监测与控制。那么在这系统的设计过程当中,也不乏寻求过毕设辅导老师的帮助,也得到过班级同学的指点,得到过场外专业技术人员的器件说明和电路的指导意见,在此还是很心怀感激的,在各位老师、同学等人员的帮助下,顺利完成了水温水位监测控制系统的设计。在设计过程中也学习到了很多知识,也开始认知到了之前学习的不足和学习内容的不深入,同时也告诫自己在任务的完成过程中,自己的能力是有限的,需要团结大家的智慧才能更好更快的完成工作,为接下来步入社会打好一定的团队意识。参考文献[1]马忠梅.单片机的C语言应用程序设计[M].北京:北京航空航天大学出版社,1998.[2]李晓荃.单片机原理与应用[M].北京:电子工业出版社,2000.[3]何立民.AVR单片机原理与接口技术[M].北京
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年医疗健康行业创新突破与发展报告
- 沥青混凝土环保扬尘控制方案
- 城区雨污分流源头治理项目绩效评价
- 小学二年级数学《厘米启航:度量本质的具身建构》教案
- 临床路径优化实施方案
- 仓库盘点作业指导书
- 变配电所建筑构造工程竣工验收报告
- 初中英语九年级上册 Unit 1 写作课探究型导学案(沪教牛津版)
- 半导体封装键合材料生产项目施工方案
- python补考试题及答案
- T∕APD 0015-2025 公路大件运输标准体系建设指南
- 2025年中国智能消防头盔行业市场全景分析及前景机遇研判报告
- 家具配件厂节能降耗实施办法
- 金融学基础 课件 第十二章 金融风险与金融监管
- 2025年学前教育教学能力测试试卷及答案
- 代理保险业务培训
- 无人机吊装作业安全管理
- 外研版(2019)高中英语必修第一册Unit 1-6重点单词+短语+知识点 汇编(含6套单元测试卷及答案)
- 儿童糖尿病酮症酸中毒诊疗指南(2024)解读课件
- GB/T 29912-2024城市物流配送汽车选型技术要求
- GB/T 20085-2024植物保护机械词汇
评论
0/150
提交评论