风筝
发表于: 2018-8-15 09:22:45 | 显示全部楼层

由于不同的颜色反射光照的强度不同,我们可以使用光敏电阻或光敏三极管来感应不同的颜色。


所需的材料

●     光敏三极管

●     光敏电阻

●     Arduino Mega开发板

●     连接导线

●     发光二极管

●     LED限流电阻(250欧)

●     传感器校准电阻(10欧电位器)


光敏三极管是一种三端器件,就像普通的三级管一样,带有基极、集电极和发射极,但光敏三极管基极也对光线敏感。典型的光敏三极管如下所示。照射在光敏三极管上的光线将引起基极电流流动,这将导致三极管导通。通过三极管的电流与落在三极管基极上的光强度成比例。

trans.png

junction.png


光敏电阻(LDR)在光照射时会改变电阻值。当没有光线照射在它们上面时,电阻值处于最大值,可能是兆欧或更大。当光线照射在光敏电阻上时,该阻值会根据光线的亮度而降低。最小电阻可能只有几百欧姆。下面是一张常见的光敏电阻的照片:

ldr.png


颜色传感器

要使用光敏三极管或光敏电阻作为颜色传感器,可以将它们作为分压电路的一部分。因为两个组件都可以根据落在它们上的光强度来控制电流,所以分压器的输出将与光强度成比例。并且,由于不同的颜色反射不同的光强度,如果您准确地校准系统,您可以使用它们来检测反射光的颜色。


以下是配置颜色传感器的方法:

color_sensor_arduino.jpg

cct1.png


Vout是随着光照强度变化而变化的电压。因此,当传感器前面的颜色发生变化时,Vout会发生变化,这种变化用于识别颜色。


要校准传感器,您需要进行一些实验。将不同颜色的纸张放在传感器前面并记下输出电压。然后,您可以在Arduino程序中使用此值。


在这里使用热缩管是非常关键的。在光敏三极管或光敏电阻上使用热缩管将有助于阻挡环境光,并有助于确保传感器仅接收来自彩色纸的光。


操作方法

1.    首先,收集所有必需的组件,如下所示:

step1.png

2.    组装电路,如下图所示。首先,我们将使用光敏三极管作为颜色传感器。

s2.png

3.    组装后,面包板将如下所示:

s3.png

4.    将Arduino连接到笔记本电脑并观察串口监视器上的读数:

13.png

5.    通过在传感器前放置不同的颜色板并记录值来校准传感器。

14.png

6.    记录值后,修改下面给出的代码,然后将程序上传到Arduino开发板。

7.    用光敏电阻替换光电晶体管并重复校准过程。

15.png


代码

  1. int signal=A0;
  2. int value=0;
  3. void setup()
  4. {
  5.   Serial.begin(9600);          // opens serial port, sets data rate to 9600 bps
  6.   pinMode(signal,INPUT);
  7. }
  8. void loop()
  9. {
  10.   delay(500);
  11.   value=analogRead(signal);
  12.   Serial.println(value);
  13.   delay(500);

  14. //Conditions for different colors

  15.   if (value>100)
  16.   {
  17.     Serial.println("White");
  18.   }
  19.    else if (value<15)
  20.   {
  21.     Serial.println("Black");
  22.   }
  23.   else if (value<= 65 && value >50)
  24.   {
  25.     Serial.println("RED");
  26.   }
  27.    else if (value>=68 && value<80)
  28.    {
  29.     Serial.println("Green");
  30.   }
  31.   else if (value<30 && value>20)
  32.   {
  33.     Serial.println("Blue");
  34.   }
  35. }
复制代码

跳转到指定楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题 705 | 回复: 1492



手机版|

GMT+8, 2024-11-22 04:38 , Processed in 0.036829 second(s), 6 queries , Gzip On, MemCache On. Powered by Discuz! X3.5

YiBoard一板网 © 2015-2022 地址:河北省石家庄市长安区高营大街 ( 冀ICP备18020117号 )

快速回复 返回顶部 返回列表