Page Title

第3课 彩色LED的使用——炫彩灯光秀


2019-08-05 15:24:56

图片.png 

 

图片.png

1879年10月21日,“发明大王”爱迪生点燃了世界上第一盏电灯,当时电灯还是照明的器具,现在灯不仅可以作为发热装置更是环境装饰的小能手。HALO PARK光乐园以“光与好玩的一切”为主题,用灯光的炫彩变化,绘画不一样的世界,有科幻的HALO DOG,有灿烂的海底两万里,有奇妙的森林迷宫,还有更多创意等待着小朋友们的参与,下面我们就一起来走进炫彩灯光的世界。

图片.png 

 

上节课我们认识的红黄绿三色LED灯,每个灯都只能发出一种固定颜色的灯光,那要是想要让每个灯都能发出一百种、一千种、一万种甚至更多的色彩应该怎么办呢?

好搭BOX给大家带来了一个新工具,叫做彩色LED,下面我们来一起认识一下。

彩色LED模块                                      图片.png


图片.png


3-1 彩色LED模块

彩色LED是由红绿蓝三种颜色的发光二极管组成的、可以发出彩色光线的元件(如上图3-1所示。彩色LED模块由6RGB LED灯珠组成,每个灯珠旁都有编号,可以使用指令,根据编号控制这些灯珠。

RGB是一种颜色模式,通过设置不同的R(红)G(绿)B(蓝)颜色值,可以显示出人类视力所能感知的几乎所有颜色。

要控制彩色LED模块,还需要使用以下新的指令:

图片.png

图片.png

使用该指令可以设置两项内容:1是可以指定点亮某个编号的灯;2是可以指定点亮灯的颜色。指令默认是点亮编号为“1”的灯,红色值、绿色值、蓝色值均为“0”,即默认处于灭的状态。若要点亮指定编号的灯,可以直接输入;“红”、“绿”、“蓝”颜色值这三个参数既可以单击下拉列表选择预置的数值,也可以直接输入。

图片.png

图片.png


该条语句可以让6LED灯都处于熄灭的状态。

 

图片.png 

要制作本课的范例作品,可以按以下步骤先连接硬件、连接网络,然后进入“好好搭搭”网站编写、调试、编译、下载程序。

准备工作:搭建硬件、连接网络、进入网站                        

图片.png 

第一步:搭建硬件、连接网络。将彩色LED模块放置于主控板上任意六边形区域,磁铁吸合(如下图3-2所示);打开主控板的电源开关,等待主控板连接网络成功。

图片.png

3-2 彩色LED模块搭建图

第二步:进入网站。打开浏览器,登录“好好搭搭”网站;单击网站上方的“创作”按钮,在“无线编程”网页中选择“好搭BOX智能实验箱”模板,进入程序设计页。

 

作为绚烂、美丽、梦幻、有趣的一种装饰品或者是展示品,灯光秀越来越多的出现在大家的视野中。若要尝试制作多种多样的灯光效果,还是需要先熟练掌握控制彩色LED的相关指令。下面通过案例一,初试指令。

案例一:点亮彩色LED                        

图片.png 

单击“输出”类别,找到控制RGB显示的指令,将其拖动到脚本区,尝试点亮一个灯。具体程序代码如下图3-3所示:

 

图片.png

3-3“点亮一个灯”程序代码

图片.png 

将上图3-3所示程序编译后下载到主控板,运行后观察彩色LED的变化。并对以上程序进行修改,使第一个灯亮3秒后灭,灭1秒后重新点亮,过3秒后再灭,以“亮3秒,灭一秒”的规律循环亮灭。

图片.png 

我发现:________________________________________________________________

_______________________________________________________________________

 

案例二:点亮全部LED

图片.png 

要点亮全部灯,需要有六条语句,分别点亮6个灯。为了能够更好地观测效果,需要先对彩色LED模块的状态初始化,即先将6个灯都设置熄灭。然后分别设置6个灯的红色值都为20,蓝色值和绿色值都为0。具体程序代码如下图3-4所示:

 图片.png

图片.png 

图3-4 “点亮全部灯”程序代码

 

图片.png    观察以上点亮全部灯的程序代码,聪明的你能否想到另外一种方法让点亮灯的程序更简便。

我发现:________________________________________________________________

_______________________________________________________________________

通过以上两个案例的练习,彩色LED灯亮灭的基本操作已经掌握。然而灯光秀中的灯往往是变化的,有随机亮灭的,也有按不同规律有序亮灭的。案例三便用彩色LED模块来简单模拟随机闪烁的灯光。

案例三: 随机点亮一盏灯                       

图片.png 

首先初始化所有LED灯,然后随机每次只亮一个LED灯。具体程序代码如下图3-5所示:


图片.png

3-5 “随机点亮一盏灯”程序代码

图片.png 

以上程序实现了随机点亮一盏灯的效果,那么如何让6盏灯实现按顺序亮灭呢?同样6盏灯都显示一样的颜色,且每次只亮一盏灯。下面请你试一试。图片.png

 

图片.png 

以上我们一起实现了几种基本常见的灯光变换,而绚丽的灯光可不仅仅只会顺序随机,还可以颜色随机;不仅仅只会按顺序依次点亮还可以按逆序依次点亮;你是否能够创造出更多好玩的灯光效果呢?

我打算这么做:_______________________________________________________

______________________________________________________________________

做的时候需要注意:____________________________________________________

______________________________________________________________________