夜间好物--小汪变色夜灯
本帖最后由 好奇吖斌 于 2022-10-6 19:59 编辑欢迎访问我的个人网站:www.haoqiabin.cn
更多精彩等您发掘!!!
最近的我在沉迷造灯,有了激光切割机学习了新技能,那当然要运用起来啦,以前就一直想做一个激光镭射那种小夜灯,这次终于能自己做出来了,我用的是单面磨砂亚克力+3D打印的底座做的,没错就是下面那个小汪
https://mc.dfrobot.com.cn/data/attachment/album/202007/05/224003y5v00hxhc0n0r7hk.jpg就在我做好的时候,柴火创客空间送测了一些Arduino新品入门套件,来得正是时候啊,刚好可以把夜灯进行升级改进一番,既然是入门套件第一步当然是学习点亮第一盏LED灯,来当一灯大师,做一个夜间好物系列,宁静的夜晚,缺不了一盏灯,一盏好看有艺术感的灯在宁静的晚上看了会心情舒畅。
我们先来看看面向入门的Grove Beginner Kit for Arduino套件长什么样吧↓
1.基于Arduino Uno板,改进增加防反接插口,Grove接口使用起来超级方便,无需区分线序,不用担心接反线烧板,点赞的优点
2.采用实验板拼版的方式,入门实验的时候无需拆下,编程的时候使用上面编号的引脚即可,做项目的时候就可以拆下来
3.兼容Mixly图形化编程,可以更方便的入门开始使用,但部分模块不兼容,这部分可作为进阶代码学习
4.推荐对硬件入门,创客教育教学,新媒体艺术家,电子专业的大学生和广大对创客入门的爱好者使用。
改进后的小汪夜灯https://mc.dfrobot.com.cn/data/attachment/album/202007/05/224009ggr59b44rc5sc72o.jpg我用这个套件改进了之前的夜灯,这个夜灯制作组装十分简单,算是我做的最快的作品了,之前接线都是比较费劲,主板上和模块上都有防反插接头,接线可以说对应好引脚接上去就ok了,完全不用考虑电源接线和供电的问题,对初学者非常友好,免去了电路的困扰,编程-接线-测试-组装大概就这么几步,其主要功能就是智能光控亮灭灯,非接触手势进行切换灯光颜色
零件清单(电子模块基于Grove Beginner Kit for Arduino套件)https://mc.dfrobot.com.cn/data/attachment/album/202007/05/224027unp169so6jckoh9b.jpg
名称数量
Arduino uno1
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
#include <ChainableLED.h>
#define NUM_LEDS1//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);
}
}
安装步骤
https://mc.dfrobot.com.cn/data/attachment/album/202007/05/224056p44ehekh6xhpr340.jpg1.主板安装上底座,四周拧上螺丝https://mc.dfrobot.com.cn/data/attachment/album/202007/05/224100jfspshise0ztosih.jpg2.把尼龙六角柱安装到四周的螺丝上https://mc.dfrobot.com.cn/data/attachment/album/202007/05/224104famaq2mz3bap4zom.jpg3.把RGB灯用螺丝固定到上盖板上https://mc.dfrobot.com.cn/data/attachment/album/202007/05/224111eg4fovvfov4mbvgg.jpg4.巡线模块安装到上盖板右边,光线传感器安装到下方https://mc.dfrobot.com.cn/data/attachment/album/202007/05/224116pz121wtylt2eveee.jpg5.接线,A0接到光线传感器,D7,D8接到RGB灯,D6接到巡线模块https://mc.dfrobot.com.cn/data/attachment/album/202007/05/224120v0ti5nrtj0ferft5.jpg6.盖板四周螺丝拧上https://mc.dfrobot.com.cn/data/attachment/album/202007/05/224124uhxqh5a6xhdq96zr.jpg7.安装上灯罩完成
制作起来简直一气呵成,grove接头的就是接线快
3D打印文件:
小夜灯看起来不错( ⊙o⊙ )哇 夜间好物{:5_121:}
页:
[1]