Arduino红外信号检测器的制作

电子说

1.3w人已加入

描述

步骤1:基本材料/布局

Arduino

材料

10k Ohm电阻器

红外光电晶体管

连接导线

电路布局(请参见图)

简单地串联光电晶体管和电阻器。连接光电晶体管的发射极引脚(长脚)连接到GND,集电极引脚(短脚)连接到电阻,该电阻将连接到Arduino的5v引脚。

模拟引脚0需要读取光电晶体管两端的电压降,因此连接A0引脚连接到光电晶体管的集电极引脚。

第2步:代码

Arduino

Arduino

Arduino代码从IR光电晶体管获取100个读数(已读取)每100uS大约aprox),并使用它来确定此信号是否包含设定的频率。

代码Flash_det是信号检测代码,它将检测大约200Hz的脉冲IR信号(可以通过flashing_ir代码生成)。

Flash_det的频率通过更改两个脉冲之间的距离来设置“检测到”(在Flash_det代码中为48)

if(t》 t2){

Val = t-t2-48;//在这里更改

}//如果

else {

Val = t2-t-48;//和这里

}//结束其他

如果您想更改IR频率,Arduino将检测到未注释打印输出代码的IR频率,并使用它来确定平均值脉冲之间的距离(见图)。如果您过多更改频率,则还必须更改采样率-设置为-delayMicroseconds(1);

“信号”功能是进行检测的地方,它将返回阵列的最低值(IR源的信号强度),取决于设置频率是否为正或负被检测到-如果检测到信号,则为负。

Flash_det最终将打印出返回值。

-请注意,可以修改Flash_det代码以检测最突出的红外光源的频率以及它的力量。

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

全部0条评论

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

×
20
完善资料,
赚取积分