ESP8266-Arduino编程实例-红外寻迹传感器驱动

红外寻迹传感器驱动

1、红外寻迹传感器介绍

红外寻迹传感器具有一对红外线发射管与接收管,发射管发射出一定频率的红外线,当检测方向遇到障碍物(反射面)时,红外线反射回来被接收管接收,经过比较器电路处理之后,输出接口会输出一个数字信号(低电平或高电平,取决于电路设计),有效范围一般为2~30CM。传感器主动红外反射探测,因此反射率和形状是探测距离的关键。其中黑色探测距离小,白色距离大;小面积物体距离小,大面积距离大。

在这里插入图片描述

本实例将演示如何使用红外寻迹传感器。本次使用到的传感器,在检测到检测方向障碍物信号时,电路持续输出低电平。

2、硬件准备

  • ESP8266 NodeMCU开发板一块
  • 红外寻迹传感器模块一个
  • 面板板一个
  • 杜邦线若干
  • 数据线一条

硬件接线如下:

序号 传感器引脚 ESP8266开发板
1 G GND
2 + 3V3
3 +S A0

3、软件准备

  • Arduino IDE或VSCode + PlatformIO

在前面的文章中,对如何搭建ESP8266开发环境做了详细的介绍,请参考:

ESP8266 NodeMCU的引脚介绍在前面的文章中做了详细的介绍,请参考:

4、代码实现

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
int sensorPin = A0; // 输入引脚
int sensorValue = 0; // 传感器采集值

void setup ()
{
pinMode(BUILTIN_LED, OUTPUT);
Serial.begin (9600);
}

void loop ()
{
sensorValue = analogRead (sensorPin);
Serial.println (sensorValue, DEC); //
if(sensorValue <= 100)
{
digitalWrite (BUILTIN_LED, HIGH); //led off
delay(1000);
}
digitalWrite (BUILTIN_LED, LOW); //led on - default
}

代码演示了,当检测到黑色轨迹线或有障碍物时,LED点亮;否则,LED熄灭。

文章来源: https://iotsmart.blog.csdn.net/article/details/126175494