感知世界 · 07 / 16
HC-SR04:从回声时间计算距离
在 HC-SR04 实验中移动障碍物,区分触发与回声信号,将回声时间换算为厘米,并对照距离读数。
让距离读数参与一个简单判断。
理解原理
本超声波示例用回波时长(微秒)除以 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 估算厘米数。