测控二三事欢迎你的到来!同时欢迎关注本站新浪微博@测控二三事网站 加入收藏 | 设为首页 | 会员中心 | 我要投稿 | RSS
您当前的位置:首页 > 技术文献 > 嵌入式技术

基于单片机控制的数字气压计设计与实现

时间:2015-04-11 13:14:23  来源:  作者:  点击数:

  摘要:介绍了一种精密数字气压计的软硬件实现方法。该方法通过气压传感器获得与大气压相对应的模拟电压值,并经过V/F变换输入到单片机进行处理,从而实时显示相应的气压值。用本文所述的方法制成的气压计携带方便,操作简单,精确度高,完全符合设计要求。

  1引言

  气压计是利用压敏元件将待测气压直接变换为容易检测、传输的电流或电压信号,然后再经过后续电路处理并进行实时显示的一种设备。其中的核心 元 件就是气压传感器,它在监视压力大小、控制压力变化以及物理参量的测量等方面起着重要作用。运用于气压计的气压传感器基本都是依靠不同高度时的气压变化来 获取气压值的。

  气象学研究表明,在垂直方向上气压随高度增加而降低。例如在低层,每上升100m,气压便降低10hPa;在5~6km的高空,高度每增加 100m,气压便会降低7hPa;而当高度进一步增加时,即到9~10km的高空之后,高度每增加100m,气压便会降低5hPa;同样,若空气中有下降 气流时,气压会增加;若空气中有上升气流时,作用于空气柱底部的气压就会减小。一般把作用于单位面积上空气柱的重量称为大气压力。

  2气压计的结构

  本文研究的气压计结构如图1所示。其中气压传感器用来将被测气压转换为电压信号;用V/F转换器则可把气压传感器输出的电压信号转换成具有一定 频率的脉冲信号;以便用单片机接收该脉冲信号,并根据单位时间内得到的脉冲数,依据电压与频率的线性关系式计算出所对应的气压值,最后在单片机控制下由 LED显示出来。

  本气压计能够在气压传感器的线性范围内准确测量相应气压值。需要说明的是,其测量值是绝对气压值。本文研究的气压计的技术指标如下:

  ●测量范围:300hPa~1050hPa;

  ●测量精度:0.1%FS(20℃);

  ●显示精度:0.1%,由4个8段LED显示实现;

  ●工作温度范围:0~85℃;

  ●电源电压:9V。

  3系统实现

  在系统构建过程中,需要考虑稳定性、复杂程度、造价和调试的难易程度等因素。图1所示框图中的每一部分就是一个单元电路,可完成各自的功能。模块之间没有复杂的信号传输,且干扰很少,因而系统整体比较稳定。

  

  3.1气压传感器

  气压传感器在气压计中占据核心位置。设计时可根据测量精度、测量范围、温度补偿、测量绝对气压值等几个性能指标来选取气压传感器。由于该气压计 显示的是绝对气压值,因而需要选取测量绝对气压值的气压传感器。同时为了简化电路,提高稳定性和抗干扰能力,要求该气压传感器应带有温度补偿。

  为此,笔者选用Motorola的MAX4100A气压传感器来测量绝对气压值。该传感器的温度补偿范围为-40~+125℃;压力范围为 20kPa~1050kPa;输出电压信号(Vs=5.0V)范围为0.3~4.65V;测量精度为0.1%VFSS,同时在20kPa~1050kPa 时具有良好的线性,具体输出关系如下:

  Vout=Vs(0.01059 P-0.1528)±Error

  式中,Vs是工作电压, P是大气压值, Vout为输出电压。

 3.2 V/F变换

  V/F器件的作用是将输入电压的幅值转换成频率与输入电压幅值成正比的脉冲串。虽然V/F本身还不能算做量化器,但加上定时器与计数器以后也可 以实现A/D转换。它的突出特点就是把模拟电压转换成抗干扰能力强,可远距离传送并能直接输入计算机的脉冲串,从而通过测量V/F的输出频率来实现A/D 转换功能。

  考虑到外围电路实现的难易程度和相应的性能指标,笔者选用了LM331电压/频率转换芯片。该器件使用了温度补偿能隙基准电路,因而具有极佳的 温度稳定性,最大温漂为50ppm/℃,同时该器件的脉冲输出可与任何逻辑形式兼容;LM331可单、双电源供电,电压范围为5~40V;满量程范围 1Hz~100kHz;最大非线性误差为0.01%。图2所示是该系统中LM331的外围电路。在该电路中,基于LM331的压频转换关系为:

  fo=KVi

  其中,K=Rs/(2.09 RtCtRL), Rs=Rs1+Rs2

  

  实际上,电路中的Rs主要用于调节电路的转换增益, Rt, Ct, RL的典型值分别为6.8kΩ、0.01pF和100kΩ,K值则可由设计者自己决定。该设计中,取K=2000,Rs=28.424 kΩ,主要是考虑到单片机部分使用测频率法来测fo能够保证频率信号的测量精度。由于Rs、RL、Rt和电容Ct会直接影响fo的转换结果。因此,对这些 元件的参数有一定的要求,设计时应根据转换精度适当选择。电容CL对转换结果虽然没有直接影响,但是应选择漏电流小的电容器。用电阻R1,电容C1组成低 通滤波器,可减少输入电压中的干扰脉冲,提高转换精度。

   3.3单片机

  本气压计实现方案需使用单片机的P1口和P3口的一部分以及一个中断源、一个定时器和一个计数器。因此,笔者选用了ATMEL的 AT89C2051单片机,该器件与89C51兼容,具有2kB的可重复编程闪存,2.7V~6V的工作电压范围,128Byte的内部RAM以及两个 I/O口(P1,P3)、2个16位的计数器/定时器和6个中断源,并可直接驱动LED输出,同时带有可编程的串行通讯口。另外,该单片机还具有体积小, 价格低等特点。

  3.4 LED显示

  单个LED是由7段发光二极管构成的显示单元。有10个引脚,对应于7个段、一个小数点和两个公共端。在显示电路中,这些发光二极管有两种接 法:共阳极接法和共阴极接法。本设计中需要用4个LED组成显示单元,并采用动态显示方式。由于使用4个单个LED进行显示的连线比较复杂,同时单片机的 端口驱动能力也难以保证,而需要加入专门的驱动芯片。所以,笔者采用了4个LED连体的、内部已将其相应段接好的共阳极LED,它具有12个引脚,含7个 段和4个公共端,为提高数码管的亮度,可在位选线上加入一个三极管驱动电路

  由AT89C2051控制的显示电路如图3所示。该显示电路需要选取合适的电阻R和Ra,才能保证LED的亮度,过大或者过小都无法让LED正 常显示。设计时取R为4.7kΩ,Ra为510Ω比较理想。若考虑印制板布线的方便,可以采用贴片电阻和排阻来节省空间。另外,也可以用74LS244和 74LS06构成驱动显示电路,但这样同样要加限流电阻。因为74LS06是开漏器件,需要在输出处加上拉电阻。

  4软件实现

  通过以上设计,便可通过fo来计算P的大小以得到实时的气压值。硬件电路设计完成之后,可使用AEDK5196PH仿真器的仿真环境进行仿真,并可用C51语言来编写处理程序。其基本程序流程如图4所示。

  

