第三十六篇、基于Arduino uno,获取红外寻迹传感器的原始值——结果导向

0、结果

说明:先来看看串口调试助手显示的结果,没有障碍物的时候串口打印1,有障碍物的时候串口打印0,如果是你想要的,可以接着往下看。


1、外观

说明:虽然红外寻迹传感器形态各异,但是原理和代码都是适用的。


2、连线

说明:只需要连接三根线。
uno————红外寻迹传感器

 3、源程序

说明:采用非阻塞方式编写,一定时间检测一次传感器的值,并将对应功能进行函数化,方便移植。

/*
  wire:
  VCC------VCC
  GND------GND
    2------OUT*/
/****************************************infrared part****************************************/
#define infraredPin 2
#define infraredTimeInterval 100                            //Detect the time interval of a trip
unsigned long infraredTimes = 0;                            //Record the device running time//Define a pin
boolean infraredVal = false;                                //Define a variable
/****************************************set up and loop part*********************************/
void setup() {
  Serial.begin(9600);                                   //Example Set the baud rate of the serial port to 9600

  pinMode(infraredPin, INPUT_PULLUP);                       //The pin is set to pull-up input

  //digitalWrite(relayPin, HIGH);
  Serial.println("Go online!");                         //The serial port displays the corresponding value
}
void loop() {
  getinfraredData();                                        //Get Hall's data
}
/****************************************infrared part****************************************/
/*Get infrared's data*/
void getinfraredData() {
  if (millis() - infraredTimes >= infraredTimeInterval) {      //This command is executed once in a while
    infraredTimes = millis();

    infraredVal = digitalRead(infraredPin);                    //Read the status of the sensor pins

    Serial.println(infraredVal);                           //The serial port displays the corresponding value
  }
}

4、注意事项

说明:如果有什么问题可以评论@我,我将帮助你。电位器可以调节灵敏度。在光比较强的场景下会不准,例如在光照情况下,会不准。反应速度很快。

5、基本原理

        红外寻迹传感器是一种常用于智能小车、机器人等项目的传感器,可以检测地面上黑线、白线等轨迹,从而实现小车或机器人沿着指定路径自动行驶的功能。其工作原理基于红外线灰度测量。

        当光照射在红外寻迹传感器上时,传感器内部的红外发射管会发射出一定频率的红外线,照射到地面上的黑线或白线等轨迹表面后,会反射回来,经过传感器内部的红外接收管检测。由于黑线和白线反射红外线的程度不同,因此传感器通过检测红外线的强度就可以判断所处位置是否在轨迹上,以实现跟踪轨迹的功能。

        为了提高传感器的检测精度,通常还会在传感器外部加上一些凸起的结构,使传感器与地面保持一定的距离,并且只能检测到轨迹上方向传感器的光线,避免干扰。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值