数字压力传感器设计.docx
- 文档编号:9271043
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:16
- 大小:366.13KB
数字压力传感器设计.docx
《数字压力传感器设计.docx》由会员分享,可在线阅读,更多相关《数字压力传感器设计.docx(16页珍藏版)》请在冰豆网上搜索。
数字压力传感器设计
课程论文
数字压力传感器设计
学院传媒技术
专业电子信息工程
班级09电子信息工程
姓名
学号
指导教师
摘要
数字压力传感器以单片机为主要部件,利用全桥测量原理,通过对电路输出电压和标准压强的线性关系,建立具体的数学模型,将电压量纲(V)改为压力纲(N),即可以测出一定范围内的压力值。
其中测量电路中最主要的元器件就是电阻应变式传感器。
电阻应变式传感器是传感器中应用最多的一种,本设计采用惠斯通电桥,使系统产生的误差更小,输出的数据更精确。
而运算大电路的作用就是把传感器输出的微弱的模拟信号进行一定倍数的放大,以满足A/D转换器对输入信号电平的要求。
ADC0809的A/D转换作用是把模拟信号转变成数字信号,进行模数转换,然后把数字信号输送到显示电路中去,最后由显示电路,由八段数码管显示出测量结果。
关键词:
单片机;全桥测量原理;电阻应变式传感器;八段数码管
目录
绪论1
一、硬件部分基本模块介绍1
(一)基本工作原理框图1
(二)基本模块介绍1
1.传感器桥路模块1
2.A/D转换器模块2
3.数码显示管模块3
4.8051芯片介绍5
二、软件部分及其介绍6
(一)数据处理子程序的设计6
1.系数转换6
2.数值转换6
(二)数据采集子程序的设计7
(三)显示子程序的设计7
(四)程序清单8
参考文献11
绪论
本次设计要研究压力传感器电路的工作原理和弱信号传感电路,熟悉A/D变换电路的工作原理,利用实验板上提供的压力传感电路,完成压力的采样和显示。
同时根据所选试件的要求,所测压力的范围为0-80N,精度为0.1N。
一、硬件部分基本模块介绍
(一)基本工作原理框图
(二)基本模块介绍
主要由四个部分组成,传感器桥路模块,A/D转换器模块,数码管显示模块,8051芯片模块。
1.传感器桥路模块
传感器电路原理图如图一所示
图2传感器电路原理图
压力传感器的工作原理,本质上是惠斯通电桥,这里采用的是最常见的电阻应变片式的压力传感器。
它得到广泛应用的原因是温度特性好,减小温度变化带来的误差。
膜片上的压力使得电桥不平衡,从而产生一个差动的输出信号,这种结构的基本特性之一是它的差动输出电压U与偏置电压成正比关系,这种关系隐含压力测量精度直接决定偏置电源的容限值,当四个桥臂电阻达到相应的关系时,电桥输出为零,或则就有电压输出同时,它也能提供一种温度补偿最通用的方法。
首先,
给出一定值,15V,由于这里电容主要起滤除交流信号的作用,对分压作用影响不大,可以忽略,从而5点的电压近似为
=3V,根据虚短,7点电压也为3V。
然后经过电桥,由于是单臂桥路变化,所以经过电桥以后,
U=
,应变片电阻通常取值有100
,120
,160
,其中以120
最为常见,这里取
。
再经过放大电路的放大作用,放大倍数为
,最终结果为
应变片应变为
,这里根据所选材料取S为
,
在
—5V变化,把5V最大值代入得到F的最大值为80N,所以量程为0-80N。
2.A/D转换器模块
实验仪上有一个0~5V的可调电位器,将可变电压输出端接入A/D转换电路的输入端,通过CPU软件处理,读进A/D转换值,再将转换值送数码管显示。
我们可以调节电位器,使之输出不同电压值,通过数码管的显示,检验A/D转换正确与否。
A/D转换器大致有三类:
一是双积分A/D转换器,优点是精度高,抗干扰性好;价格便宜,但速度慢;二是逐次逼近A/D转换器,精度,速度,价格适中;三是并行A/D转换器,速度快,价格也昂贵。
实验用的ADC0809属第二类,是八位A/D转换器。
每采集一次一般需100us。
本程序是用延时查询方式读入A/D转换结果,也可以用中断方式读入结果,在中断方式下,A/D转换结束后会自动产生EOC信号,将其与CPU的外部中断相接,也可以得到实验结果。
表1A/D转换器接线表
连线
连接孔1
连接孔2
1
IN0
压力传感器输出
2
AD_CS
CS2
图3A/D转换器原理图
A/D转换器的结构如图所示,外部只有四个引脚可以连线,IN0,IN1,EOC,A/D_CS。
AD0-AD7为八位数字量输出端,IN0-IN7为八位模拟信号输入端,A0、A1、A2与ALE控制八路模拟通道的交换,分别与三根地址线与数据线相连,三个编码对应8个通道口地址,AD0809虽然有八路模拟通道可以输入八路模拟信号,但是每个瞬间只能转换一路,各路之间的切换由软件变换通道地址实现,这里采用IN0为输入通道,由压力传感器的输出端直接与其相连作为输入信号。
AD0809的工作过程如下:
首先用指令选择0809的一个模拟输入通道,当执行MOVX@DPTR,A时,产生一个启动信号给START引脚送入脉冲,开始对选中通道转换。
当转换结束后发出结束信号,置EOC引脚信号为高电平,该信号可以作为中断申请信号,当读允许信号到,OE端有高电平,则可以读出转换的数字量,利用MOVXA,@DPTR把该通道转换结果读到累加器A中。
转换电压为0—5V,调节桥路中的电位器,使其输出电压为0—5V,可以在较小范围内波动,当满量程输出时对应八个1的输出,由于前边计算的电压变化和电阻变化成正比关系,而且电阻变化和应变成正比,进而得出的压力和电压是成正比的。
传感器桥路输出的电压经过比例变换后转换成二进制码的形式送入P0口。
3.数码显示管模块
LED显示电路如图和连线表如下
图4LED及键盘原理图
表2LED显示接线表
连线
连接孔1
连接孔2
1
KEY/LED_CS
CS0
用6位8段码LED显示电路,只要按地址输出相应数据,就可以实现对显示器的控制。
显示共有6位,用动态方式显示。
8位段码、6位位码是由两片74LS374输出。
位码经MC1413或ULN2003倒相驱动后,选择相应显示位。
本实验仪中8位段码输出地址为0X004H,位码输出地址为0X002H。
此处X是由KEY/LEDCS决定,参见地址译码。
做键盘和LED实验时,需将KEY/LEDCS接到相应的地址译码上。
以便用相应的地址来访问。
例如,将KEY/LEDCS接到CS0上,则段码地址为08004H,位码地址为08002H八段数码管的字型显示表如下:
表3数码管显示字形表
显示字形
dp
g
f
e
d
c
b
a
段码
0
0
1
1
1
1
1
1
1
3FH
1
0
0
0
0
0
1
1
0
06H
2
0
1
0
1
1
0
1
1
5BH
3
0
1
0
0
1
1
1
1
4HF
4
0
1
1
0
0
1
1
0
66H
5
0
1
1
0
1
1
0
1
6DH
6
0
1
1
1
1
1
0
1
7DH
7
0
0
0
0
0
1
1
1
07H
8
0
1
1
1
1
1
1
1
7FH
9
0
1
1
0
1
1
1
1
6FH
A
0
1
1
1
0
1
1
1
77H
B
0
1
1
1
1
1
0
0
7CH
C
0
0
1
1
1
0
0
1
39H
D
0
1
0
1
1
1
1
0
5EH
E
0
1
1
1
1
0
0
1
79H
F
0
1
1
1
0
0
0
1
71H
显示过程如下:
经过单片机P0输出的八位二进制码,变换成BCD码,在数码管上显示,经过段选信号和位选信号的控制,最后在相应数码管上显示出相应的压力值。
4.8051芯片介绍
本设计采用8051单片机,其管脚图如下图所示。
图58051管脚图
其管脚功能如下:
1.电源
(1)VCC-芯片电源,接+5V;
(2)VSS-接地端;
2.时钟
XTAL1、XTAL2-晶体振荡电路反相输入端和输出端。
3.控制线(4根)
(1)ALE/PROG:
地址锁存允许/片内EPROM编程脉冲。
①ALE功能:
用来锁存P0口送出的低8位地址。
②PROG功能:
片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。
(2)PSEN:
外ROM读选通信号。
(3)RST/VPD:
复位/备用电源。
①RST(Reset)功能:
复位信号输入端。
②VPD功能:
在Vcc掉电情况下,接备用电源。
(4)EA/Vpp:
内外ROM选择/片内EPROM编程电源。
①EA功能:
内外ROM选择端。
②Vpp功能:
片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。
4.I/O线
80C51共有4个8位并行I/O端口:
P0、P1、P2、P3口,共32个引脚。
P3口还有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。
二、软件部分及其介绍
(一)数据处理子程序的设计
数据处理子程序是整个程序的核心。
主要用来调整输入值系数,使输出满足量程要求。
另外完成A/D的采样结果从十六进制数向十进制数形式转化。
1.系数转换
在IN0输入的数最大为5V,要求压力80N对应的是5V,为十六进制向十进制转换方便,将系数进行一定倍数的变换,并用小数点位置的变化体现这一过程。
2.数值转换
数制之间的转换:
在二进制数制中,每向左移一位表示数乘二倍。
要求压力80N对应的是5V,而压力与电压的变换是线性关系,对应AD转换器的输出为八个1,当有一定的压力值输入时,对应这个关系转化成相应的二进制代码送入P0口。
然后再反过来应用这个变化关系,经最终得到的数值进行二进制到BCD码转化,然后逐位在LED数码管上显示。
(二)数据采集子程序的设计
数据采集用A/D0809芯片来完成,主要分为启动、读取数据、延时等待转换结束、读出转换结果、存入指定内存单元、继续转换(退出)几个步骤。
ADC0809初始化后,就具有了将某一通道输入的0~5模拟信号转换成对应的数字量00H—FFH,然后再存入存储器的指定单元中。
在控制方面有所区别。
可以采用程序查询方式,延时等待方式和中断方式。
图6A/D转换流程图
(三)显示子程序的设计
显示子程序是字符显示,首先调用事先编好数码管显示子程序。
初始化命令,然后输出写显示命令。
在显示过程中一定要调用延时子程序。
当输入通道采集了一个新的过程参数,当有压力信号输入时,调用显示子程序在数码管上显示。
图7显示部分流程图
(四)程序清单
AD0809equ0a000h;AD0809片选
lOWFequ0
HIGHFequ80
OUTBITequ08002h;位控制口
OUTSEGequ08004h;段控制口
LEDBufequ60h;显示缓冲
Numequ70h;显示的数据
DelayTequ75h;
ADResultequ76h;A/D转换结果
org0000h
ljmpStart
AD0809Read:
;读AD口子程序
movdptr,#AD0809
mova,#0
movx@dptr,a;起动A/D
mova,#40h
djnzacc,$;延时>100us
movxa,@dptr;读入结果
movADResult,a
ret
LEDMAP:
;八段管显示码
db3fh,06h,5bh,4fh,66h,6dh,7dh,07h
db7fh,6fh,77h,7ch,39h,5eh,79h,71h
Delay:
;延时子程序
movr7,#0
DelayLoop:
djnzr7,DelayLoop
djnzacc,DelayLoop
ret
SearchLedMap:
;查表子程序
movdptr,#LEDMAP
movca,@a+dptr
ret
DisplayLED:
movr0,#LEDBuf
movr1,#3;共3个八段管
movr2,#00001000b;从左边第三个开始显示
Loop:
movdptr,#OUTBIT
mova,#0
movx@dptr,a;关所有八段管
mova,@r0
movdptr,#OUTSEG
movx@dptr,a
movdptr,#OUTBIT
mova,r2
movx@dptr,a;显示一位八段管
mova,#01h
calldelay
mova,r2;显示下一位
rra
movr2,a
incr0
djnzr1,Loop
movdptr,#OUTBIT
mova,#0
movx@dptr,a;关所有八段管
ret
Start:
;主程序
nop
callAD0809Read;调用读AD口子程序
mova,ADResult
movb,#(HIGHF-LOWF)
mulab
pusha
mova,b
movb,#0ah
divab
callSearchLedMap;调用显示子程序
movledbuf+0,a;显示十位数
mova,b
callSearchLedMap;调用显示子程序
adda,#80h
movledbuf+1,a;显示个位数及小数点
popa
movb,#0ah
mulab
mova,b
callsearchledmap;调用显示子程序
movledbuf+2,a;显示小数位
movdelayT,#80H
DisplayAgain:
callDisplayLED
djnzDelayT,DisplayAgain
nop
sjmpStart
end
参考文献
[1]张淑清.单片机微型计算机接口技术及其应用.国防工业出版社
[2]张淑清.单片机原理及应用技术.国防工业出版社
[3]单片机应用技术汇
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字 压力传感器 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)