树莓派 3 接 HC‑SR04 超声波测距传感器完全指南
硬件需求
- 树莓派 3(或更新型号)
- HC‑SR04 超声波测距传感器(单个或多个)
- 分压电阻对:330 Ω (ECHO 分压) 与 470 Ω (接地分压)
- 跳线
- 面包板
接线图
传感器引脚与树莓派连接如下:
- VCC → 引脚 2 (5V)
- GND → 引脚 6 (地)
- TRIG → 引脚 12 (GPIO18)
- ECHO → 330 Ω 电阻 → 引脚 18 (GPIO24);470 Ω 电阻 → 引脚 6 (地)
电阻分压将 5V 回波脉冲降至树莓派 3.3V 逻辑电平。
传感器放面包板,跳线连对应 GPIO。添加第二个传感器时,VCC/GND 共用电源轨,TRIG/ECHO 另选两空闲 GPIO。
软件 – Python 示例
打开 IDE 或终端,新建 ultrasonic_distance.py 粘贴以下脚本。代码针对单传感器;多传感器复制代码段并重命名变量 (TRIG2、ECHO2 等)。
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
TRIG1 = 18
ECHO1 = 24
GPIO.setup(TRIG1, GPIO.OUT)
GPIO.output(TRIG1, False)
GPIO.setup(ECHO1, GPIO.IN)
time.sleep(0.1)
GPIO.output(TRIG1, True)
time.sleep(0.00001)
GPIO.output(TRIG1, False)
while GPIO.input(ECHO1) == 0:
pass
pulse_start1 = time.time()
while GPIO.input(ECHO1) == 1:
pass
pulse_end1 = time.time()
pulse_duration1 = pulse_end1 - pulse_start1
distance1 = pulse_duration1 * 17150
distance1 = round(distance1, 2)
print(f'Distance: {distance1} cm')
time.sleep(10)
GPIO.cleanup()
保存后终端运行:
python3 ultrasonic_distance.py
增加传感器时,面包板镜像接线,更新代码引脚号,添加第二测量块即可。
来源:Ultrasonic Sensor (HC‑SR04) + Raspberry Pi
制造工艺
- 树莓派+$5 I²C传感器打造温度记录仪
- 树莓派与 Python 构建远程温度传感器:分步实战指南
- 树莓派自制气象站:每日邮件推送温湿雨数据
- 树莓派 GPIO 直连 DS1820 单总线温度传感器指南
- 树莓派 3 接 HC‑SR04 超声波测距传感器完全指南
- 树莓派接 KY‑033 循迹/门状态传感器:简易 Python 实现
- 树莓派 PIR 运动传感器控制 LED 实战指南
- 树莓派低成本土壤湿度传感器:智能灌溉 DIY 指南
- 树莓派读取线性霍尔传感器:Java 指南与 ADC0832 深度解析
- 树莓派多传感器温度光照监测系统:DS18B20 实战构建
- 树莓派 DS18B20 温度传感器测试与 HC-SR04 超声波测距实战
- 树莓派传感器与执行器控制实战:加速度计、舵机与数据流