怎样将IR Sensor与Arduino和程序结合使用以消除噪声

电子说

1.3w人已加入

描述

步骤1:红外传感器的工作:

红外传感器

使用红外传感器非常容易测量距离。

一束红外光透射到目标,反射光束被光电二极管捕获。

光电二极管测量光的强度(这里大部分是红外光)。红外二极管不仅可以测量红外光的强度,而且对可见光也很敏感。

在这里,光电二极管记录的红外光的强度代表目标与传感器之间的距离。

目标越近,记录的光强度越高,并且随着距离的增加而降低。

步骤2:为传感器制造电路:

红外传感器

我们正在使用基本电路来驱动光电二极管。我们还可以使用基于运放的更准确,更好的方法来进行精确测量。

IR LED与Arduino的数字引脚串联了100欧姆的电阻。然后将光电二极管连接到与5v电源串联的5k欧姆电阻,并从信号中取出信号,该信号进入Arduino的模拟输入引脚。

步骤3:检查电路:

将此代码上传到arduino。

void setup()

{

Serial.begin(9600);

pinMode(6,OUTPUT);

}

无效循环()

{digitalWrite(6,HIGH);

delayMicroseconds(500);

A = analogRead(A3);

Serial.println(a)的}

现在打开串行绘图仪,然后将一些目标移到传感器前面。绘图也应根据目标位移的移动而移动。

此方法的问题:

测量对环境敏感。光线的任何变化都会破坏测量。

例如,如果我们在早上校准传感器,则不能在晚上使用。甚至在室内,如果我们打开或关闭室内灯光,校准也会发生变化。

步骤4:噪声和解决方案的来源:

红外传感器

有多种噪声源,例如:

太阳的红外辐射:很大一部分对地球的IR辐射。

室内照明:红外光电二极管不仅捕获红外光,而且还感知到室内照明光透射的可见光。

热源:所有热源均发出某种形式的辐射,这些辐射被IR光电二极管捕获。这些辐射的数量,因此误差取决于身体的温度和大小。

这些源发出的IR辐射被IR光电二极管捕获。因此误差被添加到我们的测量中。

解决方案:

由于 可以显示在第三张图片中,

如果我们打开led比光电二极管测量噪声+信号,如果led关闭光电二极管仅测量噪声。

这两个值之间的差将得到去噪数据。

如果我们非常快地读取两个读数足够的去噪效果会更好。

附加的代码可用于从传感器获取纯净/去噪的数据。

步骤5:去噪和应用的测试代码

红外传感器

这些图片显示RAW数据,噪声值和纯信号。您还可以参考视频,其中存在闪烁的光以及静态噪声时传感器的输出。

此方法可用于线路跟随器,因此我们不需要每次都校准传感器采用。它也可以用于某些使用红外传感器具有相同优势的机器人。
       责任编辑:wv

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分