基于单片机的液位监测系统的设计(完美版)_第1页
基于单片机的液位监测系统的设计(完美版)_第2页
基于单片机的液位监测系统的设计(完美版)_第3页
基于单片机的液位监测系统的设计(完美版)_第4页
基于单片机的液位监测系统的设计(完美版)_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录目录 一、概述一、概述.1 二、系统设计方案的确定二、系统设计方案的确定.1 2.1 功能需求分析 .1 2.2 系统设计方案的选择.1 三、部分电路的设计三、部分电路的设计 .2 3.1 传感器 .2 3.2 单片机电路设计.3 3.2.1 AT89C51 功能及引脚分布.3 3.2.2 振荡方式的选择 .5 3.2.3 复位电路的设计 .5 3.3 AD 转换电路的设计.6 3.3.1 ADC0809 主要信号引脚的功能.6 3.3.2 ADC0809 和 AT851 单片机的连接 .7 3.3.3 转换数据的传送 .8 3.4 键盘输入电路的设计.9 3.4.1 按键去抖 .9 3.4.2 键盘扫描方法 .10 3.5 数显输出电路的设计.11 3.6 报警及控制电路的设计(略).12 四、软件设计部分四、软件设计部分.12 4.1 原理图的绘制 .12 4.2 流程图的设计 .13 五、心得体会五、心得体会.13 参考文献参考文献.14 附录附录.14 基于单片机的液位检测系统的设计基于单片机的液位检测系统的设计 一、概述一、概述 随着微电子工业的迅速发展,单片机控制的智能型控制器广泛使用于电子 产品中,为了使学生对单片机控制的智能型控制器有较深的了解。经过综合分 析选择了由单片机控制的智能型液位控制器作为研究项目,通过训练充分激发 学生分析问题、解决问题和综合使用所学知识的潜能。另外,液位控制在高层 小区水塔水位控制,污水处理设备和有毒,腐蚀性液体液位控制中也被广泛使 用。通过对模型的设计可很好的延伸到具体使用案例中。 本设计基于AT89C51单片机,包括测量电路部分、AD转换部分、键盘输入控 制部分、液位实时数显输出部分以及液位控制部分(原理图中不涉及),还可 在此基础上添加报警器(不涉及)。本设计只是概念性设计了电路部分,并不 涉及具体的数值设定,未经过实际使用检测。 二、系统设计方案的确定二、系统设计方案的确定 2.12.1 功能需求分析功能需求分析 (1)要求能够实现较高精度的测量 (2)以单片机AT89C51为基础,设计外围电路。 (3)电路设计,包括AD转换模块、数显模块、键盘输入模块 (4)对测量电路的各种精度指标进行测试(非线性误差、重复性、滞后、 灵敏度、抗侧向能力大小、温变对灵敏度的影响等指标)。 2.22.2 系统设计方案的选择系统设计方案的选择 对于液位进行控制的方式有很多,而使用较多的主要有2种,一种是简单的 机械式控制装置控制,一种是复杂的控制器控制方式。两种方式的实现如下: (1)简单的机械式控制方式。其常用形式有浮标式、电极式等,这种控制形 式的优点是结构简单,成本低廉。存在问题是精度不高,不能进行数值显示, 另外很容易引起误动作,且只能单独控制,和计算机进行通信较难实现。 (2)复杂控制器控制方式。这种控制方式是通过安装在水泵出口管道上的压 力传感器,把出口压力变成标准工业电信号的模拟信号,经过前置放大、多路 切换、AD变换成数字信号传送到单片机,经单片机运算和给定参量的比较, 进行PID运算,得出调节参量;经由DA变换给调压变频调速装置输入给定端, 控制其输出电压变化,来调节电机转速,以达到控制水箱液位的目的。 针对上述2种控制方式,以及设计需达到的性能要求,这里选择第二种控制 方式,同时考虑到成本需要把PID控制去掉。最终形成的方案是,利用单片机为 控制核心,设计一个对供水箱水位进行监控的系统。根据监控对象的特征,要 求实时检测水箱的液位高度,并和开始预设定值做比较,由单片机控制固态继 电器的开断进行液位的调整,最终达到液位的预设定值。检测值若高于上限设 定值时,要求报警,断开继电器,控制水泵停止上水;检测值若低于下限设定 值,要求报警,开启继电器,控制水泵开始上水。现场实时显示测量值,从而 实现对水箱液位的监控。 原理流程图如下(图2.2): 气气体体变变量量 输输入入 传传感感器器 模模拟拟量量 AD转转换换器器 数数字字量量 AT89C51 P0 P1 P2 P3 键键盘盘控控制制量量 输输入入 数数显显输输出出 其其他他控控制制 图图 2.2 液位测量原理流程图液位测量原理流程图 三、部分电路的设计三、部分电路的设计 3.13.1 传感器传感器 传感器使用SY一9411LD型变送器,它内部含有1个压力传感器和相应的放 大电路。压力传感器是美国SM公司生产的5552型OEM压阻式压力传感器,其有 全温度补偿及标定(O70),传感器经过特殊加工处理,用坚固的耐高温塑料 外壳封装。其引脚分布如图3.1所示。1脚为信号输出(一);2脚为信号输出(一); 3脚为激励电压;4脚为地;5脚为信号输出(+);6脚为信号输出(+)。 图图 3.1 SY-9411L-D 引脚图引脚图 在水箱底部安装1根直径为5 mm的软管,一端安装在水箱底部;另一端和传 感器连接。水箱水位高度发生变化时,引起软管内气压变化,然后传感器把气 压转换成电压信号,输送到AD转换器。 3.23.2 单片机电路设计单片机电路设计 3.2.1 AT89C51功能及引脚分布 本次课程设计基于AT89C51单片机, AT89C51是一种带4K字节闪烁可编程可 擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。AT89C2051 是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读 存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制 造,和工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪 烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。AT89C单片 机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。引脚分布如下图 3.2.1所示: 图图 3.2.1 AT89C51 及引脚分布及引脚分布 VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1 口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器, 它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口, 当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收 输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外 部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校 验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输 出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输 入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部 上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取 时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对 外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2 口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门 电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入, 由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。 P3口也可作为AT89C51的一些特殊功能口,如下表所示: 管脚 备选功能 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口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电 平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址 的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以 不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对 外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器 时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如 果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个 机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信 号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H- FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为 RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引 脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 3.2.2 振荡方式的选择 本次设计用到的是内部振荡方式,这种方式下在X1和X2两端跨接石英晶体 及两个电容,如下图所示,这样就和内部的反响放大器构成稳定的自己振荡器。 电容C1和C2通常取30pF,可稳定频率并对正当频率有微调作用。接线图如下: 图图 3.2.2 内部振荡方式内部振荡方式 3.2.3 复位电路的设计 复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后, 撤销复位信号。为可靠起见,电源稳定后还要经一定的延时才撤销复位信号, 以防电源开关或电源插头分-合过程中引起的抖动而影响复位。图1所示的RC复 位电路可以实现上述基本功能,图3为其输入-输出特性。但解决不了电源毛刺 (A点)和电源缓慢下降(电池电压不足)等问题 而且调整 RC常数改变延时会 令驱动能力变差。左边的电路为高电平复位有效右边为低电平Sm为手动复位开 关 Ch可避免高频谐波对电路的干扰。电路图如下: 图图 3.2.3 复位电路复位电路 3.33.3 ADAD转换电路的设计转换电路的设计 本次课程设计使用AD转换器件是ADC0809,ADC0809是8路模拟信号的分时采 集,片内有8路模拟选通开关,以及相应的通道抵制锁存用译码电路,其转换时 间为100s左右,ADC0809芯片为28引脚为双列直插式封装,其引脚分布图如下: 图图 3.3 AD0809 引脚图引脚图 3.3.1 ADC0809主要信号引脚的功能 IN7IN0模拟量输入通道 ALE地址锁存允许信号。对应ALE上跳沿,A、B、C地址状态送入地址锁 存器中。 START转换启动信号。START上升沿时,复位ADC0809;START下降沿时 启动芯片,开始进行A/D转换;在A/D转换期间,START应保持 低电平。本信号 有时简写为ST. A、B、C地址线。 通道端口选择线,A为低地址,C为高地址,引脚图 中为ADDA,ADDB和ADDC。其地址状态和通道对应关系见表9-1。 CLK时钟信号。ADC0809的内部没有时钟电路,所需时钟信号由外界提 供,因此有时钟信号引脚。通常使用频率为500KHz的时钟信号 EOC转换结束信号。EOC=0,正在进行转换;EOC=1,转换结束。使用中该 状态信号即可作为查询的状态标志,又可作为中断请求信号使用。 D7D0数据输出线。为三态缓冲输出形式,可以和单片机的数据线直接 相连。D0为最低位,D7为最高 OE输出允许信号。用于控制三态输出锁存器向单片机输出转换得到的 数据。OE=0,输出数据线呈高阻;OE=1,输出转换得到的数据。 Vcc +5V电源。 Vref参考电源参考电压用来和输入的模拟信号进行比较,作为逐次逼 近的基准。其典型值为+5V(Vref(+)=+5V, Vref(-)=-5V). 3.3.2 ADC0809和AT851单片机的连接 电路连接主要涉及两个问题。一是8路模拟信号通道的选择,二是A/D转换 完成后转换数据的传送。ADC0809和AT89C51单片机的连接图如下: 图图 3.3.2.1 ADC0809 和和 AT89C51 单片机的接线图单片机的接线图 如图3.2.2.2所示模拟通道选择信号A、B、C分别接最低三位地址A0、A1、A2 即(P0.0、P0.1、P0.2),而地址锁存允许信号ALE由P2.0控制,则8路模拟通道的 地址为0FEF8H0FEFFH.此外,通道地址选择以WR作写选通信号,这一部分电路 连接如图所示。 图图 3.2.2.2 模拟通道选择信号接线图模拟通道选择信号接线图 从图中可以看到,把ALE信号和START信号接在一起了,这样连接使得在信 号的前沿写入(锁存)通道地址,紧接着在其后沿就启动转换。 启动A/D转换只需要一条MOVX指令。在此之前,要将P2.0清零并将最低三位 和所选择的通道好像对应的口地址送入数据指针DPTR中。例如要选择IN0通道时, 可采用如下两条指令,即可启动A/D转换: MOV DPTR , #FE00H ;送入0809的口地址 MOVX DPTR , A ;启动A/D转换(IN0) 注意:此处的A和A/D转换无关,可为任意值。 3.3.3 转换数据的传送 A/D转换后得到的数据应及时传送给单片机进行处理。数据传送的关键问题 是如何确认A/D转换的完成,因为只有确认完成后,才能进行传送。为此可采用 下述三种方式。 1)定时传送方式 对于一种A/D转换其来说,转换时间作为一项技术指标是已知的和固定的。 例如ADC0809转换时间为128s,相当于6MHz的MCS-51单片机共64个机器周期。 可据此设计一个延时子程序,A/D转换启动后即调用此子程序,延迟时间一到, 转换肯定已经完成了,接着就可进行数据传送。 2)查询方式 A/D转换芯片由表明转换完成的状态信号,例如ADC0809的EOC端。因此可以 用查询方式,测试EOC的状态,即可却只转换是否完成,并接着进行数据传送。 3)中断方式 把表明转换完成的状态信号(EOC)作为中断请求信号,以中断方式进行数 据传送。不管使用上述那种方式,只要一旦确定转换完成,即可通过指令进行 数据传送。首先送出口地址并以信号有效时,OE信号即有效,把转换数据送 RD 上数据总线,供单片机接受。 不管使用上述那种方式,只要一旦确认转换结束,便可通过指令进行数据 传送。所用的指令为MOVX 读指令,仍以图9-17所示为例,则有 MOV DPTR , #FE00H MOVX A , DPTR 该指令在送出有效口地址的同时,发出有效信号,使0809的输出允许信 RD 号OE有效,从而打开三态门输出,是转换后的数据通过数据总线送入A累加器中。 这里需要说明的示,ADC0809的三个地址端A、B、C即可如前所述和地址线 相连,也可和数据线相连,例如和D0D2相连。这是启动A/D转换的指令和上述 类似,只不过A的内容不能为任意数,而必须和所选输入通道号IN0IN7相一致。 例如当A、B、C分别和D0、D1、D2相连时,启动IN7的A/D转换指令如下: MOV DPTR, #FE00H ;送入0809的口地址 MOV A ,#07H ;D2D1D0=111选择IN7通道 MOVX DPTR, A ;启动A/D转换 3.43.4 键盘输入电路的设计键盘输入电路的设计 3.4.1 按键去抖 通常的按键所用开关为机械弹性开关,当机械触点断开、闭合时,电压信号 小型如下图。由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定地 接通,在断开时也不会一下子断开。因而在闭合及断开的瞬间均伴随有一连串的 抖动,如下图。抖动时间的长短由按键的机械特性决定,一般为5ms10ms。 按键稳定闭合时间的长短则是由操作人员的按键动作决定的,一般为零点几 秒至数秒。键抖动会引起一次按键被误读多次。为确保CPU对键的一次闭合仅作 一次处理,必须去除键抖动。在键闭合稳定时读取键的状态,并且必须判别到键 释放稳定后再作处理。按键的抖动,可用硬件或软件两种方法。 (1)硬件消抖:在键数较少时可用硬件方法消除键抖动。下图所示的RS触 发器为常用的硬件去抖。 图图 3.3.1 RS 触发器硬件消抖触发器硬件消抖 图中两个“和非”门构成一个RS触发器。当按键未按下时,输出为1;当键按下 时,输出为0。此时即使用按键的机械性能,使按键因弹性抖动而产生瞬时断开 (抖动跳开B),中要按键不返回原始状态A,双稳态电路的状态不改变,输出保持 为0,不会产生抖动的波形。也就是说,即使B点的电压波形是抖动的,但经双稳态 电路之后,其输出为正规的矩形波。这一点通过分析RS触发器的工作过程很容易 得到验证。 (2)软件消抖:如果按键较多,常用软件方法去抖,即检测出键闭合后执行 一个延时程序,产生5ms10ms的延时,让前沿抖动消失后再一次检测键的状态, 如果仍保持闭合状态电平,则确认为真正有键按下。当检测到按键释放后,也要 给5ms10ms的延时,待后沿抖动消失后才能转入该键的处理程序。 3.4.2 键盘扫描方法 扫描查询法,是一种最常用的按键识别方法,如下图所3.4示键盘,介绍过 程如下。 (1)判断键盘中有无键按下 将全部行线Y0-Y3置低电平,然后检测列线的 状态。只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于 低电平线和4根行线相交叉的4个按键之中。若所有列线均为高电平,则键盘中 无键按下。 (2)判断闭合键所在的位置 在确认有键按下后,即可进入确定具体闭合 键的过程。其方法是:依次将行线置为低电平,即在置某根行线为低电平时, 其它线为高电平。在确定某根行线位置为低电平后,再逐行检测各列线的电平 状态。若某列为低,则该列线和置为低电平的行线交叉处的按键就是闭合的按 键。 图图 3.4 44 键盘扫描法接口电路键盘扫描法接口电路 3.53.5 数显输出电路的设计数显输出电路的设计 下图为并行输入硬件译码静态显示电路,采用锁存器MC14495将P1口低4位 输出地BCD码译成七段字形段码,利用P1口高4位作为各锁存译码器的锁存信号。 CPU把送显数据写到锁存器后,对应的各位LED即可稳定显示。 图图 3.5 硬件译码并行输入静态显示电路硬件译码并行输入静态显示电路 3.63.6报警及控制电路的设计(略)报警及控制电路的设计(略) 四、软件设计部分四、软件设计部分 4.14.1 原理图的绘制原理图的绘制 根据需求制作了MC14495原件,改造了AT89C51原件,原件图如下: 图图 4.1.1 AT89C51 图图 4.1.2 ADC0809 原理图见附录 4.24.2 流程图的设计流程图的设计 流程图见附录 五、心得体会五、心得体会 在该次课程设计中,我了解了AT89C51单片机的基本用法,了解了AD转换元 件的工作原理,进一步了解了利用protel软件绘制电路原理图的方法。 这次的课程设计不仅检验了我所学习的知识,也培养了我如何去把握一件 事情,如何去做一件事情,又如何完成一件事情。在设计过程中,和同学们相 互探讨,相互学习,相互监督。学会了合作,学会了运筹帷幄,学会了宽容, 学会了理解,也学会了做人和处世。 这次课程中我所遇到的问题可以说是问题重重,首先是protel软件的使用, 以前从来没有接触到这个软件,仅仅学习该软件就用掉了很多时间,但我觉得 这这份付出值得的,在这几天使用这软件的过程中,我感觉这软件是很有用的, 作为测控专业的学生,以后肯定少不了要绘制电路图,有了这软件,会给我带 来很多方便 课程设计是我们专业课程知识综合使用的实践训练,着是我们迈向社会, 从事职业工作前一个必不少的过程”千里之行始于足下”,通过这次课程设计, 我深深体会到这句千古名言的真正含义我今天认真的进行课程设计,学会脚 踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础 通过这次液位测量仪的设计,我在多方面都有所提高。通过这次课程设计, 综合运用本专业所学课程的理论和生产实际知识进行一次冷冲压电子秤设计工 作的实际训练从而培养和提高学生独立工作能力,巩固了传感器课程所学的内 容,掌握了传感器元件的使用方法,提高了计算能力,绘图能力,熟悉了规范 和标准,同时各科相关的课程都有了全面的复习,独立思考的能力也有了提高。 遗憾的是,本次课程设计并没有能够做出实物,希望以后能有机会将这次 课程设计的内容全部完成。 参考文献参考文献 1王祁. 智能仪器设计基础. 北京:机械工业出版社,2009. 2王洪君.单片机原理及使用. 济南:山东大学出版社,2009 3王庆. protel99 SE&DXP 电路设计教程. 北京:电子工业出版社,2006. 4阎石. 数字电子技术基础. 北京:高等教育出版社,2006. 5童诗白,华成英. 模拟电子技术基础. 北京:高等教育出版社,2007. 附录附录 附录附录1 1 附录附录2 2 123456 A B C D 654321 D C B A Title NumberRevisionSize B Date:29-Jun-2011Sheet of File:D:PROGRAM FILESDESIGN EXPLORER 99 SEEXAMPLESMyDesign.ddbDrawn By: D0 3 Q0 2 D1 4 Q1 5 D2 7 Q2 6 D3 8 Q3 9 D4 13 Q4 12 D5 14 Q5 15 D6 17 Q6 16 D7 18 Q7 19 OE 1 LE 11 74LS373 IN-0 26 D0 17 D1 14 IN-1 27 D2 15 D3 8 IN-2 28 D4 18 D5 19 IN-3 1 D6 20 D7 21 IN-4 2 EOC 7 IN-5 3 ADD-A 25 IN-6 4 ADD-B 24 ADD-C 23 IN-7 5 ALE 22 ref(于) 16 OE 9 START 6 ref(+) 12 CLOCK 10 GND 13 Vcc 11 ADC0809 ADC0809 12 74LS04A 4 5 6 74LS02B 1 2 3 74LS02A 74LS373 ADC0809 K13K14K15K16 K9K10K11K12 K5K6K7K8 K4K3K2K1 R1 4K7 R2 4K7 R3 4K7 R4 4K7 +5 8 9 10 74LS08C 1 2 3 74LS08A 4 5 6 74LS08B +5 EA/VP 31 X1 1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论