劉超 徐志方 王方前 崔九梅 居文軍
摘 ?要: 為了提高物聯(lián)網(wǎng)操作系統(tǒng)中智能家居工作的合理性,設(shè)計了一種可以協(xié)調(diào)智能家居工作計劃的物聯(lián)網(wǎng)操作系統(tǒng)應(yīng)用框架。該應(yīng)用框架中,以RK3288為核心的主控制器通過ZigBee收集各智能家居的工作狀態(tài),該微處理器以UHomeOS作為開發(fā)環(huán)境,然后將各智能家居的工作狀態(tài)上傳至云平臺,云平臺根據(jù)各智能家居的工作狀態(tài),控制某些智能家居的工作時間,從而使智能家居的工作更加合理、智能化。智能掃地機器人的實驗結(jié)果表明,掃地機器人能夠在灰塵量積累到一定程度時啟動工作,無灰塵時不清掃,對節(jié)能減排具有重大意義。
關(guān)鍵詞: 物聯(lián)網(wǎng); 操作系統(tǒng); UHomeOS; ZigBee; 工作計劃; 智能家居
中圖分類號: TN02?34 ? ? ? ? ? ? ? ? ? ? ? ? 文獻標識碼: A ? ? ? ? ? ? ? ? ? ? ? ? ? ?文章編號: 1004?373X(2020)23?0143?03
Abstract: The Internet of Things (IoT) operating system application framework which can coordinate the work plan of smart appliances is designed to improve the smart appliance working rationality in the operating system of the IoT. In the application framework, the main controller with RK3288 as the core collects the working status of each smart appliance by ZigBee. For the microprocessor, UHomeOS is taken as the development environment, and then the working status of each smart appliance is uploaded to the cloud platform. The cloud platform controls the working hours of some smart appliances according to their working status, so as to make the work of smart appliances more reasonable and smart. The experimental results of the smart sweeping robot show that the sweeping robot can start work when the dust accumulates to a certain amount, and does not start work when there is no dust, which is of great significance for energy saving and emission reduction.
Keywords: IoT; operating system; UHomeOS; ZigBee; work plan; smart appliance
0 ?引 ?言
隨著科技的發(fā)展,智能家居設(shè)備深受廣大用戶的喜愛,已經(jīng)逐漸進入了普通用戶的家中[1?2],目前,智能家居設(shè)備的種類以及數(shù)量暴增,大量的智能家居設(shè)備在工作時需要消耗大量的電量,因此如何合理規(guī)劃智能家居的工作時間,成為急需解決的問題。
目前,大部分智能家居的工作主要靠人工操控,比如,人為控制掃地機器人在何時清掃[3],但是,在一些經(jīng)常無人活動的區(qū)域(例如大型的倉庫、體育場館等),如何控制掃地機器人在有灰塵時自動清掃是一個難題。隨著智能監(jiān)測技術(shù)的普及,也可以考慮通過硬件探測儀在檢測到環(huán)境達到工作條件時再工作,考慮到地面的灰塵主要來源是空氣中的粉塵、衣物纖維等[4],可以通過粉塵探測儀[5]在探測到空氣中粉塵量較多時再進行清掃工作。雖然粉塵探測儀能夠探測空氣中的粉塵含量,但是由于室內(nèi)空氣中的灰塵往往不多,且普通粉塵探測儀的精度又不高,因此無法準確反映室內(nèi)地面灰塵的狀態(tài)。另外,粉塵探測儀價格昂貴,單獨用粉塵探測儀探測地面灰塵,成本較高。
為此,本文提供了面向智能家居的物聯(lián)網(wǎng)操作系統(tǒng)應(yīng)用框架,通過云平臺技術(shù)搭建物聯(lián)網(wǎng)操作系統(tǒng)[6?7],云平臺能夠根據(jù)智能家居設(shè)備的運行情況,判斷環(huán)境是否達到了智能家居工作的條件,在判斷結(jié)果為“是”時,控制相關(guān)的智能家居進行工作,以此來確定智能家居的工作時間,從而節(jié)省電量消耗,同時無需額外添加檢測環(huán)境條件的探測儀,節(jié)約了成本。
1 ?框架的總體架構(gòu)
本文面向智能家居的物聯(lián)網(wǎng)操作系統(tǒng)應(yīng)用框架由云平臺、主控制器、ZigBee協(xié)調(diào)器、WiFi模塊和智能家居等組成,如圖1所示。其中,云平臺通過互聯(lián)網(wǎng)與主控制器連接,主控制器通過串口與ZigBee協(xié)調(diào)器連接,ZigBee協(xié)調(diào)器與智能家居設(shè)備上的ZigBee節(jié)點連接,通過ZigBee模塊實現(xiàn)對智能家居的控制;主控制器還通過串口與WiFi模塊連接,通過路由器連接互聯(lián)網(wǎng)和移動終端,實現(xiàn)用戶通過移動終端對智能家居的控制,以及主控制器對互聯(lián)網(wǎng)數(shù)據(jù)的獲取。
本文的應(yīng)用框架中,智能家居設(shè)備包括智能窗[8?9]、智能空調(diào)和掃地機器人,用戶可以通過移動終端,經(jīng)由中控制器控制智能家居設(shè)備的運行狀態(tài),主控制器記錄智能家居設(shè)備的狀態(tài)。當智能窗的狀態(tài)為開啟、智能空調(diào)的狀態(tài)為開啟時,室內(nèi)便會積累灰塵,具體積累灰塵的多少取決于智能窗和空調(diào)開啟的時長以及開啟時的空氣質(zhì)量。因此,主控制器會記錄智能窗和智能空調(diào)開啟的時長,還會通過WiFi模塊從提供天氣服務(wù)的API接口獲取空氣質(zhì)量信息,并將這些數(shù)據(jù)發(fā)送給云平臺,云平臺通過智能窗和智能空調(diào)開啟的時長以及開啟時的空氣質(zhì)量這三個參數(shù),實現(xiàn)對室內(nèi)地面灰塵量的量化。
當云平臺判斷灰塵量達到一定級別時,會通過主控制器和ZigBee協(xié)調(diào)器向掃地機器人發(fā)送清掃指令,掃地機器人在收到指令后便開始清掃工作。這樣,在灰塵數(shù)量不多時,可以避免掃地機器人每天定時清掃耗費電量的問題,同時也可保證在地面灰塵數(shù)量較多時能夠及時地清掃地面。
2 ?應(yīng)用框架的硬件設(shè)計
本文應(yīng)用框架的核心是云平臺,它實現(xiàn)了移動終端對智能家居設(shè)備的控制,也可根據(jù)智能空調(diào)和智能窗的開關(guān)狀態(tài),實現(xiàn)對掃地機器人的智能化控制。本文選擇阿里云[10]構(gòu)建云平臺的IaaS層以及PaaS層,阿里云可以提供安全可靠的計算和數(shù)據(jù)處理能力,同時,還提供一系列分布式計算、存儲服務(wù),供開發(fā)者使用,包括分布式文件存儲、分布式數(shù)據(jù)庫集群、分布式緩存、分布式定時服務(wù)。
以海爾硬件平臺USR主板為開發(fā)板,該開發(fā)板采用瑞芯微RK3288處理器,四核Cortex?A17架構(gòu),搭配2 GB DDR3內(nèi)存,板載藍牙、WiFi,支持音頻輸入輸出,接口兼容性高。即主控制器采用RK3288微處理器,RK3288處理器是用于移動電話、個人移動互聯(lián)網(wǎng)設(shè)備及其他數(shù)字多媒體應(yīng)用的低功耗高性能處理器,采用四核Cortex?A17構(gòu)架,最高主頻達到1.6 GHz,集成Mali?T764圖形芯片,具備4K×2K分辨率的H.265硬解能力。
另外,本應(yīng)用框架中,通過ZigBee模塊實現(xiàn)了主控制器對智能家居設(shè)備的控制,ZigBee模塊所采用的是以CC2530為主芯片的ZigBee設(shè)備[11?12],該設(shè)備由TI公司設(shè)計,成本低、功耗低。ZigBee模塊由ZigBee協(xié)調(diào)器和ZigBee節(jié)點組成,協(xié)調(diào)器通過串口和主控制器進行通信,獲取主控制器發(fā)來的命令,再通過ZigBee把命令發(fā)送至ZigBee節(jié)點上。
ZigBee節(jié)點位于智能家居設(shè)備上,方便直接控制智能家居設(shè)備,ZigBee節(jié)點和智能家居設(shè)備之間的連接方式,由ZigBee節(jié)點具體控制的功能決定。例如,ZigBee節(jié)點對智能窗電機的控制,會通過I/O接口和硬件驅(qū)動連接,再和電機相連接,實現(xiàn)根據(jù)用戶終端控制的要求,通過對應(yīng)的I/O口發(fā)出不同的控制指令,使電機正轉(zhuǎn)或反轉(zhuǎn),實現(xiàn)對智能窗的開關(guān)。
由于本文的設(shè)計重點是云平臺根據(jù)智能家居設(shè)備的運行情況,判斷環(huán)境是否達到了智能家居工作的條件,因此ZigBee節(jié)點對智能家居設(shè)備的控制不是本文研究的重點,所以對ZigBee節(jié)點和智能空調(diào)、智能窗、掃地機器人的具體硬件連接方式不做重點描述。
3 ?應(yīng)用框架的軟件設(shè)計
本文的應(yīng)用框架中軟件設(shè)計主要是對云平臺和嵌入式操作系統(tǒng)的設(shè)計,核心在于云平臺根據(jù)智能家居設(shè)備的運行情況,判斷環(huán)境是否達到了智能家居工作的條件,對于移動終端軟件設(shè)計、ZigBee模塊軟件設(shè)計等只做概述。
3.1 ?主控制器軟件設(shè)計
主控制器軟件設(shè)計部分主要包括uboot移植、內(nèi)核編譯、系統(tǒng)移植、設(shè)備驅(qū)動編程、應(yīng)用程序編程等。
首先引導和啟動Bootloader[13],通過該程序進行硬件設(shè)備初始化以及建立內(nèi)存空間映射圖,將系統(tǒng)引入可以調(diào)用操作系統(tǒng)內(nèi)核的合適狀態(tài)。
主控制器運行系統(tǒng)為UHomeOS,基于UHomeOS提供的開發(fā)工具進行編譯調(diào)試。UHomeOS提供多種開發(fā)套件,可以實現(xiàn)uSDK、IoTSDK、賬號服務(wù)等多種基礎(chǔ)能力。主控制器軟件流程圖如圖2所示。
在UHomeOS操作系統(tǒng)啟動后,用戶可以通過移動終端發(fā)送控制智能家居設(shè)備開啟/關(guān)閉的指令,指令通過路由器和WiFi模塊傳輸至主控制器。由于智能窗和智能空調(diào)會對室內(nèi)灰塵產(chǎn)生影響,因此,在接收到開啟智能窗/智能空調(diào)的指令時,記錄其開啟的時刻,然后,通過GET請求,從提供天氣數(shù)據(jù)的服務(wù)器API獲取天氣數(shù)據(jù)。在智能窗/智能空調(diào)開啟時,定期向云平臺上報智能窗和智能空調(diào)已開啟的時間和天氣數(shù)據(jù)。
3.2 ?云平臺軟件設(shè)計
云平臺的軟件設(shè)計主要使用Java語言編寫程序。云平臺的軟件流程如圖3所示。
云平臺接收到主控制器上報的數(shù)據(jù)后,根據(jù)上次清掃后智能窗和智能空調(diào)已開啟的時間和天氣數(shù)據(jù),計算灰塵等量[M],具體計算公式如下:
[M=T1·a1+…+Ti·ai+…+Tn·an+ t1·a1·k1+…+ti·a1·ki+…+tn·a1·kn]
式中:[Ti]為智能窗每次開啟的時間,單位為min;[ai]為智能窗/智能空調(diào)每次開啟時的天氣數(shù)據(jù),天氣數(shù)據(jù)選擇AQI指數(shù)[14],即空氣質(zhì)量指數(shù)??諝赓|(zhì)量指數(shù)和地面灰塵數(shù)量往往成正比,在揚塵天氣,AQI指數(shù)一般為500。[ti]為智能空調(diào)每次開啟的時間,單位為min,空調(diào)開啟后可能會將外界塵埃帶入室內(nèi),另外也會促進室內(nèi)空氣流通,塵土、衣物纖維等顆粒物會四處飄蕩,增加地面的灰塵,但是空調(diào)開啟所帶來的灰塵要遠遠小于開窗時帶來的灰塵,因此,空調(diào)開啟時間需要乘以一個權(quán)重系數(shù)[ki],根據(jù)經(jīng)驗,本文中[ki]取值10%。
在得到灰塵等量[M]后,判斷灰塵等量是否大于設(shè)定數(shù)值,由于地面灰塵主要受窗戶大小以及室內(nèi)地面面積的影響,因此設(shè)定數(shù)值可以根據(jù)經(jīng)驗自行設(shè)定。比如,設(shè)定數(shù)值取值為180 000,該值為AQI指數(shù)為500時,開窗半天所積累的灰塵等量。當判斷灰塵等量[M>]180 000時,向掃地機器人發(fā)送清掃指令,實現(xiàn)對地面的清掃;在判斷灰塵等量[M<]180 000時,則繼續(xù)定期獲取數(shù)據(jù),計算灰塵等量。
另外,不同用戶對地面灰塵量的忍受程度不同,用戶在使用一段時間后,可根據(jù)經(jīng)驗通過移動終端APP調(diào)節(jié)預定數(shù)值,調(diào)整對地面灰塵的清掃時機,當灰塵等量[M]大于預定數(shù)值時,掃地機器人才會對地面進行清掃。
3.3 ?其他模塊軟件設(shè)計
移動終端的APP采用Android版本,通過Eclipse和ADT進行開發(fā)[15],移動終端APP檢測用戶的操作事件,用戶的操作事件會觸發(fā)對應(yīng)的編碼指令,編碼指令通過WiFi模塊發(fā)送至主控芯片,主控芯片收到編碼指令后對編碼指令進行協(xié)議轉(zhuǎn)換和數(shù)據(jù)處理,然后發(fā)給ZigBee模塊。
ZigBee模塊分為協(xié)調(diào)器和終端節(jié)點兩個部分。ZigBee模塊軟件設(shè)計[16],具體可以通過對Z?Stack協(xié)議棧進行設(shè)置和配置,并移植到ZigBee節(jié)點電路實現(xiàn)。通過對協(xié)調(diào)器上的串口、通信方式等進行設(shè)置,實現(xiàn)協(xié)調(diào)器和主控制器之間的串口連接以及協(xié)調(diào)器與連接設(shè)備的通信。程序開始后會對ZigBee節(jié)點進行初始化,然后ZigBee節(jié)點自動查找協(xié)調(diào)器,查找到后自動地加入到ZigBee網(wǎng)絡(luò)中,加入成功后,主控器的控制指令通過串口傳送到協(xié)調(diào)器,協(xié)調(diào)器再把指令傳送到終端節(jié)點,最終實現(xiàn)對智能家居設(shè)備的控制。
4 ?結(jié) ?語
本文設(shè)計的應(yīng)用框架,根據(jù)智能窗和智能空調(diào)的開啟時間,以及開啟時的空氣質(zhì)量,計算灰塵等量,雖然計算得到的灰塵等量并不一定能夠完全準確反映室內(nèi)灰塵的數(shù)量,但是灰塵等量與室內(nèi)灰塵的量具備正相關(guān)關(guān)系,因此能夠間接反映室內(nèi)灰塵的量。當灰塵等量大于用戶設(shè)定的預定數(shù)值時,通過ZigBee通信控制掃地機器人清掃,在用戶不主動清掃時,可以實現(xiàn)地面有灰塵時清掃,無灰塵時不清掃,對節(jié)能減排具有重大意義。
同時,該系統(tǒng)無需額外添加灰塵傳感器,可基于整個智能家居控制系統(tǒng),通過對主控制器的軟件進行設(shè)計即可實現(xiàn),成本較低。
參考文獻
[1] 易思亮.淺析智能家居產(chǎn)品的發(fā)展狀況及趨勢[J].美術(shù)大觀,2018(11):98?99.
[2] 荀艷麗,焦庫,張秦菲.基于物聯(lián)網(wǎng)的智能家居控制系統(tǒng)設(shè)計與實現(xiàn)[J].現(xiàn)代電子技術(shù),2018,41(10):74?76.
[3] 汪子翔.家用智能掃地機器人的工作原理探究[J].通訊世界,2019,26(2):283?284.
[4] 李曉燕,汪浪,張舒婷.城市室內(nèi)灰塵重金屬水平、影響因素及健康風險:以貴陽市為例[J].環(huán)境科學,2016,37(8):2889?2896.
[5] 張紫辰,董愷琛,張益源,等.基于MEMS技術(shù)的智能傳感器系統(tǒng)(“智能灰塵”)[J].電子學報,2015,43(10):2095?2109.
[6] 孟曉麗.物聯(lián)網(wǎng)平臺下基于云計算的智能家居系統(tǒng)設(shè)計[J].科技通報,2016,32(6):67?71.
[7] 董愛民,許菁.基于物聯(lián)網(wǎng)公共云平臺的遠程家庭感知與控制系統(tǒng)[J].現(xiàn)代電子技術(shù),2016,39(11):30?33.
[8] 宰文姣,汪華章.基于步進電動機的智能窗戶控制系統(tǒng)設(shè)計[J].微特電機,2015,43(6):83?86.
[9] 賀道坤,段向軍.用于環(huán)境檢測的智能窗戶裝置研究[J].工業(yè)安全與環(huán)保,2014,40(10):66?67.
[10] 徐泉,王良勇,劉長鑫.工業(yè)云應(yīng)用與技術(shù)綜述[J].計算機集成制造系統(tǒng),2018,24(8):1887?1901.
[11] 武志學.云計算虛擬化技術(shù)的發(fā)展與趨勢[J].計算機應(yīng)用,2017,37(4):915?923.
[12] 鄧昀,李朝慶,程小輝.基于物聯(lián)網(wǎng)的智能家居遠程無線監(jiān)控系統(tǒng)設(shè)計[J].計算機應(yīng)用,2017,37(1):159?165.
[13] 杜海星.基于ARM的嵌入式Bootloader分析與移植[J].微計算機信息,2010,26(29):58?59.
[14] 潘本鋒,李莉娜.環(huán)境空氣質(zhì)量指數(shù)計算方法與分級方案比較[J].中國環(huán)境監(jiān)測,2016,32(1):13?17.
[15] 周宇,尹生強,王冬青,等.基于Eclipse和Android系統(tǒng)的APP開發(fā)平臺搭建研究[J].青島大學學報(工程技術(shù)版),2016,31(3):49?53.
[16] 陳培英,王承林,胡紅林,等.基于ARM及ZigBee的智能家居遠程監(jiān)控系統(tǒng)實現(xiàn)路徑[J].現(xiàn)代電子技術(shù),2017,40(19):41?44.