压力测试系统课程设计.docx
《压力测试系统课程设计.docx》由会员分享,可在线阅读,更多相关《压力测试系统课程设计.docx(25页珍藏版)》请在冰豆网上搜索。
![压力测试系统课程设计.docx](https://file1.bdocx.com/fileroot1/2023-2/3/ab9de531-ac85-42bc-80b7-6a4238384588/ab9de531-ac85-42bc-80b7-6a42383845881.gif)
压力测试系统课程设计
摘要·····························································2
第一章设计背景
1.1压力测试系统的相关背景······································3
1.2总体设计方案论证············································3
1.2.1压力测试系统设计框图······································3
1.2.2压力测试系统设计框图分析··································3
1.2.3总体设计方案分析··········································4
第二章硬件设计
2.1AT89C51单片机简介··········································5
2.1.1主要特性··················································5
2.1.2管脚说明··················································6
2.1.3AT89C51单片机在电路图中连接······························7
2.251单片机最小系统的设计·····································8
2.2.1单片机组成················································8
2.2.251单片机最小系统电路介绍·································8
2.3压力传感器··················································9
2.3.1压力传感器的选择··········································9
2.3.2压力传感器工作原理········································9
2.3.3电阻应变片················································9
2.4模数转换电路的设计·········································10
2.4.1模数转换·················································10
2.4.2ADC0808芯片··············································10
2.5接口电路的设计·············································13
2.6驱动与显示电路·············································14
2.6.174LS245的原理············································14
2.6.274LS245驱动电路··········································15
2.7电源电路的设计·············································16
2.8原理图·····················································16
第三章软件设计
3.1总体流程图·················································17
3.2子程序·····················································17
3.2.1A/D转换子程序···········································17
3.2.2显示子程序···············································17
第四章调试及仿真
4.1程序代码···················································18
4.2仿真结果···················································20
4.3数据分析···················································20
附录一课程设计总结···········································21
附录二参考文献···············································22
摘要
此次设计是基于单片机的压力检测系统,选择的单片机是基于AT89C51单片机的测量与显示,将压力经过压力传感器转变为电信号,经过放大器放大,然后进入A/D转换器将模拟量转换为数字量显示,我们所采样的A/D转换器为ADC0808。
第一章设计背景
1.1压力测试系统的相关背景
近年来,随着微型计算机的发展,传感器在人们的工作和日常生活中应用越来越普遍。
压力是工业生产过程中的重要参数之一。
压力的检测或控制是保证生产和设备安全运行必不可少的条件。
实现智能化压力检测系统对工业过程的控制具有非常重要的意义。
压力传感器是工业实践、仪器仪表控制中最为常用的一种传感器,并广泛应用于各种工业自控环境,涉及水利水电、铁路交通、生产自控、航空航天、军工、石化、油井、电力、船舶、机床、管道等众多行业。
压力测量对实时监测和安全生产具有重要的意义。
在工业生产中,为了高效、安全生产,必须有效控制生产过程中的诸如压力、流量、温度等主要参数。
由于压力控制在生产过程中起着决定性的安全作用,因此有必要准确测量压力。
通过压力传感器将需要测量的位置的压力信号转化为电信号,再经过运算放大器进行信号放大,送至8位A/D转换器,然后将模拟信号转换成单片机可以识别的数字信号,再经单片机转换成LED显示器可以识别的信息,最后显示输出。
1.2总体设计方案论证
1.2.1压力测试系统设计框图
图1-1压力测试系统原理方框图
1.2.2压力测试系统设计框图分析
电路主要分成两个模块:
A/D转换模块和显示模块,我们选用的A/D转换器是ADC0808,单片机为AT89C51,显示为4位数码管显示。
根据硬件电路编程,调试出来并显示结果。
1.2.3总体设计方案分析
本次设计是基于AT89C51单片机的测量与显示。
电路采用ADC0808模数转换电路,ADC0808是CMOS工艺,采用逐次逼近法的8位A/D转换芯片,片内有带锁存功能的8路模拟电子开关,先用ADC0808的转换器对各路电压值进行采样,然后将模拟信号转换成单片机可以识别的数字信号,再经单片机转换成LED显示器可以识别的信息,最后显示输出。
本次设计是以单片机组成的压力测量,系统中必须有前向通道作为电信号的输入通道,用来采集输入信息。
压力的测量,需要传感器,利用传感器将压力转换成电信号后,再经放大并经A/D转换为数字量后才能由计算机进行有效处理。
然后用LED进行显示。
本设计的最终结果是,将软件下载到硬件上调试出来了需要显示的数据,当输入的模拟信号发生变化的时候,通过A/D转换后,LED将显示不同的数值。
第二章硬件设计
2.1AT89C51单片机简介
AT89C51是一种带4K字节闪烁可编程可擦除只读存储(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。
如图2-1:
图2-1AT89C51外部引脚图
2.1.1主要特性
·8031CPU与MCS-51兼容·全静态工作:
0Hz-24KHz
·4K字节可编程FLASH存储器(寿命:
1000写/擦循环)
·三级程序存储器保密锁定·128*8位内部RAM
·32条可编程I/O线·两个16位定时器/计数器
·6个中断源·可编程串行通道
·低功耗的闲置和掉电模式·片内振荡器和时钟电路
2.1.2管脚说明
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口管脚备选功能
P3.0RXD(串行输入口)
P3.1TXD(串行输出口)
P3.2/INT0(外部中断0)
P3.3/INT1(外部中断1)
P3.4T0(记时器0外部输入)
P3.5T1(记时器1外部输入)
P3.6/WR(外部数据存储器写选通)
P3.7/RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
2.1.3AT89C51单片机在电路图中连接
连接如下图2-2所示:
图2-2AT89C51单片机在电路图中的连接
2.251单片机最小系统的设计
2.2.1单片机组成
单片机的最小系统由RAM,ROM,晶振电路,复位电路,电源,地线组成。
电路设计如图2-3所示:
图2-3单片机最小系统
随着电子技术的发展,单片机的功能将更加完善,因而单片机的应用将更加普及。
它们将在智能化仪器、家电产品、工业过程控制等方面得到更广泛的应用。
单片机将是智能化仪器和中、小型控制系统中应用最多的有种微型计算机。
2.2.251单片机最小系统电路介绍
2.2.2.151单片机最小系统复位电路的极性电容C1的大小直接影响单片机的复位时间,一般采用10~30uF,51单片机最小系统容值越大需要的复位时间越短。
2.2.2.251单片机最小系统晶振Y1也可以采用6MHz或者11.0592MHz,在正常工作的情况下可以采用更高频率的晶振,51单片机最小系统晶振的振荡频率直接影响单片机的处理速度,频率越大处理速度越快。
2.2.2.351单片机最小系统起振电容C2、C3一般采用15~33pF,并且电容离晶振越近越好,晶振离单片机越近越好4.P0口为开漏输出,作为输出口时需加上拉电阻,阻值一般为10k。
2.2.2.4设置为定时器模式时,加1计数器是对内部机器周期计数(1个机器周期等于12个振荡周期,即计数频率为晶振频率的1/12)。
计数值N乘以机器周期Tcy就是定时时间t。
2.2.2.5设置为计数器模式时,外部事件计数脉冲由T0或T1引脚输入到计数器。
在每个机器周期的S5P2期间采样T0、T1引脚电平。
当某周期采样到一高电平输入,而下一周期又采样到一低电平时,则计数器加1,更新的计数值在下一个机器周期的S3P1期间装入计数器。
由于检测一个从1到0的下降沿需要2个机器周期,因此要求被采样的电平至少要维持一个机器周期。
当晶振频率为12MHz时,最高计数频率不超过1/2MHz,即计数脉冲的周期要大于2ms。
2.3压力传感器
2.3.1压力传感器的选择
压力传感器是将压力转换为电信号输出的传感器。
通常把压力测量仪表中的电测式仪表称为压力传感器。
压力传感器一般由弹性敏感元件和位移敏感元件(或应变计)组成。
弹性敏感元件的作用是使被测压力作用于某个面积上并转换为位移或应变,然后由位移敏感元件或应变计转换为与压力成一定关系的电信号。
有时把这两种元件的功能集于一体。
压力传感器广泛应用于各种工业自控环境,涉及水利水电、铁路交通、智能建筑、生产自控、航空航天、军工、石化、油井、电力、船舶、机床、管道等众多行业。
力学传感器的种类繁多,但常用的压力传感器有电阻应变片压力传感器、半导体应变片压力传感器、压阻式压力传感器、电感式压力传感器、电容式压力传感器、谐振式压力传感器及电容式加速度传感器,光纤压力传感器等。
应用最为广泛的是压阻式压力传感器,它具有极低的价格和较高的精度以及较好的线性特性。
压力传感器是使用最为广泛的一种传感器。
传统的压力传感器以机械结构型的器件为主,以弹性元件的形变指示压力,但这种结构尺寸大、质量轻,不能提供电学输出。
随着半导体技术的发展,半导体压力传感器也应运而生。
其特点是体积小、质量轻、准确度高、温度特性好。
特别是随着MEMS技术的发展,半导体传感器向着微型化发展,而且其功耗小、可靠性高。
2.3.2压力传感器工作原理
压阻式应变压力传感器的主要由电阻应变片按照惠斯通电桥原理组成。
2.3.3电阻应变片
一种将被测件上的应变变化转换成为一种电信号的敏感器件。
它是压阻式应变传感器的主要组成部分之一。
电阻应变片应用最多的是金属电阻应变片和半导体应变片两种。
金属电阻应变片又有丝状应变片和金属箔状应变片两种。
通常是将应变片通过特殊的粘和剂紧密的粘合在产生力学应变基体上,当基体受力发生应力变化时,电阻应变片也一起产生形变,
使应变片的阻值发生改变,从而使加在电阻上的电压发生变化。
这种应变片在受力时产生的阻值变化通常较小,一般这种应变片都组成应变电桥,并通过后续的仪表放大器进行放大,再传输给处理电路(通常是A/D转换和CPU)显示或执行机构。
金属电阻应变片的内部结构如图2-4:
图2-4金属电阻应变丝的结构
如图所示,是电阻应变片的结构示意图,它由基体材料、金属应变丝或应变箔、绝缘保护片和引出线等部分组成。
根据不同的用途,电阻应变片的阻值可以由设计者设计,但电阻的取值范围应注意:
阻值太小,所需的驱动电流太大,同时应变片的发热致使本身的温度过高,不同的环境中使用,使应变片的阻值变化太大,输出零点漂移明显,调零电路过于复杂。
而电阻太大,阻抗太高,抗外界的电磁干扰能力较差。
一般均为几十欧至几十千欧左右。
2.4模数转换电路的设计
2.4.1模数转换
模拟量输入通道的任务是将模拟量转换成数字量。
能够完成这一任务的器件称之为模数转换器,简称A/D转换器。
本次设计的中A/D转换器的任务是将放大器输出的模拟信号转换位数字量进行输出。
A/D转换电路的核心元件是ADC0808芯片
2.4.2ADC0808芯片
ADC0808和ADC0809除精度略有差别外(前者精度为8位、后者精度为7位),其余各方面完全相同。
它们都是CMOS器件,不仅包括一个8位的逐次逼近型的ADC部分,而且还提供一个8通道的模拟多路开关和通道寻址逻辑,因而有理由把它作为简单的“数据采集系统”。
利用它可直接输入8个单端的模拟信号分时进行A/D转换,在多点巡回检测和过程控制、运动控制中应用十分广泛。
1)主要技术指标和特性
(1)分辨率:
8位。
(2)总的不可调误差:
ADC0808为±1/2LSB,ADC0809为±1LSB。
(3)转换时间:
取决于芯片时钟频率,如CLK=500kHz时,TCONV=128μs。
(4)单一电源:
+5V。
(5)模拟输入电压范围:
单极性0~5V;双极性±5V,±10V(需外加一定电路)。
(6)具有可控三态输出缓存器。
(7)启动转换控制为脉冲式(正脉冲),上升沿使所有内部寄存器清零,下降沿使A/D转换开始。
(8)使用时不需进行零点和满刻度调节。
2)内部结构和外部引脚
ADC0808/0809的内部结构和外部引脚分别如图2-5和图2-6所示。
内部各部分的作用和工作原理在内部结构图中已一目了然,在此就不再赘述,下面仅对各引脚定义分述如下:
图2-5ADC0808/0809内部结构框图
(1)IN0~IN7——8路模拟输入,通过3根地址译码线ADDA、ADDB、ADDC来选通一路。
(2)D7~D0——A/D转换后的数据输出端,为三态可控输出,故可直接和微处理器数据线连接。
8位排列顺序是D7为最高位,D0为最低位。
(3)ADDA、ADDB、ADDC——模拟通道选择地址信号,ADDA为低位,ADDC为高位。
地址信号与选中通道对应关系如表1所示。
(4)VR(+)、VR(-)——正、负参考电压输入端,用于提供片内DAC电阻网络的基准电压。
在单极性输入时,VR(+)=5V,VR(-)=0V;双极性输入时,VR(+)、VR(-)分别接正、负极性的参考电压。
表1地址信号与选中通道的关系
地址
选中通道
ADDC
ADDB
ADDA
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
IN0
IN1
IN2
IN3
IN4
IN5
IN6
IN7
图2-6ADC0808/0809外部引脚图
(5)ALE——地址锁存允许信号,高电平有效。
当此信号有效时,A、B、C三位地址信号被锁存,译码选通对应模拟通道。
在使用时,该信号常和START信号连在一起,以便同时锁存通道地址和启动A/D转换。
(6)START——A/D转换启动信号,正脉冲有效。
加于该端的脉冲的上升沿使逐次逼近寄存器清零,下降沿开始A/D转换。
如正在进行转换时又接到新的启动脉冲,则原来的转换进程被中止,重新从头开始转换。
(7)EOC——转换结束信号,高电平有效。
该信号在A/D转换过程中为低电平,其余时间为高电平。
该信号可作为被CPU查询的状态信号,也可作为对CPU的中断请求信号。
在需要对某个模拟量不断采样、转换的情况下,EOC也可作为启动信号反馈接到START端,但在刚加电时需由外电路第一次启动。
(8)OE——输出允许信号,高电平有效。
当微处理器送出该信号时,ADC0808/0809的输出三态门被打开,使转换结果通过数据总线被读走。
在中断工作方式下,该信号往往是CPU发出的中断请求响应信号。
3)工作时序与使用说明
ADC0808/0809的工作时序如图2-7所示。
当通道选择地址有效时,ALE信号一出现,地址便马上被锁存,这时转换启动信号紧随ALE之后(或与ALE同时)出现。
START的上升沿将逐次逼近寄存器SAR复位,在该上升沿之后的2μs加8个时钟周期内(不定),EOC信号将变低电平,以指示转换操作正在进行中,直到转换完成后EOC再变高电平。
微处理器收到变为高电平的EOC信号后,便立即送出OE信号,打开三态门,读取转换结果。
图2-7ADC0808/0809工作时序
模拟输入通道的选择可以相对于转换开始操作独立地进行(当然,不能在转换过程中进行),然而通常是把通道选择和启动转换结合起来完成(因为ADC0808/0809的时间特性允许这样做)。
这样可以用一条写指令既选择模拟通道又启动转换。
在与微机接口时,输入通道的选择可有两种方法,一种是通过地址总线选择,一种是通过数据总线选择。
如用EOC信号去产生中断请求,要特别注意EOC的变低相对于启动信号有2μs+8个时钟周期的延迟,要设法使它不致产生虚假的中断请求。
为此,最好利用EOC上升沿产生中断请求,而不是靠高电平产生中断请求
2.5接口电路的设计
ADC0808与AT89C51采用中断方式。
由于ADC0808片内有三态输出锁存器,因此可以直接与AT89C51接口。
这里将ADC0808作为一个外部扩展并行I/O口,采用先选法寻址。
由P3.0控制启动转换信号端(START),三位地址线加到ADC0808的ADDA、ADDB、ADDC端。
当启动ADC0808时,先送通道号地址到ADDA、ADDB和ADDC;锁存通道号并启动A/D转换。
A/D转换完毕,EOC端置1,然后使OE端有效,打开输出锁存器三态门,8位数据便读入到单片机中。
接口电路原理图2-8所示:
图2-8ADC0806接口电路原理图
2.6驱动与显示电路
2.6.174LS245的原理
74LS245为8路通向三态双向总线收发器,可双向传输数据。
16个三态门每两个三态门组成一路双向驱动。
驱动方向由
,DIR两个控制端控制,
控制端控制驱动器有效或高阻态,在
控制端有效(
=0)时,DIR控制端控制驱动器的驱动方向.即:
DIR=0信号由B→A;DIR=1信号由A→B传输。
在
=1时,A、B为高阻状态。
74LS245的管脚图如图2-9所示:
图2-974LS245引脚图
2.6.274LS245驱动电路
当数码管显示时,由于单片机的驱动能