水位监测系统.docx
《水位监测系统.docx》由会员分享,可在线阅读,更多相关《水位监测系统.docx(35页珍藏版)》请在冰豆网上搜索。
水位监测系统
湖南科技工业职业技术学院
毕业设计论文
设计课题:
水位监控系统
班级:
姓名:
学号:
专业:
机电一体化
教研室:
指导老师:
杨可以
联系电话:
E-mail:
水位监控系统
目录
摘要………………………………………………………………………………3
1前言……………………………………………………………………………4
1.1课题背景………………………………………………………………………4
1.2国内外研究的现状……………………………………………………………4
1.3使用单片机实现水体液位控制的优点…………………………………5
1.4系统的总体研究方案………………………………………………………5
1.4.1系统硬件总体方案…………………………………………………………5
1.4.2系统软件总体方案…………………………………………………………6
1.4.3设计的研究进程……………………………………………………………6
2系统硬件设计…………………………………………………………………7
2.1核心芯片AT98C51单片机………………………………………………………7
2.2液位传感器设计……………………………………………………………10
2.3压力传感器的基本特性…………………………………………………………………13
2.4ADC0832A/D转换器………………………………………………16
2.4.ADC0832转换芯片………………………………………………………18
2.5.LED显示管的设计………………………………………………………20
3软件的设计……………………………………………………………………22
3.1软件设计流程图……………………………………………………………………………23
3.2水位检测的主程序………………………………………………………………………….24
4结论……………………………………………………………………………26
致谢………………………………………………………………………………27
参考文献…………………………………………………………………………………………28
科工的学弟,只能借鉴,你老师那里有档案。
摘要
本文主要设计了一种液位控制器,它以AT89C51作为控制器,通过AT89C51单片机和模数转换器等硬件系统和软件设计方法,实现具有液位检测报警和控制双重功能,并对液位值进行显示。
本系统是基于单片机的液位控制,在设计中主要有水位检测、按键控制、水位控制、显示部分、故障报警等几部分组成来实现液位控制。
主要用水位传感器检测水位,用六个控制按键来实现按健控制,用三位7段LED显示器来完成显示部分,用变频器来控制循环泵的转速,并且通过模数转换把这些信号送入单片机中。
把这些信号与单片机中内部设定的值相比,以判断单片机是否需要进行相应的操作,即是否需要开启补水泵或排水泵,来实现对液面的控制,从而实现单片机自动控制液面的目的。
本设计用单片机控制,易于实现液位的控制,而且有造价低、程序易于调试、一部分出现故障不会影响其他部分的工作、维修方便、等优点。
关键词:
AT89C51单片机;模数转换;水位控制;自动控制
1前言
1.1课题背景
液位控制系统是以液位为被控参数的控制系统,它在工业生产的各个领域都有广泛的应用。
在工业生产过程中,有很多地方需要对容器内的介质进行液位控制,使之高精度地保持在给定的数值,如在建材行业中,玻璃窑炉液位的稳定对窑炉的使用寿命和产品的质量起着至关重要的作用。
液位控制一般指对某一液位进行控制调节,使其达到所要求的控制精度。
液体的液位的自动控制,是近年来新开发的一项新技术,它是微型计算机软件、硬件、自动控制等几项技术紧密结合的产物,工程作业采用的是微机控制和原有的仪表控制,微机控制有以下明显优势:
1)直观而集中的显示各运行参数,能显示液位状态。
2)在运行中可以随时方便的修改各种各样的运行参数的控制值,并修改系统的控制参数,可以方便的改变液位的上限、下限。
3)具有水体控制过程的自动化处理以及监控软件良好的人机界面,操作人员在监控计算机上能根据控制效果及时修运行参数,这样能有效地减少工人的疲劳和失误,提高生产过程的实时性、安全性
综合以上的种种优点可以预见采用计算机控制系统是行业的大势所趋。
单片机是在一块芯片上集成了一片微型计算机所需的CPU、存储器、输入、输出等部件。
单片机自问世以来,性能不断提高和完善,体积小、速度快、功耗低的特点使它的应用领域日益广泛。
一般,工业控制系统的工作环境差,干扰强,利用单片机控制就能克服这些缺点,因此单片机在控制领域得到广泛的应用,使用单片机控制液体液位是很好的选择。
1.2国内外研究的现状
目前我国在单片机测控装置研究、生产、应用中,取得了很大的成绩,总结了很多经验,但是各行业仍处于发展期,经调查,更多科研究所在这方面开展的工作更看重的是理论和算法,数年来这方面的研究的论文较多,着重生产实际的很少。
在上海,新型的单片机测控装置与系统研究的生产基础较雄厚,在生产过程中需要新型的测控装置与系统,因此在不断的努力研究与开发。
上海的工程技术研究人员更着重的是生产实际研究,对理论、算法和成果的论文较少;深圳在研制新型的测控装置与系统领域也比较有成就,尽管与其他国家比较尚有差距,但是,深圳的高校、研究院所的最大的特点就是实际,与生产实际应用项目无关的问题基本不去考虑,主要考虑选取什么材料,测控什么物理量,优点是什么,与机器设备的通讯接口等等。
一些发达国家在单片机新型系统研究、制造和应用上,已积累了很多经验,奠定了基础,进入了国际市场。
我国在新型测控装置与系统研究、制造、应用和经验上,与其他发达国家相比还存在差距,但是我国的研究人员已经克服很多困难,并在不断的摸索中前进,有望在相关领域赶上甚至超过发达国家的技术水平,这是发展趋势。
1.3使用单片机实现水体液位控制的优点
使用单片机实现水体液位控制具有较高的实用价值和稳定性好等特点。
采用高亮二极管和光敏三级管所组成的液位传感器测量水位,可有效保证水位的自动控制,能更好地对水体水位进行自动化控制,避免了工作人员在现场进行检测操控,方便了人员对液位系统的控制,控制方便且系统稳定性能好;单片机不仅有体积小,安装方便,功能较齐全等优点,而且有很高的性价比,应用前景广,同时有助于发现可能存在的故障,通过微机实现给水系统的自动控制与调节,维持稳定系统,保证安全经济运行。
本文就是采用8051单片机为核心芯片的一种水体水位控制系统,具有较高的实用价值和优越性。
本系统与PLC控制系统相比大大降低了使用成本,提高了控制运行速度。
根据仿真模拟运行的结果表明,该系统能很好的运行,将液位控制在给定的范围内,对过高和过低进行安全报警,稳定性能好,容易操作和控制,保证了生产的正常进行。
1.4系统的总体研究方案
本设计是采用8051单片机为核心芯片,及其相关硬件来实现的水体液位控制系统,在用液位传感器测液位的同时,CPU循环检测传感器输出状态,并用3位七段LED显示示液位高度,检测液位数据,实施报警安全提示,当水体液位低于用户设定的值时,系统自动打开泵上水,当水位到达设定值时,系统自动关闭水泵或打开排水泵。
1.4.1系统硬件总体方案
系统的原理是采用高亮二极管和光敏三级管所组成的液位传感器对液面进行控制,通过四对传感器分别安装在现场的四个不同的位置,由上至下测量水体的液位值,。
并把这四个液位状态通过模数转换器ADC0809传到单片机中,在通过3位七段LED显示器显示出液位的四种状态及报警安全提示。
用LED显示是因为它具有显示清晰、亮度高、使用电压低、光电转换效能高、寿命长等特点,根据当前的液位值和用户设定的水位决定是否进行开、关水泵,需要是否开启和关闭驱动阀门的电动机。
本设计主要运用了液位传感器测液位,第三章将着重介绍。
1.4.2系统软件总体方案
水位检测是通过四对由高亮二极管和光敏三极管所组成的液位传感器分别安装在四个不同的位置,由上至下四个输出端口分别接单片机的P1.0、P1.1、P1.2、P1.3口,实时对水位进行检测。
当水位到达某一光敏三极管的位置时,其输出端口就向单片机输出高电平;当水位低于此光敏三极管的位置时,其输出端口就向单片机输出低电平。
由上至下的第一个位置为水位上限报警线,即当水位高于此位置时,开水阀控制系统就会自动报警,提醒工作人员注意,加水电磁阀有可能出故障;第二个位置是自动停止加水线,即当水位高于此位置时,控制系统会自动关闭加水电磁阀,停止加水;第三个位置是自动加水线,即当水位低于此位置时,控制系统会自动接通加水电磁阀,开始加水;第四个位置是水位下限报警线,即当水位低于此位置时,控制系统就会自动报警,提醒工作人员注意,加水电磁阀可能出故障。
本系统所使用的传感器性能稳定,测量准确,大大简化现场安装,具有较高的性价比,有较大的工程应用价值,而且利用计算机与组态软件技术对工业生产过程进行自动控制有着重要的意义。
其优越性主要在于:
首先,通过对水体液位进行的简易方便的操纵,可以准确得控制水泵进行添加水或放水以适应工作的需要,操作简单,经济效益好。
其次,水体控制过程的自动化处理以及监控软件良好的人机界面,操作人员在监控计算机上能根据控制效果及时修运行参数,这样能有效地减少工人的疲劳和失误,提高生产过程的实时性、安全性。
随着计算机控制技术应用的普及、可靠性的提高及价格的下降,工业以及其他方面的微机控制必将得到更加广泛的应用。
1.4.3设计的研究进程
本设计第二章对系统进行硬件分析,主要介绍了本设计所使用的核心芯片AT89C51,重要对其端口进行介绍,介绍其功能与用途,还介绍了液位传感器、数模转换ADC0832、执行设备、LED显示和报警装置,介绍了他们的原理、结构和电路连接,另外我着重介绍了本设计所使用的传感器,因为传感器的性能在整个系统中起着非常重要的作用,尤其对检测精确度起着重要的作用。
第三章我介绍了整个系统的软件设计。
2系统硬件设计
广泛的液位控制系统包括对水体的液位,压力等的控制,本系统只侧重于介绍液位的控制。
液位控制是利用由高亮二级管和光敏三级管所组成的液位传感器,把液位的状态转换成模拟信号,再通过模数转换器ADC0832把输出状态直接接到单片机的I/O接口,单片机经过运算控制,输出数字信号,输出接口接LED进行显示,实现液位的报警和键盘的显示与控制;下图即是液位控制系统:
图2-1基于单片机的液位控制系统
由上图可观察到传感器通过对液面进行测量,输出模拟信号,再通过模数转换器把输入的模拟信号转换成数字信号,通过AT89C51单片机的运算控制,在通过LED进行显示,通过报警装置进行报警,报警显示之后再通过对阀门的开启实现对水体的液位进行调节控制,阀门的驱动设备是电动机。
计算机芯片MCS-51是一个电脑晶片,英特尔公司生产系列。
它是在MCS-48系列的基础上发展的高性能的8位单片机。
所出的系列产品有8051、8031、8751。
其代表就是AT89C51。
其他系列的单片机都以它为核心,所以本设计采用的核心芯片是AT89C51单片机。
CPU是它的核心设备,从功能上看,CPU包括两个部分:
运算器和控制器,它执行对输入信号的分析和处理。
整个系统电控部分以ATMEL公司的AT89C51为核心芯片,控制信号采集、处理、输出三个过程。
这种芯片内置4KEPROM,因为系统要求控制线较多,如果采用AT89C51外置EPROM程序控制结构,则造成控制线不够;而AT89C51却可以利用P0、P2口作控制总线,大大简化了硬件结构,并可以直接控制键盘参数输入、LED数据显示,方便现场调试和维护,使整个系统的通用性和智能化得到了很大的提高。
系统的原理是采用液位式传感器测量液体的液位值,通过单片机的转换与分析在LED上显示及输出控制;根据当前的液位值和用户设定的水位决定是否进行开关电动机,否到达危险高、低水位,需要关闭电动机。
2.1核心芯片AT89C51单片机
单片机是早期SingleChipMicrocomputer的直译,它反映了早期单片机的形态和本质。
然后,按照面向对象,突出控制功能,在片内集成了许多外围电路及外设接口,突破了传统意义上的计算机结构,发展成microcontroller的体系结构,目前国外已普遍称之为微控制器MCU(MicrocontrollerUnit)。
鉴于它完全作嵌入应用,故又称为嵌入式微控制器(EmbeddedMicrocontroller)。
大多数单片机采用哈佛(Harvard)结构体系,即数据存储空间与程序存储空间相互独立的结构体系。
它不同于一般通用计算机系统结构,即程序和数据共用一个空间的冯诺伊曼(VonNeumann)结构。
AT89C51单片机温度测控仪采用Atmel公司的AT89C51单片机,采用双列直插封装(DIP),有40个引脚。
该单片机采用Atmel公司的高密度非易失性存储技术制造,与美国Intel公司生产的MCS—51系列单片机的指令和引脚设置兼容。
其主要特征如下:
○8位CPU
○内置4K字节可重复编程Flash,可重复擦写1000次
○完全静态操作:
0Hz~24Hz,可输出时钟信号
○三级加密程序存储器
○128B×8的片内数据存储器(RAM)
○32根可编程I/O线
○2个16位定时/计数器
○中断系统有6个中断源,可编为两个优先级
○一个全双工可编程串行通道
○可编程串行UART通道
○具有两种节能模式:
闲置模式和掉电模式
(1)单片机的基本组成
它由 CPU 、存储器(包括 RAM 和 ROM )、 I/O 接口、定时 / 计数器、中断控制功能等均集成在一块芯片上,片内各功能通过内部总线相互连接起来。
输入 / 输出引脚 P0、P1、P2、P3的功能:
图2-1为AT89C51的引脚图:
图2-1AT89C51的引脚图
P0 口(P0.0-P0.7):
P0 口是一个 8 位漏极开路型双向 I/O 端口。
在访问片外存储器时,它分时作低 8 位地址和 8 位双向数据总线用。
在EPROM 编程时,由 P0 输入指令字节,而在验证程序时,则输出指令字节。
验证程序时,要求外接上拉电阻。
P0 能以吸收电流的方式驱动8个LSTTL 负载。
在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
P1口(P1.0-P1.7(1-8脚)):
P1口是一上带内部上拉电阻的 8 位双向 I/O 口。
在 EPROM 编程和验证程序时,由它输入低 8 位地址。
P1 能驱动 4 个 LSTTL 负载。
在AT89C51 中, P1. 0 还相当于专用功能端 T2 ,即定时器的计数触发输入端; P1. 1 还相当于专用功能端T2EX ,即定时器 T2 的外部控制端。
Flash编程和程序校验期间,P1接收低8位地址。
P2口(P2.0-P2.7(21-28脚)):
P2也是一上带内部上拉电阻的 8 位双向 I/O 口,P2口的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平。
在访问外部存储器时,由它输出高 8 位地址。
在对 EPROM 编程和程序验证时,由它输入高 8 位地址。
P2驱动4个 LSTTL 负载。
在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。
在访问8位地址的外部数据存储器(例如执行MOVX@RI指令)时,P2口线上的内容(也即特殊功能寄存器SFR区中R2寄存器的内容),在整个访问期间不改变。
Flash编程或校验时,P2亦接收高位地址和其它控制信号。
P3口(P3.0-P3.7(10-17脚)):
P3口是一组带有内部上拉电阻的8位双向I/O口。
P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。
此时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。
P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如表1-1所示:
表1-1AT89C51的P3口特殊功能
口管脚
备选功能
P3.0
RXD(串行输入口)
P3.1
TXD(串行输出口)
P3.2
/INT0(外部中断0)
P3.3
/INT1(外部中断1)
P3.4
T0(定时/计数器0外部输入)
P3.5
T1(定时/计数器1外部输入)
P3.6
/WR(外部数据存储器写选通)
P3.7
/RD(外部数据存储器读选通)
P3口还接收一些用于Flash闪速存储器和程序校验的控制信号。
(2)MCS-51 的寻址方式:
(1) 、立即寻址 如:
MOV A , #40H
(2) 、直接寻址 如:
MOV A , 3AH
(3) 、寄存器寻址 如:
MOV A , Rn
(4) 、寄存器间接寻址 如:
MOV A , @Rn
(5)、基址加变址寻址 如:
MOVC A , @A+DPTR
(6)、相对寻址 如:
SJMP 08H
(7) 、位寻址 MOV 20H , C
(3)指令:
MOV :
片内 RAM 传送
MOVX :
片外 RAM 传送
MOVC :
ROM 传送
XCH :
交换(和 A 交换)
SWAP :
A 内半字节交换
ADD :
不带进位加
ADDC :
带进位加
SUBB :
带进位减
INC :
加 1
DEC :
减 1
MUL :
乘法
DIV :
除法
DAA :
调整
(4)计数初值的计算
定时或计数方式下计数初值如何确定,定时器选择不同的工作方式,不同的操作模式其计数值均不相同。
若设最大计数值为 M ,各操作模式下的 M 值为:
模式 0 :
M=2 13 =8192
模式 1 :
M=2 16 =65536
模式 2 :
M=2 8 =256
模式 3 :
M=256 ,定时器 T0 分成 2 个独立的 8 位计数器,所以 TH0 、 TL0 的 M 均为 256 。
因为 AT89C51 的两个定时器均为加 1 计数器,当初到最大值( 00H 或 0000H )时产生溢出,将 TF 位置 1 ,可发出溢出中断,因此计数器初值 X 的计算式为:
X=M- 计数值式中的 M 由操作模式确定,不同的操作模式计数器的长不相同,故M值也不相同。
而式中的计数值与定时器的工作方式有关。
(a)计数工作方式
计数工作方式时,计数脉冲由外部引入,是对外部冲进行计数,因此计数值根据要求确定。
其计数初值:
X=M- 计数值
例如:
某工序要求对外部脉冲信号计 100 次, X=M-100
(b)定时工作方式
定时工作方式时,因为计数脉冲由内部供给,是对机器周期进行计数,故计数脉冲频率为
f cont =f osc × 1/12 (式1-1)
计数周期 T=1/f cont =12/f osc 定时工作方式的计数初值 X 等于:
X=M-计数值 =M-t/T=M- ( f osc × t ) /12 (式1-2)
式中:
fosc 为振荡器的振荡频率, t 为要求定时的时间。
定时器有两种工作方式 :
即定时和计数工作方式。
由 TMOD 的 D6 位和 D2 位选择,其中 D6 位选择 T1 的工作方式, D2 位选择 T0 的工作方式。
=0 工作在定时方式, =1 工作在计数方式。
并有四种操作模式:
1 、模式 0 :
13 位计数器, TLi 只用低 5 位。
2 、模式 1 :
16 位计数器。
3 、模式 2 :
8 位自动重装计数器, THi 的值在计数中不变, TLi 溢出时, THi 中的值自动装入 TLi 中。
4 、模式 3 :
T0 分成 2 个独立的 8 位计数器, T1 停止计数。
MCS-51 有 5 个中断源,可分为 2 个中断优先级,即高优先级和低优先级,中断自然优先级:
外部中断 0 ;定时器 0 中断; 外部中断 1 ;定时器 1 中断 ;
串行口中断 ;定时器 2 中断
(a)同级或高优先级的中断正在进行中;
(b)现在的机器周期还不是执行指令的最后一上机器周期,即正在执行的指令还没完成前不响应任何中断;
(c)正在执行的是中断返回指令 RET1 或是访问专用寄存器 IE 或 IP 的指令,换而言之,在 RETI 或者读写 IE 或 IP 之后,不会马上响应中断请求,至少要在执行其它一要指令之扣才会响应。
(5)中断响应的条件
CPU 响应中断的条件有:
(a)有中断源发出中断请求;
(b)中断总允许位 EA=1 ,即 CPU 开中断;
(c)申请中断的中断源的中断允许位为 1 ,即没有被屏蔽。
(6)串行口工作方式及帧格式
MCS-51 单片机串行口可以通过软件设置四种工作方式:
方式 0 :
这种工作方式比较特殊,与常见的微型计算机的串行口不同,它又叫同步移位寄存器输出方式。
在这种方式下,数据从 RXD 端串行输出或输入,同步信号从 TXD 端输出,波特率固定不变,为振荡率的 1/12 。
该方式是以 8 位数据为一帧,没有起始位和停止位,先发送或接收最低位。
方式 2 :
采用这种方式可接收或发送 11 位数据,以 11 位为一帧,比方式 1 增加了一个数据位,其余相同。
第 9 个数据即 D8 位具有特别的用途,可以通过软件搂控制它,再加特殊功能寄存器 SCON 中的 SM2 位的配合,可使 MCS-51 单片机串行口适用于多机通信。
方式 2 的波特率固定,只有两种选择,为振荡率的 1/64 或 1/32 ,可由 PCON 的最高位选择。
方式 3 :
方式 3 与方式 2 完全类似,唯一的区别是方式 3 的小组特率是可变的。
而帧格式与方式 2- 样为 11 位一帧。
所以方式 3 也适合于多机通信。
随着大规模集成电路的出现及其发展,将计算机的CPU 、RAM 、 ROM 、定时/数器和多种I/O接口集成在一片芯片上,形成芯片级的计算机,因此单片机早期的含义称为单片微型计算机,直译为单片机 。
(7) 掉电模式:
在掉电模式下,振荡器停止工作,进入掉电模式的指令是最后一条被执行的指令,片内RAM和特殊功能寄存器SFR的内容在终止掉电模式前被冻结,退出掉电模式的唯一方法是硬件复位,复位后将重新定义全部特殊功能寄存器但不改变RAM中的内容,在VCC恢复到正常工作电平前,复位应无效,且必须保持一定时间以使振荡器重启动并稳定工作。
1、基本复位电路
复位电路的基本功能是:
系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。
为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分-合过程中引起的抖动而影响复位。
图1所示的RC复位电路可以实现上述基本功能,图3为其输入-输出特性。
但解决不了电源毛刺(A点)和电源缓慢下降(电池电压不足)等问题而且调整RC常数改变延时会令驱动能力变差。
左边的电路为高电平复位有效右边为低电平Sm为手动复位开关Ch可避免高频谐波对电路的干扰
2.时钟电路
单片机本身是一个复杂的同步时序系统,为了保证同步工作方式的实现,单片机必须有时钟信号,以使系统在时钟信号的控