雷竞技注册
项目

arduino控制的光传感器

2015年6月1日通过蒂姆血性小子

通过监控光相关电阻或光敏电阻的输出,Arduino可以知道它的亮度或暗度。当光线低于一定水平时,Arduino会打开两个led。

通过监控光相关电阻或光敏电阻的输出,Arduino可以知道它的亮度或暗度。当光线低于一定水平时,Arduino会打开两个led。

光相关电阻或光敏电阻是一种传感器,其电阻随着照射在其上的光量的增加而减小。当黑暗时,光敏电阻的电阻可能高达几个MΩ。然而,在光线较弱时,光敏电阻的电阻可能低至几百欧姆。

在这个实验中,我们将一个光敏电阻连接到一个Arduino模拟输入,并使用analogRead()函数读取值。根据Arduino读取的值,程序将设置引脚3 HIGH或LOW来打开或关闭LED夜灯。阈值为150。当模拟值读取小于150时,Arduino会打开led。当它读取的模拟值低于150时,Arduino将关闭led。


Arduino光传感器硬件要求

  • 1 x光敏电阻
  • 2 x领导
  • 2个470欧姆电阻
  • 1 × 1 ω电阻
  • 1 x Arduino Mega2560
  • 1 x电路试验板
  • 跳线

接线图

您可以按照下图所示连接组件。将led连接到Arduino的引脚3。两个470欧姆电阻是限流电阻。光敏电阻的一引线连接到5V,另一引线连接到1 kohm电阻。10kohm电阻的另一引线连接到地。这就形成了一个分压器,分压器的输出连接到Arduino的引脚A1。当照射在光敏电阻上的光变强时,电阻减小,分压器的输出电压增加。当入射光变弱时,情况就相反了。

这里有一张设置的照片:


设置

  1. 通过1千欧姆电阻将LDR的两个端子中的一个连接到5V,另一个连接到GND。
  2. 将一根导线的一端连接到模拟引脚A1,另一端连接到1K电阻的非接地端子。
  3. 连接两个led并联,都通过一个470欧姆电阻和负极接地如图所示的电路图。
  4. 通过470欧姆电阻将引脚3连接到led的正端。
  5. 将所有接地端子连接到Arduino的GND引脚。
  6. 使用Arduino USB线连接Arduino,使用Arduino IDE软件将程序上传到Arduino。
  7. 通过电源、电池或USB线为Arduino板供电。
如果房间是亮的,led灯不应该亮。试着用你的手盖住光敏电阻让他们打开它。拿开你的手,观察它们是否会再次关闭。


代码

const int领导= 3;//变量存储pin数void setup() {pinMode(led, OUTPUT);//配置引脚3作为输出}void loop() {int sensor_value = analogRead(A0);if (sensor_value < 150)// led状态改变的点{digitalWrite(led, HIGH);//设置led ON} else {digitalWrite(led,LOW);//关闭led}}

An_Arduino-controlled_light.zip

视频

自己试试这个项目吧!BOM。

7评论