光线控制器(胡琼洁)
本帖最后由 linkdfrobot 于 2015-4-12 10:26 编辑构思来源眼睛是心灵的灯。眼睛若明亮,世界就光明;眼睛若昏暗,世界就黯淡。保护我们的视力,就等于保护我们的眼睛,所以我们要保护眼睛。 ——题记随着眼睛度数的越来越深,视力越来越差,保护视力对我们来说越来越重要,光线的强弱对我们的眼睛有着极为重要的影响。你是否常因为:学校午睡后经常忘记开灯,导致室内光线很暗,做作业时很伤眼;晚上看电视时经常忘记开灯,看电视时很伤眼;不时因经常忘记关灯而班级扣分。
所以今天我们来做一个感光设置,让你再也不会被这些烦恼所困。所需元件 1× 5mm LED灯1×光敏二极管
1*220欧电阻1× 10k电阻 (***可能将增加1×蜂鸣器)电路图:输入代码:#define ADpin A0
#define LED 10
int ADBuffer = 0;
void setup()
{ pinMode(LED,OUTPUT);
Serial.begin(9600); //波特率9600
}
void loop()
{ ADBuffer = analogRead(ADpin); //读取AD值
Serial.print("GMAD = ");
Serial.println(ADBuffer);
if(ADBuffer < 200) //ADBuffer值小于设定值,相当于光照强度小于设定值
{ for (int a=1; a<=100;a++) //循环语句,控制PWM亮度的增加
{analogWrite(LED,a);
delay(20); //当前亮度级别维持的时间,单位毫秒
}
for (int a=100; a>=1;a--) //循环语句,控制PWM亮度减小
{analogWrite(10,a);
delay(20); //当前亮度的维持的时间,单位毫秒
}
delay(500);
}
else
{ digitalWrite(LED,LOW); //关闭LED
}
delay(500); //延时500ms
}应用拓展:*可以改变灯的颜色种类,做到发出各种各样的光,为室内增添情调; (多增加几个LED灯,或控制亮的次序,做到更好的效果)*可以改变程序,变成植物光照提醒器; (改变光照值(ADbuffer<一个适合的光照强度 就可做到))*同时改变蜂鸣器的频率可以编成音乐伴人入睡; (采用无源蜂鸣器,设置频率,简谱)(见《欢乐颂》)*也可以作为小夜灯; (微弱的呼吸灯,微弱灯光,随着你的呼吸,陪你一起入眠)*也可与家庭电路连接,自动开关电灯,为家里人提供方便 (在室内光线暗时,自动打开,不用摸黑走路)构想之一:实用性:可以保护视力,增加亮度创新性:与传统的控光系统不同,可自动改变科学性:适时的开关,不浪费电能,做到节能减排
创新版代码:#define ADpin A0
#define LED 10
#define M1 523
#define M2 586
#define M3 658
#define M4 697
#define M5 783
//列出全部D调的频率
#define WHOLE 1
#define HALF 0.5
//列出所有节拍
int tune[]= //根据简谱列出各频率
{ M3,M3,M4,M5,
M5,M4,M3,M2,
M1,M1,M2,M3,
M3,M2,M2,
};
float durt[]= //根据简谱列出各节拍
{ 1,1,1,1,
1,1,1,1,
1,1,1,1,
1+0.5,0.5,1+1,
};
int ADBuffer = 0;
int length;
int tonepin=5; //得用5号接口
void setup()
{ pinMode(LED,OUTPUT);
Serial.begin(9600); //波特率9600
pinMode(tonepin,OUTPUT);
length=sizeof(tune)/sizeof(tune); //计算长度
}
void loop()
本篇由胡琼洁制作,罗亮指导
页:
[1]