夜间好物--小汪变色夜灯

最近的我在沉迷造灯,有了激光切割机学习了新技能,那当然要运用起来啦,以前就一直想做一个激光镭射那种小夜灯,这次终于能自己做出来了,我用的是单面磨砂亚克力+3D打印的底座做的,没错就是下面那个小汪🐶夜灯了,晚上看起来还挺可爱的

nightlamp

就在我做好的时候,柴火创客空间送测了一些Arduino新品入门套件,来得正是时候啊,刚好可以把夜灯进行升级改进一番,既然是入门套件第一步当然是学习点亮第一盏LED灯,来当一灯大师,做一个夜间好物系列,宁静的夜晚,缺不了一盏灯,一盏好看有艺术感的灯在宁静的晚上看了会心情舒畅。

我们先来看看面向入门的Grove Beginner Kit for Arduino套件长什么样吧↓
nightlamp

nightlamp

1.基于Arduino Uno板,改进增加防反接插口,Grove接口使用起来超级方便,无需区分线序,不用担心接反线烧板,点赞的优点
2.采用实验板拼版的方式,入门实验的时候无需拆下,编程的时候使用上面编号的引脚即可,做项目的时候就可以拆下来
3.兼容Mixly图形化编程,可以更方便的入门开始使用,但部分模块不兼容,这部分可作为进阶代码学习
4.推荐对硬件入门,创客教育教学,新媒体艺术家,电子专业的大学生和广大对创客入门的爱好者使用。

改进后的小汪夜灯


nightlamp

我用这个套件改进了之前的夜灯,这个夜灯制作组装十分简单,算是我做的最快的作品了,之前接线都是比较费劲,主板上和模块上都有防反插接头,接线可以说对应好引脚接上去就ok了,完全不用考虑电源接线和供电的问题,对初学者非常友好,免去了电路的困扰,编程-接线-测试-组装大概就这么几步,其主要功能就是智能光控亮灭灯,非接触手势进行切换灯光颜色

零件清单(电子模块基于Grove Beginner Kit for Arduino套件)


nightlamp
名称 数量
Arduino uno 1
RGB LED模块 1
巡线模块 1
光线传感器模块 1
Grove连接线 3
4cm尼龙柱 1
3D打印件(上、下底板,灯罩) 3
M2*4螺丝 3
M3*4螺丝 8

代码十分简单,首先光线传感器会检测环境亮度,如果小于设定的阈值就会执行亮灯的模式,否则就灭灯;亮灯模式是利用巡线模块检测人手靠近,程序里计数加1改变灯的模式,到了最后的那个模式计数归0,重新计数实现循环切换灯模式,里面有4个不同的模式,1.淡红,2.淡绿,3.淡蓝,4.七彩循环变色然后停在淡黄。程序用到一个RGB灯软件库:https://github.com/pjpmarques/ChainableLED/archive/v1.2.zip

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#include <ChainableLED.h>
#define NUM_LEDS 1 //1个RGB灯
#define LightSensor A0 //光线传感器接A0引脚
#define LineFinder 6 //巡线传感器接D6引脚

ChainableLED leds(7, 8, NUM_LEDS); //RGB灯模块接D7,D8引脚

void setup() {
Serial.begin(9600);
leds.init();
}

int lightMode = 0;

void loop() {

int value = analogRead(LightSensor);
Serial.println(value);

if(value < 300){

if(!digitalRead(6)){
lightMode += 1;
delay(1000);

switch(lightMode){
case 1:
leds.setColorRGB(0, 255, 30, 30);//rbg值可以自定义
Serial.println(lightMode);
break;

case 2:
leds.setColorRGB(0, 100, 255, 10);//rbg值可以自定义
Serial.println(lightMode);
break;

case 3:
leds.setColorRGB(0, 0, 255, 255);//rbg值可以自定义
Serial.println(lightMode);
break;

case 4:
Serial.println(lightMode);

for(float hue=0;hue<1;hue+=0.02){
leds.setColorHSB(0, hue, 1.0, 0.5);
Serial.println(hue);
delay(50);
}
for(float hue=1;hue>0;hue-=0.02){
leds.setColorHSB(0, hue, 1.0, 0.5);
Serial.println(hue);
delay(50);
}
leds.setColorRGB(0, 247, 247, 9);

lightMode = 0;
break;
}
}

}else{

leds.setColorRGB(0, 0, 0, 0);

}
}

安装步骤

nightlamp
1.主板安装上底座,四周拧上螺丝
nightlamp
2.把尼龙六角柱安装到四周的螺丝上
nightlamp
3.把RGB灯用螺丝固定到上盖板上
nightlamp
4.巡线模块安装到上盖板右边,光线传感器安装到下方
nightlamp
5.接线,A0接到光线传感器,D7,D8接到RGB灯,D6接到巡线模块
nightlamp
6.盖板四周螺丝拧上
nightlamp
7.安装上灯罩完成
文章目录
  1. 1. 改进后的小汪夜灯
  2. 2. 零件清单(电子模块基于Grove Beginner Kit for Arduino套件)
  3. 3. 安装步骤
,