感知世界 · 07 / 16

HC-SR04:从回声时间计算距离

在 HC-SR04 实验中移动障碍物,区分触发与回声信号,将回声时间换算为厘米,并对照距离读数。

7 分钟入门
这一课,你会学到

让距离读数参与一个简单判断。

理解原理

本超声波示例用回波时长(微秒)除以 58 估计厘米数。模型直接使用距离控制,不模拟声波传播、反射或时序噪声。

动手试一试

运行后把障碍物距离从 10 厘米调到 50 厘米,对照距离与回声持续时间的变化。

连接说明

  • D9 — 超声波触发
  • D10 — 超声波回波
  • 5V / GND — 模块供电

示例代码

代码用于说明硬件思路;实验台执行对应的教学模型,不编译代码。

void setup() {
  pinMode(9, OUTPUT);
  pinMode(10, INPUT);
  Serial.begin(9600);
}

void loop() {
  digitalWrite(9, LOW);
  delayMicroseconds(2);
  digitalWrite(9, HIGH);
  delayMicroseconds(10);
  digitalWrite(9, LOW);
  long cm = pulseIn(10, HIGH) / 58;
  Serial.println(cm);
}

检查你的理解

为什么障碍物越远,回声时间越长?

查看解释

声音需要到达障碍物后再返回。往返路径越长,耗时越久;课程用回声微秒数除以 58 估算厘米数。

从实验,再多走一步

把实验与基础概念连起来 · 帮助与 FAQ