超声波测距总结报告.docVIP

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
超声波测距模块总结报告 成 员 王瑞杰 王文祥 林世余 分 院 电子通信与物理学院 专 业 电子信息科学与技术 班 级 15级(大一)电子信息科学与技术 1班 指导员 王佃涛 完成日期 2015年 11月1日 一、超声波测距原理 超声波是指频率高于20KHZ的机械波(我们采用40KHZ)。为了以超声波作为检测手段,必须产生超声波和接收超声波。完成这种功能的装置超声波测距模块。该模块利用压电效应的原理将电能和超声波相互转化,即在发射超声波的时候,将电能转换,发射超声波;而在收到回波的时候,则将超声振动转换成电信号。 超声波测距的原理是测出超声波从发射到遇到障碍物返回所经历的时间,再乘以超声波的速度就可以得到二倍的声源与障碍物之间的距离。即:D=C*T/2。其中,D为超声波测距模块到障碍物之间的距离;C为超声波此时在空气中的传播速度;T为超声波的发收时间。在空气中,声波的传播速度一般受温湿度的影响,在没有温湿度传感器或对测量精度要求不高的情况下,一般取340m/s。在实验中,本程序采用C=340m/s。 二、超声波测距模块(URF04): 1、板上接线方式: VCC、trig(控制端)、echo(接收端)、GND 模块工作原理: (1)采用IO触发测距,给10us以上的高电平信号; (2)模块自动发送8个40khz的方波,自动检测是否有信号返回; (3)有信号返回,通过IO输出一高电平,高电平持续的时间就是超声波从发射到返回的时间. 测试距离=(高电平时间*声速(340M/S))/2; 操作方法: 用一个控制口发一个10US以上的高电平,在接收口等待高电平输出.当有高电平输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,此时就为此次测距的时间,方可算出距离.如此不断的周期测,就可以移动测量的值了 4、局限性: 该模块在将电信号转化成声波的过程中,所产生的声波并不是理想中的矩形,而是一个类似花瓣一样形状,发送超声波的波束角大约为15度。在实际应用中,该波束应为一个立体的圆锥形,这也导致两个问题: 1) 随着探测距离的延长,探测障碍物方位的准确性下降。即无法对障碍物进行准确定位。 2) 探测距离越远,能量扩散越严重,在障碍物不理想的情况下,返回信号减弱,以至于在标准探测范围内,返回脉冲也达不到该模块的判断阈值。 三、 单片机控制模块 系统采用STC90C516RD+控制芯片。 电路图: 算法流程图如下: 系统框架图如下: 代码如下: #includereg52.h #define UC unsigned char #define UI unsigned int void delay(UI); //延时9.56us程序 sbit beep = P1^3; //用于声音报警 sbit Lv = P1^7; //用于光报警 sbit Hong = P1^6; sbit QD = P3^7;//K8 //P3^7口(K8)为确定键, sbit GX = P3^1;//K7 //P3^3口(K2)为修改键, sbit SX = P3^6;//K6 //P3^2(K3)为测量键. sbit BX = P3^0;//K5 //个(K7),十(K6),百(K5),三位修改键 sbit a = P1^2;//百位 //数码管位选 sbit b = P1^1;//十位 sbit c = P1^0;//个位 sbit trig = P1^4; //方波发射端 sbit echo = P1^5; //超声波接收端 void IntConfiguration(); //用来设置中断的函数,P3^3口(K2)为修改键,P3^2(K3)为测量键. void TimeConfiguration(); //用来设置定时器的函数 sbit K1 = P3^4;//动态 sbit K4 = P3^5;//静态 //用于进行模式切换(K1、K4键) void xiaxian(); //修改函数,用来修改下限 void shangxian(); //修改函数,用来修改上限 UI min[3]={0,5,0}; //报警极限,拆分为百十个三位 UI max[3]={3,0,0}; //MIN,MAX 用来存储最大和最小值 void MINxianshi(UI);

文档评论(0)

ktj823 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档