滕瑋 郭帥民 黃秋斌 潘饒
【摘 要】隨著物聯(lián)網(wǎng)技術(shù)的迅速發(fā)展,各類智能化設(shè)備層出不窮,在智能家居中扮演了十分重要的作用。本文將傳統(tǒng)的鏡子作為研究對象,運用M2M技術(shù)對其進行智能化改造,設(shè)計了一個家庭智能鏡系統(tǒng),具有一定的市場應(yīng)用前景與價值。
【關(guān)鍵詞】智能家居;智能鏡;M2M;樹莓派
中圖分類號: TN929.5;TP391.44;TP277 文獻標(biāo)識碼: A 文章編號: 2095-2457(2019)07-0017-002
DOI:10.19694/j.cnki.issn2095-2457.2019.07.006
【Abstract】With the rapid development of the Internet of Things technology, various types of intelligent devices emerged which play a very important role in smart homes. In this paper, the traditional mirror is taken as the research object. A home intelligent mirror system is designed based on M2M technology, which has certain market application prospects and value.
【Key words】Smart home; Smart mirror; M2M; Raspberry Pi
0 引言
2014年被譽為是智能家居的元年,幾乎所有家電巨頭都進軍智能家電領(lǐng)域,無數(shù)大企業(yè)和小公司積極推出相關(guān)產(chǎn)品。目前,全球智能家居市場容量排名前五的國家分別是:美國、日本、德國、中國、英國[1]。我國智能家居行業(yè)還處在技術(shù)推廣階段,關(guān)注產(chǎn)品的易用性和實用性是行業(yè)得到快速的發(fā)展關(guān)鍵,設(shè)計價格低廉、使用方便、擴展性好的智能家居系統(tǒng)已成為當(dāng)前關(guān)注的熱點[2]。本文運用M2M技術(shù),基于樹莓派(Raspberry Pi)平臺,將常用的鏡子改造為一個智能鏡系統(tǒng),實現(xiàn)對室內(nèi)環(huán)境的監(jiān)控、新聞瀏覽、事務(wù)提醒、課程表等功能,方便實用,是智能家居的重要組成部分。
1 系統(tǒng)設(shè)計
本系統(tǒng)基于M2M應(yīng)用框架設(shè)計[3],主要包括智能鏡終端、系統(tǒng)服務(wù)器、Web應(yīng)用端和移動應(yīng)用APP端,如圖1所示。
1.1 M2M終端-智能鏡模塊
智能鏡,顧名思義,就是將普通鏡子智能化。本系統(tǒng)使用單面透視鏡,將樹莓派嵌在鏡子的反面。當(dāng)屏幕熄滅時用戶看到的是一面普通的鏡子,當(dāng)屏幕亮起時,用戶透過單面鏡就能看到屏幕上所顯示的內(nèi)容,主要包括時間、室內(nèi)溫濕度信息和煙霧狀況,并將這些室內(nèi)環(huán)境數(shù)據(jù)上傳至服務(wù)器,方便實現(xiàn)數(shù)據(jù)管理和移動終端訪問;還可以通過網(wǎng)絡(luò)遠程訪問服務(wù)器,獲取當(dāng)日天氣、備忘錄、課程表、新聞等信息。
1.2 M2M應(yīng)用—web端應(yīng)用和移動端APP
系統(tǒng)的應(yīng)用客戶端包括web端應(yīng)用和移動端APP兩個用戶終端。其中,web端應(yīng)用運行于PC端,通過與服務(wù)器的交互,實現(xiàn)對采集的家居環(huán)境數(shù)據(jù)(溫濕度、煙霧情況)、備忘錄、課表等的查詢、更新和刪除等操作。移動端APP亦可通過與服務(wù)器的交互,獲取并管理各類數(shù)據(jù),方便用戶及時了解家居環(huán)境及其變化情況,實現(xiàn)對系統(tǒng)的遠程控制。
1.3 M2M平臺-系統(tǒng)后臺服務(wù)器
系統(tǒng)的后臺服務(wù)器是核心模塊,部署在阿里云上。由于整個系統(tǒng)的業(yè)務(wù)不多,邏輯也并不復(fù)雜,所以將文件、應(yīng)用程序、數(shù)據(jù)庫都部署在一個服務(wù)器上。一方面,服務(wù)器和智能鏡終端交互。通過有線網(wǎng)絡(luò)或無線網(wǎng)絡(luò),服務(wù)器接收智能鏡上傳的室內(nèi)溫濕度、煙霧數(shù)據(jù)等室內(nèi)環(huán)境數(shù)據(jù),并對其進行存儲、管理與維護;同時,訪問開放的天氣信息源和新聞信息源(新浪新聞網(wǎng)的世界新聞),并將天氣和新聞推送到智能鏡端顯示。一方面,接收M2M應(yīng)用(web端應(yīng)用和移動端APP)對室內(nèi)溫濕度、煙霧數(shù)據(jù)、新聞、天氣等數(shù)據(jù)的訪問請求,實現(xiàn)對備忘錄、課表的管理和維護。
2 系統(tǒng)實現(xiàn)
根據(jù)系統(tǒng)總體設(shè)計,對各模塊進行設(shè)計與實現(xiàn)。
2.1 智能鏡采集端設(shè)計
智能鏡采集端基于樹莓派開發(fā),主界面采用的PyQt設(shè)計。PyQt是一個創(chuàng)建GUI應(yīng)用的工具包,是Python與QT庫的成功融合[5]。主界面如圖2所示。
(1)溫濕度傳感器及煙霧傳感器數(shù)據(jù)的采集
將DHT11溫濕度傳感器和MQ-2煙霧傳感器直接連接在樹莓派的GPIO引腳上。其中, DHT11的引腳接線方式是VCC端接5v電壓,即樹莓派(BOARD)的4號引腳,接地端接6號引腳,DATA接11號引腳。MQ-2煙霧傳感器擁有四個管腳,即VCC、GND、DOUT和AOUT。VCC和GND接線方式同前,沒有使用AOUT端。因為是用DOUT端去判斷煙霧濃度是否超過閾值,超出則報警,所以只需要將DOUT端端與樹莓派的7引腳相連接即可。通過運行采集數(shù)據(jù)程序,將數(shù)據(jù)顯示在智能鏡上(圖2);再使用MQTT協(xié)議,智能鏡端作為推送方(publisher)將采集到的室內(nèi)環(huán)境數(shù)據(jù)推送至服務(wù)器,服務(wù)器再將之上傳到數(shù)據(jù)庫。
(2)天氣、新聞信息的獲取與顯示
利用HTTP協(xié)議通信,訪問的天氣信息源(url=http://wthrcdn.etouch.cn)和新浪新聞信息源(url=http://news.sina.com.cm/worl)并獲取天氣和新聞信息,將獲取的信息處理為json格式,最后返回至智能鏡終端顯示(圖2)。
(3)備忘錄、課表信息的獲取與顯示
備忘錄信息和課表信息存放在系統(tǒng)后臺服務(wù)器,智能鏡終端同樣利用HTTP協(xié)議向服務(wù)器發(fā)送請求,從服務(wù)器端得到備忘錄信息并在智能鏡終端上顯示(圖2)。
2.2 web端應(yīng)用和移動端APP
系統(tǒng)web端運用HTML5技術(shù)進行web前端設(shè)計,使用php語言實現(xiàn)與服務(wù)器端的交互。web端應(yīng)用包括管理員和普通用戶兩種身份。當(dāng)普通用戶登錄系統(tǒng)后,就可以向服務(wù)器發(fā)送查詢室內(nèi)環(huán)境數(shù)據(jù)、備忘錄和課表等的請求。室內(nèi)環(huán)境數(shù)據(jù)(溫濕度、煙霧情況)用折線圖的形式顯示,如圖3所示。用戶可以進行備忘錄的設(shè)置與更新、刪除等操作。當(dāng)管理員登錄系統(tǒng)后,可以對所有數(shù)據(jù)庫中信息進行管理,亦可以對于普通用戶進行禁止登錄或者恢復(fù)登錄的操作,如圖4所示。
系統(tǒng)移動端基于Android開發(fā)平臺,通過與云服務(wù)器及系統(tǒng)服務(wù)器的交互,實現(xiàn)對室內(nèi)環(huán)境數(shù)據(jù)的查詢與顯示、備忘錄的設(shè)置、課表的導(dǎo)入與顯示等功能(圖4-5),方便用戶隨時隨地的了解家居環(huán)境及其變化情況,實現(xiàn)對系統(tǒng)的遠程控制。
2.3 系統(tǒng)后臺服務(wù)器設(shè)計
系統(tǒng)的后臺服務(wù)器部分基于WAMP框架開發(fā),部署在阿里云上,開源跨平臺,安全可靠。服務(wù)器在與web應(yīng)用端和移動端交互是常規(guī)的B/S和C/S模式,實現(xiàn)功能在3.2中已經(jīng)闡述。服務(wù)器在與智能鏡進行交互時,智能鏡對天氣、新聞、備忘錄等信息的請求,也是C/S模式。
但是對采集的室內(nèi)環(huán)境數(shù)據(jù)的獲取是采用基于MQTT協(xié)議的Publisher/Subscriber模式。MQTT(Message Queuing Telemetry Transport,消息隊列遙測傳輸)協(xié)議是一種即時通訊協(xié)議,是現(xiàn)代的物聯(lián)網(wǎng)應(yīng)用中的重要組成部分[6]。它基于主題發(fā)布,訂閱的體系結(jié)構(gòu),一般會在中間層設(shè)置代理,Publisher(即本系統(tǒng)的智能鏡采集模塊)發(fā)布主題到代理,Subscriber(即本系統(tǒng)的后臺服務(wù)器)通過訂閱代理來獲取信息,但相比于HTTP協(xié)議MQTT有較低的協(xié)議開銷,可以進行一對多,多對多的通信[6]。
3 總結(jié)
本文基于M2M技術(shù),選用樹莓派3代作為智能鏡系統(tǒng)的開發(fā)版,運用web開發(fā)和移動終端開發(fā)技術(shù),設(shè)計了一個智能鏡系統(tǒng),具有價格低、操作方便、可維護和可擴展性好的特點。同時,將服務(wù)器部署在阿里云上,縮短了開發(fā)周期,降低了開發(fā)成本。經(jīng)測試,可以實現(xiàn)對室內(nèi)境數(shù)據(jù)的采集與顯示,實現(xiàn)對日常信息的顯示,且界面設(shè)計良好,操作簡單。進一步的工作是實現(xiàn)對室內(nèi)的遠程監(jiān)控功能,實現(xiàn)對圖像的抓拍、視頻的傳輸?shù)裙δ?,使本系統(tǒng)進一步完善,以滿足人們對智能家居的需要。
【參考文獻】
[1]2018-2024年中國智能家居行業(yè)分析與投資決策咨詢報告[R],智研咨詢集團,2018年1月.
[2]樂軍.智能家居市場將迎來爆發(fā)式增長[N]. 中國消費報,2017-03-30(003).
[3]馮英偉,范晶晶,王慶福.基于M2M的智能家居關(guān)鍵問題研究[J].河北建筑工程學(xué)院學(xué)報,2015,33(02):52-54.
[4]冷靜. 基于M2M的物聯(lián)網(wǎng)網(wǎng)關(guān)平臺設(shè)計及實現(xiàn)[D].西安電子科技大學(xué),2014.
[5]肖文鵬.用PyQt進行Python下的GUI開發(fā)[J].中文信息,2002(07):73-75.
[6]馬躍,孫翱,賈軍營,孫建偉,于碧輝,楊雪華.MQTT協(xié)議在移動互聯(lián)網(wǎng)即時通信中的應(yīng)用[J].計算機系統(tǒng)應(yīng)用,2016,25(03):170-176.