课题名称:水箱水位控制系统设计专业:电气工程及其自动化学号:姓名:I水箱水位控制系统设计摘要本设计主要基于单片机的硬件电路设计,实现一种能够实现水位自动控制、具有自动保护、自动声光报警功能的控制系统。本控制系统由A/D转换部分、单片机控制部分、数码显示部分、电机驱动部分、电机控制部分等构成。同时对各个部分进行了详细的论述。在设计中对水塔水位控制原理进行分析,选用AT89C51单片机作为控制水塔水位的处理芯片,由AT89C51的P1口直接来控制.设计方案采用模块化程序设计方法,结合程序流程图,编写程序代码,最后利用KEIL公司的uVision3软件及伟福仿真软件进行仿真实验,达到单片机自动控制水塔水位变化的目的.关键词:单片机,水塔水位控制原理,AT89C51,伟福仿真软件II目录前言......................................................................................................................................1第1章设计内容.....................................................................................................................21.1设计要求..................................................................................................................21.2方案设计..................................................................................................................2第2章硬件电路设计.............................................................................................................32.1系统框图设计...........................................................................................................32.2系统原理..................................................................................................................4第3章水塔水位控制系统的硬件电路设计...........................................................................53.1水位检测电路...........................................................................................................53.2水位显示电路...........................................................................................................53.3电机控制电路............................................................................................................63.4振荡电路和复位电路................................................................................................73.5声光报警电路............................................................................................................7第4章软件程序设计.............................................................................................................84.1系统主程序流程图...................................................................................................84.2编写C程序...............................................................................................................9第5章硬件制作与调试.......................................................................................................10结论....................................................................................................................................11附录....................................................................................................................................12仿真总图................................................................................................................................12源代码....................................................................................................................................131前言水塔是在日常生活和工业应用中经常见到的蓄水装置,在我们的生活中起到了重要的作用,而水基于单片机的水塔水位控制系统使水塔水位自动保持在一定的位置,通过对其水位的控制对外供水,以满足需要。塔里面的水位控制是一个水塔发挥作用的关键。该系统使用水位传感器对水塔水位进行检测并将检测到的信号传给单片机来进行处理,通过调整定时器的定时时间来增大或者缩小占空比,并编写程序加以控制,从而实现电机的调速。最后,使用液晶屏显示当前水位状态以及电动机的转速。该系统通过了报警模块来实现了过低水位蜂鸣器鸣笛报警、过低警戒水位自动处理、正常水位蜂鸣器鸣笛报警以及正常水位处理。本系统适应在不同的用水场合下的用水速度需要,节省工作时间,提高了整体工作的效率,实现水塔水位的自动控制。液位控制是工业控制中的一个重要问题,针对液位控制过程中存在大滞后、时变、非线性的特点,为适应复杂系统的控制要求,人们研制了种类繁多的先进的智能控制器,模糊PID控制器便是其中之一。模糊PID控制结合了PID控制算法和模糊控制方法的优点,可以在线实现PID参数的调整,使控制系统的响应速度快,过渡过程时间大大缩短,超调量减少,振荡次数少,具有较强的鲁棒性和稳定性,在模糊控制中扮演着十分重要的角色。2第1章设计内容1.1设计要求在Proteus中画出原理图或使用实物,编制程序,实现以下功能:(1)使用LED数码管显示当前水位;(2)使用按键模拟水位开关;(3)可以设定水位上、下限,到达或超过水位上限时,电机停止转动;到达或超过水位下限时,电机开始转动。(4)设置声光报警系统,当水位过低或满水位时,相应报警指示灯闪烁,并发出报警声。1.2方案设计本方案采用单片机AT89C51作为我们的控制芯片,主要工作过程是当高塔中的水在低水位时,水位探测传感器送给单片机一个高电平,然后单片机驱动水泵加水和显示系统使红灯闪烁;当水位在正常范围内时,水泵加水;当水位在高水位时,单片机不能驱动水泵加水,黄灯闪烁。单片机技术是信息时代用于精密测量的一种新技术。此系统使用过程中采用稳压电路能够准确地把输入的电平送给单片机不会产生误判的情况,由于AT89C51单片机有四端口,20引脚能够非常方便地设计显示系统。3第2章硬件电路设计2.1系统框图设计系统的总体框图主要由主控芯片基本电路,按键电路,电动机和蜂鸣器驱动电路,液晶显示电路组成。出主控芯片电路外,其他的都是外围功能性电路。蜂鸣器和电动机驱动原理基本相同,都为三级管驱动电路,按键电路为平常的独立按键电路,液晶电路参考设计手册即可。电路设计框图如图2.1所示。水位自动控制系统设计:图2.1水位控制系统总框图42.2系统原理当水位处于低水位的时候,传感器的低水位探测器没被+5V的电源导通进入稳压电路,经过处理在稳压电路的输出端有一个高电平,送入单片机的P1.7口,输出的高电平进入单片机的P1口单片机经过分析,在P3.2口输出一低电平,驱动红灯闪烁,同时在P3.1口输出一低电平,驱动蜂鸣器报警;P3.0出来一个信号使三极管导通,使水泵加水;当水位处于正常范围内时,水泵加水,在P3.2引脚出来一个低电平,使红灯灭;当水位在高水位区时,传感器的低水位探测线被导通,经过处理在稳压电路的输出端有一个高电平,送入单片机的P1.0口,单片机经过分析,在P3.3引脚出来一个低电平,使黄灯亮,在P3.1口输出一低电平,驱动蜂鸣器报警;P3.0输出一个信号使三极管导通,使水泵停止加水。采用单片机AT89C51作为我们的控制芯片,主要工作过程是当高塔中的水在低水位时,水位探测传感器送给单片机一个高电平,然后单片机驱动水泵加水和显示系统使红灯闪烁,同时报警;当水位在正常范围内时,水泵加水,当水位在高水位时,单片机不能驱动水泵加水,黄灯闪烁,同时报警。5第3章水塔水位控制系统的硬件电路设计水塔水位控制系统的单片机选用AT89C51芯片,在Proteus平台下进行硬件仿真。硬件电路设计分为水位检测、水位显示、声光报警、电机控制、振荡电路和复位电路几个部分。3.1水位检测电路本检测电路采用DIPSW-8组开关来做水位监测触发。水位检测部分是用单片机P1.0~P1.7连接的8个按钮分别代表低水位,水位1、水位2、水位3、水位4、水位5,水位6,和满水位。水位检测电路如图3.1所示图3.1水位检测电路3.2水位显示电路采用一片LED数码管进行显示,由单片机P0.0~P0.7和P2.0口输出段码,进行水位显示数字0~7分别代表低水位、水位1、水位2、水位3、水位4,水位5和水满时的水位标志。水位显示电路如图3.2所示6图3.2水位显示电路3.3电机控制电路加水时,电机正常工作。为确保水塔内不能没有水,所以在设计当中,当到达水位0的时候就开始供水,电机工作。电机控制部分,采用了三极管放大来控制电机的工作,由单片机P3.0口进行控制。电机控制电路如图3.3所示。图3.3电机控制电路73.4振荡电路和复位电路图3.4振荡电路和复位电路3.5声光报警电路本电路采用不同颜色的发光二极管来表示不同的水位情况。即红灯D1亮表示