整理基于单片机的距离量测设计.docx
- 文档编号:12709469
- 上传时间:2023-06-07
- 格式:DOCX
- 页数:18
- 大小:315.69KB
整理基于单片机的距离量测设计.docx
《整理基于单片机的距离量测设计.docx》由会员分享,可在线阅读,更多相关《整理基于单片机的距离量测设计.docx(18页珍藏版)》请在冰点文库上搜索。
整理基于单片机的距离量测设计
(1)前期准备工作。
包括明确评价对象和评价范围,组建评价组,收集国内外相关法律、法规、规章、标准、规范,收集并分析评价对象的基础资料、相关事故案例,对类比工程进行实地调查等内容。
(一)环境影响评价的概念
(4)环境保护验收。
通过安全预评价形成的安全预评价报告,作为项目前期报批或备案的文件之一,在向政府安全管理部门提供的同时,也提供给建设单位、设计单位、业主,作为项目最终设计的重要依据文件之一。
(2)规划编制机关在报送审批专项规划草案时,将环境影响报告书一并附送。
3.规划环境影响报告书的审查效力
三、安全预评价报告的基本内容
(2)辨识和分析评价对象可能存在的各种危险、有害因素,分析危险、有害因素发生作用的途径及其变化规律。
(4)预防或者减轻不良环境影响的对策和措施的合理性和有效性;
环境影响评价工程师课主持进行下列工作:
基于单片机的距离量测设计
光源发出的光线经过会聚透镜投射到被测物体表面,其漫反射光经成像在光电检测器件(PSD或CCD)上。
在传感器上成像光斑的中心位置由传感器与被测物体表面之间的距离决定。
光电检测器件输出的电信号与传感器上光斑的中心位置通过对光电检测器件输出信号进行运算处理就可获得传感器与被测物体表面之间的距离信息。
一、基于PSD的三角测距的基本原理
半导体激光器所发出的光束经透镜发射变成近似平行光束,照射在被测物上,被测物散射回来的光线通过接收透镜会聚到传感器并形成光斑。
在被测物体、散射光线、传感器与接收透镜的光轴所在的平面形成两个相似三角形,只要测出光斑在传感器上的位置,就可根据已知的参数得到距离的比值关系。
PSD具有位置分辨率高(PSD一般为几微米),响应速度快,器件小、噪声低、直接由光信号转换成为电流信号、外围电路简单等优点,所以采用它作为传感器件。
已接收透镜所在的光轴为测量距离:
光斑在O点以上,则ytanθ=d+CD,
光斑在O点以下,则ytanθ=d﹣CD
可得推导公式为:
y=fd/(ftanθ-δ)
(1)
δ为PSD的光斑到中心的距离,O点以上为正值,O点以下为负,y值为BC的距离。
所以只要求出δ的值就可将y值算出来。
根据PSD的原理有散射光入射时如图1:
C点是被测物体在PSD上产生的光斑。
设AC段的电阻值为Ra,BC段的电阻值为Rb,则光电流分为两路(分别通过Ra和)有电极AB流出。
其值分别为
I1和I2。
I1Ra=I2Rb
(2)
I0=I1+I2(3)
如果光敏面的表面电阻层具有理想的均匀性,则关于X’的距离公式:
R0(L/2-X')I1=R0(L/2+X’)I2
X’=L/2*(I2-I1)/(I2+I1)(4)
其中X’为光斑中心位置对零点的偏移,L为PSD两电极间距离。
二、系统实施方案
(一)系统组成模块
系统主要由以下几个模块构成,在需要测量时,给单片机发出信号,单片机启动激光器发射装置和A/D转换器。
(三)、电学部分的描述
电学部分主要由信号的转换、处理、运算、以及显示四个部分组成
由PSD出来的信号为两路电流信号,所以,需要两路的信号处理电路,参数方案如下:
(三)、设计要求
1、要求PSD输出的电流大小为微安级,经过I/V转换后的电压范围在(0.1~1V)范围内
2、电压放大电路
要求:
放大倍数范围为5~10
3、电压跟随电路:
由于ADC0809只转换单极性模拟输入电压,由于被转换的信号可能是双极性的模拟信号,则需增加极性转换电路,双极性模拟信号转换为单极性模拟信号,再送入ADC0809进行A/D转换
4、单片机数据处理
选用的单片机位AT89C51,一个按钮接在INT0端,设置INT0为边沿触发方式,当需要测量时,按下按钮向51提出中断,并启动激光器发射,10ms后,89C51启动0809进行A/D转换,当转换完毕,0809提出中断,51读取其数据,通过动态扫描法将数据显示在LED上。
5、程序流程图:
包括主程序流程图和中断子程序流程图
6、显示部分程序汇编编程程序
三、电路参数确定及芯片选择
1、I/V转换电路(放大器A1、A1′)
U01=﹣Rf1I1
设I1为1~10微安,当Rf1=100k时I/V转换后第电压范围为0.1~1V,同理得
U011′=﹣Rf2I2,得Rf1=Rf2=100k
2、放大部分取Av=5(反相放大器A2、A2′)
根据虚断和虚短的概念有:
Up≈Un,Ii=0可得:
U01=Un≈Up,U02=-UR22=-R22U01/R21
Av=-R22/R21=-5,
得R22/R21=5,取R22=50K,R21=10K
同理得R22′=50K,R21′=10K
3、
(1)同相加法器A3
由虚短UP31-Un31=0,虚断的概念得:
I33+I34=I35
得(U02-UP31)/R33+(U02′-UP31)/R34
=UP31/R35
(1/R33+1/R34+1/R35)UP31
=U02/R33+U02′/R34
UP31=RP(U02/R33+U02′/R34),
其中RP=(1/R33+1/R34+1/R35)
U031=UP31(1+R32/R31)
=RP(1+R32/R31)(U02/R33+U02′/R34)
=(R31+R32)/R31*R32/R32*RP*(U02/R33+U02′/R34)
=R32/(R31∥R32)*RP*(U02/R33+U02′/R34)
=R32*RP/RN*(U02/R33+U02′/R34),
其中RN=R31∥R32
当RN=RP,即1/R32+1/R31=1/R33+1/R34+1/R35时
U031=R32(U02/R33+U02′/R34)
所以当R32=R33=R34且1/R32+1/R31=1/R33+1/R34+1/R35时,
U031=U02+U02′
取R32=R33=R34=1K,
又1/R32+1/R31=1/R33+1/R34+1/R35,1/R31=1+1/R35
取R31=500,R35=1K
综上所述得R31=500,R32=R33=R34=R35=1K
(2)同相减法器A3′
根据虚断和虚短的概念有:
Up≈Un,Ii=0可得:
I31′=I34′,
即(U02-Un)/R31′=(Un–U032)/R34′
I32′=I33′,
即(U02′-Up)/R32′=Up/R33′
当R31′=R32′=R33′=R34′时,
U032=U02′-U02
取R31′=R32′=R33′=R34′=500
4、除法器(A4、A4′)
利用虚地的概念有:
U032/R41+U42/R42=0
由乘法器A的功能可得:
U42=kU031U041
由上两式可得:
U041=–R42/(kR41)*U032/U031
由反相放大器A4′得:
U042=-U041R42′/R41′,
当取R42′=R41′=10K时
U042=R42/(kR41)*U032/U031
当取PSD两电极间距离L=2毫米时,取k=1000,R42=R41=10K
综上所述得:
R42=R41=R42′=R41′=10K
5、电压跟随器A5
根据虚断和虚短的概念有:
Up5≈Un5,Ii=0可得:
R52(5-U042)/(R51+R52)+U042=Up5=U05
当R51=R52=10K时,
U05=(5+U042)/2,
当U042在-5V~5V之间变化时,
其输出U05范围在0V~5V
6、A/D转换部分
ADC的8个模拟量输入通道IN0~IN7,每个通道号占一个地址号,由通道选择线ADDA、ADDB、ADDC来决定。
由于A/D芯片在系统中相当于一个外围芯片,现取P2.7低电平有效作为ADC0809的片选信号,则8个通道IN0~IN7的地址号分别为7FF8H~7FFFH。
当片选信号与WR有效信号相配合,利用WR下降沿使START及ALE信号变高电平有效,来锁存地址信号。
在WR上升沿时刻,START信号由高电平变低电平启动A/D转换。
片选信号与单片机的读信号RD经一级或非门后产生正脉冲信号OE来控制读取转换数据。
ALE经过双稳态触发器进行二分频,产生CLK所需的时钟信号。
7、数据显示部分
图示为共阴极动态显示接口电路,在AT89C51内部数据存储器RAM的55H、56H、57H中存放待显示的三位数据,编程并行接口芯片8155的PB口作为LED的字形输出口,PA口作为LED的字位输出口,显示时从最右边的一位LED(即个位)开始点亮,用AT89C51的P2.6(地址总线A14)作为8155的片选信号,由接线可知8155的RAM地址为BE00H~BEFFH,I/O口的地址为BF00H~BF05H,8155的PA口扫描输出总是仅有一位为高电平,经过反向驱动器后三位LED中只有一位公共阴极为低电平,其他位为高电平,8155的PB口输出相应位(阴极为低)的显示数据段的数据,使某一位显示出一个字符,其他位为暗,依次地改变PA口输出为高电平的位,PB口输出对应的段数据,三个LED就显示出待显示的三位数。
四、程序流程图及数据显示子程序
(一)流程图
清除显示
置8155的PA口、PB口为输出方式
显示缓冲器指针初值
55H→R0
置扫描模式初值01H→R2
R2→8155PA口
取显示数据,查表转换为段数据→8155PB口
延迟5.151ms
显示缓冲器指针R0加1
(R2).2=1?
R2左移一位
返回
开始
Y
N
数据显示流程图
(二)显示部分程序汇编编程程序
1、二进制转换成十进制的子程序:
设y<256,且y值存放在缓存单元50H中,假定转换后的十进制数的个位存放在55H中,十位存放在56H中,百位存放在57H中,则二进制转换成十进制的子程序如下:
CONVERT:
MOVA,50H
MOVB,#64H
DIVAB
MOV57H,A;百位→57H
MOVA,#0AH
XCHA,B
DIVAB
MOV56H,A;十位→56H
MOV55H,B;个位→55H
RET
2、显示子程序
显示时从最右边的一位LED(即个位)开始点亮,由接线可知8155的RAM地址为BE00H~BEFFH,I/O口的地址为BF00H~BF05H,显示子程序如下:
REMVDSP:
MOVSP,#80H
MOVDPTR,#BF00H;清除显示部分
MOVA,#03H
MOVX@DPTR,A
MOVR2,#01H
REMVDSP1:
MOVDPTR,#BF01H
MOVX@DPTR,A
MOVDPTR,#BF10H
MOVA,#00H
MOVA,R2
JBACC.2,DISPLAY
RLA
MOVR2,A
AJMPREMVDSP1
DISPLAY:
MOVDPTR,#BF00H;数据显示部分
MOVA,#03H
MOVX@DPTR,A;置8155的PA口、PB口为输出方式
MOVR0,#55H;置显示缓冲器指针初值
MOVR3,#01H;置扫描模式初值
MOVA,R3
DISPLAY1:
MOVDPTR,#BF01H;扫描模式→8155PA口
MOVX@DPTR,A
MOVDPTR,#BF10H
MOVA,@R0;取显示数据
ADDA,#0DH;加偏移量
MOVCA,@A+PC;查取段码值
MOVX@DPTR,A;段码→8155PB口
ACALLDELAY;延时5.151ms
INCR0
MOVA,R3
JBACC.2,DISPLAY2;判三位LED是否显示完
RLA;扫描模式左移一位
MOVR3,A
AJMPDISPLAY1
DISPLAY2:
RET
LOOP:
DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,67H;段码表
DELAY:
MOVR4,#0AH;延时子程序(5.151ms)
DELAY1:
MOVR5,#0FFH
DELAY2:
DJNZR5,DELAY2
DJNZR4,DELAY1
RET
RET
五、设计小结
经过将近两个星期的课程设计,我学到了很多东西,也懂得了如何充分的利用图书馆的资料,同时也懂得如何将所学的知识运用到实际问题中,把逻辑算法,绘制流程图,和编写程序等一系列内容综合起来。
提高了自主学习能力。
在设计的过程中也发现了平时学习时不太注意的问题,对所学的知识有了进一步的了解。
这次课程设计中的原理图要用Protel来完成,经过这几天的学习我懂得了Protel的一些基本操作。
经过这次课程设计,我更加认识到理论知识与实际相结合的重要性,有些在理论上可以用的东西在实际中却不能得到理想的结果。
理论知识基础,只有把理论与实际相结合才能在实际过程中得到应运。
六、参考文献
《传感器》主编强锡富机械工业出版社
《智能仪器技术及其应用》主编方彦军化学工业出版社
《单片机原理及接口技术》主编陈雪丽化学工业出版社
《单片微型机》主编张友德复旦大学出版社
《数字电子技术基础》主编阎石高等教育出版社
《电子技术基础》模拟部分(第五版)主编康华光高等教育出版社
《模拟电子技术基础》(电类)主编罗桂娥中南大学出版社
《模拟电路实验》主编陈孝桢张丽敏南京大学出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 整理 基于 单片机 距离 设计