文档视界 最新最全的文档下载
当前位置:文档视界 › 基于单片机的水位控制系统设计.

基于单片机的水位控制系统设计.

基于单片机的水位控制系统设计.
基于单片机的水位控制系统设计.

o 课 程 设 计 任 务 书

题目 水位控制器设计 专业、班级 学号 姓名

主要内容、基本要求、主要参考资料等:

一、主要内容:

① 熟悉单片机应用系统的设计方法和规范,达到综合的目的。② 学习文件检索和查找数据手册的能力。③ 学习protel 软件的使用。

④ 学会整理和总结设计文档报告。二、基本要求:

① 以MCS-51系列单片机为核心,组成一个水位自动控制系统。② 六区间式水位显示。③ 全自动位式进水。④ 满水、低水水位报警。

⑤ 水位传感器故障自检及报警提示。⑥ 能延时恢复的报警消音。三、主要参考资料:

① 张毅坤等 单片微型计算机原理及应用 西安 西安电子科技大学出版社

② 李建忠编著 单片机原理及应用 西安 西安电子科技大学出版社

完 成 期 限:

指导教师签名: 课程负责人签名:

2013年 12月 16 日

目录

摘要...................................................I 1、概述. (1)

1.1、系统原理 (1)

1.2、系统结构图 (1)

1.3、控制方案说明 (2)

1.4、系统组成及原理 (2)

2、硬件设计 (4)

2.1、单片机最小系统电路设计 (4)

2.2、水位检测传感器的选用 (5)

2.3、稳压电路的设计 (6)

2.4、光报警电路的设计 (7)

2.5、水泵的介绍 (9)

2.6、继电器控制水泵加水电路 (12)

2.7、电源电路 (13)

2.8、看门狗技术 (14)

3、软件设计 (17)

3.1、系统总原理图 (17)

3.2、系统程序清单 (18)

总结 (20)

参考文献 (21)

附录 (22)

摘要

设计一种基于单片机水塔水位检测控制系统。该系统能实现水位检测、电机故障检测、处理和报警等功能,实现超高、低警戒水位报警,超高警戒水位处理。

调查的过程当中发现,目前大多数的住宅小区都是采用人工加水的办法,即当水用完的时候,就人工开启水泵进行加水,十分不便。引起了老百姓的抱怨----水用完之前,不知道水已经很少,待用完后才知晓,如果是急需水的情况下,那就十分麻烦要等加水后才有水用;加水的过程当中,还需要人时刻检查水位情况,以防止水量超过最高水位线;所有这一切问题的存在,都在呼唤一种简单经济的水位控制系统的诞生。

另外,现在许多的锅炉系统、防洪系统也需要对水位进行控制,以能够方便地控制水位,对不同的水位进行报警,所以如果研制了一种很好的水位控制装置便能够很好地造福人民。

相信本次的设计一定能够给老百姓的生活带来方便,也一定会具有广阔的市场前景,一定能够使我们电子设计能力得到很好的锻炼,使我们的理论和现实生活联系起来!

关键词:单片机;水位检测;控制系统

1、概述

1.1、系统原理

当水位处于低水位的时候,传感器的低水位探测线没被

+5V的电源导通进入稳压电路经过处理在稳压电路的输出端

有一个高电平,送入单片机的P1.0口,另一个稳压电路输出的高电平进入单片机的P1.1口单片机经过分析,在P1.2口

输出一低电平,驱动红灯亮,P1.5出来一个信号使光电耦合

器GDOUHE导通,这样继电器闭合,使水泵加水;当水位

处于正常范围内时,水泵加水,在P1.3引脚出来一个低电平,使绿灯亮;当水位在高水位区时,传感器的两根探测线均被

导通,均被+5V的电源导通,送入单片机,单片机经过分析,在P1.4引脚出来一个低电平,使黄灯亮,在P1.5端出来一

个低电平不能使光电耦合器导通,这样继电器不能闭合,水

泵不能加水;当三灯闪烁表示系统出现故障。

1.2、系统结构图

图1-1 系统结构图

