版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、个人收集整理勿做商业用途封面个人收集整理勿做商业用途作者: Pan Hongliang仅供个人学习基于 AT89S52 单片机的超声波测距设计摘要:超声波具有指向性强, 能量消耗缓慢, 传播距离较远等优点, 所以,在利用传感器技术和自动控制技术相结合的测距方案中, 超声波测距是目前应用最普遍的一种,它广泛应用于防盗、倒车雷达、水位测量、建筑施工工地以及一个人收集整理勿做商业用途些工业现场。本文介绍了一种基于DSI8B20 的 AT89S52 单片机超声波测距系统,阐述了 DS18B20 测温原理由温度可算出实际环境下的超声波速度,利用 AT98S52的计数器可以获得超声波在两探头之间的飞行时间
2、,已知超声波的传播速度和飞行时间可以获得两探头之间的距离。整个系统结构简单、 工作可靠,有良好的测量精度。关键词:AT89S52;DS18B20 ;控制;超声波速度;飞行时间;距离。一、超声波测距原理:在测距方面,按测量范围或测量精度可分很多种类。 但根据测量须传感器主要分为电测和光测, 电测精度相对较低, 对环境要求不是特别高; 光测精度在一定范围内可达纳米级, 但对环境要求很高; 而超声波测距主要足因为其结构简单容易集成且体积小,且能满足一定的精度而被广泛应用于工业中。目前测量距离一般都采用波在介质中的传播速度和时间关系进行测量。 常用的技术主要有激光测距、 微波雷达测距和超声波测距三种。
3、 超声波具有指向性强、能量消耗缓慢且在介质中传播的距离较远的优点, 因而经常用于距离的测量。超声波测距主要应用于建筑施工工地以及一些工业现场和移动机器人的研制上,可在潮湿高温,多尘等恶劣环境下工作。例如:液位、厚度、管道长度等场合。相比于其它定位技术而言,超声波定位技术成本低、精度高、操作简单、工作稳定可靠,非常适合于短距离测量定位。 AT89S52单片机为许多控制提供了高度灵活和低成本的解决办法。 充分利用它的片内资源, 即可在较少外围电路的情况下构成功能完善的超声波测距系统。本文介绍一种以 AT89S52单片机为核心的低成本、 高精度、LED数字显示超声波测距仪的硬件电路和软件设计方法。
4、实际使用证明该仪器工作稳定, 性能良好。超声波测距器系统设计框图如图所示:超声波接受单片机LED 显示控制器由单片机超AT89S51声波发送编程产生 40kHz 的方波,由 P1.0 口输出,再经过放大电(MCU )报警温度检测个人收集整理勿做商业用途路,驱动超声波发射探头发射超声波。发射出去的超声波经障碍物反射回来后,由超声波接收头接收到信号, 通过接收电路的检波放大、 积分整形及一系列处理 , 送至单片机。单片机利用声波的传播速度和发射脉冲到接收反射脉冲的时间间隔计算出障碍物的距离 , 并由单片机控制显示出来。该测距装置是由超声波传感器、单片机、发射 / 接收电路和 LED显示器组成。传感
5、器输入端与发射接收电路相连 , 接收电路输出端与单片机相连接 , 单片机的输出端与显示电路输入端相连接。其时序图如图:单片机在T0 时刻发射方波,同时启动定时器开始计时,当收到回波后,产生一负跳变到单片机中断口,单片机响应中断程序, 定时器停止计数。 计算时间差,即可得到超声波在媒介中传播的时间t ,由此便可计算出距离。二、系统各部分电路设计:2.1发射模块设计:超声波发射电路原理图 2.1.1 如图所示。发射电路主要有反相器 74LS04 和超声波换能器构成 , 单片机 P1.0端口输出的 40KHz方波信号一路经一级反相器后送到超声波换能器的一个电极, 另一路经两级反相器后送到超声波换能器
6、的另一个电极,用这种推挽形式将方波信号加到超声波换能器两端可以提高超声波发射强度。输出端采用两个反向器并联,可以提高驱动能力。上拉电阻 R1、R2一方面可以提高反相器 74LS04输出高电平的驱动能力; 另一方面可以增加超声波换能器的阻尼效果,以缩短其自由振荡的时间。压电式超声波换能器是利用压电晶体的谐振来工作的。超声波换能器内部结构如图 5所示,它有两个压电晶片和一个共振板。 当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率, 压电晶片将会发生共振, 并带动共振板振动产生超声波,这是它就是一个超声波发生器;反之,如果两电极未加外电压,当共振板接收到超声波时, 将压迫压电晶片振动, 将
7、机械能转换为电信号, 这时它就成为超声波接收换能器了。 超声波发生换能器与接收换能器在结构上稍有不同,使用时应分清器件上的标志。图2.1.1 超声波发送电路个人收集整理勿做商业用途图2.1.2 超声波换能器内部结构2.2接受模块设计 :集成电路 CX20106A是一款红外线检波接收的专用芯片,常用于电视机红外遥控接收器。考虑到红外遥控常用的载波频率 38kHz与测距的超声波频率 40kHz 较为接近,可以利用它制作超声波检测接收电路,如图 2.2.1 所示。实验证明,用 CX20106A接收超声波(无信号时输出高电平) 具有很高的灵敏度和抗干扰能力。适当的更改电容 C4的大小,可以改变接收电路
8、的灵敏度和抗干扰能力。图2.2.1 超声波检测接收电路图2.3测温及报警模块 :测温及报警电路如图 3所示,采用 MAXIM公司的 DS18B20作为温度传感和测量装置,测量范围在之间, 测量分辨率可选 9位或 12位,在范围内保证精度 因此完全可以满足普通条件下的测温要求。DS18B20采TO一92型封装只有 3个引脚,一根电源线,一根地线,一根数据线,每片 DS18B20有一个 64位串行代码存储器。这里用 P3.7 口作为与 DS18B20的数据输入输出口。报警电路在所测温度高于所设温度范围时发出报警声。2.4 显示模块的设计 :LED(Light-Emitting Diode ,发光二
9、极管 ) 有七段和八段之分,也有共阴和共阳两种。LED数码管结构简单,价格便宜。图 2.4.1 示出了八段 LED数码显示管的结构和原理图。图 1-7(a) 为八段共阴数码显示管结构图, 图 1-7(b) 是它的原理图,图 1-7(c) 为八段共阳 LED显示管原理图。八段 LED显示管由八只发光二极管组成,编号是 a、b、c、d、e、f 、g 和 SP,分别与同名管脚相连。七段 LED显示管比八段 LED少一只发光二极管 SP,其他与八段相同。个人收集整理勿做商业用途图 2.4.1八段 LED数码显示管原理和结构单片机对 LED管的显示可以分为静态和动态两种。静态显示的特点是各LED管能稳定
10、地同时显示各自字形; 动态显示是指各LED轮流地一遍一遍显示各自字符,人们由于视觉器官惰性,从而看到的是各LED似乎在同时显示不同字形。为了减少硬件开销,提高系统可靠性并降低成本,单片机控制系统通常采用动态扫描显示。 但是由于本系统所用的单片机引脚少,剩余引脚很多, 而且也只需显示三位字符,所以,采用了静态的显示方式,且采用了软件译码,这样单片机引脚输出可直接接到LED显示管上。这样省去了外部复杂的译码电路。三、系统程序设计:超声波测距器的软件设计主要有主程序、 超声波发生子程序、 超声波接收中断程序即显示子程序组成。 由于 C 程序有利于实现较复杂的算法, 汇编语言程序则具有较高的效率并且容
11、易精确计算程序运行的时间, 而超声波测距器的程序既有较复杂的计算, 又要求精确计算程序运行时间, 所以控制程序可采用 C语言和汇编语言混合编程。3.1超声波测距器的算法设计:图 3.1.1 示意了超声波测距的原理, 即超声波发生器T 在某一时刻发出一个超声波信号,当这个超声波遇到被测物体后反射回来,就会被超声波接收器R接收到。这样,只要计算出从发出超声波信号到接收到返回信号所用时间,就可算出超声波发生器与反射物体的距离。该距离的计算公式如下:d=s/2=(vt)/2其中: d 为被测物体与测距器的距离;s 为声波的来回路程; v 为声速; t为声波来回所用的时间。超声波的速度 v 与温度有关。
12、表 1 列出了几种不同温度下的超声波声速。在使用时,如果温度变化不大, 则可认为声速是基本不变的。如果测距精度要求很高,则应通过温度补偿的方法加以校正。声速确定后, 只要测得超声波往返的时间,即可求得距离。表 1 不同温度下超声波声速表温 度-30-20-100102030100个人收集整理勿做商业用途声速 /(m/s)313319325323338344349386图3.1.1超声波测距原理图3.2主程序:主程序首先要对系统环境初始化,设置定时器T0 工作模式为16位定时/计数器模式,置位总中断允许位EA并对显示端口P0 和P2 清0;然后调用超声波发生子程序送出一个超声波脉冲。 为了避免超
13、声波从发射器直接传送到接收器引起的直射波触发,需要延时约0.1ms( 这也就是超声波测距器会有一个最小可测距离的原因)后才打开外中断 0 接收返回的超声波信号。由于采用的是 12MHz 的晶振,计数器每计一个数就是 1s,所以当主程序检测到接收成功的标志后,将 计 数 器 T0 中 的 数 ( 即 超 声 波 来 回 所 用 的 时 间 ) 按 式 d=(v t)/2=(172T0/10000)cm 计算 , 即可得被测物体与测距器之间的距离。 设计时取 20 oC时的声速为 344m/s。测出距离后,结果将以十进制BCD码方式送往 LED显示约 0.5s ,然后再发送超声波重复测量过程。图7
14、 所示为主程序流程图。3.3超声波发生子程序和超声波接收中断程序:主程序流程图超声波发生子程序的作用是通过P1.0端口发送两个左右的超声波脉冲信号(频率约40kHz 的方波),脉冲宽度为12s左右,同时把计数器T0 打开进行计时。超声波发生子程序较简单,但要求程序运行时间准确,所以采用汇编语言程序。超声波测距器主程序利用外中断0 检测返回超声波信号, 一旦接收到返回超声波信号(即 INT0 引脚出现低电平),立即进入超声波接收中断程序。就立即关闭计时器 T0,停止计时,并将测距成功标志字赋值1。如果当计时器溢出时还未检测到超声波返回信号,则定时器T0 溢出中断将外中断 0 关闭,并将测距成功标
15、志字赋值2,以表示本次测距不成功。四、调试及性能分析:超声波测距器的制作和调试都较为简单,其中超声波发射和接收采用15的超声波换能器 TCT40-10F1(T 发射)和 TCT40-10S1(R接收),中心频率为 40kHz,安装时应保持两换能器中心轴线平行并相距4-8cm,其余原件无特殊要求。若能将超声波接收电路用金属壳屏蔽起来,则可提高抗干扰性能。 根据测量范围要求不同,可适当的调整与接收换能器并接的滤波电容C4的大小,以获得合适的接个人收集整理勿做商业用途收灵敏度和抗干扰能力。硬件电路制作完成并调整好后,便可将程序编译好下载到单片机运行。根据实际情况,可以修改超声波发生子程序每次发送的脉
16、冲个数和两次测量的间隔时间,以适应不同距离的测量需要。五、电路图 :单片机及显示系统电路图超声波发射电路原理图超声波检测接收电路图温度控制报警电路图参考文献: 51 系列单片机原理与实践教程 西安电子科技大学出版社 邹应全编;传感器及其应用实例 机械工业出版社 何希才 薛永毅编;传感器与检测技术 电子工艺出版社 徐科军编;超声波测距误差分析 苏炜 龚壁建 潘笑 .附录:程序: /* 超声波测距器单片机程序*/#include#define uchar unsigned char#define uint unsigned int#define ulong unsigned longextern
17、void cs_t(void);extern void delay(uint);extern void display(uchar *);data uchar testok;/* 主程序 */void main(void)data uchar dispram5;data uint i;个人收集整理勿做商业用途data ulong time;P0=0xff;P2=0xff;TMOD=0x11;IE=0x80;while(1)cs_t();delay(1);testok=0;EX0=1;ET0=1;while(! testok) display(dispram);if(1=testok)time=
18、TH0;time=(time8) | TL0;time*=172;time/=10000;dispram0=(uchar)(time%10);time/=10;dispram1=(uchar)(time%10);time/=10;dispram2=(uchar)(time%10);dispram3=(uchar)(time/10);if(0=dispram3)dispram3=17;elsedispram0=16;dispram1=16;dispram2=16;dispram3=16;for(i=0;i300;i+)display(dispram);/* 超声波接收程序(外中断0)*/void
19、 cs_r(void) interrupt 0TR0=0;ET0=0;EX0=0;testok=1;个人收集整理勿做商业用途/* 超时清除程序( 内中断 0)*/void overtime(void) interrupt 1EX0=0;TR0=0;ET0=0;testok=2;/* 文件 2:cs_t.asm*/* 超声波发生子程序*/NAMECS_T?PR?CS_T?CS_TSEGMENTCODEPUBLICCS_TRSEG?PR?CS_T?CS_TCS_T:PUSHACCMOVTH0,#00HMOVTL0,#00HMOVA,#4DSETBTR0CS_T1:CPLP1.0NOPNOPNOPN
20、OPNOPNOPNOPNOPNOPNOPDJNZACC,CS_T1POPACCRETEND/* 文件 3:display.asm*/*4 位共阳 LED动态扫描显示程序*/NAMEDISPLAY?PR?_DISPLAY?DISPLAYSEGMENT CODE?CO?_DISPLAY?DISPLAYSEGMENT DATAEXTRNCODE(_DELAY)PUBLIC_DISPLAYRSEG?CO?_DISPLAY?DISPLAY?_DISPLAY?BYTE:DISPBIT:DS1个人收集整理勿做商业用途DISPNUM:DS1RSEG?PR?_DISPLAY?DISPLAY_DISPLAY:PU
21、SH ACCPUSHDPHPUSHDPLPUSHPSWINCDISPNUMMOVA,DISPNUMCJNEA,#4D,DISP1DISP1:JCDISP2MOVDISPNUM,#00HMOVDISPBIT,#0FEHDISP2:MOVA,R1ADD A,DISPNUMMOVR0,AMOVA,R0MOVDPTR,#DISPTABLEMOVCA,A+DPTRMOVP0,AMOVA,DISPNUMCJNEA,#2D,DISP3CLRP0.7DISP3:MOVP2,DISPBITMOVR6,#00HMOVR7,#0AHLCALL_DELAYMOVP0,#0FFHMOVP2,#0FFHMOVA,DISP
22、BITRLAMOVDISPBIT,APOPPSWPOPDPLPOPDPHPOPACCRETDISPTABLE:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,88H,83H,0C6H,0A1H,86H,8EH,0BFH,0FF HEND/* 文件 4:delay.asm*/* 延时 100 个机器周期 */NAMEDELAY?PR?_DELAY?DELAYSEGMENT CODE个人收集整理勿做商业用途PUBLIC_DELAYRSEG?PR?_DELAY?DELAY_DELAY:PUSH ACC;2MOV A,R7;1JZDELA1;2INCR6;
23、1DELA1:MOVR5,#50D;2DJNZR5,$;2DJNZR7,DELA1;2DJNZR6,DELA1;2POPACC;2RET;2END附录 2:实物图个人收集整理勿做商业用途版权申明本文部分内容,包括文字、图片、以及设计等在网上搜集整理。版权为潘宏亮个人所有This articleincludessome parts,includingtext,pictures,and design. Copyright is Pan Hongliangs personal ownership.用户可将本文的内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途, 但同时应遵守著作权法及其他相关法律的规定,不得侵犯本网站及相关权利人的合法权利。除此以外,将本文任何内容或服务用于其他用途时,须征得本人及相关权利人的书面许可,并支付报酬。Users may use the contents or services of this article for personal study, research or appreciation, and other non-commer
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 国外石英矿山承包合同协议书范本
- 合同板本类型
- 2024年济宁烟台客运上岗证考试题
- 2024应届生签合同的合同陷阱
- 2024上海市旅游包车合同
- 三年级语文上册第二单元测试卷-基础知识与综合能力篇 含答案 部编版
- 2024建筑劳务人工合同范本
- 2024汽车配件供应合同
- 员工人事档案
- 报废车辆收购合同(2篇)
- 工程询价合同模板
- 事业单位招聘《综合基础知识》考试试题及答案
- 无锡风机吊装施工方案
- 《突发事件应急预案管理办法》知识培训
- 江苏省南京市建邺区2024-2025学年九年级上学期期中考试物理试题(无答案)
- 中小学师德师风建设各项制度汇编
- 2024年保安员证考试题库及答案(共260题)
- 公务员2024年国考申论真题(地市级)及参考答案
- XXXX酒店管理公司成立方案
- 民用无人机操控员执照(CAAC)考试复习重点题及答案
- 疼痛科整体规划和发展方案
评论
0/150
提交评论