0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

用IR传感器和Arduino制作一个数字转速计(附代码)

芯情观察猿 来源:芯情观察猿 作者:芯情观察猿 2022-08-25 09:55 次阅读

本项目采用IR传感器Arduino开发板制作了一个数字转速计,以RPM为单位测量马达的转数。项目黑简单,只需将IR传感器和Arduino板子与16*2 LCD连接即可。

BOM表及电路图


本转速计可连续计数5秒。项目BOM表如下:

Arduino UNO开发板 x1

16*2 LCD模块 x1

IR传感器模块(含发射和接收) x1

轻触开关(Reset开关) x1

面包板 x1

连接线 x1


BOM表中,IR传感器担当测速功能,该模块组合了一对发射器和接收器,可测量任何旋转物体。当我们按下开始健后,IR传感器的发射器发射的IR光线被反射后被IR接收器接收,其输出的脉冲信号被Arduino控制器检测


pYYBAGMG1oyAdu7AAABGGirr35U299.png?source=d16d100b

IR传感器由一个IR LED和一个IR光电管组成,工作波长0.75-3μm。这里的IR光电管与用来测量IR辐射量的普通光电二极管不同,其作用是将IR光线反射回去,由IR接收器处理。IR接收器根据接收的IR光线的强度,根据特定算法得出被测物体的转速。项目使用的IR传感器特征如下:

1. 工作电压:3.0–5.0V

2. 探测距离:2–30cm(可通过电位器调节)

3. 电流消耗:23mA(3.3V);43mA(5.0V)

4. 动态输出电平:检测到物体时输出“低”电平逻辑

5. 板载障碍物LED指示器


本项目的接线稍稍复杂,具体电路图说明如下:

LCD引脚 1, 3 ,5 ,16 ——— GND

LCD引脚 2, 15————— VCC (+5V)

LCD引脚 4 —————— – Arduino引脚 D7

LCD引脚 6 —————— – Arduino引脚 D6

LCD引脚 11 ——————- Arduino引脚 D5

LCD引脚 12 ——————- Arduino引脚 D4

LCD引脚 13 ——————- Arduino引脚 D3

LCD引脚 14 ——————- Arduino引脚 D2

IR传感器模块引脚 -GND —— GND

IR传感器模块引脚 +VCC —— VCC

IR传感器模块引脚 OUT — Arduino引脚D9

轻触开关端子 ————- Arduino引脚D12

轻触开关端子 ————-GND


poYBAGMG1o2AUpdUAAKto3LeIP0595.png?source=d16d100b

本转速计以RPM为单位测量风扇马达的转速,计算公式为:RPM= 转数 x 12 / 物体

这里的“物体”数值为每个风扇包含的叶片数目。

上传Arduino代码


本项目的代码较简单。如果上述电路连接妥当,将这些代码上传到装有Arduino IDE的电脑上,就可以开始测度了。


poYBAGMG1o2AF2LbAAP2FYHNWOQ838.png?source=d16d100b

#include

LiquidCrystal lcd(7, 6, 5, 4, 3, 2);

#define sensor 9

#define start 12

int delay1()

{

//unsigned int long k;

int i,j;

unsigned int count=0;

for(i=0;i<1000;i++)

{

for(j=0;j<1000;j++)

{

if(digitalRead(sensor))

{

count++;

while(digitalRead(sensor));

}

}

}

return count;

}

void setup()

{

pinMode(sensor, INPUT);

pinMode(start, INPUT);

pinMode(2, OUTPUT);

lcd.begin(16, 2);

lcd.print(” Tachometer”);

delay(2000);

digitalWrite(start, HIGH);

}

void loop()

{

unsigned int time=0,RPM=0;

lcd.clear();

lcd.print(” Please Press “);

lcd.setCursor(0,1);

lcd.print(“Button to Start “);

while(digitalRead(start));

lcd.clear();

lcd.print(“Reading RPM…..”);

time=delay1();

lcd.clear();

lcd.print(“Please Wait…..”);

RPM=(time*12)/3;

delay(2000);

lcd.clear();

lcd.print(“RPM=”);

lcd.print(RPM);

delay(5000);

}


如果上传代码后LCD不显示计数数据,先检查Arduino和LCD模组的连接是否可靠,也可联系本文作者或硬之城技术人员。

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

    关注

    2557

    文章

    51729

    浏览量

    758800
  • BOM表
    +关注

    关注

    1

    文章

    13

    浏览量

    8924
  • Arduino
    +关注

    关注

    188

    文章

    6479

    浏览量

    188671
