在过去的很长一段时间内,我都认为自己有起床障碍症,尤其是在冬天。

每天早上,闹铃喊不醒我,Deadline喊不醒我,媳妇喊不醒我,甚至梦想都不管用。于是我研究了很久,到底是什么原因,让我在清晨背叛了我的梦想。后来,我终于在网上找到答案了……

没有阳光 -> 褪黑素 -> 困

于是,我就在幻想,要是有一款灯,能在预定的时间,像太阳一样慢慢亮起,那该多好…….

特别巧的是,那段时间,顿哥送了我一套飞利浦Hue智能灯。特别神奇,梦想办不到的事,飞利浦办到了。虽然听着特别像广告,然而并不是……

更有意思的是,这款智能灯还提供了API,可以自己DIY程序进行控制。今天就来聊一聊,用MATLAB和Hue智能灯,都能做哪些有趣的事。

先来看一下我为Hue智能灯写的一个小工具。

工具的界面比较小,其中包含的几个小功能分别有:

1)桥接器的连接

2)灯的选择

3)开关功能

4)颜色选择功能

5)亮度调节功能

6)定时功能

1. 灯的选择

这套Hue智能灯中有三个灯泡。不过我在开发的工具界面中只定义了两个房间的灯泡,分别是大厅和书房的。通过点击房间图标,可以实现不同灯泡的操控切换。

2. 开关功能

3. 颜色选择功能

4. 亮度调节功能

上面几个动图就是Hue工具的几项基本功能。回归到最初的需求,如何让Hue智能灯在特定的时间有特定的操作,于是我写了一个定时功能。

在定时功能界面中,包含几项最基本的定时操作,定时功能的开关,预设时间,开关设定,以及逐渐变亮或是骤亮的设定。通过几个动图来看一下不同选项所产生的效果。

逐渐变亮的功能是针对每天起床所开发的唤醒功能。

为了动图效果,我修改了代码,缩短了亮度渐变时间。

在实际应用中,该功能的逻辑是,在到达预设时间之后,亮度从10%开始,每隔一分钟,亮度增加10%。在10分钟之后,一直保持100%的亮度。这样做的一个好处是,早上不会因为光线突然变亮而产生不适感,光线的增强是循序渐进的。

而另一种形式是,骤亮或者骤暗,这有点像大学时代宿舍的熄灯。我写这个功能,另一方面也是想提醒自己,不要加班太晚,注意休息。

除了定时功能之外,Hue智能灯还可以有许多非主流的用途。

之前我写过一篇关于“”的文章,Hue智能灯也可以在其中得以运用。比如,在仿真结束之后,如果参数配置结果并没能实现10次NEDC循环而导致仿真终止,将会亮起红灯,再配上“可惜不是你”的背景音乐,有一种非诚勿扰的既视感。

Hue智能灯也可以反馈电脑当前的状态。

程序员什么时候最烦躁?对于我而言,电脑卡的时候最烦。

我特别希望在我烦躁的时候,不要有同事来找我,可是我不能很耿直的对同事说“别来烦我”。我希望有一块类似于“前方施工”标志。

于是,我用MATLAB监测电脑当前的内存使用率,并通过Hue智能灯反映电脑当前的状态。

如果你发现我座位旁的灯越来越暗,请一定要注意安全。如果你看到这盏灯突然灭了,那一定是内存使用率超过70%了。灯灭了,心也死了……

以上就是关于MATLAB控制Hue智能灯的分享。至于Hue的API,有兴趣的朋友可以在网上直接谷歌Hue API这两个关键字。

最后祝大家,周末愉快!