Infrared Proximity Sensor

来自Waveshare Wiki
跳转至: 导航搜索
Infrared Proximity Sensor
{{{name2}}}
{{{name3}}}
功能简介
特性 红外接近传感器 红外避障模块
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
接口 AD I/Os

说明

产品概述

Infrared Proximity Sensor是红外接近传感器,能发射红外线,也能接收反射回来的红外线,并反馈前方是否存在障碍物。
原理:红外发射管是由红外发光二极管矩组成发光体,用红外辐射效率高的材料(常用砷化镓)制成 PN 结,正向偏压向 PN 结注入电流激发红外光。红外接收管是将红外线光信号变成电信号的半导体器件,它的核心部件是一个特殊材料的 PN 结,随着红外光强度的增加电流也随之增大输出模拟信号。当检测方向遇到障碍物(反射面)时,红外线反射回来被接收管接收,经过 LM393 比较器处理后输出数字信号,同时绿色指示灯点亮,可通过电位器旋钮调节检测距离。

产品特性

参数名称 参数
工作电压 3.3V ~ 5V
产品尺寸 39mm * 15.5mm(含红外管)
固定孔尺寸 3.0mm
探测距离 2~30 cm (不同颜色障碍物测量具体不同,白色最远)
检测角度 35°
  • 推荐使用环境:模块受太阳光影响,建议在室内使用

主要用途

可以广泛应用于机器人避障、避障小车、流水线计数及黑白线循迹等场合。

接口说明

引脚 功能
DOUT 数字量输出
AOUT 模拟量输出
GND 电源地
VCC 电源正(3.3V-5V)

Pico使用教程

提供Python、C例程

Pico 快速上手

硬件连接

您可以对照以下表格连线。

Pico连接引脚对应关系
Proximity Pico 功能
VCC 3.3V 电源输入
GND GND 电源地
AOUT GP26 模拟量输出
DOUT GP22 数字量输出

火焰传感器、霍尔传感器、红外接近传感器、液位传感器、土壤传感器、气体传感器、声音传感器、紫外线传感器这些模块的引出脚一致(根据表格进行连接,图仅为参考)Infrared-Proximity Pico 1.jpg

基础介绍

MicroPython系列
【MicroPython】Pico的基础介绍与环境安装

【MicroPython】machine.Pin类函数详解
【MicroPython】machine.PWM类函数详解
【MicroPython】machine.ADC类函数详解
【MicroPython】machine.UART类函数详解
【MicroPython】machine.I2C类函数详解
【MicroPython】machine.SPI类函数详解

C/C++系列
【C/C++】 Windows教程1——环境搭建

【C/C++】 Windows教程2——创建工程

教程名3
列表3
教程名4
列表4
教程名5
列表5
教程名6
列表6
教程名7
列表7
教程名8
列表8

程序下载

打开树莓派终端,执行以下命令:

sudo apt-get install p7zip-full
cd ~
sudo wget  https://www.waveshare.net/w/upload/0/05/Infrared_Proximity_Sensor_Demo.7z
7z x Infrared_Proximity_Sensor_Demo.7z -o./Infrared_Proximity_Sensor_Demo
cd ~/Infrared_Proximity_Sensor_Demo
cd Pico/c/build/

例程使用

C部分

  • 以下教程为在树莓派上操作,但由于cmake的多平台、可移植的特点,在PC上也是能成功编译,但操作略有不同,需用户自行判断。

进行编译,请确保在c目录:

cd ~/Infrared_Proximity_Sensor_Demo/Pico/c/

在文件夹中创建并进入build目录,并添加SDK: 其中 ../../pico-sdk 是你的SDK的目录。 我们示例程序中是有build的,直接进入即可

cd build
export PICO_SDK_PATH=../../pico-sdk
(注意:务必写对你自己的SDK所在路径)

执行cmake自动生成Makefile文件

cmake ..

执行make生成可执行文件,第一次编译时间比较久

make -j9

编译完成,会生成uf2文件。 按住Pico板上的按键,将pico通过Micro USB线接到树莓派的USB接口,然后松开按键。接入之后,树莓派会自动识别到一个可移动盘(RPI-RP2),将build文件夹下的main.uf2 文件复制到识别的可移动盘(RPI-RP2)中即可。

cp main.uf2 /media/pi/RPI-RP2/

Python部分

windows环境下的使用

  • 1.按住Pico板上的BOOTSET按键,将pico通过Micro USB线接到电脑的USB接口,待电脑识别出一个可移动硬盘(RPI-RP2)后,松开按键。
  • 2.将python目录中rp2-pico-20210418-v1.15.uf2 文件复制到识别的可移动盘(RPI-RP2)中
  • 3.打开Thonny IDE(注意:要使用最新版本的Thonny,否则是没有Pico的支持包的,当前Windows下的最新版本为v3.3.3)
  • 4.点击工具->设置->解释器,如图所示选择Pico及对应的端口

