基于 Arduino 的卧室智能唤醒系统
扫描二维码
随时随地手机看文章
引 言
随着生活节奏的加快和工作压力的增大,现代人的睡眠普遍不足,工作日早上很难自然睡醒,往往需要闹钟来强制人从睡眠中醒来。人的自然苏醒是一个缓慢的过程,如果突然被惊醒将会引起头疼和精神不振等症状,对人体健康不利。目前市面上有很多闹钟,大都通过声音、振动、气味等进行唤醒。其设置不够人性化,唤醒方式粗暴,让人从睡意中很不情愿地醒过来,不能保证睡眠质量。这些唤醒工具普遍形式单一,实际使用中容易出现睡过头的现象,达不到唤醒的目的。同时缺乏调整措施,无法判断人是否已经起床,不够人性化。近年来,智能系统的研究和广泛应用已经促使社会进入了更为人性化的领域 [1]。文献 [2] 提出一款智能闹钟, 实现了温柔唤醒功能,文献 [3-5] 也进行了智能唤醒系统的相关研究。这些研究成果填补了国内相关领域的多项空白, 为人性化智能家居设计提供了新的思路和技术支持,很大程度上推动了国内智能化系统的发展进步[6]。
针对目前闹钟设计中存在的人性化关怀不够,以及欠缺消费者使用体验等问题 [7-8],本文设计一款卧室中使用的智能唤醒灯,帮助人们自然苏醒,并通过手机 APP 为其提供个性化的信息提醒服务。此款卧室智能唤醒灯可以通过手机APP 进行个性化灯光亮度和音乐选择,并提供必要的个性化信息提醒服务 [9]。通过灯光亮度和音乐音量的控制,模拟日出日落,辅助用户自然苏醒。同时,此款灯可感应人的进出, 当人进入房间时,灯光将自动打开 ;当人离开房间时,灯光将自动关闭。
1 卧室智能唤醒灯系统结构
卧室智能唤醒灯系统结构如图 1 所示。其中,Arduino 板及拓展模块为系统的控制中心,负责程序的执行,接收传感器发送的数据以及发送 LED 灯与音频模块的控制指令, Arduino UNO R3 如图 2 所示。红外模块通过数据是否有变化判断卧室是否有人活动,实现人进灯开,人走灯灭的功能。WiFi 模块将智能唤醒灯系统接入网络,并实现与手机 APP 的连接。音频模块与扬声器协同作用,播放语音。LED 灯是本文系统的光源。光敏传感器通过感应光照强度判断天黑或天亮,温湿度传感器则可直观地观察卧室温湿度。以上各个模块协同作用,组成了卧室智能唤醒灯系统。
图 1 卧室智能唤醒灯系统结构
图 2 Arduino UNO R3
系统工作流程如图 3 所示。首先,接入电源启动系统, 连接 WiFi,各传感器模块开始工作,并将采集到的数据发送到 Arduino 模块中进行数据处理。其次,系统根据接收到的手机 APP 控制指令,改变或维持当前工作状态。最后,通过断开电源或手机 APP 控制的方式关闭该系统。手机 APP 通过 ESP8266 WiFi 模块 [10] 实现与智能唤醒灯系统的通信。手机 APP 不仅能控制灯光的开启与关闭,还可选择音乐、音量及灯光亮度的渐变变化范围。用户可通过手机APP 设置人性化的起床音乐与灯光亮度,且该系统还支持在线音乐选择。
图 3 系统工作流程
该系统各功能的具体实现方法如下。
(1)灯光闹钟功能
系统利用脉宽调制基本原理对灯光亮度进行调制 [11]。LED 灯在设置的闹钟时间点之前自动模拟自然日出,逐渐变亮,在闹钟音乐响起时,亮度达到最大值。渐变的灯光使得用户能够逐渐适应,避免了传统闹钟突然闹醒的不适。
(2)音乐播放功能
系统设计了语音模块与扬声器模块,用户通过手机 APP 选取该系统自带音乐为闹钟音乐,当到达闹钟时间时,音乐自动响起,实现了个性化闹铃的功能。
(3)智能开关功能
系统通过红外传感器模块、光敏传感器模块及温湿度传感器模块,获取多种影响人体睡眠的数据,实现智能唤醒灯的智能开关功能。红外传感器模块根据数据是否有变化判定用户是否在卧室活动,自动控制闹钟和灯光。光敏传感器模块协同红外模块,根据外界光线变化自动控制灯光亮灭。当夜间或外界光线较暗时,用户进入房间后,唤醒灯将自动亮起灯光。此外,通过温湿度传感器模块可直观地了解当前房间的温湿度,并在 LED 显示屏上显示数据和提醒信息,辅助用户选择开关空调和模式调整。
(4)无线远程控制功能
WiFi 模块是网络通信、数据交互的基础,本文系统利用该模块实现手机 APP 对智能唤醒灯系统的远程控制,如设置灯光强度、选择音乐、设置闹钟时间和模式、启动或关闭系统等。
2 服务器程序设计
在智能唤醒灯整体架构中,服务器程序写入手机 APP 中, 通过 WiFi 连接到智能唤醒灯系统。WiFi 模块根据 TCP/IP 协议 [12] 将用户设置的闹钟时间、音乐和备忘事件等数据发送至 Arduino 开发板,Arduino 开发板根据接收到的数据进行处理,在用户设置的时间点播放用户选择的音乐及备忘事件。服务器程序使用易安卓 [13] 编写,可多线程运行,实现智能唤醒灯同时与多个客户(手机 APP)进行数据交互的功能, 便于家庭中多成员的共同使用。智能唤醒灯、服务器与 APP 架构如图 4 所示。
图 4 智能唤醒灯、服务器与 APP 架构
系统在服务器程序中加入取现行时间函数,因此,服务器将在用户设置的闹钟时间之前向唤醒灯发送亮灯指令,当现行时间等于用户设置时间时,服务器向唤醒灯发送播放音乐指令,音乐播放完毕发送播放备忘事件指令。数据接收端的部分代码如图 5 所示。
图 5 数据接收端的部分代码
3 手机 APP 设计
在智能唤醒灯系统中,手机 APP 采用基于 Google 完全可视化编程语言 GoogleBlockly 的中文可视化安卓编程 - 易安卓(E4A)开发平台。手机 APP 是用户使用唤醒灯的第一媒介,用户通过 APP 控制唤醒灯的不同工作状态,满足各种个性化需求。手机 APP 界面如图 6 所示。
在实际使用中,手机 APP 首先启动服务器,用户可设置闹钟时间,选择闹钟音乐,调节音量大小,还可通过文本或语音录入备忘事件,在闹钟响后,进行重要事件提醒。设置完成后,手机 APP 服务器通过 WiFi 通信的 TCP/IP 协议向基于 Arduino 的系统段发送各部分设置文件数据,完成系统段各功能的设置。用户还可利用手机APP 端的滑动开关控制唤醒灯的亮灭。
图 6 手机 APP 界面
4 结 语
本文基于对 Arduino 硬件及其他硬件模块的使用,结合服务器与手机 APP 的运用,设计了卧室智能唤醒系统。该系统利用多种传感器协同作用以采集卧室的温湿度、光照强度等多种对睡眠有影响的数据,并根据 PWM 基本原理实现灯光渐变,采用 WiFi 无线通信技术实现数据通信,通过手机APP 对卧室智能唤醒灯实现远程控制,以此实现卧室睡眠环境和唤醒灯的智能调整。通过光照和音乐的结合解决了当前大多语音闹钟强制叫醒人们带来的健康隐患及光照闹钟叫不醒的问题,给用户提供了更加方便的操作模式,建立了个性化且符合人类自然苏醒方式的智能唤醒系统,提高了人们的生活质量。