采用单片机AT89C2051作为我们的控制芯片,主要工作过程是当高塔中的水在低水位时,水位探测传感器送给单片机一个高电平,然后单片机驱动水泵加水和显示系统使红灯变亮;当水位在正常范围内时,水泵加水,绿灯亮,;当水位在高水位时,单片机不能驱动水泵加水,黄灯亮。

1.3、控制方案说明

这个方案中使用了单片机处理,单片机技术是信息时代用于精密测量的一种新技术。此系统使用过程中采用稳压电路能够准确地把输入的电平送给单片机不会产生误判的情况,由于AT89C2051单片机有四端口,20引脚能够非常方便地设计显示系统。

1.4、系统组成及原理

本系统由电源电路、水位探测传感电路、稳压电路、单片机系统、光报警显示电路、继电器控制水泵加水电路、以及高塔模型组成。主电气原理图如下:

图1-2 原理图

工作原理:当水位处于低水位的时候,传感器的低水位探测线没被+5V的电源导通进入稳压电路经过处理在稳压电路的输出端有一个高电平,送入单片机的P1.0口,另一个稳压电路输出的高电平进入单片机的P1.1口单片机经过分析,在P1.2口输出一低电平,驱动红灯亮,P1.5出来一个信号使光电耦合器GDOUHE导通,这样继电器闭合,使水泵加水;当水位处于正常范围内时,水泵加水,在P1.3引脚出来一个低电平,使绿灯亮;当水位在高水位区时,传感器的两根探测线均被导通,均被+5V的电源导通,送入单片机,单片机经过分析,在P1.4引脚出来一个低电平,使黄灯亮,在P1.5端出来一个低电平不能使光电耦合器导通,这样继电器不能闭合,水泵不能加水;当三灯闪烁表示系统出现故障。

2、硬件设计

2.1、单片机最小系统电路设计

AT89C2051是美国ATMEL公司生产的低电压、高性能CMOS 8位单片机,片内含2k bytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大at89c2051单片机可为您提供许多高性价比的应用场合。本设计中单片机采用AT89C2051,它是一种高性能低价格单片机。引脚(20个)和指令系统与8031单片机完全兼容。片内有2 K字节的闪速程序存储器(采用电擦除编程, 可重复编程1000次,数据可保10年),除没有P0口、P2口外,具有8031所有功能结构,即一片AT89C2051相当于8031、373 、2716 组成的最小系统。用它构成的测量、控制系统具有电路简单、可靠性好、体积小和成本低等优点。AT89C2051 的P1 口为八位双向I/ O 口, P1.2~P1.7有内部上拉电阻, P1.0与P1.1无内部上拉电阻。P1.0与P1.1具有第二功能, 分别作为片内精密比较器的同相、反相输入端。P1 口输出驱动器能提供20mA 的灌电流驱动能力, 其锁存器写1 时可作为输入口。AT89C2051 的P3 口为七位双向I/ O 口, 有内部上拉电阻, P3 口输出驱动器能提供20mA 灌电流驱动能力, 其锁存器写1 时可作输入口。P316作为输入线与片内精密比较器输出端在片内相连,

故无引出线, 但可读该位的值。P310~P315的第二功能与8031 P3 口相应口线的第二功能完全相同。综上所述, P1 和P3 口中的各口线可直接驱动发光二极管, 不用再配置发光二极管驱动电路,P1.0与P1.1具有第二功能, 不用再配置比较器, 从而简化了控制电路的结构。

图2-1 最小系统电路图

2.2、水位检测传感器的选用

传感器是一种能感受被测物体物理量并将其转化为便于传输或处理的电信号的装置,在现代科技领域中,传感器得到了广泛应用,各种信息的采集离不了各种传感器,传感器的基本功能在于能感受外界的各种“刺激”并作出迅速反映。本设计当中我们采用的水位探测传感器简单易做,经济实惠。其外形轮廓如下:

A

图2-2 水位探测传感器外观图

A为接+5V电源的线与水一直保持连通,B线为低水位控制线,当水位到达低水位的时候它不导通,水在正常范围内时,它导通。C线为高水位控制线,当它导通时,表示水已经为高水位。

