基于单片机的超声波水箱液位检测系统Word文件下载.docx
《基于单片机的超声波水箱液位检测系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于单片机的超声波水箱液位检测系统Word文件下载.docx(29页珍藏版)》请在冰豆网上搜索。
当水位升到水箱的一半时,晶体管T3导通,则LEDl、LED2和LED3点亮;
当水位升到水箱的3/4时,晶体管T4导通,则LEDl~LED4均点亮;
当水箱的水充满,晶体管T5导通,五个发光二极管全亮,同时使蜂鸣器发出报警声响。
因此从发光二极管点亮的状态,就能知道水箱中的水位。
发光二极管与水箱中的水位对应关系如下表2.1所示。
发光二极管应安装在容易监视的位置。
此方案,器件易于腐蚀,易产生误差。
表2.1二极管和水位的对应关系
水箱中的水位
发光的LED
最高水位
LED1、LED2、LED3、LED4、LED5
水位
LED1、LED2、LED3、LED4
LED1、LED2、LED3
LED1、LED2
最低水位
LED1
方案二:
浮子式水位传感器
其主要产品有上海精浦机电有限公司的GEMPLEGPH500,正天科技的FYC-3型浮子式水位传感器等。
工作原理:
它利用液体浮力测液位的原理,靠浮子随水面升降的位移反映水位变化。
漂浮通过绳索经滑轮与编码器相连,编码器的数字输出即为水位高度。
为防止错码的出现,其编码器的编码为格雷码。
机械浮子式和光电浮子式都是来用机械齿轮减速产生进位和退位的办法来形成编码。
其工作示意图如图2-2所示:
图2-2浮子式水位计工作示意图
其主要技术参数:
测量范围:
5m
10m
20mm
40mm
80mm
分辨率:
1cm
1mm
精度:
±
1cm
回差:
≤±
使用环境:
温度-5℃---+50℃
根据其参数此方案适合测量范围大的,且测量误差比较大。
方案三:
基于超声波的水位传感器
超声波水位传感器是利用空气声学回声测距原理来进行水位变化测量的新型水位测量仪器。
由收发共用换能器发射一声脉冲、经声管传声遇水界面产生反射,回波经由同一换能器接收。
测得声波在空气中的传播时间及现场声速,算出换能器发射面至水面的距离,依据换能器安装基准面及水位零点得到水位值。
特点是非接触测量,无需建造水位测井,安装方便,自动测量;
具有声速补偿;
RS-485数据输出。
其水位测量原理如图2-3所示:
图2-3水位测量原理图
方案四:
电子类液位传感器
测量原理是把液位的变化转化为电气参数的变化,利用一定的测量电路将电参数检测出来,从而达到测量液位的目的。
其中最常用且最成熟的是电容式液位传感器。
电容式液位计它是利用空气和液体作电容器两极极板间的电介质,将液位变化转换成静电电容变化,用电子学方法测量电容值,从而探测液体高度信息。
它结构简单,精度较高,而且量程广,适合于测量各种介质(导电介质、非导电介质)的液位,但是要求液体具有相同、稳定的介电常数,需要有温度的补偿。
尤其用长电缆连接时,对电缆中的干扰和寄生电容很敏感,精度较差,且对导电介质或粘性介质,误差较大、易受干扰,严重影响测量结果。
电阻式液位计探测器在空气中的阻值要比它浸在液体中的阻值大得多,通过电子学方法测量液体容器底部与顶部之间的电阻,从中可探知液位信息。
其测量精度受液体污染情况的影响较大,探针的污染和沉积物,会导致错误的输出,在直流工作时会产生电解,响应速度慢。
对比以上几个方案,方案三安装方便,操作简单符合设计要求。
2.2总体系统框图
根据系统的设计要求,采用单片机为主控芯片,该系统主要由传感器模块,液晶显示器模块,控制键盘,报警电路等模块组成,其系统框图如图2-4所示:
模块功能:
1.超声波传感器模块:
发送与接收信号。
2.单片机:
记录从超声波传感器发送信号到超声波传感器接收信号的时间及主体控制。
3.LCD显示器:
显示所测液面到瓶口(超声波传感器)的液位值。
4.报警电路:
低于设定值的最低限或高于设定值的最高限时,发生声光报警。
5.控制键盘:
设定初始值及控制液位值。
第3章系统硬件电路的设计
3.1单片机最小系统
3.1.1STC89C52单片机
STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
具有以下标准功能:
8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,3个16位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。
另外STC89X52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
最高运作频率35MHz,6T/12T可选。
3.1.2STC89C52的管脚说明
图3-1单片机引脚
P0.1~P0.7:
P0口8位双向口线。
P1.0~P1.7:
P1口8位准双向口线。
P2.0~P2.7:
P2口8位准双向口线。
P3.0~P3.7:
P3口8位准双向口线。
访问程序存储器控制信号:
当
信号为低电平时,对ROM的读操作限定在外部程序存储器;
而当
信号为高电平时,则对ROM的读操作是从内部程序存储器开始,并可延至外部程序存储器。
ALE地址锁存控制信号:
在系统扩展时,ALE用于控制把P0口输出低8位地址锁存起来,以实现低位地址和数据的隔离。
此外由于ALE是以晶振六分之一的固定频率输出的正脉冲,因此可作为外部时钟或外部定时脉冲作用。
外部程序存储器读选取通信号:
在读外部ROM时
有效(低电平),以实现外部ROM单元的读操作。
XTAL1和XTAL2外接晶体引线端:
当使用芯片内部时钟时,这两个引线端用于外接石英晶体和微调电容;
当使用外部时钟时,用于拉外部的时钟脉冲信号。
RST复位信号:
当输入的复位信号延续2个机器周期以上高电平时即为有效,用以完成单片机的复位初始化操作。
VSS:
电源地。
VCC:
+5V电源。
3.1.3P3口的第二功能
P3口的第二功能表如下所示:
表3-1P3口的第二功能表
口线
第二功能
替代的专用功能
P3.0
RXD
串行输入口
P3.1
TXD
串行输出口
P3.2
外部中断0
P3.3
外部中断1
P3.4
T0
定时器0的外部输入
P3.5
T1
定时器1的外部输入
P3.6
外部数据存储器写选通
3.2单片机复位电路设计
复位电路是使单片机的CPU或系统中的其他部件处于某一确定的初始状态,并从这上状态开始工作。
3.2.1单片机常见的复位电路
通常单片机复位电路有两种:
上电复位电路,键盘复位电路。
上电复位电路:
上电复位是单片机上电时复位操作,保证单片机上电后立即进入规定的复位状态。
它利用的是电容充电的原理来实现的。
键盘复位电路:
它不仅具有上电复位电路的功能,同时它的操作比上电复位电路的操作要简单的多。
如果要实现复位的话,只要按下RESET键即可。
它主要是利用电阻的分压来实现的。
在此设计中,采用的键盘复位电路,键盘复位电路如图3-2所示:
图3-2复位电路
3.2.2复位电路工作原理
上电复位要求接通电源后,单片机自动实现复位操作。
上电瞬间RST引脚获得高电平,随着电容的充电,RST引脚的高电平将逐渐下降。
RST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作。
上电与键盘均有效的复位电路不仅在上电时可以自动复位,而且在单片机运行期间,利用键盘也可以完成复位操作。
故本设计选用第二种上电复位与键盘均有效的电路。
3.3晶振电路设计
晶振电路用于产生单片机工作所需要的时钟信号,而时序所研究的是指令执行中各信号之间的相互关系。
单片机本身就如一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地运作。
3.3.1时钟信号的产生
单片机内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2。
而在芯片的外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器。
电容器C1和C2的作用是稳定频率和快速起振,电容值的范围在5pF-30pF,典型值为30pF。
晶振的频率通常选择两种6MHz和12MHz。
只要在单片机的XTAL1和XTAL2引脚外接晶体振荡器就构成了自激振荡器并在单片机内部产生时钟脉冲信号。
3.3.2时钟振荡电路
时钟振荡电路如图3-3所示:
图3-3时钟电路
3.4超声波传感器
3.4.1超声波的定义
人们所感觉到的声音是机械波传到人耳引起耳膜振动的反应,能引起人们听觉的机械波频率在20Hz~20KHz,超声波是频率大于20KHz的机械波。
在通常的超声波测距系统中,用电脉冲激励超声探头的压电晶片,使其产生机械振动,这种振动在与其接触的介质中传播,形成超声波。
3.4.2超声波液位测量原理
超声波物位测量其实就是要测量超声波测距仪到物位的距离,如果超声波测距仪安装在底部,测得的距离即为物位高度,如果超声波测距仪安装在物位上方,需要通过换算来算得物位高度(储物罐总高度减去测得的距离即为物位高度)。
本文选择把测距仪安装在物位上方,测距仪安装相对方便些。
3.4.3超声波回波检测法
超声波测距的方法有多种,如相位检测法、声波幅值检测法和往返时间检测法。
相位检测法虽然精度高,但检测范围有限,声波幅值法易受反射波的影响。
在超声检测技术,特别是超声测量技术中使用最广泛的是超声波回波检测法,通过测量超声波经反射放大后到达接收端的时间与发射时间之差,实现距离测量,称为TOF(TimeofFlight)方法,也叫渡越时间法。
渡越时间法简单,被广泛的应用于声学测距系统。
它的原理是:
超声波发射器发出单个或一组超声波脉冲,在发射时刻同时计时器开始计时,超声波在空气中传播,途中遇到被测目标,经过反射到达超声波接收端,此时停止计时器计时,得到的时间t就是超声波在发射器和被测目标之间来回传播的时间。
3.4.4发射脉冲波形
超声测距常用的发射脉冲波形如图3-4所示有:
单个尖脉冲、衰减振荡脉冲、窄等幅波列脉冲和宽等幅波列脉冲。
图3-4超声波测距常用发射脉冲波形
3.4.5超声波渡越时间的计量方法分析
根据超声波测距的原理,发射换能器发出的超声波,在媒介中传播到物体表面,经过反射后再通过媒介返回到接收换能器,通过测量超声波从发射到接收所需的时间(
),根据媒介中的声速(v),就能计算出从换能器到物体表面之间的距离(L)。
被测距离的表达式:
v:
声速值。
单位:
m/s。
L:
超声波探头距所测液位距离。
m。
t:
测量范围内声波的运行时间。
s。
采用脉冲计数的方法间接测量被测时间,可以满足高精度要求。
v与环境温度有关,在测量精度要求高的场合要考虑温度影响,可由软件进行调整补偿;
在测量精度要求不是很严格的情况下,可以忽略温度的影响,超声波波速与温度的关系如下表:
表3-2超声波波速与温度的关系表
温度(℃)
-30
-20
-10
10
20
30
100
声速(m/s)
313
319
325
323
338
344
349
386
3.4.6超声波接收发射装置
超声波包括发射超声波和接收超声波,并将接收的超声波转换成电量输出的装置称为超声波传感器,习惯上称为超声波换能器或超声波探头。
常用的超声波传感器有两种,即压电式超声波传感器或称压电式超声波探头)和磁致伸缩式超声波传感器。
本论文采用的是压电式超声波传感器,主要由超声波发射器(或称发射探头)和超声波接收器(或称接收探头)两部分组成,它们都是利用压电材料(如石英、压电陶瓷等)的压电效应进行工作的。
利用逆压电效应将高频电振动转换成高频机械振动,产生超声波,以此作为超声波的发射器。
而利用正压电效应将接收的超声振动波转换成电信号,以此作为超声波的接收器。
一般压电式超声波换能器有两个共振频率:
低频共振频率叫串联共振频率(ƒτ),此时阻耗(R)最小,用于发送超声波;
高频的共振频率称为逆共振频率(ƒa),主要是产生共振,用于接收超声波。
而在串联共振频率(ƒτ)处发送灵敏度最高,在逆共振频率(ƒa)处接收灵敏度最高。
所以选用一对超声波换能器,使其效率最高。
超声波传感器产生振荡的方法很多,主要有以下几种:
1.由外部电路产生振荡,如NE555低频振荡器调制40KHz的高频信号,高频信号通过超声波传感器以声能形式辐射出去。
2.使用工业用小功率超声波收发控制集成电路LM1812驱动发送超声波传感器振荡。
3.采用单片机内部的定时器或直接使用程序产生固定的脉冲,通过放大处理后驱动发送超声波传感器产生超声波。
本文采用的是超声波外部电路产生振荡。
3.4.7超声波发射电路
声波在空气中传播受空气介质影响,距离越大衰减越大。
为能接收远距离得回波,采取有效措施有:
增加驱动功率,减小声波频率(频率越低,衰减越慢)。
超声波发射电路由NE555振荡电路、晶体管放大电路、变压器以及压电超声波传感器组成。
40KHz振荡信号由NE555集成块和周围电路产生,然后送至放大电路驱动压电传感器发出一系列的脉冲群,每一个脉冲群持续时间大约为0.15ms左右。
信号经过三级管放大,再经过阻抗匹配电路即变压器(变压器输入输出比1∶10)后,驱动超声波发射头,发射换能器两端就加上了高电压,内部的压电晶片开始震动,经过压电换能器将发出40KHZ的脉冲超声波。
具体电路如图3-5所示:
图3-5超声波发射电路原理图
3.4.8超声波检测接收电路
微弱信号需要放大整形,超声波发射器在发射超声波时,有一部分声波从发射器直接传到接收器,这部分信号直接加到回波信号中,干扰回波信号的检测。
超声波接收电路将接收换能器输出的微弱信号,进行滤波、放大、检波、整形,得到大幅值电信号,供单片P1.6口辨识。
具体电路如图3-6所示:
图3-6324超声波接收电路原理图
3.5显示电路设计
3.5.11602LCD液晶显示屏
本文用1602LCD液晶显示屏显示,在日常生活中,我们对液晶显示器并不陌生。
液晶显示模块已作为很多电子产品的通过器件,如在计算器、万用表、电子表及很多家用电子产品中都可以看到,显示的主要是数字、专用符号和图形。
在单片机的人机交流界面中,一般的输出方式有以下几种:
发光管、LED数码管、液晶显示器。
在单片机系统中应用晶液显示器作为输出器件有以下几个优点:
1.显示质量高
由于液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光,而不像阴极射线管显示器(CRT)那样需要不断刷新亮点。
因此,液晶显示器画质高且不会闪烁。
2.数字式接口
液晶显示器都是数字式的,和单片机系统的接口更加简单可靠,操作更加方便。
3.体积小、重量轻
液晶显示器通过显示屏上的电极控制液晶分子状态来达到显示的目的,在重量上比相同显示面积的传统显示器要轻得多。
4.功耗低
相对而言,液晶显示器的功耗主要消耗在其内部的电极和驱动IC上,因而耗电量比其它显示器要少得多。
3.5.21602字符型LCD简介
字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16X1,16X2,20X2和40X2行等的模块。
一般1602字符型液晶显示器实物如图3-7所示:
图3-71602字符型液晶显示器实物图
3.5.31602LCD主要技术参数
1.显示容量:
16×
2个字符。
2.芯片工作电压:
4.5—5.5V。
3.工作电流:
2.0mA(5.0V)。
4.模块最佳工作电压:
5.0V。
5.字符尺寸:
2.95×
4.35(W×
H)mm。
3.5.4引脚功能说明
1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表3-3所示:
表3-31602LCD引脚功能说明表
编号
符号
引脚说明
1
VSS
电源地
9
D2
数据
2
VDD
电源正极
D3
3
VO
液晶显示偏压
11
D4
4
RS
数据/命令选择
12
D5
5
R/W
读/写选择
13
D6
6
E
使能信号
14
D7
7
D0
15
BLA
背光源正极
8
D1
16
BLK
背光源负极
引脚接口说明:
第1脚:
VSS为电源地。
第2脚:
VDD接5V正电源。
第3脚:
VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。
第4脚:
RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
第5脚:
R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。
当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。
第6脚:
E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
第7~14脚:
D0~D7为8位双向数据线。
第15脚:
背光源正极。
第16脚:
背光源负极。
3.6键盘控制电路设计
键盘分为增加设定高度值键盘和降低设定高度值键盘以及确定键,分别接在接单片机P1.3、P1.4、P1.5接口,由程序扫P1口判断按下的是那个键盘,执行相应的功能。
具体电路如图3-8所示:
图3-8键盘控制电路
3.7报警电路设计
3.7.1LED灯显示
LED指示灯分为红灯和绿灯,红灯亮代表低于设定的液位最低值或高于设定液位的最高值,绿灯亮代表液位在设定的最低值和最高值之间。
电路由LED,电阻组成,分别接在单片机P1.0和P1.1脚由软件程序进行控制。
具体电路如图3-9所示:
图3-9LED显示电路
3.7.2报警电路
报警电路由一个蜂鸣器、三极管(PNP)、电容组成,由单片机的P1.2脚控制,经过三极管放大驱动蜂鸣器。
测量的距离超出设定的距离后由程序将单片机的P1.2置1,蜂鸣器开始发声。
具体电路如图3-10所示:
图3-10报警电路
第4章系统软件的设计
4.1主程序流程图
主程序主要完成初始化和协调子程序调用的工作。
首先要完成单片机存储系统的初始化,然后开始发射超声波并启动计时器,等接收电路接收到超声波信号后,引发单片机内部中断。
计时完毕后主程序开始处理数据,最后做出相应的动作。
主程序流程图设计如图4-1所示:
图4-1主程序流程图
4.2初始化程序流程图
设定初始值,按下开始键后,主控芯片进入测距程序,每隔800MS启动一次测距程序,并对所测距离进行处理,实时对液位进行检测。
超声波发射与接收分别由单片机的P1.7引脚与P1.6引脚控制。
三个按键分别由单片机P1.3引脚,P1.4引脚,P1.4引脚控制。
按键1可以增加初始值的高度,按键2可以减小初始值的高度,按键3确定所设的高度值。
设置液位高度初始值程序,初始化流程图如图4-2所示:
图4-2液位高度初始值设定流程图
4.3报警电路程序流程图
当液位超过设定