2014-4-1 16:30:27 [显示全部楼层]
31038浏览
查看: 31038|回复: 19

[项目] Arduino智能IQ灯工作坊教程

[复制链接]
智能IQ灯工作坊是一个适合软硬件结合的入门级DIY活动。

  • 在硬件上,它采用智能家居概念,做到人在灯开人走灯灭的效果,并达到节约能源的目的。还可以随你心情的变化,随时通过程序任意切换你想要的色彩。
  • 在软件上,我们将介绍Arduino集成开发环境的入门知识,编程程度不同的小伙伴们可以现场上手这个软件,学会控制灯从单色到多色过度的颜色和明暗变化。组装者可以自行选择颜色和造型,根据一定规律将单片连接成模块最终完成成品,组装出来的造型多达30种。

第一版的IQ球,只具有上电即呈现彩虹色的效果(可见视频)。有人说,如果能融入点互动元素就更好了,所以在第一版的基础上做了修改,加入了红外热释电传感。大致说下智能IQ球的功能,IQ球上装有一个人体红外热释电传感器,能检测到人的运动状态。而用到我们这里实现就是,人来灯开,人走灯灭的效果。

Arduino智能IQ灯工作坊教程图10



所需元件:
人体热释电红外传感器
Beetle控制器
RGB 全彩灯盘
Micro USB Cable
IQ球

可能需要的工具:
剪刀
烙铁
胶枪(没有也无妨)

第一步:焊接与连线

焊接和连线可以一起完成,表中罗列出了,各个元件引脚是如何一一对应的。这里就不多说了。(表格应该挺清楚的吧)

Arduino智能IQ灯工作坊教程图3

Arduino智能IQ灯工作坊教程图2

第三步:Arduino IDE(第一次使用Arduino,需要看)
如果你是第一次使用Arduino的话,需要下载Ardunio IDE并装好驱动。可以看下链接:
https://mc.dfrobot.com.cn/thread-1019-1-1.html


第四步:体验代码的神奇

简单说下原理:
这里,红外热释电就为我们的输入设备,有人进过时,就会输出一个信号,控制器(beetle)对这个信号进行处理,最后通过我们的输出设备,也就是RGB灯盘,表现出来。过程就是这么简单。

Arduino智能IQ灯工作坊教程图1

一步步慢慢来,分别说下这几样东西怎么使用(代码可下载压缩包):

一、RGB灯盘使用
(1)点亮RGB灯盘 (Example -- show_red)
可直接下载压缩包代码 (Example -- show_red)
代码效果:灯盘显示红色
Arduino智能IQ灯工作坊教程图4
setup()函数设置RGB的三个引脚,也就是上面连接的D9,D10,D11。那如何实现颜色显示呢?

我们通过analogWrite()来给9,10,11引脚0~255之间的值就和会对应一个颜色。0是最小值,255是最大值。下表中罗列了部分颜色。
Arduino智能IQ灯工作坊教程图5

(2)实现两种颜色变化(Example -- two color)
代码效果:呈现红色和绿色交替出现
图片中很明显的标出来了,为什么会呈现着两个颜色? 是因为给了0~255不同数值决定的。Arduino智能IQ灯工作坊教程图6

(3)随机色变化(Example -- random_color)
可直接下载压缩包代码(Example -- random_color)

(4)渐变色代码(Example  -- HSV_color)
(需要加载库,把整个文件夹放入 Arduino 1.0.5/libraries)



二、红外热释电传感器使用
由于beetle上只有三个数字口,所以我们需要把红外热释电接到模拟口。

(1)串口读数(Example -- AnalogReadSerial)
代码效果:一旦检测到人,串口会输出一个大于0的值,而没有人时,串口输出0。
Arduino智能IQ灯工作坊教程图7


三、RGB与红外热释电结合

(1)单色(Example --IR_RGB )
代码效果:一旦有人,亮红色,人走了,灯熄灭。
代码中通过一个if语句,如果怎么怎么样,那就怎么怎么样,否则怎么怎么样。如果值大于0,亮红色,否则,熄灭。
Arduino智能IQ灯工作坊教程图8

(2)多色变化(Example -- IR_HSV_color)
这个就是我们最终效果的代码,实现多色变化。
(同样需要加载库,把整个文件夹放入 Arduino 1.0.5/libraries)


