树莓派超声测距

本文介绍了一位小白使用HC-SR04超声波测距传感器在树莓派上进行测距实验的过程。通过连接传感器的VCC、Trig、Echo和GND引脚到树莓派相应GPIO口,编写Python代码来控制和读取测距数据,实现了测量距离的功能。代码中详细说明了如何设置GPIO,发送触发信号并计算超声波往返时间以得出距离。实验结果以厘米为单位输出,并可在调整距离后实时显示。
摘要由CSDN通过智能技术生成

小白一枚,在学校学习做了一下树莓派超声测距

一、传感器原理:

选用的是HC-SR04超声波测距传感器
该传感器有4个引脚:
VCC:超声波模块电源脚,接5V电源即可
Trig:超声波发送脚,高电平时发送出40KHZ出超声波
Echo:超声波接收检测脚,当接收到返回的超声波时,输出高电平
GND:超声波模块GND
• Vcc 和 Gnd ,接树莓派的电源和接地端。
• Trig 引脚用来接收来自树莓派的控制信号。接任意 GPIO 口。
• Echo 引脚用来发送测距结果给树莓派。接任意 GPIO 口。
传感器与树莓派连接好后,将树莓派与显示器相连接。
在这里插入图片描述

二、准备:

利用母母线连接,Trig接GPIO 23,Echo接GPIO 24(BCM编码)
树莓派插口编号
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、编程:

1、确认python,python GPIO库是否正确安装
在Raspbian中已经预装了Python2.7.16,直接在命令行输入python即可看到如下信息
在这里插入图片描述
使用Python控制GPIO时,常用的是raspberry-gpio-python模块,在2016-05-27-raspbian-jessie版本的系统镜像中,预装了最新的版本v0.7.0,可以在Python中输入下列命令查看:
在这里插入图片描述
2、创建一个py文件
输入代码

touch 1.py
python3 1.py

将代码写入,如下图所示
在这里插入图片描述

完整代码:
#导入 GPIO库
import RPi.GPIO as GPIO
import time
#设置 GPIO 模式为 BCM
GPIO.setmode(GPIO.BCM)
#定义 GPIO 引脚
GPIO_TRIGGER = 23
GPIO_ECHO = 24
#设置 GPIO 的工作方式 (IN / OUT)
GPIO.setup(GPIO_TRIGGER, GPIO.OUT)
GPIO.setup(GPIO_ECHO, GPIO.IN)
def distance():
# 发送高电平信号到 Trig 引脚
GPIO.output(GPIO_TRIGGER, True)
# 持续 10 us
time.sleep(0.00001)
GPIO.output(GPIO_TRIGGER, False)
start_time = time.time()
stop_time = time.time()
# 记录发送超声波的时刻1
while GPIO.input(GPIO_ECHO) == 0:
start_time = time.time()
# 记录接收到返回超声波的时刻2
while GPIO.input(GPIO_ECHO) == 1:
stop_time = time.time()
# 计算超声波的往返时间 = 时刻2 - 时刻1
time_elapsed = stop_time - start_time
# 声波的速度为 343m/s, 转化为 34300cm/s。
distance = (time_elapsed * 34300) / 2
return distance
if name == ‘main’:
try:
while True:
dist = distance()
print(“Measured Distance = {:.2f} cm”.format(dist))
time.sleep(1)
# Reset by pressing CTRL + C
except KeyboardInterrupt:
print(“Measurement stopped by User”)
GPIO.cleanup()

3、输出结果
输入python3 1.py运行
随意调整距离
在这里插入图片描述
大致完成了~

参考网页:
1、https://blog.csdn.net/pkokocl/article/details/52563700?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-4.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-4.control
2、树莓派实验室

  • 4
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值