arduino教程系列9-光控LED实验 arduino入门,arduino教程

光敏电阻



光敏电阻又称光导管,常用的制作材料为硫化镉,另外还有硒、硫化铝、硫化铅和硫化铋等材料。这些制作材料具有在特定波长的光照下,其阻值迅速减小的特性。这是由于光照产生的载流子都参与导电,在外加电场的作用下漂移运动,从而使光敏电阻的阻值迅速下降。



光敏电阻的工作原理基于内光电效应。在半导体光敏材料的两端装上电极引线,将其封装在带有透明窗的管壳里就构成光敏电阻,为了增加灵敏度,两电极常做成梳状。在有光照射时,射入的光强,电阻减小,射入的光弱,电阻增大。



下图就是一个光敏电阻


001.jpg

2011-7-20 20:35 上传
(20.74 KB)





本次实验设计的效果是,当光照正常的时候led灯是灭的,当周围变暗时led灯变亮。



因为光敏电阻受不同光照影响变化很大,所以本次实验的参数是在60W三基色节能灯照射下实验(无日光照射),同样亮度的日光下光敏电阻的阻值会比日光灯下低不少,估计和不同光的波段有关系。不同环境下实验使用的参数不同,大家根据原理进行调整。



实验前先测量一下当前环境下光敏电阻的亮阻值与暗阻值



下图是测出来的LED亮阻值,为9.1KΩ

IMGP9947_调整大小.JPG

2011-7-21 19:59 上传
(175.2 KB)





下图是测出来的LED暗阻值,为32.4KΩ

IMGP9948_调整大小.JPG

2011-7-21 19:59 上传
(173.87 KB)





硬件连接图如下


Snap1.jpg

2011-7-21 19:59 上传
(113.44 KB)




IMGP9957_调整大小.JPG

2011-7-21 19:59 上传
(184.35 KB)





根据测出来的亮阻9.1KΩ,暗阻32.4KΩ。选定分压电阻为10KΩ。因为当有遮挡物的后,阻值会变大。假设亮阻为10KΩ(对于光敏电阻来说,与测量出来的9.1KΩ差别不大,计算起来更加方便了),分压阻值为10K欧姆。模拟2号口所测量的触发电压为10KΩ分压电阻的,在5V电源供电下,亮与暗转换的触发电压为5×10÷(10+10)=2.5V。当光线越暗,光敏电阻的阻值也就越大,分压两端电压也就越小。所以触发条件就为≤2.5V。(不同光照条件下触发电压不同,请根据实验环境进行调整。)



程序代码如下ARDUINO 代码复制打印

int photocellPin = 2;    //定义变量photocellsh=2,为电压读取端口。
int ledPin = 12;   //定义变量ledPin=12,为led电平输出端口
int val = 0;       //定义val变量的起始值
 
 
void setup() { 
  pinMode(ledPin, OUTPUT);  //使ledPin为输出模式
} 
 
void loop() { 
  val = analogRead(photocellPin);    //从传感器读取值
  if(val<=512){      //512=2.5V,想让传感器敏感一些的时候,把数值调高,想让传感器迟钝的时候把数值调低。
    digitalWrite(ledPin, HIGH); //当val小于512(2.5V)的时候,led亮。
  }
  else{
    digitalWrite(ledPin, LOW);
  }
}

实验效果如下

via - 极客工坊

标签: Arduino教程