常用传感器讲解十四--障碍探测器(KY-032)

简介: 常用传感器讲解十四

具体讲解

截屏2023-12-27 下午7.43.23.png

KY-032避障传感器是为轮式机器人设计的可调节距离的红外接近传感器。也称为AD-032。
传感器的检测距离为2cm至40cm,可以通过旋转电位计旋钮进行调整。工作电压为3.3V-5V,因此适用于各种微控制器,例如Arduino,ESP32,Teensy,ESP8266,Raspberry Pi等。
它对环境光具有很强的适应性,并且可以准确感知周围环境的变化。

电路连接

该模块具有一对红外LED,一个发射器和一个接收器。发射的LED以一定频率发送红外光脉冲。当光线击中时,障碍物会反射回接收器LED。

KY-032有4个引脚:GND,+,S(输出)和EN。该跳线,使模块永久启用所以它总是检测障碍物。要控制传感器的状态,请删除跳线并使用EN引脚,“高”信号将启用传感器,而“低”信号将禁用传感器。

您可以通过旋转左旋钮来调整检测距离,将其旋转到中间以获得最大距离。右旋钮控制发射IR脉冲的频率,一直沿顺时针方向旋转以将发射器设置为与接收器一起工作所需的正确频率。

工作电压 3.3V – 5V直流
工作电流 ≥20mA
工作温度 -10°C – 50°C [14°F – 122°F]
检测距离 2厘米– 40厘米[0.79英寸– 15.75英寸]
IO接口 4线接口(-/ + / S / EN)
输出信号 TTL电平(如果有障碍物检测器,则为低电平;如果没有障碍物,则为高电平)
调整方式 多匝电阻调节
红外脉冲频率 符合HS0038DB数据表的38kHz
有效角度 35°
板子尺寸 1.6厘米x 4厘米[0.62英寸x 1.57英寸]
重量 9克

截屏2023-12-27 下午7.43.39.png

将模块的GND线(最左边的引脚)连接到Arduino上的GND,将+(第二个引脚)连接到5V。将信号(输出)连接到Arduino的引脚3。

代码实现

当传感器检测到障碍物时,它将在其输出引脚上发送LOW信号。未检测到障碍物或超出范围时,将发送HIGH信号。在以下示例中,当传感器检测到障碍物时,我们将打开Arduino引脚13上的LED。

int ledPin = 13;      // LED pin on arduino
int detectorPin = 3;  // obstacle avoidance sensor interface
int val;              // variable to store result
//int enablePin = 2;  // sensor enable interface (EN)

void setup()
{
   
   
  pinMode(ledPin, OUTPUT);  // Define LED as output interface
  pinMode(detectorPin, INPUT);  // Define obstacle avoidance sensor as input interface

  // [uncomment and remove jumper on module to use enable pin (EN)]
  //pinMode(enablePin, OUTPUT);
  //digitalWrite(enablePin, HIGH);  // Enable sensor
}

void loop()
{
   
   
  val = digitalRead(detectorPin); // Read value from sensor
  if(val == LOW) // When the sensor detects an obstacle, the LED on the Arduino lights up
  {
   
   
    digitalWrite(ledPin, HIGH);
  }
  else
  {
   
   
    digitalWrite(ledPin, LOW);
  }
}
相关文章
|
定位技术 索引
基于Amos路径分析的输出结果参数详解
基于Amos路径分析的输出结果参数详解
2397 2
|
Java
最详细 keil5 和 cubeMX安装教程
最详细 keil5 和 cubeMX安装教程
1529 0
|
存储 缓存 Linux
Linux Command dnf 软件包管理
Linux Command dnf 软件包管理
Linux Command dnf 软件包管理
|
传感器
STM32:红外传感器代码部分(内含实物图+外部信号流程,编写代码思路+代码+解析代码和扩展应用)
STM32:红外传感器代码部分(内含实物图+外部信号流程,编写代码思路+代码+解析代码和扩展应用)
6089 1
STM32:红外传感器代码部分(内含实物图+外部信号流程,编写代码思路+代码+解析代码和扩展应用)
|
存储 算法 C++
【c++丨STL】map/multimap的使用
本文详细介绍了STL关联式容器中的`map`和`multimap`的使用方法。`map`基于红黑树实现,内部元素按键自动升序排列,存储键值对,支持通过键访问或修改值;而`multimap`允许存在重复键。文章从构造函数、迭代器、容量接口、元素访问接口、增删操作到其他操作接口全面解析了`map`的功能,并通过实例演示了如何用`map`统计字符串数组中各元素的出现次数。最后对比了`map`与`set`的区别,强调了`map`在处理键值关系时的优势。
794 73
|
传感器 Ubuntu Java
ESP-IDF 蓝牙开发实战 — 传感器数据上传及手机控制开发板
ESP32-C3 蓝牙部分我们学习了GATT,本文博主手把手带领大家使用 ESP32-C3的蓝牙做一个简单的小应用。
3210 0
ESP-IDF 蓝牙开发实战 — 传感器数据上传及手机控制开发板
|
芯片
STM32CubeMX TM1637驱动数码管
STM32CubeMX TM1637驱动数码管
1799 6
使用ScottPlot库在.NET WinForms中快速实现大型数据集的交互式显示
使用ScottPlot库在.NET WinForms中快速实现大型数据集的交互式显示
657 1