在过去的很长一段时间内,我都认为自己有起床障碍症,尤其是在冬天。
每天早上,闹铃喊不醒我,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智能灯还可以有许多非主流的用途。
之前我写过一篇关于“如何让MATLAB在完成计算后通知你”的文章,Hue智能灯也可以在其中得以运用。比如,在仿真结束之后,如果参数配置结果并没能实现10次NEDC循环而导致仿真终止,将会亮起红灯,再配上“可惜不是你”的背景音乐,有一种非诚勿扰的既视感。
Hue智能灯也可以反馈电脑当前的状态。
程序员什么时候最烦躁?对于我而言,电脑卡的时候最烦。
我特别希望在我烦躁的时候,不要有同事来找我,可是我不能很耿直的对同事说“别来烦我”。我希望有一块类似于“前方施工”标志。
于是,我用MATLAB监测电脑当前的内存使用率,并通过Hue智能灯反映电脑当前的状态。
如果你发现我座位旁的灯越来越暗,请一定要注意安全。如果你看到这盏灯突然灭了,那一定是内存使用率超过70%了。灯灭了,心也死了……
以上就是关于MATLAB控制Hue智能灯的分享。至于Hue的API,有兴趣的朋友可以在网上直接谷歌Hue API这两个关键字。
如果你有兴趣,欢迎关注我的微信公众号“打浦桥程序员”,谢谢