基于 Arduino 的臥室智能喚醒系統(tǒng)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引 言
隨著生活節(jié)奏的加快和工作壓力的增大,現(xiàn)代人的睡眠普遍不足,工作日早上很難自然睡醒,往往需要鬧鐘來強(qiáng)制人從睡眠中醒來。人的自然蘇醒是一個(gè)緩慢的過程,如果突然被驚醒將會(huì)引起頭疼和精神不振等癥狀,對人體健康不利。目前市面上有很多鬧鐘,大都通過聲音、振動(dòng)、氣味等進(jìn)行喚醒。其設(shè)置不夠人性化,喚醒方式粗暴,讓人從睡意中很不情愿地醒過來,不能保證睡眠質(zhì)量。這些喚醒工具普遍形式單一,實(shí)際使用中容易出現(xiàn)睡過頭的現(xiàn)象,達(dá)不到喚醒的目的。同時(shí)缺乏調(diào)整措施,無法判斷人是否已經(jīng)起床,不夠人性化。近年來,智能系統(tǒng)的研究和廣泛應(yīng)用已經(jīng)促使社會(huì)進(jìn)入了更為人性化的領(lǐng)域 [1]。文獻(xiàn) [2] 提出一款智能鬧鐘, 實(shí)現(xiàn)了溫柔喚醒功能,文獻(xiàn) [3-5] 也進(jìn)行了智能喚醒系統(tǒng)的相關(guān)研究。這些研究成果填補(bǔ)了國內(nèi)相關(guān)領(lǐng)域的多項(xiàng)空白, 為人性化智能家居設(shè)計(jì)提供了新的思路和技術(shù)支持,很大程度上推動(dòng)了國內(nèi)智能化系統(tǒng)的發(fā)展進(jìn)步[6]。
針對目前鬧鐘設(shè)計(jì)中存在的人性化關(guān)懷不夠,以及欠缺消費(fèi)者使用體驗(yàn)等問題 [7-8],本文設(shè)計(jì)一款臥室中使用的智能喚醒燈,幫助人們自然蘇醒,并通過手機(jī) APP 為其提供個(gè)性化的信息提醒服務(wù)。此款臥室智能喚醒燈可以通過手機(jī)APP 進(jìn)行個(gè)性化燈光亮度和音樂選擇,并提供必要的個(gè)性化信息提醒服務(wù) [9]。通過燈光亮度和音樂音量的控制,模擬日出日落,輔助用戶自然蘇醒。同時(shí),此款燈可感應(yīng)人的進(jìn)出, 當(dāng)人進(jìn)入房間時(shí),燈光將自動(dòng)打開 ;當(dāng)人離開房間時(shí),燈光將自動(dòng)關(guān)閉。
1 臥室智能喚醒燈系統(tǒng)結(jié)構(gòu)
臥室智能喚醒燈系統(tǒng)結(jié)構(gòu)如圖 1 所示。其中,Arduino 板及拓展模塊為系統(tǒng)的控制中心,負(fù)責(zé)程序的執(zhí)行,接收傳感器發(fā)送的數(shù)據(jù)以及發(fā)送 LED 燈與音頻模塊的控制指令, Arduino UNO R3 如圖 2 所示。紅外模塊通過數(shù)據(jù)是否有變化判斷臥室是否有人活動(dòng),實(shí)現(xiàn)人進(jìn)燈開,人走燈滅的功能。WiFi 模塊將智能喚醒燈系統(tǒng)接入網(wǎng)絡(luò),并實(shí)現(xiàn)與手機(jī) APP 的連接。音頻模塊與揚(yáng)聲器協(xié)同作用,播放語音。LED 燈是本文系統(tǒng)的光源。光敏傳感器通過感應(yīng)光照強(qiáng)度判斷天黑或天亮,溫濕度傳感器則可直觀地觀察臥室溫濕度。以上各個(gè)模塊協(xié)同作用,組成了臥室智能喚醒燈系統(tǒng)。
圖 1 臥室智能喚醒燈系統(tǒng)結(jié)構(gòu)
圖 2 Arduino UNO R3
系統(tǒng)工作流程如圖 3 所示。首先,接入電源啟動(dòng)系統(tǒng), 連接 WiFi,各傳感器模塊開始工作,并將采集到的數(shù)據(jù)發(fā)送到 Arduino 模塊中進(jìn)行數(shù)據(jù)處理。其次,系統(tǒng)根據(jù)接收到的手機(jī) APP 控制指令,改變或維持當(dāng)前工作狀態(tài)。最后,通過斷開電源或手機(jī) APP 控制的方式關(guān)閉該系統(tǒng)。手機(jī) APP 通過 ESP8266 WiFi 模塊 [10] 實(shí)現(xiàn)與智能喚醒燈系統(tǒng)的通信。手機(jī) APP 不僅能控制燈光的開啟與關(guān)閉,還可選擇音樂、音量及燈光亮度的漸變變化范圍。用戶可通過手機(jī)APP 設(shè)置人性化的起床音樂與燈光亮度,且該系統(tǒng)還支持在線音樂選擇。
圖 3 系統(tǒng)工作流程
該系統(tǒng)各功能的具體實(shí)現(xiàn)方法如下。
(1)燈光鬧鐘功能
系統(tǒng)利用脈寬調(diào)制基本原理對燈光亮度進(jìn)行調(diào)制 [11]。LED 燈在設(shè)置的鬧鐘時(shí)間點(diǎn)之前自動(dòng)模擬自然日出,逐漸變亮,在鬧鐘音樂響起時(shí),亮度達(dá)到最大值。漸變的燈光使得用戶能夠逐漸適應(yīng),避免了傳統(tǒng)鬧鐘突然鬧醒的不適。
(2)音樂播放功能
系統(tǒng)設(shè)計(jì)了語音模塊與揚(yáng)聲器模塊,用戶通過手機(jī) APP 選取該系統(tǒng)自帶音樂為鬧鐘音樂,當(dāng)?shù)竭_(dá)鬧鐘時(shí)間時(shí),音樂自動(dòng)響起,實(shí)現(xiàn)了個(gè)性化鬧鈴的功能。
(3)智能開關(guān)功能
系統(tǒng)通過紅外傳感器模塊、光敏傳感器模塊及溫濕度傳感器模塊,獲取多種影響人體睡眠的數(shù)據(jù),實(shí)現(xiàn)智能喚醒燈的智能開關(guān)功能。紅外傳感器模塊根據(jù)數(shù)據(jù)是否有變化判定用戶是否在臥室活動(dòng),自動(dòng)控制鬧鐘和燈光。光敏傳感器模塊協(xié)同紅外模塊,根據(jù)外界光線變化自動(dòng)控制燈光亮滅。當(dāng)夜間或外界光線較暗時(shí),用戶進(jìn)入房間后,喚醒燈將自動(dòng)亮起燈光。此外,通過溫濕度傳感器模塊可直觀地了解當(dāng)前房間的溫濕度,并在 LED 顯示屏上顯示數(shù)據(jù)和提醒信息,輔助用戶選擇開關(guān)空調(diào)和模式調(diào)整。
(4)無線遠(yuǎn)程控制功能
WiFi 模塊是網(wǎng)絡(luò)通信、數(shù)據(jù)交互的基礎(chǔ),本文系統(tǒng)利用該模塊實(shí)現(xiàn)手機(jī) APP 對智能喚醒燈系統(tǒng)的遠(yuǎn)程控制,如設(shè)置燈光強(qiáng)度、選擇音樂、設(shè)置鬧鐘時(shí)間和模式、啟動(dòng)或關(guān)閉系統(tǒng)等。
2 服務(wù)器程序設(shè)計(jì)
在智能喚醒燈整體架構(gòu)中,服務(wù)器程序?qū)懭胧謾C(jī) APP 中, 通過 WiFi 連接到智能喚醒燈系統(tǒng)。WiFi 模塊根據(jù) TCP/IP 協(xié)議 [12] 將用戶設(shè)置的鬧鐘時(shí)間、音樂和備忘事件等數(shù)據(jù)發(fā)送至 Arduino 開發(fā)板,Arduino 開發(fā)板根據(jù)接收到的數(shù)據(jù)進(jìn)行處理,在用戶設(shè)置的時(shí)間點(diǎn)播放用戶選擇的音樂及備忘事件。服務(wù)器程序使用易安卓 [13] 編寫,可多線程運(yùn)行,實(shí)現(xiàn)智能喚醒燈同時(shí)與多個(gè)客戶(手機(jī) APP)進(jìn)行數(shù)據(jù)交互的功能, 便于家庭中多成員的共同使用。智能喚醒燈、服務(wù)器與 APP 架構(gòu)如圖 4 所示。
圖 4 智能喚醒燈、服務(wù)器與 APP 架構(gòu)
系統(tǒng)在服務(wù)器程序中加入取現(xiàn)行時(shí)間函數(shù),因此,服務(wù)器將在用戶設(shè)置的鬧鐘時(shí)間之前向喚醒燈發(fā)送亮燈指令,當(dāng)現(xiàn)行時(shí)間等于用戶設(shè)置時(shí)間時(shí),服務(wù)器向喚醒燈發(fā)送播放音樂指令,音樂播放完畢發(fā)送播放備忘事件指令。數(shù)據(jù)接收端的部分代碼如圖 5 所示。
圖 5 數(shù)據(jù)接收端的部分代碼
3 手機(jī) APP 設(shè)計(jì)
在智能喚醒燈系統(tǒng)中,手機(jī) APP 采用基于 Google 完全可視化編程語言 GoogleBlockly 的中文可視化安卓編程 - 易安卓(E4A)開發(fā)平臺。手機(jī) APP 是用戶使用喚醒燈的第一媒介,用戶通過 APP 控制喚醒燈的不同工作狀態(tài),滿足各種個(gè)性化需求。手機(jī) APP 界面如圖 6 所示。
在實(shí)際使用中,手機(jī) APP 首先啟動(dòng)服務(wù)器,用戶可設(shè)置鬧鐘時(shí)間,選擇鬧鐘音樂,調(diào)節(jié)音量大小,還可通過文本或語音錄入備忘事件,在鬧鐘響后,進(jìn)行重要事件提醒。設(shè)置完成后,手機(jī) APP 服務(wù)器通過 WiFi 通信的 TCP/IP 協(xié)議向基于 Arduino 的系統(tǒng)段發(fā)送各部分設(shè)置文件數(shù)據(jù),完成系統(tǒng)段各功能的設(shè)置。用戶還可利用手機(jī)APP 端的滑動(dòng)開關(guān)控制喚醒燈的亮滅。
圖 6 手機(jī) APP 界面
4 結(jié) 語
本文基于對 Arduino 硬件及其他硬件模塊的使用,結(jié)合服務(wù)器與手機(jī) APP 的運(yùn)用,設(shè)計(jì)了臥室智能喚醒系統(tǒng)。該系統(tǒng)利用多種傳感器協(xié)同作用以采集臥室的溫濕度、光照強(qiáng)度等多種對睡眠有影響的數(shù)據(jù),并根據(jù) PWM 基本原理實(shí)現(xiàn)燈光漸變,采用 WiFi 無線通信技術(shù)實(shí)現(xiàn)數(shù)據(jù)通信,通過手機(jī)APP 對臥室智能喚醒燈實(shí)現(xiàn)遠(yuǎn)程控制,以此實(shí)現(xiàn)臥室睡眠環(huán)境和喚醒燈的智能調(diào)整。通過光照和音樂的結(jié)合解決了當(dāng)前大多語音鬧鐘強(qiáng)制叫醒人們帶來的健康隱患及光照鬧鐘叫不醒的問題,給用戶提供了更加方便的操作模式,建立了個(gè)性化且符合人類自然蘇醒方式的智能喚醒系統(tǒng),提高了人們的生活質(zhì)量。