Pico-lcd-0.96-img-config.png
本例程提供了一个程序:

  • 5.文件->打开->Infrared_Proximity_Sensor.py,点击运行即可,如下图所示:

Pico-lcd-0.96-img-run.png

树莓派环境下的使用

  • 1.刷固件的过程与Windows上一样,你可以选择在PC或者树莓派上将rp2-pico-20210418-v1.15.uf2 文件拷入pico中。
  • 2.在树莓派山打开Thonny IDE (点击树莓logo -> Programming -> Thonny Python IDE ),你可以在Help->About Thonny查看版本信息

以确保你的版本是有Pico支持包的,同样你可以点击Tools -> Options... -> Interpreter选择MicroPython(Raspberry Pi Pico 和ttyACM0端口
如图所示:
Pico-lcd-0.96-img-config2.png
如果你当前的Thonny版本没有pico支持包,输入以下指令来更新Thonny IDE

sudo apt upgrade thonny

3.点击File->Open...->python/Infrared_Proximity_Sensor.py,运行脚本即可

现象

1、传感器靠近障碍物时,模块上的信号指示灯点亮。传感器远离障碍物时,模块上的信号指示灯熄灭。
2、随着传感器与障碍物距离的变化, 串口输出的数据会发生相应改变。

STM32使用教程

我们提供的例程是基于STM32F103RBT6跟STM32H743的,提供的连接方式是对应的STM32F103RBT6的引脚为例,如果有需要使用其他STM32,请按实际引脚连接

硬件连接

STM32F103RB连接引脚对应关系
Proximity STM32 功能
VCC 3.3V 电源输入
GND GND 电源地
AOUT PA6 模拟量输出
DOUT PA4 数字量输出

火焰传感器、霍尔传感器、红外接近传感器、液位传感器、土壤传感器、气体传感器、声音传感器、紫外线传感器这些模块的引出脚一致(根据表格进行连接,图仅为参考)
Infrared-Proximity STM32 1.jpg

软件说明

例程是基于HAL库进行开发的。 请在资料里面下载程序,找到STM32程序文件目录,打开Infrared_Proximity_Sensor_Demo\STM32\STM32F103RB\MDK-ARM
目录下的Infrared Proximity Sensor.uvprojx,即可看到程序。(图片只做参考)
MQ5 STM32 1.jpg

打开main.c,重新编译下载即可。
MQ5 STM32 2.jpg

下载成功后,运行SSCOM连接Infrared Proximity模块,就可以实时查看传感器的状态啦。
Infrared Proximity STM32 3.png

现象

1、传感器靠近障碍物时,模块上的信号指示灯点亮。传感器远离障碍物时,模块上的信号指示灯熄灭。
2、随着传感器与障碍物距离的变化, 串口输出的数据会发生相应改变。

Arduino使用教程

本例程已经在Arduino uno上测试通过,直接按下表连接Arduino uno即可

硬件连接

您可以对照以下表格连线。

Arduino连接引脚对应关系
Proximity Arduino 功能
VCC 5V 电源输入
GND GND 电源地
AOUT A0 模拟量输出
DOUT D2 数字量输出

火焰传感器、霍尔传感器、红外接近传感器、液位传感器、土壤传感器、气体传感器、声音传感器、紫外线传感器这些模块的引出脚一致(根据表格进行连接,图仅为参考)
Infrared-Proximity Arduino 1.jpg

安装编译软件(Windows教程)

arduino IDE 安装教程

运行程序

在我们提供的资料里面下载程序,并解压,再进入Infrared_Proximity_Sensor_Demo/Arduino/Infrared_Proximity_Sensor目录下
双击打开Infrared_Proximity_Sensor.ino文件。
选择你的开发板,跟对应的端口。

MQ5 Arduino 1.jpg

进行编译下载,如下图:
MQ5 Arduino 2.jpg

下载成功后,运行SSCOM连接Infrared_Proximity模块,就可以实时查看传感器的状态啦。
Infrared Proximity Arduino 3.png

现象

1、传感器靠近障碍物时,模块上的信号指示灯点亮。传感器远离障碍物时,模块上的信号指示灯熄灭。
2、随着传感器与障碍物距离的变化, 串口输出的数据会发生相应改变。

资料


文档

程序

数据手册

软件


FAQ


模块的有效检测距离是通过板子上的电位器来调节的,调节电位器即可调节有效避障距离。


技术支持


联系人:黄工
QQ:2850151199
EMAIL:2850151199@qq.com
电话:0755-83040712
微信:扫下方二维码添加
Service20-Weichat.png

说明:进行售后服务前,请准备好客户信息(定货单位、定货人等),以供验证