37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是搞不掂的问题,希望能够抛砖引玉。
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百三十九:E18-D80NK 红外避障传感器模块 接近开关 智能小车 3-80cm
E18-D80NK红外避障传感器模块的实验环境
一、红外避障传感器模块实验所需硬件清单
Arduino Uno开发板 X1
杜邦线 若干(备了9条)
高电平触发有源蜂鸣器模块X1
LED发光二极管(绿、蓝色)X2
高电平触发单路5V继电器模块X1
E18-D80NK红外避障传感器模块X1
Proto Shield 原型扩展板(带mini面包板)X1
二、传感器模块实验所需软件平台
代码编程 Arduino IDE (版本1.8.19)
仿真编程 Linkboy (版本V4.6.3)
图形编程 Mind+ (版本 V1.7.0 RC2.0)
以及编玩边学(线上平台https://ide.codepku.com/?type=Arduino)
三、红外避障传感器模块实验接线示意图
引脚排列:
棕色: VCC,5VDC 正电源
蓝色: GND,负源0VDC
黑色: NPN晶体管结构的信号管脚已将内部10k电阻拉至VCC。
程序四:红外避障传感器控制LED之二
(1)实验开源图形编程(Mind+、编玩边学)
(2)实验串口返回情况
程序五:利用红外避障(障碍检测)进行计数
(1)Arduino参考开源代码
/*
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
程序五:利用红外避障(障碍检测)进行计数
*/
int i = 0; //计数
bool b = false; //障碍物是否进入
void setup() {
Serial.begin(9600);
pinMode(2, INPUT);
}
void loop() {
if (digitalRead(2) == LOW) //如果发送低电平,识别到障碍物进入
{
if (b == false) {
//如果上一次检测时,障碍物没有进入,则视为第一次进入。
b = true; //先将标志记录为障碍物已进入。
i += 1; //计数+1
Serial.print("OK:");
Serial.println(i);
}
}
else {
//如果检测到障碍物移出
b = false; //将标志记录为障碍物已移出。
}
delay(1);
}
(2)实验串口返回情况
程序六:盲人避障器(有障碍时蜂鸣器鸣响)
(1)实验开源仿真编程(Linkboy V4.63)
(2)实验场景图