超声波测距模块工作原理_HC-SR04模块详解

通信模块

36人已加入

描述

  超声波测距模块有好多种类型,目前比较常用的有URM37超声波传感器默认是232接口,可以调为TTL接口,URM05大功率超声波传感器测试距离能到10米,算是目前来说测试距离比较远的一款了,另外还有比较常用的国外的几款SRF系列的超声波模块,目前的超声波模块精度能到1cm。本文主要详解HC-SR04模块吉他的工作原理,首先介绍的是HC-SR04模块的优势及应用领域,其次阐述了超声波测距模块工作原理及电路图,最后介绍了电气参数、超声波时序图、操作以及程序,具体的跟随小编来了解一下。

  HC-SR04模块的优势及应用领域

  HC-SR04模块优势

  此模块性能稳定,测度距离精确,模块高精度,盲区小。

  产品应用领域:

  1、机器人避障

  2、物体测距

  3、液位检测

  4、公共安防

  5、停车场检测

  

  超声波测距模块工作原理

  (1)采用IO口TRIG触发测距,给至少10us的高电平信号;

  (2)模块自动发送8个40khz的方波,自动检测是否有信号返回;

  (3)有信号返回,通过IO口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2;

  (4)本模块使用方法简单,一个控制口发一个10US以上的高电平,就可以在接收口等待高电平输出。一有输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,此时就为此次测距的时间,方可算出距离。如此不断的周期测,即可以达到你移动测量的值

  超声波测距模块电路图

  超声波测距模块

  电气参数

  1

超声波测距模块

  超声波时序图

  超声波测距模块

  操作

  初始化时将trig和echo端口都置低,首先向给trig 发送至少10 us的高电平脉冲(模块自动向外发送8个40K的方波),然后等待,捕捉 echo 端输出上升沿,捕捉到上升沿的同时,打开定时器开始计时,再次等待捕捉echo的下降沿,当捕捉到下降沿,读出计时器的时间,这就是超声波在空气中运行的时间,按照 测试距离=(高电平时间*声速(340M/S))/2 就可以算出超声波到障碍物的距离。

  下面面是飞思卡尔XS128单片机测距的程序:

  while(1)

  {

  PT1AD0_PT1AD00 = 1;//给超声波模块输入高脉冲

  PITINTE_PINTE1=1; //打开PIT1定时器

  while(!(counter0》=4)); //等待20us

  PITINTE_PINTE1=0;counter0 = 0;//关闭定时器,计数清零

  PT1AD0_PT1AD00 = 0; //trig管脚拉低

  PORTB_PB0 = 0; //指示灯0

  while(!(PT1AD0_PT1AD01 == 1)); //等待echo输出上升沿

  PORTB_PB1 = 0; //指示灯1

  PITINTE_PINTE0=1; //打开PIT0定时器

  while(!(PT1AD0_PT1AD01 == 0)); //等待下降沿

  distance = counter*17/20; //计算距离,单位CM

  PITINTE_PINTE0=0; //关闭定时器

  PORTB_PB2 = 0; //指示灯2

  PITINTE_PINTE0=1; //打开定时器定时500ms,数码管显示

  while(!(counter》=10000))

  {

  Showing(distance); //显示距离,精确1cm

  }

  PITINTE_PINTE0=0;counter=0; //关闭定时器,清零

  }

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
评论(0)
发评论
先森丿如初 2018-07-18
0 回复 举报
很棒 收起回复

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分