AT89C52单片机的液位检测系统

发布者:asd123yui最新更新时间:2012-07-17 来源: 21ic 关键字:AT89C52  单片机  液位检测 手机看文章 扫描二维码
随时随地手机看文章

  随着现代测量技术的发展,对测量系统提出了越来越高的要求。在自动蒸馏测控系统中,准确及时地检测出蒸馏过程中从冷凝管馏出的第一滴液滴是获取初馏点的前提;实时、准确地测量出量筒中回收液体体积的变化是控制蒸馏过程中不同时段不同蒸馏速度的依据。而目前担负着对冷凝管馏出的液滴进行检测、回收、计量、测速等任务的完成有诸多不尽人意的地方,需要更加完善、合理的液滴、液位检测跟踪控制系统。

  从液位测量的方法看,按检测器与液体接触与否分为两大类:一是接触式测量,二是非接触式测量。当需要通过测量液位变化确定体积变化时,一般采用非接触式测量方法。但在大多数非接触式测量中,液位传感器测试范围较大,绝对分辨率均大于0.5ml,因而在体积变化范围为0-100ml,液位变化范围为0-200mm时,要达到0.1ml的分辨率,普通的传感器就难以满足要求。为此,需要研制一种测量普通100ml玻璃量筒中液体体积实时变化的高精度液位检测系统。

  针对以上所存在的问题,本文介绍了一种以AT89C52单片机为核心的液位检测系统,实现了对变化的液位进行高精度体积测量的目的。

  一、 积测量原理

  由于量筒的容积

是确定的,且制作均匀,那么一定体积的液体在量筒内对应的高度也是一定的。传感器与螺杆是相互耦合的,螺杆的顶端与步进电机的中轴是直接相连的,步进电机每走一步,螺杆就跟着转一个小角度。因此,在电机步距和螺杆螺距一定的情况下,量筒的单位高度与电机步数成正比关系。于是,可将量筒内液体的体积直接转换成电机的步进数,即电机每走一步所代表的液体的体积是多少毫升。

  体积测量示意图如图1所示。为了确定电机的步进数与确定量筒内液体的体积毫升数之间的换算关系,我们需要对此系统进行校准,具体校准的方法是:

  1.   测量体积为10ml液体的电机步进数,将其值设为L1;

  2.   测量体积为100ml液体的电机步进数,将其值设为L2;

体积测量示意图

  根据以上步骤记录的数据,计算出电机每走一步所代表的体积毫升数,将其值设为T,则有如下的计算公式:T=90/(L2-L1)。这样就可以很方便地计算出跟踪器所跟踪的液体体积。

  二、 硬件电路组成及原理

  本系统的基本组成是:红外光电传感器、输入电路、时钟电路、复位电路、显示电路、步进电机及驱动电路、单片机实时处理与控制电路等。

  其基本的工作原理是:红外光电传感器检测到的各种信号,经过信号处理电路后,把光信号转换成了电信号,同时把电信号送给单片机进行判断和计算处理后,再发出控制指令,控制步进电机工作,完成对变化液位的检测与跟踪。

  该硬件电路原理框图如图2所示:

