超声波 HC-SR04 模块入门

超声波 HC-SR04 模块入门

简介

超声波测距模块是根据超声波遇障碍反射的原理进行测距的,能够发送超声波、接收超声波并通过处理,输出一段和发送与接收间隔时间相同的高电平信号,是常用的测距模块之一。

HC-SR04 是最常用的超声波测距模块之一,HC-SR04 超声波模块可提供 2cm~400cm 的非接触式距离感测功能,测距精度可达 3mm,工作电压为 5V;内部模块包括超声波发射器、接收器与控制电路。

什么是超声波

超声波是频率高于人类听觉极限的高音调声波

人耳可以听到的声波振动范围从每秒 20 次左右(隆隆的隆隆声)到每秒 20,000 次左右(尖锐的啸叫声)。但是,超声波的频率超过 20,000 Hz,因此人类听不到

硬件描述

HC-SR04 超声波距离传感器的核心是两个超声波传感器。一个用作发射器,将电信号转换为 40KHz 超声波脉冲。接收器监听发射的脉冲。如果接收到它们,它将产生一个输出脉冲,其宽度可用于确定脉冲传播的距离。就是如此简单

该传感器体积小,易于在任何机器人项目中使用,并提供 2cm 至 400cm(约 1 英寸至 13 英尺)之间出色的非接触范围检测,精度为 3mm。由于它的工作电压为 5V,因此可以直接连接到 Arduino 或任何其他 5V 逻辑微控制器

基本工作原理

工作原理

  1. 采用 IO 口 TRIG 触发测距,给最少 10us 的高电平信呈。

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

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

当持续时间至少为 10µS(10微秒)的脉冲施加到触发引脚时,一切就开始了。响应于此,传感器以 40 KHz 发射八个脉冲的声音脉冲。这种 8 脉冲模式使设备的“超声特征”变得独一无二,从而使接收器能够将发射模式与环境超声噪声区分开

八个超声波脉冲通过空气传播,远离发射器。同时,回声引脚变为高电平,开始形成回声信号的开始

如果这些脉冲没有被反射回来,则回波信号将在 38 毫秒(38 毫秒)后超时并返回低电平。因此 38ms 的脉冲表示在传感器范围内没有阻塞

如果这些脉冲被反射回去,则在收到信号后,Echo 引脚就会变低。这会产生一个脉冲,其宽度在 150µS 至 25mS 之间变化,具体取决于接收信号所花费时间

然后,将接收到的脉冲的宽度用于计算到反射物体的距离。这可以通过我们在高中中学到的简单的距离-速度-时间方程来解决。万一您忘记了,记住距离,速度和时间方程的一种简单方法是将字母放到一个三角形中

让我们以一个例子来使它更清楚。假设我们在传感器前面有一个未知距离的物体,并且在回波引脚上收到了宽度为500 µS的脉冲。现在,让我们计算物体与传感器的距离。我们将使用以下等式。

距离=速度x时间

在这里,我们的时间值为 500µs,我们知道速度。我们有什么速度?声音的速度,当然!其 340m/s。为了计算距离,我们必须将声速转换为 cm/µs。Google快速搜索“以厘米/微秒为单位的声音速度”时,它会显示为 0.034cm/µs。您可以进行数学运算,但搜索更为容易。无论如何,有了这些信息,我们就可以计算出距离

距离 = 0.034 cm/µs x 500 µs

但这还没有完成!请记住,脉冲表示信号发送出去并反射回去所花费的时间,因此要获得距离,您需要将结果分成两半

距离=(0.034 cm/µs x 500 µs)/ 2

距离= 8.5cm

因此,现在我们知道物体距离传感器 8.5cm

引脚连接

引脚排列连接如下:

VCC 是 HC-SR04 超声波距离传感器的电源,我们连接了上的 5V 引脚

Trig (Trigger) 引脚用于触发超声波脉冲

Echo 回声当接收到反射信号时,引脚产生一个脉冲。脉冲的长度与检测发射信号所需的时间成正比

GND 应该连接到接地引脚

这里 Echo 与 Trig 引脚只需要接在开发板上任意可以进行输入输出的引脚即可

注意

  1. 此模块不宜带电连接, 若要带电连接, 则先让模块的 GND 端先连接, 否则会影响模块的正常工作

  2. 测距时,被测物体的面积不少于 0.5 平方米且平面尽量要求平整,否则影响测量的结果

电气参数

电气参数 HC-SR04 超声波模块
工作电压 DC 5V/3.3V
工作电流 15mA
工作频率 40KHz
最远射程 4m
最近射程 2cm
测量角度 15 度
输入触发信号 10 μS 的 TTl 脉冲
输出回响信号 输出 TTL 电平信号,与射程成比例
规格尺寸 45 * 20 * 15 mm

时序

以上时序图表明你只需要提供一个 10uS 以上脉冲触发信号,该模块内部将发出 8 个 40kHz 周期电平并检测回波。一旦检测到有回波信号则输出回响信号

回响信号的脉冲宽度与所测的距离成正比,由此通过发射信号到收到的回响信号时间间隔可以计算得到距离。

公式: uS / 58 = 厘米或者 uS / 148 = 英寸; 或是: 距离 = 高电平时间 * 声速(340M/S) / 2

建议测量周期为 60ms 以上, 以防止发射信号对回响信号的影响

posted @ 2023-05-20 16:46  ppqppl  阅读(334)  评论(0编辑  收藏  举报