程序设定: T0为定时器,基本的定时时基为50ms。T1为计数器,运用内部中断0可保证T0定时满500 ms后就读取此时计数器的值,以计算气压值。如使T1、T0均工作于方式1,并在P1口送字型码,同时可用P3.0~P3.3做位选线,那么,其相应的函数如下:

 

  该中断函数主要用于完成脉冲的读取和气压值的计算。ph是个全局变量,可用来保存气压值。

       (2)在显示函数里,将气压值先按位进行分离并保存到数组,然后送段码和相应位选就可以显示出相应的气压值了。具体程序如下

  

  

       这样,在主程序中,只要在程序第一次运行时进行初始化,然后再循环调用显示函数即可实现实时显示功能。

  5结束语

  笔者曾用纯硬件电路设计过气压计。实践表明,由于受温度的影响及硬件参数的限制,实时显示时稳定性较差,并且精确度不高。而改用V/F变换信号 及编程的方法实现该测量则完全克服了上述缺点。结果表明:该方法具有精度高、稳定性好、功能易于扩展等优点,可为仪器及电子产品设计提供一种新的思路。

  参考文献

  [1]林琳,陈金岭.便携式气压计的电路与系统设计[J].成都气象学院学报,2000,3(1).

  [2]林汉.LM331压频变换器的原理及应用[J].国外电子元器件,1999,(10).

  [3]马忠梅,籍顺心,等.单片机的C语言应用程序设计[M].北京:航空航天大学出版社,1999.

  [4]李广弟,等.单片机基础[M].北京:北京航空航天大学出版社, 2001.

  [5]邵钟武,柴庆忠,马晓敏.数据采集系统[M].东营:石油大学出版社,1994.

  [6]刘景泰.大气压力测量[J].气象水文海洋仪器,1997,(4).

发表评论 共有()条评论
用户名: 密码:
验证码: 匿名发表
推荐文章
栏目更新
栏目热门
热点排行