三、拼IQ球
不要小看IQ球,其实还挺难拼的  ^ - ^


拼完之后把RGB灯塞到IQ球里面就可以了。记得把红外热释电露在外面才能方便检测人。

Arduino智能IQ灯工作坊教程图9



���tutorials

Example.rar

5 KB, 下载次数: 585

zarados  学徒

发表于 2014-4-2 15:16:07

表中罗列出了,各个元件引脚是如何一一对应的,表在哪里看呀?
回复

使用道具 举报

Jane  高级技匠
 楼主|

发表于 2014-4-2 15:26:25

zarados 发表于 2014-4-2 15:16
表中罗列出了,各个元件引脚是如何一一对应的,表在哪里看呀?

焊接部分有罗列出来的
回复

使用道具 举报

カツキ  初级技匠

发表于 2014-4-2 17:30:26

图片拍的真心不错啊
回复

使用道具 举报

lauren  高级技师

发表于 2014-4-28 13:49:07

牛逼,这个套件是我见过最美的
回复

使用道具 举报

Jane  高级技匠
 楼主|

发表于 2014-4-29 09:58:08

lauren 发表于 2014-4-28 13:49
牛逼,这个套件是我见过最美的

哈哈,谢谢~
回复

使用道具 举报

神奇一峰  见习技师

发表于 2015-4-28 22:36:02

Cheapduino控制器可以做这个灯吗?:)
回复

使用道具 举报

Jane  高级技匠
 楼主|

发表于 2015-5-21 17:11:07

神奇一峰 发表于 2015-4-28 22:36
Cheapduino控制器可以做这个灯吗?

可以的
回复

使用道具 举报

cornicione  学徒

发表于 2015-6-13 20:06:28


我想问如何将PWM信号合成一个信号接到灯条的din口?
回复

使用道具 举报

fitty  见习技师

发表于 2015-7-31 18:32:28

Beetle控制器有两个”+“、”-“丝印,RGB灯盘和控制器的gnd是怎么链接的?(控制器上的”-“用哪一个?)。人体热释电红外传感器的”-“又用哪一个?是同一个”-“吗?人体热释电红外传感器的”+“和Beetle控制器上的哪个”+“连接
回复

使用道具 举报

sun20100480  初级技师

发表于 2015-8-3 11:11:03

fitty 发表于 2015-7-31 18:32
Beetle控制器有两个”+“、”-“丝印,RGB灯盘和控制器的gnd是怎么链接的?(控制器上的”-“用哪一个?) ...

你可以把beetle翻过来看一下,一端标识5v 一端标识1.1v,接到5v那端就好
回复

使用道具 举报

ElleryQueen  见习技师

发表于 2016-11-12 16:51:20

IQ球有卖的吗
回复

使用道具 举报

Jane  高级技匠
 楼主|

发表于 2016-11-15 12:04:07


淘宝有卖的
回复

使用道具 举报

wanmeiqg  初级技师

发表于 2017-2-9 13:50:20

IQ球里面,你放进去的灯是RGB灯盘吗?如果不是,那是什么灯呢,
回复

使用道具 举报

Jane  高级技匠
 楼主|

发表于 2017-2-16 17:22:41

wanmeiqg 发表于 2017-2-9 13:50
IQ球里面,你放进去的灯是RGB灯盘吗?如果不是,那是什么灯呢,

这个是RGB灯盘
回复

使用道具 举报

wanmeiqg  初级技师

发表于 2017-7-14 13:50:50


如果想用APP去控制颜色变化,需要加个什么呢?这个Beetle处理器能够处理吗?
回复

使用道具 举报

alan  见习技师

发表于 2017-12-6 17:10:25

很不错。
回复

使用道具 举报

gada888  版主

发表于 2018-11-28 08:10:30

不错嘛
回复

使用道具 举报

熹宝快睡觉  见习技师

发表于 2019-8-8 16:41:36

挺好的、挺有创意的,赞赞赞
回复

使用道具 举报

小马1  见习技师

发表于 2019-9-6 10:08:56

RGB灯应该可以显示各种颜色额,为什么用了三只灯呢?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail