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

本次讲解红外寻迹模块的使用,下面是四路红外寻迹模块和配套的控制板。

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

一、材料

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

二、连线:

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

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

实际线路如下:

三、代码


							
  /**
  *    文件: 红外寻迹测试.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(点击下载)