硬件电路原理框图

  1、红外光电传感器

  红外光电传感器是由红外发射二极管和敏感三极管组成,红外发射二极管发出的红外光的波长和敏感三极管的受光波长相同或相近。当发射管和接受管之间没有障碍物时,敏感三极管由于收到红外光信号而导通,电路输出电平为低电平;当发射管和接受管之间有障碍物挡住时,敏感三极管由于收不到红外光信号而截止,电路输出电平为高电平。

  该系统中,对量筒中的液体表面的检测基本上是利用散射原理,在玻璃量筒中液体表面处的液体会发生外延现象或吸附现象而形成一个环形曲面,这个曲面正好供我们检测用。它是由一对红外光电对管组成的,在玻璃量筒中液体表面处的液体会发生外延现象或吸附现象而形成一个环形曲面,由于散射作用,接收管接收不到发射管的红外光信号而截止,电路输出电平为高电平。因此,可以利用其输出电平的高低来检测液面的位置,其输出信号再通过电缆输出到单片机接口电路和显示驱动电路进行处理。为了适应本系统的特殊要求,我们将红外发射、接受管分别装在U形板的两边,两管距离大于玻璃量筒的直径。为了减少外来自然光的干扰,在两管的发射、接受头安装有一定深度的导光孔槽,它一方面减少了外来光的干扰,另一方面可以限制光束直径,以利于提高检测分辨率。

  2、步进电机及驱动电路

  在步进电机工作中,其电源大多是采用单极性直流电,通过对步进电机的各相绕组按恰当的时序方式通电,就可使其执行步进转动。本系统所用电机为四相电机,当两相绕组通电时,相应的两个磁极就分别形成N-S极,产生磁场,并与转子形成磁路。在磁场的作用下,转子将转动一定的角度,使转子齿与定子齿对齐,从而使步进电机向前“走”一步。因此,控制电机转动主要是按照电机转动方向的要求,由单片机顺序地输出相应的控制信号即可。

  下面以正转为例进行说明,正转时,要求按ABCDA的顺序依次输出宽为8ms的正脉冲,且两脉冲之间有一小延时。由此可以往8255的PC0~PC3口依次输出1000、0100、0010、0001、1000等一系列的信号,每一个高电平保持8ms,输出时间间隔为1ms,即可满足控制需要。同理,也可以控制电机反转,只是输出信号的顺序相反。于是在寄存器中的初始控制字可设为00010001B(即11H),电机每走一步,则对此寄存器的内容向左(正转)或向右(反转)循环移一位,然后取出此寄存器的内容并输出,就可以完成对电机的控制。 [page]

  3、单片机实时处理及控制

  针对本课题而言,硬件电路应该尽量的简单,部分能用软件实现电路尽可能的不用硬件电路,以此来达到产品的小型化、价格低、性能可靠的目的。在选择单片机时也应充分考虑其便利和实用,8031单片机最大缺点是需要外接EPROM,电路复杂,而且EPROM还是用紫外线进行擦除的,使用起来很不方便。在经过广泛的比较之后,确定采用ATMEL 公司的AT89C52 FLASH单片机。它不仅具有8031单片机的一切功能,还有许多功能是8031所没有的。其内部带有8KB可多次擦写的FLASH内部程序存储器,可用电擦除,十分方便。

  AT89C52单片机主要有以下一些特点:

  (1)、与MCS-51产品兼容;

  (2)、具有8KB可改写的FLASH内部程序存储器,可进行1000次擦/写操作;

  (

3)、全静态操作:0Hz到24MHz;

  (4)、三级程序存储器加密;

  (5)、256字节内部RAM;

  (6)、32条可编程I/O线;

  (7)、3个16位定时/计数器;

  (8)、8个中断源;

  (9)、可编程串行口;

  (10)、低功耗空闲和掉电方式。

  单片机实时处理及控制部分的主要功能是接收来自红外光电传感器转换过的电信号,同时接收输入电路送来的状态信息,经过判断计算后,一方面发出控制指令,控制电机的运转,进行液位的检测与跟踪;另一方面送出所需要的数据,进行数据的显示和状态指示。因此,这一部分是本系统的关键部分,它的性能的好坏直接关系到整个系统的性能好坏。具体硬件电路是以AT89C52单片机为核心,通过扩展并口8255来实现的,其电路如图3所示。