本设计中采用了细铜线作为我们的传感器的材料。主要考虑了(1)细铜线的电阻率比较低,这样就可以避免由于电阻过大而使输出的电平过低,以致不能很好地驱动单片机工作(2)传电性能比较好,传电速率比较快,也就是说灵敏性非常好。(3)细铜线便宜易找。

本传感器的尺寸是A线是30CM,B线是20CM,C线是15CM,铜线直径是15MM。

2.3、稳压电路的设计

本电路的主要作用是使从传感器输出的电平能够稳定地输入单片机中,主要由三极管的两极放大稳定电路组成,其

工作过程是水位探测传感器把探测到的电信号送给R12,如果

送入的是高电平则R11、Q5、D3、Q4导通把低于1.4V的低电平稳定地送给单片机。如果是低电平送给R12则

R11、Q5、D3、Q4均不能导通二是R13导通将把高于1.4V

的高电平稳定的送给单片机。

我查找了相关资料以及我们自己在设计过程当中免去此

稳定电路,发现有时候也能实现我们的设计目的,但是也有很多时候发生水位误判的情况,产生不稳定现象,所以我们认为此电路是不可缺少的。既然是控制系统,当然就要控制精确。

图2-3 稳压电路原理图

2.4、光报警电路的设计

发光二极管(LED)是用半导体材料制作的正向偏置的PN结二极管。其发光机理是当在PN结两端注入正向电流时,注入的非平衡载流子(电子-空穴对)在扩散过程中复合发光,这种发射过程主要对应光的自发发射过程。按光输出的

位置不同,发光二极管可分为面发射型和边发射型。发光二

极管的发光原理同样可以用PN结的能带结构来解释。制作

半导体发光二极管的材料是重掺杂的,热平衡状态下的N区有很多迁移率很高的电子,P区有较多的迁移率较低的空穴。由于PN结阻挡层的限制,在常态下,二者不能发生自然复合。,而当给PN结加以正向电压时,沟区导带中的电子则可逃过PN结的势垒进入到P区一侧。于是在PN结附近稍偏

于P区一边的地方,处于高能态的电子与空穴相遇时,便产生发光复合。这种发光复合所发出的光属于自发辐射,辐射光的波长决定于材料的禁带宽度Eg。

本电路采用不同颜色的发光二极管来表示不同的水位情况。即红灯亮,他两灯不亮表示是低水位状态,此时需要启动水泵加水;绿灯亮,其他两灯不亮表示在正常的水位线内;黄灯发亮,其他两灯不亮为高水位状态,水泵停止加水,三灯闪烁表示系统出现故障。

P1.3

P1.2

图2-4 光报警电路的原理图

此电路采用的是共阳极的,所以只有当单片机给发光二极管为低电平时才能推动发光二极管点亮。其中

R14、R15、R16为上拉电阻起限压控流作用。

2.5、水泵的介绍

水泵是每个家庭必不可少的生活工具,虽然大多数人并没有认识到这一点,但这确是事实。很多人对水泵一无所知。

(1) 水泵的分类

水泵一般多以泵的结构和作用原理来分类,有时根据需要也按使用部门、用途、动力类型和泵的水力性能等进行分类。

1)按使用部门分有农业用泵(农用泵)、工作用泵(工业泵)和特殊用泵等。

2)按用途分有水泵、砂泵、泥浆泵、污水泵、污物泵、井用泵、潜水电泵、喷灌泵、家用泵、消防泵等。

3)按动力类型分有手动泵、畜力泵、脚踏泵、风力泵、太阳能水泵、电动泵、机动泵、水轮泵、内燃水泵、水锤泵等。

4)按工作原理分有离心泵、混流泵、轴流泵、旋涡泵、射流泵、容积泵(螺杆泵、活塞泵、隔膜泵)、链条泵、电磁泵、液环泵、脉冲泵等。

(2)选择水泵的主要参数

水泵参数是指泵工作性能的主要技术数据,包括流量、扬程、转速、效率和比转数等。

1)流量(Q)

泵的流量是指单位时间内所排出的液体的数量。通常泵的流量用体积计算,以Q表示,单位为米3/时(m3/h)、米

3/秒(m3/s)、升/秒(1/s),也可用重量计,以G表示,单位为吨/时(t/h)、吨/秒(t/s)、千克/秒(kg/s)。

