普清民
摘要:本文設(shè)計(jì)了一種低成本、易擴(kuò)展、適合居民家庭應(yīng)用的智能家居遠(yuǎn)程控制系統(tǒng)。該系統(tǒng)以Android操作系統(tǒng)為平臺(tái),對(duì)面向無(wú)線路由的智能家居控制系統(tǒng)進(jìn)行控制終端App設(shè)計(jì),使用開(kāi)源SQLite數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)存儲(chǔ),實(shí)現(xiàn)了遠(yuǎn)程控制家居設(shè)備和智能安防的功能,同時(shí)在Android智能客戶端界面上實(shí)時(shí)顯示家居設(shè)備的運(yùn)行狀態(tài)。測(cè)試結(jié)果表明,本文的智能家居遠(yuǎn)程控制系統(tǒng)運(yùn)行狀態(tài)良好。
關(guān)鍵詞:智能家居;遠(yuǎn)程控制;Android;WiFi
中圖分類號(hào):TP273 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)20-0181-02
Design of Intelligent Home Remote Control System Based on Andriod
PU Qing-min
(Zhongshan Polytechnic, Zhongshan 528404,China)
Abstract: This paper designs a smart home remote control system. This system uses the open source Android operating system as the platform, and uses the various resources provided by the Android system to establish the client software of smart home control system. The intelligent home control system for wireless routing realizes the function of remote control of home appliances, and can display the running status of home appliances on the Android smart client interface.
Key words: smart home; remote control; Android; WiFi
隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展和手機(jī)等智能終端設(shè)備的普及,智能家居系統(tǒng)逐步進(jìn)入普通家庭。智能家居系統(tǒng)是以住宅為平臺(tái),利用綜合布線技術(shù)、網(wǎng)絡(luò)通信技術(shù)、安全防范技術(shù)、自動(dòng)控制技術(shù)、音視頻技術(shù)等將家居生活有關(guān)的設(shè)施集成,構(gòu)建高效的住宅設(shè)施與家庭日程事務(wù)的管理系統(tǒng),提升家居安全性、便利性、舒適性、藝術(shù)性,并實(shí)現(xiàn)環(huán)保節(jié)能的居住環(huán)境[1]。
1 系統(tǒng)總體設(shè)計(jì)
本文設(shè)計(jì)的智能家居控制系統(tǒng)總體結(jié)構(gòu)如圖1所示。該系統(tǒng)以Android智能手機(jī)或平板電腦作為控制終端,通過(guò)Internet與遠(yuǎn)程家庭控制系統(tǒng)進(jìn)行數(shù)據(jù)交換。系統(tǒng)中的WiFi家庭網(wǎng)關(guān)上設(shè)計(jì)了一個(gè)無(wú)線路由發(fā)射模塊,每個(gè)子節(jié)點(diǎn)都包含一個(gè)無(wú)線網(wǎng)絡(luò)接收模塊,且子節(jié)點(diǎn)并分別與智能(調(diào)光)開(kāi)關(guān)、智能紅外發(fā)射器、智能窗簾控制器等家居設(shè)備相連接,通過(guò)這些無(wú)線接收、無(wú)線發(fā)射模塊便可以實(shí)現(xiàn)WiFi網(wǎng)關(guān)與子節(jié)點(diǎn)之間的數(shù)據(jù)交換。紅外發(fā)射器采用全數(shù)字無(wú)線雙向通訊方式,由天線接收WiFi信號(hào)和按鍵產(chǎn)生的信號(hào)。同時(shí),濾波電路對(duì)接收到的信號(hào)進(jìn)行調(diào)頻,經(jīng)單片機(jī)控制系統(tǒng)處理后,紅外信號(hào)發(fā)射給相應(yīng)設(shè)備實(shí)現(xiàn)對(duì)房間中的空調(diào)、音響、電視劇、廚房電器等家電設(shè)備進(jìn)行遙控。
2 智能家居系統(tǒng)硬件設(shè)計(jì)
2.1最小系統(tǒng)原理圖
STM32F103C8T6是一款以Cortex-M3為內(nèi)核的中等容量性微控制器。它擁有2個(gè)多達(dá)16個(gè)輸入通道的12位模數(shù)轉(zhuǎn)換器、37個(gè)可映像到16個(gè)外部中斷的快速I/O端口、3個(gè)通用定時(shí)器(TIM2、TIM3、TIM4)、1個(gè)高級(jí)定時(shí)器(TIM1)、2個(gè)SPI總線外設(shè)(SPI1、SPI2)、3個(gè)串口通信外設(shè)(USART1、USART2、USART3)等多種豐富資源,是本次電路設(shè)計(jì)的核心芯片。
2.2 煙霧傳感器電路
煙霧傳感器需要5V供電電壓,輸出的模擬電壓范圍在0-4V,STM32單片機(jī)的A/D外設(shè)所能采集到的電壓范圍在0~3.3V內(nèi),為保證傳感器的輸出信號(hào)被正確采集,傳感器模塊輸出的模擬電壓需要經(jīng)過(guò)電路降壓處理才能接入STM32單片機(jī)的A/D轉(zhuǎn)換通道。
3 智能家居系統(tǒng)軟件設(shè)計(jì)
3.1 Android客戶端的界面設(shè)計(jì)
1) 登錄界面的設(shè)計(jì)
用戶登錄界面的布局在文件login.xml中完成,主要用到的UI控件類有Text View、Edit Text、Check Box、Button等。界面的顯示和具體功能由源文件LoginActivity.java實(shí)現(xiàn)。界面顯示需要在 Login Activity類中的on Create方法中調(diào)用set Content View(R.layout.login)方法。登錄界面軟件的設(shè)計(jì)流程如圖3所示。
2) 主控界面的設(shè)計(jì)
本方案中的用戶操作界面設(shè)計(jì)即UI設(shè)計(jì)采用在Eclipse開(kāi)發(fā)平臺(tái)上進(jìn)行,Android手機(jī)的UI界面是通過(guò)res目錄下的XML文件來(lái)定義用戶界面的。本方案的用戶界面按功能可分可分為9個(gè)界面,包括主界面、環(huán)境監(jiān)控界面、智能廚房界面、智能照明界面、智能客廳界面、時(shí)間設(shè)置界面、智能安防界面、智能燈光界面、音樂(lè)界面、情景模式界面,其中用戶最先看到的是主界面,從主界面可以逐個(gè)觸摸進(jìn)入其他8個(gè)界面二級(jí),界面左上角顯示時(shí)間,右上角顯示日期,中間顯示“智能家居系統(tǒng)”。
3.2 Android客戶端與遠(yuǎn)程數(shù)據(jù)庫(kù)的交互
Android客戶端通過(guò)webService與遠(yuǎn)程數(shù)據(jù)服務(wù)器建立通信,智能家居系統(tǒng)一般來(lái)說(shuō)允許有多個(gè)客戶端,且多個(gè)客戶端可同時(shí)使用。Android客戶端通過(guò)調(diào)用webServic完成對(duì)遠(yuǎn)程服務(wù)器上的數(shù)據(jù)庫(kù)中數(shù)據(jù)的增加、刪除、編輯、修改和查詢等,服務(wù)器將數(shù)據(jù)庫(kù)信息通過(guò)以太網(wǎng)傳送給房間內(nèi)的房間控制器,房間控制器通過(guò)自組無(wú)線網(wǎng)絡(luò)發(fā)送協(xié)議向各個(gè)功能模塊,進(jìn)而實(shí)現(xiàn)對(duì)家居設(shè)備的遠(yuǎn)程監(jiān)控和管理。
3.3 數(shù)據(jù)庫(kù)的設(shè)計(jì)
SQLite是一種小型的數(shù)據(jù)庫(kù),占用系統(tǒng)資源很少,它支持大多數(shù)的 SQL92 標(biāo)準(zhǔn),并且可以在所有主要的操作系統(tǒng)上運(yùn)行[2]。SQLite數(shù)據(jù)庫(kù)安裝和運(yùn)行比較簡(jiǎn)單,在大多數(shù)情況下,只要確保其二進(jìn)制文件存在即可開(kāi)始創(chuàng)建、連接和使用數(shù)據(jù)庫(kù)。本文中的智能家居控制終端軟件選用SQLite作為數(shù)據(jù)庫(kù),來(lái)存儲(chǔ)數(shù)據(jù)。本智能家居系統(tǒng)在操作數(shù)據(jù)時(shí),主要使用了Android提供的兩個(gè)類:SQLite Open Helper數(shù)據(jù)庫(kù)訪問(wèn)類和SQLite Database抽象類。SQLite Open Helper數(shù)據(jù)庫(kù)訪問(wèn)類的功能主要是執(zhí)行對(duì)數(shù)據(jù)庫(kù)的插入記錄、查詢記錄等操作。Database抽象類的功能主要是通過(guò)從此類繼承實(shí)現(xiàn)用戶類來(lái)提供數(shù)據(jù)庫(kù)打開(kāi)、關(guān)閉等操作函數(shù)。對(duì)于Android操作系統(tǒng)來(lái)說(shuō),由于系統(tǒng)內(nèi)置了豐富的API來(lái)供開(kāi)發(fā)人員操作SQLite,我們可以輕松地完成對(duì)數(shù)據(jù)的存取[4]。
4 結(jié)束語(yǔ)
本文設(shè)計(jì)了一套智能家居控制系統(tǒng),實(shí)現(xiàn)了智能手機(jī)、平板電腦等遠(yuǎn)程控制和信息交換。通過(guò)無(wú)線接收、無(wú)線發(fā)射模塊和智能控制器實(shí)現(xiàn)對(duì)空調(diào)、燈光、窗簾、風(fēng)扇等家電設(shè)備控制,通過(guò)溫濕度傳感器實(shí)時(shí)監(jiān)控房間的環(huán)境值。將紅外探測(cè)器、煙霧報(bào)警器、網(wǎng)絡(luò)攝像機(jī)等結(jié)合起來(lái),利用手機(jī)等智能終端進(jìn)行查看和報(bào)警。為用戶提供了智慧、舒適、便捷的家庭生活,增強(qiáng)家居生活的安全性,節(jié)約了家居設(shè)備的能源消耗。
參考文獻(xiàn):
[1] 邵星,王翠香.基于安卓的智能家居移動(dòng)終端設(shè)計(jì)[J].軟件導(dǎo)刊,2015,14(12):72-74.
[2] 譚海紅,何方,王品.基于Android的遠(yuǎn)程監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].組合機(jī)床與自動(dòng)化加工技術(shù),2015(7):61-63.
[3] 佘東.基于WebService的地質(zhì)災(zāi)害預(yù)警系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].西安文理學(xué)院學(xué)報(bào),2012,15(2):111-113.
[4] 趙宇飛,禹東川.基于Android平臺(tái)的便攜式工作記憶訓(xùn)練系統(tǒng)[J].現(xiàn)代電子技術(shù),2015(10):45-48.