电路

  由图3可以看出,键入电路与AT89C52的P1口相连,接收所键入的状态信息并送单片机。液位信号直接送P3.0口,在自动跟踪时,单片机对P3.0口不断地查询,一有信号就进行判断处理。液滴信号与P3.2口(即INT0中断引脚)相连,由于液滴的检测是随时的,因此需要用中断来控制,当液滴信号一来中断便响应,记录下液滴数。上、下限位信号分别接P3.4、P3.5口,在运行中,一但出现了上、下限位信号时,说明已超出了预定的运行范围,单片机收到信号后,发出控制指令,停止电机的转动。其它一些如显示、电机驱动等控制信号的发出由总线分时送8255,完成预定的任务。

  8255的片选信号/CS及口地址选择线A0和A1分别由AT89C52的P2.7和P0.0、P0.1经地址锁存后提供,故8255的A口、B口、C口及控制口地址分别为7FFCH、7FFDH、7FFEH和7FFFH。8255的D0~D7分别与AT89C52的P0.0~P0.7相连,其/RD、/WR与AT89C52的/RD、/WR一一对应相接。

  三、 软件设计

  系统软件是整个系统的重要组成部分,只有在它的指挥控制下硬件电路才能进行工作,完成相应的功能,而且部分硬件电路的缺陷还可以通过软件编程加以弥补。根据系统的功能要求,软件是用MCS-96汇编语言,采用模块化结构,由主程序、自动检测跟踪子程序、校准子程序、显示子程序等组成。在本系统中,高精度测量的实现在很大程度上是由软件来保证的。

  主程序包括系统参数初始化和循环工作过程,是本系统中软件部分的核心。它主要完成的任务是:首先,对单片机状态参量和程序自定义的状态参量进行系统初始化;其次,对各子程序进行管理和控制,安排相应的指令,提供子程序的入口数据,以达到完成系统功能的目的。

  液位自动检测跟踪子程序的功能是控制液位跟踪器以底液液面为起始位置,连续地跟踪液面的变化,并换算出实际的液体体积值,实时地进行显示。其执行步骤是:首先,红外光电传感器自动检测到液位,并设此液位为跟踪的底液面,显示为“0”。然后,进入实时跟踪状态,只要液位有变化(上升),检测器便会自动跟踪,实时显示所跟液体的体积,直到液位不再变化为止。

  校准子程序是在每次更换量筒时进行的,目的是找出量筒内液体的体积与电机的步进数之间的对应关系,然后送给单片机,进行体积计算时就有了新的标准,以此来提高测量精度。

  四、结束语

  采用AT89C52单片机实现的液位检测系统在标准100ml玻璃量筒中,液位变化范围在0-200mm时,能达到0.1ml的分辨率。实践证明,本液位检测系统性能价格比高、控制方式可靠,其设计思路和方法可以为自动蒸馏测控系统所借鉴,具有广阔的应用前景。

关键字:AT89C52  单片机  液位检测 引用地址:AT89C52单片机的液位检测系统

上一篇:基于AT89C52的超声波测距倒车防撞报警系统设计
下一篇:单片机RS-485多机通讯的实现

推荐阅读最新更新时间:2024-03-16 13:03

MCS-51单片机的定时器/计数器概念 非常好的寄存器关系图
一、MCS-51单片机的定时器/计数器概念 单片机中的定时器和计数器其实是同一个物理的电子元件,只不过计数器记录的是单片机外部发生的事情(接受的是外部脉冲),而定时器则是由单片机自身提供的一个非常稳定的计数器,这个稳定的计数器就是单片机上连接的晶振部件;MCS-51单片机的晶振经过12分频之后提供给单片机的只有1MHZ的稳定脉冲;晶振的频率是非常准确的,所以单片机的计数脉冲之间的时间间隔也是非常准确的,这个准确的时间间隔是1微秒; MCS-51单片机外接的是12MHZ的晶振(实际上是11.0592MHZ),所以,MCS-51单片机内部的工作频率(时钟脉冲频率)是12MHZ/12=1MHZ=1000000次/秒=100000
[单片机]
MCS-51<font color='red'>单片机</font>的定时器/计数器概念 非常好的寄存器关系图
51单片机综合学习系统之 步进电机控制篇
大家好,通过以前的学习,我们已经对51单片机综合学习系统的使用方法及学习方式有所了解与熟悉,学会了红外线遥控的基本知识,体会到了综合学习系统的易用性与易学性,这一期我们将一起学习步进电机控制的基本原理与使用方法。 先看一下我们将要使用的51单片机综合学习系统能完成哪些实验与产品开发工作:分别有流水灯,数码管显示,液晶显示,按键开关,蜂鸣器奏乐,继电器控制,IIC总线,SPI总线,PS/2实验,AD模数转换,光耦实验,串口通信,红外线遥控,无线遥控,温度传感,步进电机控制等等。 上图是我们将要使用的51单片机综合学习系统硬件平台,本期实验我们用到了综合系统主机、步进电机,综合系统其它功能模块原理与使用详见
[单片机]
51<font color='red'>单片机</font>综合学习系统之 步进电机控制篇
基于单片机的接口转换设计及应用
论述了用AT89C51单片机控制Intel8251A和MC68488接口芯片来实现RS232C与通用接口总线GPIB(general-purpose interface bus)接口之间的转换设计,并将其应用到印制电路板程控探针定位设备中。 关键词:单片机,GPIB,RS232C,接口转换器   1引 言   在电子测量与仪器领域内,GPIB和RS232C属于应用较广泛的标准接口总线。GPIB适于建立自动测试系统(ATS),RS232C常用于数据终端设备(DTE)和数据通信设备(DCE)之间的联接。目前,已研制了许多专用大规模集成电路芯片来帮助设计者实现GPIB和RS232C接口,且这些芯片都与微处理器的内部总线相容。
[模拟电子]
基于<font color='red'>单片机</font>的接口转换设计及应用
8051单片机中DPTR的扩展设计
   摘要 首先对比分析在执行大规模数据转移时,传统805l单片机和进行DPTR扩展后的805l单片机在数据转移执行效率上的差别。通过详细分析DPTR操作所涉及的因素,具体实现对DPTR的扩展,并进行实际仿真测试。   单片机的出现是计算机技术发展史上的一个里程碑,它使计算机从海量数值计算进入到控制领域。在单片机中,以8051系列最为经典,至今仍是最普及、广泛使用的8位MUC架构。北界许多技术人员在其基础上不断进行性能扩展,使得805l系列芯片不断完善,从而形成一个庞大的体系。在传统的8051系列单片机中,设置了一组双字节寄存器(数据指针DPTR),用于访问外接的64 KB数据存储器和I/O接口电路;但在现今的8051单片机应用
