数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 3704|回复: 30

[Arduino] 【Arduino】168种传感器模块系列实验(148)---E18-D80避障传感器

[复制链接]
发表于 2020-2-26 16:11:50 | 显示全部楼层 |阅读模式
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试做实验,不管成功与否,都会记录下来---小小的进步或是搞不定的问题,希望能够抛砖引玉。

【Arduino】168种传感器模块系列实验(资料+代码+图形+仿真)
实验一百四十八:E18-D80NK 漫反射式红外光电开关避障传感器模块



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
 楼主| 发表于 2020-3-1 06:03:25 | 显示全部楼层
w9988 发表于 2020-2-28 15:00
有偿的单片机应用、开发设计可以找您吗?

可以啊,有空多交流
回复 支持 反对

使用道具 举报

发表于 2020-2-28 15:00:48 | 显示全部楼层
有偿的单片机应用、开发设计可以找您吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-27 12:13:30 | 显示全部楼层
fryefryefrye 发表于 2020-2-27 11:50
我准备用打印机打印一张纸条,上面打印黑白间隔的竖条,把它贴在运动的设备部件上。
然后用红外对管照在上 ...

:victory:真不错,加油
回复 支持 反对

使用道具 举报

发表于 2020-2-27 11:50:26 | 显示全部楼层
我准备用打印机打印一张纸条,上面打印黑白间隔的竖条,把它贴在运动的设备部件上。
然后用红外对管照在上面,用来测量运动的速度。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-27 06:20:11 | 显示全部楼层
实验开源图形编程(Mind+)



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 21:11:32 | 显示全部楼层
本帖最后由 eagler8 于 2020-2-26 21:12 编辑

附录:认识数字红外避障传感器视频
https://haokan.baidu.com/v?pd=wisenatural&vid=283597865868477215




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 21:04:37 | 显示全部楼层

实验仿真编程(linkboy3.6)之二盲人避障器



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 21:02:30 | 显示全部楼层
实验仿真编程(linkboy3.6)



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 20:18:58 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 20:17:55 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 20:14:31 | 显示全部楼层


注意事项
1、在接线的时候,请避免出现电源和地接错的现象,该操作有可能造成传感器永久性损坏;
2、信号输出端请加上拉电阻;
3、为保护动作的可靠和寿命长,请避免有关规定以外的温度外界(户外)条件下,接近传感器虽为耐水结 构,若装上罩使用,勿使水和水容性切削油等淋到,则可更好地提高可靠性及寿命。还请避免在有化学药剂,特别是在强碱、酸、硝酸、铭酸、热浓硫酸等气候中使用。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 20:06:33 | 显示全部楼层
串口输出结果
当传感器没有监测到目标的时候,Uno控制板上13脚的LED灯熄灭,并且串口监视器会接收到数字“1”;当传感器监测到目标的时候,LED灯会被点亮,并且串口监视器会接收到数字“0”。如果需要调节监视距离,可以用一字螺丝刀调节背后的旋钮。



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 20:04:47 | 显示全部楼层
  1. /*
  2.   【Arduino】168种传感器模块系列实验(资料 +代码 +图形 +仿真)
  3.   实验一百四十八:E18-D80NK 漫反射式红外光电开关避障传感器模块
  4.   程序之三:串口输出检测情况,同步控制LED
  5.   实验接线
  6.   VCC      +5V
  7.   GND      GND
  8.   OUT       2
  9.   LED      13
  10. */

  11. const int InfraredSensorPin = 2;
  12. //将信号引脚连接到数字引脚2
  13. const int LedDisp = 13;
  14. //将控制LED连接到数字引脚13

  15. void setup()
  16. {
  17.   Serial.begin(57600);
  18.   Serial.println("Start!");
  19.   pinMode(InfraredSensorPin, INPUT);
  20.   pinMode(LedDisp, OUTPUT);
  21.   digitalWrite(LedDisp, LOW);
  22. }

  23. void loop()
  24. {
  25.   if (digitalRead(InfraredSensorPin) == LOW)  digitalWrite(LedDisp, HIGH);
  26.   else  digitalWrite(LedDisp, LOW);
  27.   Serial.print("Infrared Switch Status:");
  28.   Serial.println(digitalRead(InfraredSensorPin), BIN);
  29.   delay(1000);
  30. }
复制代码


回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 19:53:49 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 19:48:00 | 显示全部楼层
本帖最后由 eagler8 于 2020-2-26 19:50 编辑

红外避障使用很简单,就是OUT口检测到有效距离内有障碍物时,给OUT发送高电平(或低电平)。可以利用这一特性,进行计数。

需要注意的是,根据障碍物在识别范围内所停留的时间不同,模块可能会在障碍物停留的这一段时间频繁的发送高电平(或低电平),所以,要判断两个标志,一个是障碍物进入,一个是障碍物移出,保证在进入后只记录一次数据即可。

代码如下:
  1. /*
  2.   【Arduino】168种传感器模块系列实验(资料 +代码 +图形 +仿真)
  3.   实验一百四十八:E18-D80NK 漫反射式红外光电开关避障传感器模块
  4.   程序之二:利用红外避障(障碍检测)进行计数
  5.   实验接线
  6.   VCC      +5V
  7.   GND      GND
  8.   OUT       2
  9. */

  10. int i=0; //计数
  11. bool b=false; //障碍物是否进入
  12. void setup() {
  13. Serial.begin(9600);
  14. pinMode(2,INPUT);
  15. }
  16. void loop() {
  17. if (digitalRead(2)==LOW) //如果发送低电平,识别到障碍物进入
  18. {
  19.   if (b==false) { //如果上一次检测时,障碍物没有进入,则视为第一次进入。
  20.     b=true;  //先将标志记录为障碍物已进入。
  21.     i+=1;  //计数+1
  22.     Serial.print("OK:");
  23.     Serial.println(i);
  24.    }
  25. }
  26. else {  //如果检测到障碍物移出
  27. b=false;  //将标志记录为障碍物已移出。
  28. }
  29.   delay(1);
  30. }
复制代码


回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 19:40:17 | 显示全部楼层
本帖最后由 eagler8 于 2020-2-26 20:10 编辑



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 19:34:44 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 19:34:01 | 显示全部楼层
本帖最后由 eagler8 于 2020-2-26 19:52 编辑

实验开源代码
  1. /*
  2.   【Arduino】168种传感器模块系列实验(资料 +代码 +图形 +仿真)
  3.   实验一百四十八:E18-D80NK 漫反射式红外光电开关避障传感器模块
  4.   程序之一:串口输出检测情况
  5.   实验接线
  6.   VCC      +5V
  7.   GND      GND
  8.   OUT       2
  9. */

  10. void setup()
  11. {
  12.   Serial.begin(9600); //以9600的速率启动串行通信
  13.   pinMode(2, INPUT); //插脚2作为信号输入
  14. }

  15. void loop()
  16. {
  17.   while (1) {
  18.     delay(1000);
  19.     if (digitalRead(2) == LOW) {
  20.       //如果未检测到信号打印冲突
  21.       Serial.println("Collision Detected.");
  22.     }
  23.     else {
  24.       // 如果检测到信号打印冲突
  25.       Serial.println("No Collision Detected.");
  26.     }
  27.   }
  28. }
复制代码


回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 19:10:36 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-7-19 20:44 , Processed in 0.202800 second(s), 11 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表