Arduino学习笔记 红外探测
红外探测原件
三个接口分别是VCC(电源),GND(接地),OUT(信号接收)
#接下来通过代码讲解使用方法
int redout1=8; //用8号位控制红外
void setup()
{
Serial.begin(9600); //设置波特率
pinMode(redout1,INPUT); //设置为接收模式
}
void loop()
{
int date;
date=digitalRead(8);
if(date==1) //检测到红外线则返回值1,未检测到则返回值为0
Serial.println("未检测到黑线");
else
Sreial.println("检测到黑线");
}
该模块的使用基本上是在寻迹小车上进行使用的,探测方式则要使用是两个及其以上红外探测模块,那么就再对多个原件的配合使用在进行讲解
再此就对使用两个模块探测的寻迹小车的配合进行简单讲解
假设两个探测器都检测到黑线停止,都未检测到黑线直行,否则进行方向调整
左侧探测器 | 右侧探测器 | 小车运动模式 |
---|---|---|
0 | 0 | 停止 |
1 | 0 | 向右转 |
0 | 1 | 向左转 |
1 | 1 | 直行 |
上面已经提到检测到黑线,则黑线吸收红外线,模块接收不到信息,所以返回0
检测不到黑线,则返回1。
若左侧检不到黑线(1,0),则表示小车已经向左侧偏移,所以要让小车向右转,同理,如果为右侧检测不到黑线(0,1),则小车向左转,若都检测不到黑线(1,1)则直行。
在此就不附带具体的小车代码了,在完成小车制作后再将完整代码与制作寻迹小车的博客一同发出!