关注  | 分享:

超声波泊车感应-树莓派

红烧肉 2018-07-31

ADAS

在这个作品中,我们将要模仿一个泊车传感器。这种泊车传感器的想法是当你有足够的空间在停车场倒车时显示绿色,然后当你接近块接近底线的位置时变黄,然后当你应该停止时变红。 我们将使用我们的Raspberry Pi构建这个系统,并使用一些我们可以轻松测试的距离。

项目详情

项目创意灵感
准备的物料明细(如图所列):
HC-SR04超声波距离传感器
LED 3种颜色各1个
330Ω电阻(*3)
10KΩ电阻(*2)
公对公跳线,公与母跳线
面包板*1
设计特色创新
连线也是非常简单可以按图片所示。
1,距离传感器触发为GPIO 4,回波为GPIO 18,绿灯为17,黄灯为27,红灯为22。
2,330欧姆电阻用于LED,它们连接到LED的正极然后连接到GPIO。
3,10K欧姆电阻用于距离传感器的回波引脚并连接到GPIO。
系统原理功能
超声波传感器
完成情况概述
代码部分:
import RPi.GPIO as GPIO
import time

GPIO.setwarnings(False)

GPIO.cleanup()

GPIO.setmode(GPIO.BCM)

TRIG = 4

ECHO = 18

GREEN = 17

YELLOW = 27

RED = 22

GPIO.setup(TRIG,GPIO.OUT)

GPIO.setup(ECHO,GPIO.IN)

GPIO.setup(GREEN,GPIO.OUT)

GPIO.setup(YELLOW,GPIO.OUT)

GPIO.setup(RED,GPIO.OUT)

def green_light():

GPIO.output(GREEN, GPIO.HIGH)

GPIO.output(YELLOW, GPIO.LOW)

GPIO.output(RED, GPIO.LOW)

def yellow_light():

GPIO.output(GREEN, GPIO.LOW)

GPIO.output(YELLOW, GPIO.HIGH)

GPIO.output(RED, GPIO.LOW)

def red_light(): GPIO.output(GREEN, GPIO.LOW)

GPIO.output(YELLOW, GPIO.LOW)

GPIO.output(RED, GPIO.HIGH)

def get_distance():

GPIO.output(TRIG, True)

time.sleep(0.00001)

GPIO.output(TRIG, False)

while GPIO.input(ECHO) == False: start = time.time()

while GPIO.input(ECHO) == True: end = time.time()

signal_time = end-start

distance = signal_time / 0.000058

return distance

while True:

distance = get_distance()

time.sleep(0.05)

print(distance)

if distance >= 25:

green_light()

elif 25 > distance > 10:

yellow_light()

elif distance <= 5:

red_light()

如果距离大于或等于25厘米,我们会显示绿灯。 如果它在10到25厘米之间,我们将变黄,然后我们将变成小于或等于10厘米的红色。看看视频吧,一目了然吧。
项目采用平台:
A+D Lab
数量1

同学讨论

苏ICP备2021055573号-1 © 2023 云行学堂(江苏)科技有限公司