【第六节】Arduino连接光敏电阻
通过光敏电阻判断当前环境光照强度
·
目录
Ⅰ 简介
光敏电阻是一种对光敏感的电子元件,其电阻值会随着入射光强度的变化而变化。这种特性使得光敏电阻在光照检测、自动控制、安防系统等领域有广泛应用。

1)主要特性
- 光谱响应:通常对可见光和红外光敏感
- 暗电阻:无光照时的电阻值(通常很高,可达MΩ级别)
- 亮电阻:强光照射时的电阻值(通常很低,可低至几百欧姆)
- 响应时间:从暗到亮或从亮到暗的变化需要一定时间(通常毫秒级)
- 温度系数:温度变化会影响其灵敏度
2)常见应用
- 自动路灯控制
- 相机测光系统
- security systems
- 光控玩具
- 环境光照监测
Ⅱ 工作原理
光敏电阻的核心材料是半导体光电导材料(如硫化镉CdS、硫化铅PbS等)。其工作原理基于光电导效应:
- 光电导效应:当光子能量大于材料禁带宽度时,价带电子吸收光子能量跃迁到导带,产生电子-空穴对
- 电导率变化:这些额外的载流子增加了材料的电导率,从而降低了电阻
- 光强依赖:光照越强,产生的载流子越多,电阻越小
Ⅲ 原理图及结构图
- 玻璃窗口:用于允许光线进入光敏电阻内部,确保光线能够到达敏感材料。
- 金属外壳:提供机械保护和电磁屏蔽,防止外界干扰。
- 陶瓷基座:作为支撑结构,提供稳定的基底,并有助于散热。
- 黑色绝缘玻璃:用于绝缘和防止内部元件受到外界光线或电磁干扰,同时保护内部材料。
- 电极引线:用于连接外部电路,传输电信号。
- 内部敏感材料(图中未标注,但通常为半导体材料如硫化镉):这是光敏电阻的核心部分,其电导率随光照强度变化。
光敏电阻通常与固定电阻组成分压电路,连接到Arduino UNO板A0等模拟输入引脚,当光照强度变化引起光敏电阻阻值变化时,导致分压点电压相应改变,Arduino通过读取该模拟电压值,就能感知光照强度的变化,进而实现光控功能,这种接线方式简单有效,适用于各类光检测场景。
Ⅳ 使用方法
-
电路原理图

-
接线说明

以Arduino UNO R3为例,如图所示将光敏电阻与1KΩ的固定电阻进行串联,将光敏电阻空闲的一端接VCC,将固定电阻空闲的一段接GND,最后将共用引脚接入模拟输入引脚,通过分压点电压的变化读取模拟数值从而判断当前环境的光照强度。
详细代码:
1.通过模拟输入引脚读取数值,进而确定当前环境的光照强度
/***********************************************
* 作者:会电焊的ESP32
* 项目:使用模拟引脚读取光敏电阻数值判断光照强度
* 难度:@
***********************************************/
#define LDRpin A0
void setup() {
Serial.begin(9600);
}
void loop() {
int lightValue = analogRead(LDRpin);
Serial.print("Analog reading (0-1023): ");
Serial.println(lightValue);
delay(500);
}
2.通过光敏电阻判断当前环境光照强度,并实现对LED灯光亮度的调节
将LED灯管接入引脚3等PWM引脚,通过光敏电阻数值调节LED灯光写入的PWM值,从而实现光敏电阻对LED灯光强度的自动控制。(详细可参考Arduino专栏的第一小节)
/******************************************
* 作者:会电焊的ESP32
* 项目:通过光敏电阻自动控制LED灯光亮度
* 难度:@
******************************************/
const int Ledpin = 3;
const int LDRpin = A0;
void setup() {
pinMode(Ledpin, OUTPUT);
Serial.begin(9600);
}
void loop() {
int lightValue = analogRead(LDRpin);
int brightness = map(lightValue, 0, 1023, 255, 0);
// 限制亮度值在0到255之间,防止越界
brightness = constrain(brightness, 0, 255);
analogWrite(Ledpin, brightness); // 设置LED亮度
Serial.print("Light value: ");
Serial.print(lightValue);
Serial.print("\t Brightness: ");
Serial.println(brightness);
delay(500);
}
更多推荐



所有评论(0)