一.超声波测距的原理
超声波测距是一种常用的距离测量技术,它利用超声波的传播速度来确定物体与传感器之间的距离。其 原理基于声波的传播和回波时间的测量,通常包括以下步骤:
1.
发射超声波脉冲:传感器向目标物体发射一个超声波脉冲。这个脉冲是一种高频声波,通常在
20
kHz
到
200 kHz
的频率范围内。
2.
超声波传播:脉冲超声波在空气中以速度约
343
米
/
秒(在
20
摄氏度下)传播,朝着目标物体前进。
3.
回波检测:一旦超声波脉冲碰到目标物体,它会被目标物体反射回来。传感器会继续监测并记录回
波的时间。
4.
计算距离:通过测量超声波从发射到接收的时间间隔(也称为回波时间),可以根据声波的速度和
时间间隔来计算目标物体与传感器之间的距离。这通常使用以下速度
-
时间
-
距离公式完成:
距离
=
(声速
×
回波时间)
/2
其中,声速通常取
343
米
/
秒,回波时间是发射和接收超声波之间的时间,除以
2
是因为回波的时间
包括了超声波从传感器到目标物体再返回传感器的总时间。
超声波的反射:
二、超声波测距的常用场合
超声波测距在各种不同领域和应用中都有广泛的使用,包括以下一些常见的场合:
1.
工业自动化:超声波传感器常用于工业自动化中,用于测量物体的距离和位置,以监控生产线上的
物体或机器人的位置。它们可以用于控制机器人的运动、检测物体的存在或测量液位。
2.
障碍物检测:超声波传感器被广泛用于车辆和机器人中,以检测周围环境中的障碍物。这在自动驾
驶汽车、智能洗衣机、无人机和工业机器人等应用中非常重要。
3.
距离测量:用于测量物体与传感器之间的距离,例如在仓储管理、建筑测量和地质勘探中。
4.
液位测量:用于测量液体或粉体的液位,例如在油罐、水池、粮仓和药品制造中。
5.
游戏和娱乐:一些玩具、游戏和娱乐设备中使用超声波传感器来实现互动和距离测量功能。
6.
医疗设备:用于医疗设备中,例如超声波图像设备(如超声波扫描仪)用于医学成像和超声波测距
传感器用于监测患者的距离和位置。
7.
安防系统:超声波传感器可用于入侵检测、人员计数和监控系统,以提高安全性。
8.
非接触控制:超声波传感器还用于非接触控制,例如手势识别、触摸屏技术和自动门开关。
三、超声波测距模块的使用使用方法
超声波模块如图
2-6-2
所示,模块上有一个发射端和接收端,并且模块上自带震荡电路,可以自己产生超
声波发射并接收然后计算时间差,模块的性能参数如图
所示
HC-SR04
超声波测距模块的性能参数 如下:
可以看到,超声波模块有
4
个引脚,分别为
Vcc
、
Trig
、
Echo
、
GND
,这四个引脚的功能分别如下
VCC
:接
VCC
电源(直流
3V-5.5V
)
Trig
:接外部电路的
Trig
端,向此管脚输入一个
10uS
以上的高电平,可触发模块测距
Echo
:接外部电路的
Echo
端,当测距结束时,此管脚会输出一个高电平,电平宽度为超 声波往返时间 之和
GND
:接外部电路的地
模块的测距时序图如图
2-6-4
所示,单片机需要做的就是产生一个触发信号,然后检测输出回响信号的脉 冲宽度即可,脉冲宽度的检测可以使用定时器来实现
HC-SR04
超声波测距模块测距时序图:
四.实验代码
1.
.
定义与超声波模块连接的引脚:
1.sbit ECHO = p2^0;
2.sbit TRIG = p2^1;
2.
提供一个大于
10us
的脉冲信号给
TRIG
引脚,用来启动超声波模块开始测距,这里我们定义一个名 为SR04_Start()
的函数,该函数的功能就是在
TRIG
引脚上发出一个大于
10us
的脉冲
3.
设置定时工作模式,因为是为了计算脉冲长度,所以为了方便计算,
TH0
和
TL0
都设置为
0
即可。关 于定时器计算脉冲长度,可以参考任务2-5
中的
定时计数器的常用场合
。
4.
测量超声波模块返回的脉冲宽度。
整体代码为:
五.实验现象:
将程序下载到开发板,数码管显示的是超声波模块与被测物体之间的距离,单位是
CM
。用书本放在超声 波模块前面,数码管显示的就是超声波模块与书本之间的距离,可以用尺子测量对比,看看超声波测量 出来的距离是否准确。