G与Q的关系:G=r×Qr-液体重度(千克/米3)

因水的重量近似1000千克/米3,故1升/秒=3.6米3/时=3.6吨/时

2)扬程(H)

泵的扬程是指单位重量的液体通过泵所增加的能量。以H表示,实质上就是水泵能够扬水的高度,又叫总扬程或全扬程。单位为米液柱高度,习惯上省去“液柱”,以米(m)表示。

泵的总扬程由吸水扬程与出水扬程两部分组成,因此总扬程=吸水扬程=出水扬程但由于水流经过管路时受到各种阻力而减少了泵的吸水扬程和出水扬程,因此:

吸水扬程=实际吸水扬程+吸水损失扬程

出水扬程=实际出水扬程+出水损失扬程

损失扬程=吸水损失扬程+出水损失扬程

总扬程=实际扬程+损失扬程

由于水泵铭牌上标明的扬程是上述水泵的总扬程,因此不能误认为铭牌上的扬程是实际扬程数值,水泵的实际扬程都比水泵铭牌上的扬程数值小。因此在确定水泵扬程时,这一点要特别注意。否则,如果只按实际扬程来确定水泵的扬程,订购来的水泵扬程就低了,那可能会降低水泵的效率,甚至打不上水来。损失扬程与管路上的水管和附件种类(低阀、闸阀、逆止阀、直管、弯管)、数量、水管内径、管长、

水管内壁粗糙程度以及水泵流量等都有密切关系,这一点在管路设计和选配水管和附件时也应注意。

3)允许吸上真空高度(Hs)

允许吸上真空高度是指真空表读数吸水扬程,也就是泵的吸水扬程(简称泵的吸程),包括实际吸水扬程与吸水损失扬程之和。以Hs表示,单位为米(m)。

允许吸上真空高度是安装水泵高度的重要参数,安装水泵时,应使水泵的吸水扬程小于允许吸上真空高度值,否则安装过高,就吸不上水或生产气蚀现象。如生产气蚀,不仅水泵性能变坏,而且也可能使叶轮损坏。

4)转速(n)

转速是指泵叶轮每分钟的转数,以n表示,单位为转/分(r/min)。每台泵都有一定的转速,不能随意提高或降低,

这个固定的转素称为额定转速,水泵铭牌上标定的转速即为额定转速。如泵运转超过额定转速,不但会引起动力机超载或转不动,而且泵的零部件也容易损坏;转速降低,泵的效率就会降低,影响水泵的正常工作。

5)比转数(ns)

在前述水泵型号中,有些型号的组成部分有比转数这个参数。比转数与转速是两个概念,水泵的比转数,简称比速,常用符号为ns。水泵的比转数是指一个假想的所谓标准水泵叶轮的转数,这个假想的水泵与真实水泵的叶轮各部分都几何相似,而在消耗功率为0.735千瓦、扬程为1米、流量为0.075立方米/秒时所具有的转数。叶轮形状相同或相似的水

泵比转数相同,叶轮形状不相同或不相似的水泵比转数不相同。如轴流泵比转数比混流泵大,混流泵比转数也是反映水泵特性的综合性指标。此外,要注意比转数大的水泵,其转速不一定高;比转数小的,转速不一定低。大流量、低扬程的水泵,比转数大,反之则小。一般比转数较低的离心泵,其流量小、扬程高;而比转数较高的轴流泵,其流量大、扬程低。

2.6、继电器控制水泵加水电路

1、继电器控制电路的原理图

该电路由继电器RL1和闭合开关、光电耦合器、水泵

R7、R8、R9、R10以及D2、Q3等组成。当水位在低水位时单片机给P1.1送一个高电平导通光电耦合器然后光电耦合器驱动Q3导致继电器闭合从而让220V的交流电接通使水泵加水。

图2-5 继电器控制水泵加水电路的原理图

其中光电耦合器是以光为媒介传输电信号的一种电一光一电转换器件。它由发光源和受光器两部分组成。把发光源和受光器组装在同一密闭的壳体内,彼此间用透明绝缘体隔离。发光源的引脚为输入端,受光器的引脚为输出端,在本

