您要打印的文件是:一盏能看天色自动开关的路灯

一盏能看天色自动开关的路灯

作者:佚名    转贴自:http://www.eefocus.com/zhang700309/blog/11-11/233949_37fd5.html    点击数:40


实验图片:

src=http://upload.semidata.info/www.eefocus.com/blog/media/201111/184049.jpeg

   本实验的Arduino设备源于DFrobot官方旗舰店: http://dfrobot.taobao.com/

路灯的眼睛:

src=http://www.eefocus.com/include/picture/500/400/data/11-11/1320303030_256e4e0a.jpeg
 

 环境光线传感器


 

 路灯头上的灯:


src=http://www.eefocus.com/include/picture/500/400/data/11-11/1320303035_f74fdb9c.jpeg

 食人鱼LED


 

   路灯的大脑:


src=http://www.eefocus.com/include/picture/500/400/data/11-11/1320303039_b0d3009a.jpeg

 Arduino Duemilanove ATmega328P


 

   白天光线亮,路灯的眼睛看到了,于是大脑决定它头上的灯不亮,节约能源。如下图,看到了吗?哪个是路灯的眼睛、大脑和头上的灯。


 

   src=http://www.eefocus.com/include/picture/500/400/data/11-11/1320302990_377a6b6.jpeg


 

   天色渐晚,路灯的眼睛看到了,于是大脑决定把它头上的灯点亮,如下图。注意我的手指。

 

   src=


 

   到底路灯大脑是咋想的,下面是大脑的思维:

 

int lightpin=0;//定义环境光传感器相连的模拟接口0上 
int ledPin = 8;  //食人鱼LED连在数字接口8上
void setup()
{
  pinMode(ledPin,OUTPUT);//设置LED接口为输出接口
  Serial.begin(9600); // 打开串口,设置波特率为9600 bps
}
void loop()
{
      int val;
      val=analogRead(lightpin);//读模拟口0传感器的数据
      Serial.println(val,DEC);
      //从串口发送字符串并换行,用来监控环境光传感器AD转换的数字量        
      delay(100);
      if(val>512)
      //这个传感器,天色光线越弱,10位的AD转换的数字量愈大    
        {digitalWrite(ledPin,LOW);}//天色光线弱,LED点亮,LED是低电平有效
      else
        {digitalWrite(ledPin,HIGH);}//天色光线强,LED熄灭
}


 

实际上,这个实验晚上做,更好玩,我一关书房的灯,你猜发生了什么?