[单片机]
爱特梅尔推出全球最小的快闪AVR微控制器封装产品
爱特梅尔公司( Atmel Corporatio)宣布,全球最小的快闪AVR 微控制器 微控制器   一个微控制器,(也称作微处理器或MCU)就是一个小型的计算机,它由一系列简单的电路和一些支持CPU作用的简单模块组成,如晶体振荡器,定时器,看门狗,串行和模拟I / O口等等。芯片里包括非闪烁存储器和OTP ROM 用来存储程序,以及一个很小的读写程序。 封装产品开始投入生产。爱特梅尔的ATtiny4、ATtiny5、ATtiny9和ATtiny10 AVR微控制器 ( MCU MCU   MCU Microcontroller(微控制器)又可简称MCU 或μ C,也有人称为单芯片微控制器(S
[工业控制]
51单片机中断优先级及中断嵌套
在说到中断之前,我先来定义一下优先级,明白了什么是优先级,后面的阐述就容易明白了。实际上很多人都是混淆了优先级的含义,所以才觉得糊里糊涂。 中断的优先级有两个:查询优先级和执行优先级。 什么是查询优级呢?我们从datasheet或书上看到的默认(IP寄存器不做设置,上电复位后为00H)的优先级: 外部中断0 定时/计数器0 外部中断1 定时/计数器1 串行中断 或 int0,timer0,int1,timer1,serial port 或 INT0、T0、INT1、T1、UART 或 PX0 PT0 PX1 PT1 PS ...... 其实都是查询优级。首先查询优先级是不可以更改和设置的。这是一个中
[单片机]
基于AVR单片机与FPGA的低频数字式相位测量仪设计
在工业领域中经常要用到低频数字式相位仪来精确测量两信号之问的相位差,比如在电力系统、频率特性的研究、激光测距等领域均有广泛的应用,相位检测的精度直接决定系统的整体性能。这就要求测量仪逐渐向智能化和测试自动化方向发展,本设计采用MCU和FPGA相结合的系统方案,以AVR单片机ATmega128和Altera公司的Cyclone系列EP1C3T100为核心,充分发挥各自的优势,如AVR单片机先进的RISC结构和强劲的运算、控制功能,Altera公司的FPGA运算速度快、资源丰富以及易编程的特点,合理设计,此方案的相位仪具备速度快、稳定可靠、精度高等优点,而且容易实现“智能化”和“自动化”。 1 系统方案设计 1.1 测量方法的比较
[单片机]
基于AVR<font color='red'>单片机</font>与FPGA的低频数字式相位测量仪设计
芯圣电子HC89S003A系列MCU简述
HC89S003A系列是芯圣兼容STM8S系列Flash单片机,内置增强型8051内核,拥有16K的Flash内存以及256Bytes+768Bytes的RAM;HC89S003A系列拥有丰富的外设资源,包括5个16位的定时/计数器、3组12位带死区控制以及1路8位的PWM、16+2路12位的ADC、1个SPI、2个UART、1个IIC以及独立的CRC模块;HC89S003A系列还支持2.0~5.5V的工作电压与-40℃~+105℃的工作温度。 以下为该系列目前在售的型号及对应参数: 此外,HC89S003A系列支持引脚全映射,使其在硬件兼容方面有着得天独厚的优势,可以适用于绝大多数的应用领域,例如消防安防,LED驱动电源
[单片机]
芯圣电子HC89S003A系列<font color='red'>MCU</font>简述
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved