零知智障小车系列3-红外寻迹模块使用

本次讲解红外寻迹模块的使用,下面是四路红外寻迹模块和配套的控制板。红外寻迹模块由发射管接收管和配套控制板组成,工作时发射管发射红外线,接收管接收发射回来的红外线。当红外线被深色物体吸收较多而发射回来的很少时,OUT端为高电平,否则为低电平。一般白色的是发射管,黑色的是接收管。因此当我们的控制板out端输出为高时表明检测到黑线,当然,这个检测的距离需要根据我们需要进行调整(选择控制板上的电位计即可),以便能检测到合适的距离的黑色和白色。

1、实验材料

红外寻迹模块配套控制板
零知标准板
杜邦线若干

2、接线

首先我们需要把红外模块与控制板对应连接到一起,如下:

连接好后,我们在把控制板安装如下引脚顺序连接到零知标准板上:

实际线路如下:

3、程序


												
	/**
	*    文件: 红外寻迹测试.ino      by 零知实验室([url]www.lingzhilab.com[/url])
	*    -^^- 零知开源,让电子制作变得更简单! -^^-
	*    时间: 2018/10/13 16:18
	*    说明: 
	**/
	 
	//红外巡线
	#define LINE1       A0
	#define LINE2       A1
	#define LINE3       A2
	#define LINE4       A3
	 
	// the setup routine runs once when you press reset:
	void setup() {
	    // put your setup code here, to run once:
	     
	    pinMode(LINE1,INPUT);
	    pinMode(LINE2,INPUT);
	    pinMode(LINE3,INPUT);
	    pinMode(LINE4,INPUT);
	     
	    Serial.begin(9600);
	}
	 
	// the loop routine runs over and over again forever:
	void loop() {
	    // put your main code here, to run repeatedly:
	 
	    int IR_1 = digitalRead(LINE1);
	    int IR_2 = digitalRead(LINE2);
	    int IR_3 = digitalRead(LINE3);
	    int IR_4 = digitalRead(LINE4);
	 
	    Serial.print("IR:");
	    Serial.print(IR_1);
	 
	    Serial.print(", ");
	    Serial.print(IR_2);
	     
	    Serial.print(", ");
	    Serial.print(IR_3);
	     
	    Serial.print(", ");
	    Serial.print(IR_4);
	 
	    Serial.println("");
	     
	    delay(300);
	}				
						

我们把上述代码上传到零知标准板后,就可以进行黑色、白色线的检测了;只要对应的引脚检测到高电平就表示黑色线了。 完整的工程代码- 红外寻迹测试.7z (663 Bytes, 下载次数: 23)

完整工程:红外寻迹测试.7z(点击下载)