姜曉峰
摘 要:探討了基于Android手機終端的智能家居控制系統(tǒng),分別從系統(tǒng)整體設(shè)計、系統(tǒng)硬件平臺設(shè)計、OPC片上系統(tǒng)設(shè)計和Android客戶端設(shè)計四個方面作了詳細、系統(tǒng)的論述,以期能為相關(guān)人員提供借鑒。
關(guān)鍵詞:Android;智能家居;控制系統(tǒng);控制平臺
中圖分類號:TP273.5 文獻標識碼:A DOI:10.15913/j.cnki.kjycx.2015.20.091
伴隨著生產(chǎn)力的不斷發(fā)展,人們的物質(zhì)生活水平不斷提高,傳統(tǒng)的家居系統(tǒng)成本高、安全性差,人們已經(jīng)不再滿足現(xiàn)在的這種同工業(yè)革命時期相差無幾的生活方式了。近年來,智能家居的出現(xiàn)滿足了人們的生活需求?;诖耍疚木虯ndroid手機終端的智能家居控制系統(tǒng)設(shè)計進行了探討。
1 系統(tǒng)整體設(shè)計
在以CycloneIII系列芯片為核心的FPGA硬件控制平臺上開展設(shè)計和研發(fā),其中包括了蜂鳴器、按鍵、數(shù)碼管等基本外設(shè)。實現(xiàn)過程是:通過在FPGA芯片內(nèi)部嵌入NIOSII軟核作為通信和控制核心,從而構(gòu)建SOPC片上系統(tǒng)。
2 系統(tǒng)硬件平臺設(shè)計
考慮到現(xiàn)實的需求,硬件需由WIFI模塊、FPGA控制平臺、繼電器模塊組成,具體如圖1所示。
由圖1可知,手機通過無線WIFI將控制信息傳遞給位于同一AP熱點下的WIFI模塊,WIFI模塊將接收到的控制信號由串口傳遞給FPGA,F(xiàn)PGA則根據(jù)接收到的指令控制相應(yīng)的繼電器工作,從而實現(xiàn)對家電的控制。同時,F(xiàn)PGA還可以將家電的工作狀態(tài)和室內(nèi)的環(huán)境狀況通過WIFI模塊再次反饋給手機。下面將詳細闡述硬件設(shè)計中各構(gòu)成模塊的功能實現(xiàn)。
2.1 FPGA控制平臺
FPGA控制平臺是硬件系統(tǒng)的核心,主要負責接收和處理控制指令、控制動作電路、監(jiān)測和反饋狀態(tài)信息等??紤]到設(shè)計需求和系統(tǒng)成本,我們選擇了CycloneIII系列中性價比更為優(yōu)越的EP3C5E144C8N。該款芯片內(nèi)部包含5 136個邏輯單元、95個標準用戶I/O口、46個九位嵌入式乘法器和2個鎖相環(huán),可以流暢運行NIOSII軟核。存儲芯片則選擇了三星公司的K4S561632E-UC75動態(tài)存儲芯片,容量為256 Mb,位寬16 bits。為了方便使用,核心板上還設(shè)計了一款容量為16 Mb的FPGA專用配置芯片EPCS16。同時,考慮到控制平臺的通用性、可移植性和可擴展性,平臺上又進一步設(shè)計了4個LED、兩位共陰極數(shù)碼管、1個蜂鳴器、4個撥碼開關(guān)和8個按鍵開關(guān)等基本外設(shè),而且電源芯片選用了ASM1117-2.5、ASM1117-3.3和LM317,這三款芯片可分別為FPGA提供2.5 V、3.3 V和1.25 V電壓。另外,F(xiàn)PGA所有用戶I/O口都已引出,以便擴展。
2.2 傳輸協(xié)議模塊
在智能家居中的應(yīng)用原則中,TCP和UDP是目前最常用的網(wǎng)絡(luò)通信協(xié)議。TCP是基于連接的協(xié)議,UDP是一個無連接的、不可靠的協(xié)議。相對于基于流傳輸?shù)腡CP而言,UDP是基于消息傳輸?shù)模w上具有傳輸速度快等優(yōu)點。通過研究可以看出,家用電器的控制信息特點是數(shù)據(jù)量小、控制信息短,適合用于傳送少量數(shù)據(jù)、對可靠性要求不高的應(yīng)用環(huán)境,因此更適合采用簡單的、面向數(shù)據(jù)報的UDP協(xié)議。
2.3 無線WIFI模塊
無線WIFI模塊采用的是深圳市海凌科電子有限公司的HLK-RM04。該模塊是基于通用串行接口且符合網(wǎng)絡(luò)標準的嵌入式模塊,內(nèi)置TCP/IP協(xié)議棧,能夠?qū)崿F(xiàn)用戶串口、以太網(wǎng)、無線網(wǎng)(WIFI)三個接口之間的轉(zhuǎn)換。在本次研發(fā)設(shè)計中,該模塊的主要作用是將WIFI無線信號通過串口與FPGA控制中心相互通信。
2.4 Zigbee模塊
采用CEL公司的ZICM2410芯片,其內(nèi)核芯片結(jié)構(gòu)如圖2所示。CEL公司的ZICM2410是兼容ZigBee和IEEE802.15.4的完整單片無線解決方案。它包含1個帶有基帶調(diào)制解調(diào)器的RF收發(fā)器、硬連線MAC和1個帶有內(nèi)部閃存的嵌入式8051微控制器。該器件提供了多個通用I/O引腳、定時器和UART等外圍設(shè)備功能,并且是第一個提供嵌入式聲音CODEC的器件,因此是超低功耗應(yīng)用的理想選擇。
2.5 RFID 模塊
RFID模塊采用CY-14443A-P系列射頻模塊,利用SPI總線與控制器通信。CY-14443A系列射頻讀寫模塊采用基于ISO14443標準的非接觸卡讀卡機專用芯片。模塊引腳如圖3所示。
2.6 繼電器模塊
由于智能家居系統(tǒng)的控制對象是普通家電,都屬于強電用電器。因此,使用控制平臺操控時,就需要通過繼電器來實現(xiàn)間接控制。繼電器采用的是松樂繼電器。為保證繼電器的順利閉合,本模塊采用了達林頓晶體管ULN2003L來增加FPGA的驅(qū)動能力。
3 OPC片上系統(tǒng)設(shè)計
在FPGA內(nèi)部設(shè)計NIOSII片上系統(tǒng)主要包括兩個方面:①在FPGA芯片內(nèi)部設(shè)計硬件電路;②編寫基于NIOSII的軟件程序。
3.1 硬件電路設(shè)計
硬件系統(tǒng)由時鐘、NIOSII軟核、音效模塊組成。NIOSII軟核和音效模塊所需要的時鐘頻率不同,因此需要利用FPGA內(nèi)部的一個嵌入式鎖相環(huán)對時鐘進行分頻和倍頻,這樣可使整個系統(tǒng)實現(xiàn)頻率同步。在此基礎(chǔ)上配置NIOSII軟核,由其完成指令的下達和數(shù)據(jù)的輸入、輸出。而音效模塊則是家庭音響,主要由Android客戶端實現(xiàn)控制。
3.2 基于NIOSII的軟件設(shè)計
NIOSII支持C語言開發(fā)程序代碼,并提供強大的硬件抽象層系統(tǒng)庫(HAL)。NIOSII處理器的外圍器件允許用戶通過HAL的API接口直接訪問底層硬件。同時,HAL系統(tǒng)庫定義了一組基本功能,使設(shè)計者可以直接初始化和訪問常用器件,而不再需要考慮底層硬件,這大大簡化了程序的設(shè)計流程。程序運行燒寫至FPGA內(nèi)部的NIOSII軟核中,主要功能除了接收WIFI無線模塊傳來的串口信息、譯碼并控制電路外,還能接收和處理各模塊的狀態(tài)信息,并反饋給WIFI無線模塊。
4 Android客戶端設(shè)計
本客戶端是在Windows7操作系統(tǒng)下構(gòu)建的。Android客戶端是用戶與控制系統(tǒng)溝通信息的交互界面??蛻舳说墓δ芫褪菍崿F(xiàn)設(shè)計用戶界面與Socket之間的成功通信。通過Socket通信,即打開網(wǎng)絡(luò)套接字,由WIFI網(wǎng)絡(luò)傳遞信息。將Android客戶端安裝在用戶手機中,手機和系統(tǒng)的WIFI模塊連接到同一個AP熱點。Android客戶端通過套接字向網(wǎng)絡(luò)(WIFI模塊)提供發(fā)送請求或者應(yīng)答請求,觸發(fā)后臺應(yīng)用程序。應(yīng)用程序分析操作指令后發(fā)送相應(yīng)的控制信息,并通過路由器傳遞給WIFI模塊,WIFI模塊再將接收到的信息轉(zhuǎn)換為串口信息傳遞給FPGA內(nèi)部的NIOSII軟核,NIOSII軟核處理接收到信息后控制相應(yīng)的引腳動作,進而由引腳控制繼電器的吸合和斷開,由此實現(xiàn)對普通家電的完整控制。
Android客戶端的用戶界面文件包含了若干個TextView(文本框)控件和1個Button(按鈕)控件,用戶可以通過界面中的按鍵實施相應(yīng)操作。功能清單文件AndroidManifest.xml是對應(yīng)用程序的全局描述,也是應(yīng)用程序不可或缺的一個重要文件。所有應(yīng)用程序所使用到的組件均存在于AndroidManifest.xml文件中,并且發(fā)表了與其有關(guān)的特性和要求聲明。程序代碼由JAVA語言編寫,交互界面之間的切換與顯示則由TabHost控件實現(xiàn)與維護。Android軟件通過“套接字”向網(wǎng)絡(luò)(WIFI模塊)提出發(fā)送請求或者應(yīng)答請求。設(shè)計程序時,需著重考慮Socket通信。
5 結(jié)束語
綜上所述,目前智能家居正朝著無線遠程與近程控制相結(jié)合,集多媒體、游戲娛樂功能于一身和快速、便利等方向發(fā)展,而基于Android手機終端的智能家居則正好滿足了人們的生活需求,相信通過不斷的探索和應(yīng)用,智能家居肯定會有更好的發(fā)展。
參考文獻
[1]王清清,李曉勇,余強國.基于Android手機終端的智能家居遠程控制系統(tǒng)[J].中國科技信息,2013(12).
[2]楊堤.基于物聯(lián)網(wǎng)的智能家居控制系統(tǒng)設(shè)計與實現(xiàn)[J].電子世界,2012(21).
〔編輯:王霞〕