基于单片机的数字气压计的设计与实现毕业设计Word格式文档下载.docx
《基于单片机的数字气压计的设计与实现毕业设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于单片机的数字气压计的设计与实现毕业设计Word格式文档下载.docx(22页珍藏版)》请在冰点文库上搜索。
常见的液体气压计有酒精气压计和水银气压计两种。
这两种气压计都是老式气压计,不方便于携带而且容易损坏。
在科技飞速发展的今天,各行各业不断出现新技术新材料。
进入20世纪90年代以后,微电子行业发展极为迅速,各行各业的电子传感器被发明并运用到各个领域当中,给人们的生产生活带来了极大的便利。
数字气压传感器已经出现,并大量运用到日常生活中。
现在很多手持设备中都植入了气压计功能。
例如手机、GPS等,为人们的出行旅游带来方便。
目前国际国内很多电子公司都推出了数字气压传感器。
如摩托罗拉公司的MPX4105、Intersema公司的MS5534b及华普微电子公司的HP03系列数字气压传感器。
多样化的数字化气压测量装置、用品大量出现,致使此产品越来越普及,精确度也越来越高。
数字气压计除了测量气压一种功能以外,还具备了测量温度、指南针、码表的功能。
以前电子气压计只是一种专业场合只能通过专业人才能使用的测量器具。
现如今,电子气压计已经成为大众化产品,在大街小巷随处可见。
它也成为人们方便携带与利用的电子产品之一。
气压传感器在数字气压计中起着至关重要的作用。
在当今社会中,数字气压计的运用范围广泛。
在国防领域中,它运用于火箭、导弹升空的气压监测。
在工业领域,它运用于汽车制造方面颇多。
在医疗领域,它多运用高压氧舱的气压测量。
数字气压计的出现及广泛使用,为我们平民百姓的日常生活提供了很大的便利条件。
在本次设计与实验的过程中,数字气压计是采用单片机的数字气压计控制。
这种采用单片机的数字气压计使用起来方便,精准度较高,显示的数字易读,方便携带。
产品的质量得以保障。
基于气压传感器的关键性作用。
此实验设计首先需要介绍一下气压传感器的相关知识。
为后续的工作奠定一个良好的基础。
首先对于气压传感器的技术性能作出以下介绍。
在气压传感器中,普遍采用的技术是差动技术。
差动技术的最大优点是减小大气温度变化对实验测量的影响。
其次它还具有减少外界对实验干扰,影响气压传感器精确度的优点。
在气压传感器中可以产生一种平均效应。
这是由于气压传感器采用了平均技术。
每一个单元都可以感受到数字气压计的测量是它的原理。
每一个单元所感受到的误差值看做随即误差并且服从正态分布的话,总的误差将会显著减小。
在气压传感器中,补偿性修正技术也被广泛应用。
在气压传感器本身特性发生变化时,可以利用补偿性修正技术进行修复。
还可以在外界环境允许的条件下,对气压传感器进行修正的一种技术。
对气压传感器的整体或者材料、元器件进行必要的稳定性处理是为了提高传感器性能的稳定性。
气压传感器在使用的过程中,若测量要求较高,必要时也应对附加的调整元件,后续电路的关键元器件进行老化处理[1]。
其次对于气压传感器的发展趋势作出以下介绍。
气压传感器的发展不仅仅只涉及到一个领域。
它在专业的技术水平发展平台上使用很多,在选取材料的方法及使用上也有涉及,在工业方面它的应用更加广泛。
传感器集成化也可以称为“多功能一体化”,它是将传感器的温度补偿、放大及运算多种环节一体化,并运用它们组装成一个元器件。
当前,各类集成传感器已出现许多系列性产品,广泛应用于生产生活中。
传感器技术发展迅速,集成化成为它发展的一个重要方向。
在集成化技术快速发展的前提条件下,相继出现了各类混合集成和单片集成式压力传感器,大部分已经推广上市。
搞清楚气压的定义是设计电子气压计的首要条件。
气压是作用在单位面积上的大气压力,即等于单位面积上向上延伸到大气上界的垂直空气柱的重量。
气压以百帕(hPa)为单位,取一位小数。
国际制单位:
帕斯卡,简称帕,符号是Pa。
常用单位:
标准大气压。
表示气压的单位,通常运用水银柱高度。
一个标注大气压=1013百帕(毫巴),1毫米水银(汞柱)柱高=4/3百帕(毫巴),1个标注大气压=760mm水银(汞柱)柱高。
气压产生的原因:
依据分子动理论可知,气体的压强是通过大量分子频繁碰撞容器壁面产生的。
大量分子频繁碰撞容器壁,对气壁的作用力是持续、均匀的。
压强大小就是这个压力与气壁面积的比值。
影响压强的因素:
海拔因素、大气温度、大气密度都会影响气压的大小。
一般随着高度升高按指数律递减。
大气压强的变化有日、月及年的差别。
在一天当中,气压有一个最高值、最低值,分别出现在9~10时和15~16时。
在一年当中,夏季气压低于冬季气压。
水银气压表、空盒气压表、气压计是气象观测中常用的测量气压的仪器。
意大利科学家托里拆利最先测出标准大气压。
1系统总体设计
1.1设计整体思想
本次系统设计将采用型号为MPX4105的气压传感器。
数字气压计的设计思路包含软件设计及硬件设计[2]。
软件设计包括C语言的编程与设计。
硬件设计包括传感器、单片机的技术设计及调试。
首先,我应当先对C语言进行全面的学习,学会编写程序。
对单片机的选择也需要有自己的一定认识。
其次,要将学习的结果运用到整体设计中去。
最后,得出原理图及实现设计的目标。
1.2系统总体框图
数字气压计的总体设计需要将大气中提供的非电信号数据进行处理。
信息采集时硬件设计的前提条件,数据再通过转换,在硬件元器件中进行处理。
最后,将相应的数据显示在数字气压计的屏幕上。
图1.2-1为系统总框图。
图1.2-1系统总框图
1.3元器件选择
1.3.1气压传感器
在气压传感器的选择上,应选择具有温度补偿能力这种特性的仪器。
具有这种特性的气压传感器可以简化电路,提高稳定性和抗干扰能力[3]。
在系统设计元器件中,我们选择的是型号为MPX4105的气压传感器。
主要原因是MPX4105的特点符合我们的设计材料选取要求。
4.85~5.35V是MPX4105的供电范围。
在此范围内供电会达到安全状态。
0~85℃是MPX4105的正常温度工作范围。
当在测量的过程中,温度在这个给定范围之内,测试值都会达到理想状态。
15~105kPa是MPX4105的测量范围。
大气压强在此范围之内都可以精准测量。
在试验过程中,我们需要一个微处理器接口,而MPX4105刚好符合我们需要的条件。
由于MPX4105这种传感芯片的特点,符合试验要求。
所以在综合多方面因素的考虑之后,我们将选用MPX4105作为本次试验的气压传感器。
基于MPX4105的气压传感器在气体压力控制方面能发挥很好的作用,输出的电子信号能力强,可供参考性强。
1.3.2电压/频率(V/F)转换器
在系统总体设计中选择电压/频率(V/F)转换器是至关重要的一个步骤。
电压/频率(V/F)转换器在试验中起着转换电路的作用。
所以,转换器的选择为数字气压计读数是否精准奠定基础。
电压/频率(V/F)转换器第一步是将电压的幅值输入到转换器中。
第二步是经过脉冲序列的转换,将电路进行转换得以实现。
为了实现A/D的转换功能,必须先测量出电压/频率转换电路得到的输出频率。
为了达到试验目的,在此次设计中,我们将采用集成芯片LM331。
LM331的特点符号试验精准要求。
它在电源电压达到低值4.0V仍然可以精准测量。
LM331这种集成芯片的另一个特点是温度补偿能力非常强,为测试精准度打下坚实的基础。
1.3.3三端稳压器
在本次试验设计中需要选择三端稳压器。
三端稳压器的作用是稳定这个系统的电源电压。
在整个系统中,系统所需的电源+5V供电。
而三端稳压器正好拥有这项特性。
解决了基于MPX1045的气压传感器、单片机提供+5V电压的不匹配难题。
本试验采用的是摩托罗拉公司的三端低电流线性稳压芯片MC78L05无需外部元器件的处理,热过载保护和内部短路电路限制是它的最优功能。
1.3.4单片机
单机片是试验设计的重要组成元器件。
也称单片微控制器。
在产品中运用上单片机技术,就可以使产品升级换代,从而达到“智能型”。
本设计采用型号为AT89C52的单片机。
AT89C52的单机片片内含有8K存储器。
这种存储器的特点是可以反复擦写,而且是一种只读程序的FEROM。
这种基于AT89C52的单机片功能十分强大,为数字气压计的测量提供强有力的条件。
1.3.5LED显示
LED是在平常生活听到的比较多,运用比较广泛的产品。
LED显示也是本试验设计的一个重要环节。
LED是由二极管构成的。
如果需要显示一个LED,就必须要由7个二极管并且是在发光条件构成的。
这样才能显示一个LED单元。
本设计中显示单元需要由5个LED组成。
2硬件电路设计
2.1气压传感和电压/频率(V/F)转换电路部分
在系统设计元器件的选择中,我们选择了基于MPX4105的气压传感器。
MPX4150的引脚分布如图2.1-1所示:
图2.1-1MPX4105引脚分布图
MPX4105的引脚分布图如上图2.1.1所示。
在图中很清楚的看到,此图有六个引脚组成。
1脚为电压输出脚,2脚为接地端,3脚为VCC,4脚、5脚及6脚这三脚都应用与内部连接。
在系统设计总体中我们已经选好电压/频率转换器,是型号为LM331的转换器。
这种转换器是一种高精度的转换芯片。
LM331转换器的引脚分布如图2.1-2所示:
图2.1-2ADC0832引脚分布图
LM331的引脚图如上图2.1.2所示。
1脚为电流输出脚,简称CO。
2脚比较复杂,是通过组合得来的,转换增益方面效果明显,简称REFC。
3脚为前述提到过的脉冲序列的输出脚,简称FO,在后章节的公式中以简称FO出现。
4脚和上述MPX4105的2脚作用相同,都是接地端。
5脚为组容式网络引脚。
6脚用来与7脚作相对应的比较。
芯片内部的电压会自动在6、7脚中作比较。
8脚在5~40V的输入电压内工作,简称VCC。
与前述MPX4105的3脚作用相同,单电源、双电源都可供电。
MC78L05三端稳压器:
本试验采用的是摩托罗拉公司的三端低电流线性稳压芯片MC78L05无需外部元器件的处理,有+5V的固定电压输出,热过载保护和内部短路电路限制是它的最优功能。
MC78L05三端稳压器的引脚分布如图2.1-3所示:
图2.1-3MC78L05引脚分布图
MC78L05的引脚图如上图2.1-3所示。
在图中很清楚的看到,此图有三个引脚组成。
分别是1脚,有+5V固定电压输出的脚,简称Vout。
2脚和LM331的4脚、MPX4105的2脚作用相同。
3脚简称Vin,是电压输入脚。
数字气压计的硬件电路组成,包括四个元器件。
它们是上述选择的元器件:
气压传感器、V/F转换电路、单片机电路和电源电路。
气压传感和电压/频率(V/F)转换电路的原理图如图2.1-4所示:
图2.1-4基于MPX4105的数字胎压计系统气压传感及V/F转换电路原理图
图2.1-4中,基于MPX4105的气压传感器用U3所代表,它的工作电压在前面章节已经得出。
电压输出脚Vin将输送电压到基于LM331电压/频率的转换电路中。
其中U2代表基于LM331电压/频率的转换电路。
+5V输入电压Vin和输出脉冲FO的频率fo的转换关系满足公式(2.1-1)。
Fo=Kvin(2.1-1)
其中,
K=
Rs=R2+R3(2.1-2)
电路中,6.8kΩ、0.01pf和100kΩ分别是Rt、Ct和RL的典型值。
通过公式2.1-2中Rs=R2+R3,可以看出R2是一个定值电阻,二者是通过串联组成。
在电路中,K的求解公式中,Rs是未知的。
若要求解K的值,必须先求解出Rs的值。
在本试验的计算中可以改变电阻R3的值,因为R3是一个可变电路。
通过改变R3的值调节Rs的阻值大小。
最终求解K值。
由于前面章节所述可以得到输入电压Vin的变化时根据大气气压变化而变化的。
当Vin随气压发生变化时,FO的值和K的值随即发生变化。
而在试验设计中V
的典型值时4.590V,由此得出Vin的变化幅度不会太大。
所以必须增大K值,才可以提高数字气压计测量的精准度。
2.2单片机电路部分
2.2.189C52单片机
基于89C52的单机片如下图2.2.1-1所示是由40条引脚构成。
可以将这些引脚分成三个部分。
这种分类方法是通过89C52单片机的功能用途来划分的。
图2.2.1-1单片机引脚图
89C52单机片的引脚图如上图2.2.1-1所示。
在图中很清楚的看到,此图有40个引脚组成。
其中最为主要的是18、19和40脚。
18脚是作用于89C52单片机的的内部,它在振荡器的反向输出端上作用连接。
19脚与18脚相同,也作用于89C52单片机的的内部,为89C52单片机的时钟控制提供相对应的信号。
在上图89C52单机片的引脚图2.2.1-1中可以发现,按功能将40个引脚划分为三个部分。
每个部分都存在一个或两个接触口。
分别是P0口、P1口、P2口及P3口。
P0口是一个原码输入口。
P0口输出原码的前提条件是必须先经过flash进行校验。
P1口是一个被作为第八位地址接收的入口。
当89C52单机片输出4TTL门电流,P1口的缓冲器都可以将其接收。
P2口也是作为缓冲器可以接受输出的4TTL门电流。
当P2口内部被拉高时,它将被改写,与P1口的作用一致,也可以接收第八位地址。
P3口是一个内部上拉的双向口,这种双向口简称为I/O口。
它是89C52单机片的特殊功能口。
它与P2口的情况相似,也是作为缓冲器可以接受输出的4TTL门电流。
当P3口内部被拉高时,它将被改写,与P1口的作用一致。
P3口是一种特殊的功能口。
P3口功能表如下表2.2.1-2所示:
表2.2.2-1P3口功能表
P3口各个位的第二功能
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
外部RAM写信号
P3.7
RD
外部RAM读信号
上述2.2.1-2表中P3口的P3.0为接收口,简称RESET。
这是一个复位输入接收口。
在P3口中存在8个引脚。
它们的功能与特点也各不相同。
例如P3.1的PSEN,它是一种选通信号。
它只选择外面程序存储器的有效值。
当PSEN信号不出现在P3.1口处时,说明此值为无效值。
第31引脚简称VPP,在flash编程区间,此引脚也可试用于施加12V变成电源的引脚。
同时,它可以一直保持低电平的状态。
第30引脚简称ALE/PROG,它可以将输出电平的地址的低位字节存储下来。
应用于编程过程中。
此引脚的作用是输入脉冲FO。
89C52单片机设计思路图如2.2.1-3所示:
图2.2.1-389C52设计思路
电路原理图的制作(附录一):
在总设计方案拟定完成,元器件选择完成及硬件电路设计完成之后,我们可以进行电路原理图的设计。
电路原理图的设计步骤总共分为七个步骤。
第一个步骤是设计原理图的环境。
主要是设计原理图的工作环境。
图纸的大小设定,模板的设计都为电路原理图的设计打下基础。
第二个步骤是对前面章节选好的元器件进行放置。
在图纸上合理的放置好这些已经选好的元器件也是一件不容易的事情。
第三个步骤是原理图的布线工作。
第四个步骤是对已经放置好的元器件进行属性的编辑。
第五个步骤是检查设计制作好的原理图。
看看各个元器件的连接是否合理。
作出相应的报告,查缺补漏。
第六个步骤是生成网络表。
第七个步骤是将原理图进行排版打印。
此电路原理图在附录一中显示。
印制电路板(PCB)制作(附录二):
印制电路板的设计与制作是非常复杂而繁琐的过程。
制作它需要做充分的准备。
完成整个印制电路板的设计需要五个步骤。
第一步是检查电气,设计出印制电路板的原理图。
网络表的生成是第一步的关键。
第二步电路板的层数、尺寸进行确定。
第三步导入第一步的网络表。
第四步是制作并完成整个印制电路板,分配好各个元器件在电路板上的位置。
3软件设计
3.1软件开发C语言介绍
C语言是本设计中使用的编程语言。
在当今单片机的开发过程中,C语言以其方便、灵活、逻辑性强、易于维护及可移植性好等强有利的优势,占据着单片机开发的主要地位。
在C语言环境下,只需要关心程序的逻辑关系,编译器将完成细节工作。
这位快速开发单片机提供了很好的条件,也缩短了开发单片机的工作量。
C语言编译器提供嵌入式汇编与汇编互调用和汇编级的代码查看等功能,从而解决了单片机的实现细节问题。
在这里主要介绍一下C语言编程与汇编语言编程相比的优势[4]。
C语言编程与汇编语言编程相比的优势:
编程调试灵活方便。
原因在于它是一门高级语言。
高级语言的特点是编程方式灵活。
同时,当前所有的单机片都有相应的C语言级别的仿真调试系统,使得它的调试十分方便。
生产代码的编译效率高。
在较为复杂的单片机系统中,C语言开发更具有明显优势。
就目前而言,较好的C语言编辑系统的编译效率已经基本达到中高级程序人员的开发水平。
完全化模块化。
函数是C语言的基本构成单位,其本身就是模块化的开发方式。
程序的模块化可以最大程度实现资源共享,有利于多人协作,进行大系统项目的开发。
便于项目维护管理。
C语言开发的代码便于开发小组计划项目、灵活管理、分工合作以及后期维护。
基本上可以杜绝因开发人员变化而给项目进度、后期维护或升级所带来的影响,从而保证了整个系统的高品质[5]。
3.2运用频率计算出气压值
信号的变换步骤有如下两步:
第一步,基于型号MPX4105的气压传感器,将待测气压转换成为电压输出。
输出电压VOUT和大气压P的关系如下:
VOUT=VCC
(0.01P-0.09)(3.2-1)
这里VCC为+5V,因此可得:
VOUT=5
(0.01P-0.09)(3.2-2)
第二步,基于型号MPX4105的气压传感器的输出电压,将VOUT这种输出电压作为Vin这种输入电压。
V/F转换电路,得到对应的频率fo的脉冲序列FO。
Vin和FO的这种对应关系如上一节的式(3.2-1)所示。
综合式(3.2-1)和式(3.2-2),可得:
P=
=
+9(3.2-3)
注:
VOUT=Vin
式(3.2-3)中,Hz是fo的单位,kPa是压强(P)的单位,V/F是K的转换增益。
在本次试验设计中K的取值我们将定为2000。
P是通过上述公式(3.2-3)编程计算得到的气压值。
3.3基于单片机设计的程序流程图
本试验的程序流程如图3.3-1所示:
图3.3-1单片机实现数字气压计的程序流程图
4系统调试与仿真
4.1C语言软件开发系统
在本次试验设计中,系统调试采用C语言软件。
KEIL-C51是一款兼容单机片C语言软件发开系统的软件。
由于在本设计中运用到了KEIL-C软件,所以介绍一下KEIL-C的知识。
KEIL-C51标准C编译器提供了C语言环境,同时它还具备汇编代码高效性、快速性特点,并据以保留。
随着编译器功能的不断增强,在日常生活中我们可以更直接的接近CPU本身以及它的延伸推广产品。
UVision2的集成开发环境中已经完全融入了C51系列兼容单片机C语言开发系统。
编译器,汇编器。
实时操作系统,项目管理器,调试器是这个集成开发环境包含的内容。
uVision2IDE为它们提供单一而灵活的开发环境。
目前最高效、灵活的开发平台是C51V7版本。
它支持的物品有:
8051的衍生推广的所有产品,所有兼