设计当中发光源为发光二极管,受光器为光敏三极管。在本设计当中我们采用光电耦合器组成开关电路的作用,能够很好地将单片机信号稳定地送给继电器驱动继电器闭合。

继电器是具有隔离功能的自动开关元件,在我们设计当中主要来做自动控制作用,我们采用+5V的直流电来控制220V的交流电,以达到控制水泵的作用,因为是在这里是以一种弱电来控制强电所以安装和使用的过程当中我们一定要注意用电安全注意事项。

电磁式继电器一般由铁芯、线圈、衔铁、触点簧片等组成的。只要在线圈两端加上一定的电压,线圈中就会流过一定的电流,从而产生电磁效应,衔铁就会在电磁力吸引的作用下克服返回弹簧的拉力吸向铁芯,从而带动衔铁的动触点与静触点(常开触点)吸合。当线圈断电后,电磁的吸力也随之消失,衔铁就会在弹簧的反作用力返回原来的位置,使动触点与原来的静触点(常闭触点)吸合。这样吸合、释放,从而达到了在电路中的导通、切断的目的。对于继电器的“常开、常闭”触点,可以这样来区分:继电器线圈未通电时处于断开状态的静触点,称为“常开触点”;处于接通状态的静触点称为“常闭触点”。

2.7、电源电路

电源电路虽然简单,但需要功能可靠,所用采用两个三端集成稳压器7802、7805,可以方便的实现此功能,电路如图7所示

图2-6 电源电路

2.8、看门狗技术

在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统

无法继续工作,会造成整个系统的陷入停滞状态,发生不可

预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称"看门狗"(watchdog)

看门狗电路的应用,使单片机可以在无人状态下实现

连续工作,其工作原理是:看门狗芯片和单片机的一个I/O

引脚相连,该I/O引脚通过程序控制它定时地往看门狗的这个引脚上送入高电平(或低电平),这一程序语句是分散地放在单片机其他控制语句中间的,一旦单片机由于干扰造成

程序跑飞后而陷入某一程序段进入死循环状态时,写看门狗引脚的程序便不能被执行,这个时候,看门狗电路就会由

于得不到单片机送来的信号,便在它和单片机复位引脚相连的引脚上送出一个复位信号,使单片机发生复位,即程序从

程序存储器的起始位置开始执行,这样便实现了单片机的自动复位.

看门狗,又叫watchdog timer,是一个定时器电路,一般有一个输入,叫喂狗(kicking the dog or service the dog),一个输出到MCU的RST端,MCU正常工作的时候,每隔一端时间输出一个信号到喂狗端,给WDT 清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT 定时超过,就回给出一个复位信号到MCU,是MCU复位。防止MCU死机. 看门狗的作用就是防止程序发生死循环,或者说程序跑飞。

工作原理:在系统运行以后也就启动了看门狗的计数器,看门狗就开始自动计数,如果到了一定的时间还不去清看门狗,那么看门狗计数器就会溢出从而引起看门狗中断,造成系统复位。所以在使用有看门狗的芯片时要注意清看门狗。

系统软件"看门狗"的设计思路:

(1)看门狗定时器T0的设置。在初始化程序块中设置

T0的工作方式,并开启中断和计数功能。系统Fosc=12 MHz,T0为16位计数器,最大计数值为(2的16次方)-

1=65 535,T0输入计数频率是。Fosc/12,溢出周期为(65 535+1)/1=65 536(μs)。

(2)计算主控程序循环一次的耗时。考虑系统各功能模块及其循环次数,本系统主控制程序的运行时间约为16.6 ms。系统设置"看门狗"定时器T0定时30 ms(T0的初值为

65 536-30 000=35 536)。主控程序的每次循环都将刷新T0的初值。如程序进入"死循环"而T0的初值在30 ms内未被刷新,这时"看门狗"定时器T0将溢出并申请中断。(3)设计T0溢出所对应的中断服务程序。此子程序只须一条指令,即在T0对应的中断向量地址(000BH)写入"无条件转移"命令,把计算机拖回整个程序的第一行,对单片机重新进行初始化并获得正确的执行顺序

图2-7 看门狗电路

水位控制器设计

3、软件设计

3.1、系统总原理图

相关文档