基于单片机的水位监测报警系统毕业设计Word文件下载.docx
《基于单片机的水位监测报警系统毕业设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于单片机的水位监测报警系统毕业设计Word文件下载.docx(17页珍藏版)》请在冰豆网上搜索。
参考文献16
附录一17
附录二18
附录三20
感谢1
摘要
本水位监测报警器使用5V低压直流电源(也可以用3节5号电池代替)就可以对5~15厘米的水位进行监测,用发光二极管显示,并可以对不再此范围内的水位发出报警。
主要采用单片机AT89C52芯片,将控制程序写进单片机中,使其发挥相应的功能,再加上蜂鸣器、发光二极管、电阻、电容这些器件组成一个简单而灵敏的监测报警电路,操作简单,接通电源即可工作。
因为电路采用单片机技术,所以本水位监测报警器还具有电路简易、耗能低、准确性高的特点。
关键字:
单片机控制报警电路监测电路
Abstract
Thewaterlevelalarmusedtomonitorlowvoltage5VDCpowersupply(canalsouse5batteriesinsteadofthree)canbe5to15cmonthemonitoringofwaterlevel,withlight-emittingdiodedisplay,andcannolongerbewithinthisrange,thewaterlevelalarm.MainuseSCMAT89C52chip,willcontrolprogramwrittenintothemicrocomputer,toplaythecorrespondingfunctions,togetherwithabuzzer,light-emittingdiodes,resistors,capacitors,thesedevicesformasimpleandsensitivealarmfunction,simpleoperation,thenpowercanworkthrough.Becausethecircuitchiptechnology,sothewaterlevelmonitoringalarmcircuitalsohasasimple,lowenergyconsumptionandhighaccuracy.
Keywords:
microprocessorcontrolledalarmcircuitmonitoringcircuit
第1章绪论
现代传感技术、电子技术、计算机技术、自动控制技术、信息处理技术和新工艺、新材料的发展为智能检测系统的发展带来了前所未有的奇迹。
在工业、国防、科研等许多应用领域,智能检测系统正发挥着越来越大的作用。
检测设备就像神经和感官,源源不断地向人类提供宏观与微观世界的种种信息,成为人们认识自然、改造自然的有力工具。
现代的广义智能检测系统应包括一切以计算机(单片机、PC机、工控机、系统机)为信息处理核心的检测设备。
因此,智能检测系统包括了信息获取、信息传送、信息处理和信息输出等多个硬、软件环节。
从某种程度上来说,智能检测系统的发展水平表现了一个国家的科技和设计水平。
水位控制在日常生活及工业领域中应用相当广泛,比如水塔、地下水、水电站等情况下的水位控制。
而以往水位的检测是由人工完成的,值班人员全天候地对水位的变化进行监测,用有线电话及时把水位变化情况报知主控室。
然后主控室再开动电机进行给排水。
很显然上述重复性的工作无论从人员、时间和资金上都将造成很大的浪费。
同时也容易出差错。
因此急需一种能自动检测水位,并根据水位变化的情况自动调节的自动控制系统,水位检测可以有多种实现方法,如机械控制、逻辑电路控制、机电控制等。
然而,高塔水位控制系统是我国住宅小区广泛应用的供水系统,随着生活质量的不断提高,许多农村甚至城市兴建的许多的房子现在都要实现自来水供水,所以现在很多家庭的楼顶都砌了高塔用来存储用水,然后对整个房子的用水进行共给。
目前大多数的住宅小区都是采用人工加水的办法,即当水用完的时候,就人工开启水泵进行加水,十分不方便。
以至于水用完之前不知道水已经很少了,等到用完了才知道没水了,如果是急需用水的情况下,那就十分麻烦,要等到加水之后才有水用;
加水过程当中,还需要人时时刻刻检查水位情况,以防止水位超过最高的水位;
这以上一系列的问题,都在期待一种简单、经济的高塔水位控制系统的诞生。
另外,现在许多的锅炉系统、防洪系统也需要对水位进行控制,以能够方便地控制水位,对不同的水位进行报警,所以如果研制了一种很好的水位控制装置便能够很好地造福人民。
我们学习了专业知识,这也就为本次设计打下了良好的基础。
基于感到现实生活急需要这样的水位检测控制系统,所以我决定在老师的指导之下设计与研制一种高塔水位检测控制系统作为我的毕业设计课题。
其实要实现水位的自动检测和报警功能,可以用很多种方法来实现。
如可以用双向模拟开关CD4066芯片为主导,辅以编码驱动、译码驱动等等一系列的CMOS芯片组成主控电路;
也可以用555定时器组成的施密特触发器对水位进行控制;
也可以通过单片机技术等等。
由于用数字和模拟电路时,要进行一系列的数模转换,这样既增加了难度又使电路复杂且比较容易出错;
而如果使用555为主控电路的话,虽然使用起来比较方便,电路也相对简单,也不用涉及到数模转换和编程等软件方面的设计,但如果NE555芯片的输入电平不稳定,这时就容易发生错误的判断,给我们一个错误的信号,且555电路只有一个输出端,它不能很好地完成显示功能;
而单片机技术是信息时代用于精密测量的一种新技术,只要能够准确的将信号送给单片机,那么单片机就不会产生错误判断的情况,且单片机可以很好、很方便的对水位进行显示。
相信本次的设计一定能够给老百姓的生活带来方便,也一定会具有广阔的市场前景,一定能够使我的电子设计能力得到更好的锻炼,使我们的理论和现实生活联系起来!
现在,我大概的陈述一下我的设计思路。
在高塔的内部设计一个简易的水位检测传感器用来检测三个水位,即高水位;
中等水位;
低水位。
首先单片机接收到来自水位检测传感器的一个信号,然后经过单片机分析,在单片机的输出端口输出相应的信号,如果是低水位时,这时水泵转动并自动开始加水,红灯亮,黄灯和绿灯均不亮,并且蜂鸣器报警;
如果是中等水位时,水泵继续工作,这时绿灯亮,红灯和黄灯均不亮,蜂鸣器不报警;
如果是高水位时,水泵停止转动并且停止加水,黄灯亮,红灯和绿灯均不亮,蜂鸣器不报警。
第2章水位监测报警系统的硬件设计
2.1系统硬件设计框图
图2.1系统硬件设计框图
水塔水位检测报警系统硬件设计框图如图2.1所示,它包括单片机,电源电路,稳压电路,水位检测传感器,显示报警,声音报警及水泵自动控制系统。
本设计中用铜丝作为水位检测传感器,适当调整铜丝的长度,可自行设置高,中,低水位的范围。
利用单片机,将控制程序写进单片机中,经过对输入口信号的分析,在单片机的输出端口给出相应的信号。
若是高水位则让水泵停止转动,且黄灯亮,蜂鸣器不报警;
中水位时水泵保持转动,且绿灯亮,蜂鸣器不报警;
低水位时则启动水泵,使之开始抽水,且红灯亮,蜂鸣器报警。
本设计采用AT89C52的P1.0,P1.1,P1.2的灵活的I/O作用作为我们高,中,低水位的信号输入口,单片机通过软件的控制不断的检测P1端口的输入电平,一旦发现则执行相应的控制程序,从P2.0,P2.1,P2.2,P2.3,P2.4输出不同的信号来告知水位情况,是低水位时,就驱动红色发光二极管发光;
是中等水位时,就驱动绿色发光二极管发光;
是高水位时,就驱动黄色发光二极管发光。
并根据不同的水位决定是否通过P2.0口驱动水泵工作,决定是否通过P2.4口驱动蜂鸣器报警。
2.2MCS-51单片机的设计
2.2.1单片机的选择
图2.2内部结构
由图2.2可知单片机的内部包含了以下部件:
•一个8位CPU;
•一个时钟电路;
•4Kbyte程序存储器;
•128byte数据存储器;
•两个16位定时/计数器;
•64Kbyte扩展总线控制电路;
•四个8-bit并行I/O端口;
•一个可编程串行接口;
•五个中断源,其中包括两个优先级嵌套中断。
2.2.2单片机型号的选择
AT89系列单片机在我国得到了极其广泛的应用。
由于AT89C52具有强大的功能,可以使我的设计更方便也更人性化。
而且它很好的兼容MCS-51系列单片机的指令系统和引脚功能。
它片内还含有FlashMemory,FlashMemory是一种电擦除和电写入的闪速存储器(记为FPEROM),在系统开发过程中可以很容易地进行程序修改,使开发和调试更为简单。
2.2.3AT89C52的引脚图及功能介绍
图2.3AT89C52的引脚图
图2.3为AT89C52的引脚图。
AT89C52是ATMEL公司生产的一个低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C52单片机可为您提供许多较复杂系统控制应用场合。
AT89C52有32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,但不可以在线编程(S系列的才支持在线编程)。
其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。
AT89C52为40脚双列直插封装的8位通用微处理器,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc52相同,其主要用于会聚调整时的功能控制。
功能包括对会聚主IC内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。
主要管脚有:
XTAL1(19脚)和XTAL2(18脚)为振荡器输入输出端口,外接12MHz晶振。
RST/Vpd(9脚)为复位输入端口,外接电阻电容组成的复位电路。
VCC(40脚)和VSS(20脚)为供电端口,分别接+5V电源的正负端。
P0~P3为可编程通用I/O脚,其功能用途由软件定义,在本设计中,P0端口(32~39脚)被定义为N1功能控制端口,分别与N1的相应功能管脚相连接,13脚定义为IR输入端,10脚和11脚定义为I2C总线控制端口,分别连接N1的SDAS(18脚)和SCLS(19脚)端口,12脚、27脚及28脚定义为握手信号功能端口,连接主板CPU的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。
P0口:
P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。
作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
P1口:
P1口是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
与AT89C51不同之处是,P1.0和P1.1还可分别作为定时/计数器2的外部计数输入(P1.0/T2)和输入(P1.1/T2EX)
P2口:
P2口是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口P2写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。
在访问8位地址的外部数据存储器(如执行MOVX@RI指令)时,P2口输出P2锁存器的内容。
Flash编程或校验时,P2亦接收高位地址和一些控制信号。
P3口:
P3口是一组带有内部上拉电阻的8位双向I/O口。
P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。
此时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。
P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能。
P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。
P3口的第二功能:
P3.0—RXD(串行输入口〕
P3.1—TXD(串行输出口〕
P3.2—INT0(外中断0〕
P3.3—INT1(外中断l)
P3.4—T0(定时/计数器0)
P3.5—Tl(定时/计数器l)
P3.6—WR(外部数据存储器写选通)
P3.7—RD(外部数据存储器读选通)
Vcc:
电源电压。
GND:
接地。
RST:
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
ALE/PROG:
当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。
一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意的是:
每当访问外部数据存储器时将跳过一个ALE脉冲。
对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。
如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。
该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。
此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。
PSEN:
程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。
在此期间,当访问外部数据存储器,将跳过两次PSEN信号。
EA/VPP:
外部访问允许。
欲使CPU仅访问外部程序存储器(地址为0000H—FFFFH),EA端必须保持低电平(接地)。
需注意的是:
如果加密位LB1被编程,复位时内部会锁存EA端状态。
如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。
Flash存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。
XTAL1:
振荡器反相放大器的及内部时钟发生器的输入端。
XTAL2:
振荡器反相放大器的输出端.
2.3各模块电路的设计
水位检测报警系统主要是由5个模块组成。
既电源电路,稳压电路,水位检测传感器,声、光报警电路和水泵加水自动控制电路。
电源电路主要给单片机提供工作电源;
稳压电路,主要是对从水位检测传感器输出的信号进行稳压处理;
水位检测传感器,对水位情况进行检测;
声、光报警电路,主要对水位进行显示及对低水位报警;
水泵加水自动控制电路,当水位是低水位时,用单片机来控制水泵的工作。
2.3.1稳压电路
图2.4稳压电路
D3
稳压电路时由三极管的两级放大稳定电路组成。
如图2.4所示。
水位检测传感器将探测到的信号送给稳压电路,若是高电平,则R12,R11,Q5,D3,Q4导通,将低电平送给单片机;
若是低电平,则R12,R11,Q5,Q4,D3均不导通,而是通过R13将高电平送给单片机。
2.3.2报警电路的设计
1、光报警电路
+5V
P2.3
P2.1
1K
P2.2
图2.5光报警电路
图2.5所示的光报警电路采用不同颜色的发光二极管来表示不同的水位情况。
当水位是低水位时,从单片机的P2.3口输出一个低电平,驱动红色的发光二极管发光,
其余颜色的二极管均不发光;
当水位时中等水位时,从单片机的P2.2口输出一个低电平,驱动绿色的发光二极管发光,其余颜色的二极管均不发光;
电水位是高水位时,从单片机的P2.3口输出一个低电平,驱动黄色的发光二极管发光,其余颜色的二极管均不发光。
光报警电路时采用共阳极连接,低电平时有效。
其中R13,R14,R15为上拉电阻起限压控流的作用。
2.声报警电路
图2.6声音报警电路
P2.4
如图2.6所示的声音报警电路,当水位处于低水位时,单片机的P2.4口输出一个高电平,从而驱动三极管导通,使蜂鸣器发声,起到报警的作用。
2.3.3继电器控制水泵加水电路
1.继电器控制水泵加水电路的原理图
图2.7继电器的控制水泵加水电路
如图2.7所示,此电路由继电器RL1和闭合开关,光电耦合器,水泵,电阻R7,R8,R9,R10以及二极管D2,三极管Q3等组成。
当水位在低水位时,单片机的P2.0口输出一个高电平,使光电耦合器导通,继而驱动Q3导通,这样就使继电器闭合,从而让220v的交流电接通水泵,让水泵转动开始加水。
2.光电耦合器简介
光电耦合器是以光为媒介传输电信号的一种电一光一电转换器件。
它由发光源和受光器两部分组成。
把发光源和受光器组装在同一密闭的壳体内,彼此间用透明绝缘体隔离。
发光源的引脚为输入端,受光器的引脚为输出端,在本设计中发光源为发光二极管,受光器为光敏三极管。
本设计中我们采用光电耦合器组成开关电路的作用,能够很好地将单片机信号稳定地送给继电器,驱动继电器闭合。
3.继电器简介
继电器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。
在本设计中主要用来做自动控制作用,设计中采用+5v的直流电来控制220v的交流电,以达到控制水泵的作用。
电磁式继电器一般由铁芯、线圈、衔铁、触点簧片等组成的。
只要在线圈两端加上一定的电压,线圈中就会流过一定的电流,从而产生电磁效应,衔铁就会
在电磁力吸引的作用下克服返回弹簧的拉力吸向铁芯,从而带动衔铁的动触点与静触点(常开触点)吸合。
当线圈断电后,电磁的吸力也随之消失,衔铁就会在弹簧的反作用力返回原来的位置,使动触点与原来的静触点(常闭触点)释放。
这样吸合、释放,从而达到了在电路中的导通、切断的目的。
对于继电器的“常开、常闭”触点,可以这样来区分:
继电器线圈未通电时处于断开状态的静触点,称为“常开触点”;
处于接通状态的静触点称为“常闭触点”。
2.3.4电源电路
图2.8电源电路
220V
图2.8电源电路中四个二极管和四个滤波电容组成了电源滤波电路30027812,7805为中功率的三端稳压集成电路,由此可得到5V和12V的工作电压。
7812、7805三端稳压器,提供各种固定的输出电压,应用范围广。
内含过流、过热和过载保护电路。
带散热片时,输出电流可达1A。
虽然是固定稳压电路,但使用外接元件,可获得不同的电压和电流。
2.3.5水位检测传感器的设计
D+5V
C
图2.9传感器的设计
传感器是一种能够感受被测物体物理量并将其转化为便于传输或者容易处理的电信号的装置,在现代科技领域中,传感器得到了广泛的应用,各种信息的采集都离不开各种传感器,传感器的基本功能在于能够感受外界的各种“刺激”并作出迅速的反应。
本设计当中采用的水位检测传感器简单易做,经济实惠。
其外形轮廓如上图2.9所示。
D为接+5V电源的线与水一直保持连通,A线为低水位控制线,当它不导通时,表示是低水位了。
B为中水位控制线,当它导通时,表示水位适中。
C为高水位控制线,当它导通时,表示是高水位了。
传感器选用细铜丝,因为细铜丝的电阻率比较低,这样就可以避免由于电阻过大而使输出的电平过低,以致不能很好的驱动单片机工作;
细铜丝的传电性能比较好,传电速率比较快,也可以说是灵敏性很好;
还有就是细铜丝经济实惠,便于我们取材。
第3章软件设计部分
3.1水位检测报警系统的程序设计
N
图3.1程序设计图
图3.1为水位检测报警系统的主程序设计。
程序由开始经初始化后,此时,水位传感器将检测到的水位信号经过稳压电路送给单片机。
单片机则开始工作,若单片机从P1
口读入的信号是00H的话,则表示为低水位,这时单片机执行P2.0=0,P2.1=0,P2.2=1,P2.3=1,P2.4=1,即启动水泵抽水,LED的红灯亮,绿灯和黄灯均不亮,蜂鸣器报警;
若不是00H,则程序转到相应的另一个程序,如果单片机从P1口读入的信号为03H,这表示水位为中等水位,单片机执行P2.0=0,P2.1=1,P2.2=0,P2.3=1,P2.4=0,即水泵继续转动抽水,但红灯和黄灯均不亮,只有绿灯亮,蜂鸣器不报警,若不是03H的话,程序会自动转到下一个相应的程序;
若检测到的信号是07H的话,表示此时水位已是高水位了,单片机执行P2.0=1,P2.1=1,P2.2=1,P2.3=0,P2.4=0,即让水泵停止抽水,黄灯亮,红灯和绿灯均不亮,蜂鸣器也不报警。
若单片机读入的信号不是00H,03H,07H,则程序会直接转到初始化后,进行新一轮的信号读入。
第4章结论
以往,人们由于自己的楼顶水塔中的水位不清楚,加水不方便而感到苦恼,现在我们顺应大家的需要研制了这款简单、经济、实用的高塔水位控制系统,香型能够给广大的老百姓的生活带来方便,带来开心,以后大家再也不用亲自跑到楼顶加水啦!
本系统主要由水位检测传感器,单片机控制系统,水位显示系统,继电器驱动电路,水泵加水系统组成,系统简单,安装方便,建议广大用户尝试使用,我相信大家在用了之后一定会感到满意的。
本系统的工作过程是当水位处于低水位的时候,传感器的低水位探测线没被+5v的电源导通进入稳压电路经过处理在稳压电路的输出端有一个高电平,送入单片机的P1.2口,单片机经过分析,在P2.1口输出一个低电平,驱动红色发光二极管发光,同时,P2.4口输出一个高电平,使蜂鸣器报警,P2.0口有一个信号使光电耦合器导通,这样继电器闭合,使水泵转动,并向水塔加水;
当水位处于中等水位的时候,水泵继续工作,P2.2口输出一个低电平,驱动绿色发光二极管发光,但蜂鸣器不报警;
当水位处于高水位时,传感器的三根