收藏 人收藏

    评论

    相关推荐

    用于课题的无线转速霍尔传感器,新人应该从哪里开始学习

    完全没电路的基础,但是课题上导师要求设计款无线的霍尔转速传感器,电池供电然后通过无线技术去读取传感器上的转速。想请教下各位大佬应该从哪里开
    发表于 01-08 10:36

    PPS编译生成了.h文件,文件里头的接口段代码{44,28,0,0}这四个数字分别代表什么意思啊?

    PPS编译生成了.h文件,文件里头的接口段代码如下: static control VOLUME_controls[] = { {44,28,0,0} }; static s
    发表于 10-30 06:37

    开源项目!基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测

    这是结合了3D打印、舵机、PIR传感器和DFPlayer MP3模块的DIY项目,旨在制作
    发表于 10-28 10:18

    SJK-A106转速传感器是什么类型传感器

    转速传感器种广泛应用于各个领域的重要传感器类型,具有高精度、高可靠性和广泛适用性等特点。
    的头像 发表于 10-12 15:08 274次阅读

    本安型转速传感器

    本安型转速传感器
    发表于 10-09 10:43 0次下载

    倾斜传感器的种类与选择技巧

    。 倾斜传感器的类型繁多且特性不同 [倾斜传感器]所采用的原理相当多样,包括使用加速度原理的倾斜传感器,利用物体受到重力时的加速度来计算倾斜角度;另
    的头像 发表于 10-02 17:10 833次阅读
    倾斜<b class='flag-5'>传感器</b>的种类与选择技巧

    DSP做一个数字电源,如何选择数字电源的运放?

    打算DSP做一个数字电源,在运放选型的地方卡住了, 数字电源的运放在选择上有什么讲究? 改重点关注那些参数?
    发表于 08-22 06:49

    数字传感器与模拟传感器的区别

    数字传感器种将物理或化学量转换为数字信号(或数字编码)输出的传感器。它内部通常包含
    的头像 发表于 07-18 15:57 1433次阅读

    基于Arduino数字电容式触摸传感器设计

    数字电容式触摸传感器,简称电容式触摸传感器,是种通过检测物体(如手指)与传感器表面之间电容变化来实现触摸检测的
    的头像 发表于 07-05 17:47 1965次阅读
    基于<b class='flag-5'>Arduino</b>的<b class='flag-5'>数字</b>电容式触摸<b class='flag-5'>传感器</b>设计

    转速传感器对旋转机械轴的转速测量应用

    定制型的转速传感器在旋转机械轴的转速测量中发挥着重要作用。通过实时监测转速数据,可以确保客户设备的正常运行、优化控制策略、提供安全保护以及进行故障诊断。随着技术的不断发展,各种
    的头像 发表于 07-03 11:11 561次阅读
    <b class='flag-5'>转速</b><b class='flag-5'>传感器</b>对旋转机械轴的<b class='flag-5'>转速</b>测量应用

    英飞凌推出用于Arduino的XENSIVTM传感器扩展板

    全球功率系统和物联网领域的半导体巨头英飞凌科技股份公司,近日宣布推出款专为Arduino用户打造的XENSIV™传感器扩展板。这款多功能工具,特别为智能家居和各类消费应用中的智能传感器
    的头像 发表于 05-10 10:50 729次阅读

    英飞凌推出用于Arduino的XENSIV传感器扩展板, 搭载英飞凌和Sensirion的智能家居应用传感器

    的XENSIVTM传感器扩展板,这是款专为评估智能家居和各种消费应用中的智能传感器系统而设计的多功能工具。这款创新型扩展板将英飞凌丰富的传感器产品与Sensirion的SHT35湿度
    发表于 05-07 16:35 894次阅读
    英飞凌推出用于<b class='flag-5'>Arduino</b>的XENSIV<b class='flag-5'>传感器</b>扩展板, 搭载英飞凌和Sensirion的智能家居应用<b class='flag-5'>传感器</b>

    常见转速传感器的类型及特点

    转速传感器   磁电式转速传感器种基于电磁感应原理的传感器,用于检测旋转物体的
    的头像 发表于 04-12 08:44 3304次阅读

    英飞凌和盛思锐合作推出款支持Arduino传感器扩展板

    据麦姆斯咨询报道,近期,英飞凌(Infineon)推出了款支持Arduino传感器扩展板,用于评估智能家居和其它消费类应用中的智能传感器系统。
    的头像 发表于 04-10 09:05 2443次阅读

    如何用Arduino制作简易自动喂鱼

    制作硬件电路了。 第2步:电路图和程序 我们可以将电路分为两部分,第部分是步进电机,另部分是超声波传感器。 将步进电机连接到驱动,然
    发表于 03-28 11:25