树莓派资料
显示屏资料
系统下载
树莓派Pico
首页 动态 发帖 版块 我的
 退出
游客  
等级:
金币:
经验值:

树莓派使用红外避障传感器模块

  6063 
 0
 0
mo   mo 

一:工作原理

红外避障传感器的工作原理主要依赖于红外线特性,传感器是由红外发射管和红外接收管组成,会对探头正前方环境进行探测。通过发射出一束红外光并接收其反射回来的信号来工作。当收到反射的信号后,会产生相应的电压信号。 通过传感器的原理,我们可以用来做机器人循迹、避障或流水线计数等!

  • 工作电压:3.3V ~ 5V
  • 探测距离:2 ~ 30cm(不同颜色障碍物测量距离不同,白色较远)
  • 检测角度:35°
  • 推荐使用环境:模块受太阳光影响,建议在室内使用。

红外避障传感器原理图
传感器资料



教程思路:使用树莓派开发板+避障传感器+报警器打造一个自动检测前方是否有障碍物出现并显示+报警。

二:硬件连接

按下图接好连接线后, 需轻微调节传感器上的蓝色电位器,(调节效果:探头前方无障碍遮挡的情况下传感器信号灯不亮, 若遮挡住探头则信号灯常亮即可)
红外避障传感器树莓派开发板
VCC5V
GNDGND
OUTGPIO29(BCM21)


5V两线报警器树莓派开发板
红线-正极GPIO28(BCM20)
黑线-负极GND


Image

Image

三:Pythpn程序代码

按上述连接方式,将树莓派传感器报警 一起连接好后。将下列Python程序代码直接运行并查看结果。

import RPi.GPIO as GPIO
import time

# 初始化 GPIO 模块,设置 GPIO21 和 GPIO20 为输入和输出
GPIO.setmode(GPIO.BCM)
GPIO.setup(21, GPIO.IN, pull_up_down=GPIO.PUD_UP)  # GPIO21 作为输入,上拉
GPIO.setup(20, GPIO.OUT)  # GPIO20 作为输出

try:
    while True:
        input_state = GPIO.input(21)  # 读取 GPIO21 的状态

        if input_state == GPIO.HIGH:  # 高电平(正常)
            print("前方正常")
            GPIO.output(20, GPIO.LOW)  # GPIO20 输出高电平
        else:  # 低电平(障碍物)
            print("请注意,有障碍物")
            GPIO.output(20, GPIO.HIGH)  # GPIO20 输出低电平

        # 每秒检查一次,你可以根据需要调整检查频率
        time.sleep(1)

except KeyboardInterrupt:  # 用户按下 Ctrl+C 退出程序
    print("检测到用户中断,清理 GPIO...")
finally:
    GPIO.cleanup()  # 清理 GPIO 口,释放资源

效果如下:当探头被遮挡后,会显示:”请注意 有障碍物“ 报警器也会发出响声。 反之则提示:“前方正常”。

Image


标签:
作者签名:    楼主  2024-06-19 17:35:24
回复列表
Powered by RASPI _VERSION
© 2017-2024 树莓派极客版权
您的IP: 3.138.69.160 , 2024-07-27 17:00:45
Powered by RASPI _VERSION
© 2017-2024 树莓派极客版权