摘 要: 通過物聯(lián)網(wǎng)技術(shù)結(jié)合ZigBee相關(guān)模塊構(gòu)建無線傳感網(wǎng)絡(luò),利用4個(gè)ZigBee節(jié)點(diǎn)實(shí)時(shí)采集特定環(huán)境的信息并進(jìn)行控制,結(jié)合網(wǎng)關(guān)技術(shù)以及嵌入式ARM技術(shù)對(duì)環(huán)境進(jìn)行監(jiān)測(cè)并通過GPRS技術(shù)以及V4L2技術(shù)、Android技術(shù)來實(shí)現(xiàn)智能家居系統(tǒng)。通過軟硬件的相關(guān)測(cè)試,驗(yàn)證了該系統(tǒng)的可靠性以及穩(wěn)定性。
關(guān)鍵詞: ZigBee;ARM;Android;GPRS;網(wǎng)關(guān);智能家居
隨著物聯(lián)網(wǎng)技術(shù)以及嵌入式相關(guān)技術(shù)的快速發(fā)展,智能家居、智能傳輸、智能社區(qū)已經(jīng)真實(shí)存在于我們的生活中。物聯(lián)網(wǎng)實(shí)際上是物物相互連接構(gòu)成的“互聯(lián)網(wǎng)”,但是物聯(lián)網(wǎng)在未來智能處理上,需要借助云計(jì)算、模式識(shí)別、人工智能等相關(guān)技術(shù)。本文通過ZigBee來構(gòu)建無線傳感網(wǎng)絡(luò)。ZigBee[1]符合IEEE802.15.4標(biāo)準(zhǔn)的網(wǎng)絡(luò)協(xié)議,可以利用CC2530處理芯片來構(gòu)建ZigBee硬件模塊,通過搭建無線傳感網(wǎng)絡(luò)[2]允許成百上千的設(shè)備加入,其中包括ZigBee協(xié)調(diào)器、ZigBee路由器、ZigBee節(jié)點(diǎn)設(shè)備等。近年來,ZigBee技術(shù)已經(jīng)幫助企業(yè)解決了很多工業(yè)問題,同時(shí)在智能領(lǐng)域也有很好的應(yīng)用前景。
1 系統(tǒng)總體設(shè)計(jì)
基于CC2530芯片的ZigBee節(jié)點(diǎn)首先通過一系列的傳感器來獲得實(shí)時(shí)的煙霧值、有無人活動(dòng)、溫度值、光敏值等,通過相應(yīng)的ZigBee節(jié)點(diǎn),利用Zstack協(xié)議棧以及2.4 GHz的無線,實(shí)時(shí)將獲取到的數(shù)據(jù)發(fā)送給ZigBee的網(wǎng)關(guān)設(shè)備,網(wǎng)關(guān)設(shè)備獲取到節(jié)點(diǎn)設(shè)備的值,通過串口傳送給裝載Android系統(tǒng)的ARM 11主控設(shè)備。主控設(shè)備通過對(duì)節(jié)點(diǎn)數(shù)據(jù)的收集與分析,將數(shù)據(jù)實(shí)時(shí)寫入到Sqlite數(shù)據(jù)中并等待Boa服務(wù)器的讀取。主控設(shè)備在Android設(shè)備上運(yùn)行Boa服務(wù)器,這樣用戶可以遠(yuǎn)程通過Android手機(jī)的智能家居客戶端登陸到系統(tǒng)Boa服務(wù)器來獲取發(fā)來的數(shù)據(jù)控制相應(yīng)的家電設(shè)備。用戶也可以通過PC經(jīng)過Internet網(wǎng)絡(luò)以WEB的方式登陸到智能家居系統(tǒng)中,通過攝像頭查看實(shí)時(shí)的畫面。當(dāng)傳感器獲取到的值與當(dāng)前環(huán)境不匹配,例如溫度過高(可能造成火災(zāi))、煙霧值過大(可能煤氣泄漏)、人體感應(yīng)值發(fā)生跳變(可能有小偷進(jìn)入)等情況,ARM主控模塊則會(huì)通過GPRS模塊發(fā)送消息給用戶的手機(jī)并等待響應(yīng)的處理方式,用戶可以通過手機(jī)客戶端控制,也可以通過PC登陸到系統(tǒng)中,進(jìn)程處理(報(bào)警、滅火等)。若ARM主控模塊在2 min內(nèi)沒有收到用戶的ACK信息,則采用默認(rèn)的處理方式。智能家居總體設(shè)計(jì)如圖1所示。
2 系統(tǒng)硬件設(shè)計(jì)
2.1 ZigBee模塊的設(shè)計(jì)[3]
ZigBee模塊采用CC2530芯片,它是德州儀器生產(chǎn)的、基于2.4 GHz無線發(fā)射與接收器,內(nèi)部包括數(shù)據(jù)的篩選以及地址的識(shí)別功能,同時(shí)內(nèi)部集成了8051的CPU核。在ZigBee的節(jié)點(diǎn)模塊中,配置了MQ-2系列的可燃?xì)怏w及煙霧傳感器模塊(檢測(cè)可燃?xì)怏w的濃度)、人體紅外感應(yīng)模塊[4](感應(yīng)到人體活動(dòng))、電磁繼電器(通過接入電器的零線和火線至繼電器的常閉端以及公共端來控制電器設(shè)備)、DS18B20溫度傳感器(檢測(cè)溫度值)以及光敏傳感器(檢測(cè)光照值)。而ZigBee的網(wǎng)關(guān)模塊主要接收節(jié)點(diǎn)的傳感信息,并通過串口將收到的數(shù)據(jù)實(shí)時(shí)傳輸給主控設(shè)備。
2.2 ARM主控模塊的設(shè)計(jì)
考慮到主控模塊可以運(yùn)行當(dāng)前比較穩(wěn)定的Android 2.3系統(tǒng),所以在設(shè)計(jì)中使用了ARM 11系列的RISC處理器,采用了76JZ型號(hào)。同時(shí)配置了256 MB的內(nèi)存、DM9000的百兆網(wǎng)卡用于進(jìn)行網(wǎng)絡(luò)連接、RS232串口用于和GPRS模塊相連接,同時(shí)通過USB轉(zhuǎn)串口與ZigBee模塊的網(wǎng)關(guān)相連接。
2.3 GPRS模塊的設(shè)計(jì)
GPRS模塊采用的是BENQ公司的GPRS模塊(又稱GSM模塊),內(nèi)部由GSM基帶控制器、射頻模塊、VBAT供電模塊等硬件組成。工作電壓在3.2 V~4.2 V,通常情況下,選取的電壓為3.3 V,工作的電流為250 mA。通過串口和主控設(shè)備相互通信。同時(shí)攝像頭模塊采用中興微ZC301系列的攝像頭進(jìn)行實(shí)時(shí)畫面的捕捉。
3 系統(tǒng)軟件設(shè)計(jì)
軟件設(shè)計(jì)中,主要通過ZigBee模塊(節(jié)點(diǎn)、網(wǎng)關(guān))、ARM主控模塊以及Android客戶端的設(shè)計(jì)實(shí)現(xiàn)。本文通過流程圖的方式來詳細(xì)解析智能家居模塊是如何工作的。
3.1 ZigBee模塊設(shè)計(jì)
節(jié)點(diǎn)模塊流程圖如圖2所示,網(wǎng)關(guān)模塊流程圖如圖3所示。
3.2 主控模塊的IO設(shè)計(jì)
主控模塊的IO設(shè)計(jì)如圖4所示。
3.3 Android客戶端設(shè)計(jì)[5]
Android是基于Linux的開源操作系統(tǒng),目前此系統(tǒng)主要用于定制開發(fā),特別是當(dāng)今的移動(dòng)開發(fā)中,通常在Android系統(tǒng)上進(jìn)行二次開發(fā)。圖5所示為系統(tǒng)運(yùn)行時(shí)客戶端與服務(wù)器的交互過程。Android開發(fā)過程中,采用的開發(fā)工具是Eclipse,嵌入了ADT 16.0的管理插件,同時(shí)Android SDK采用的是2.3的穩(wěn)定版本,運(yùn)用JAVA語言進(jìn)行編程開發(fā)。通過此開發(fā)方式,最后可以產(chǎn)生apk文件,將文件安裝在手機(jī)中,即可使用。
4 總體實(shí)現(xiàn)
以下是實(shí)現(xiàn)用戶遠(yuǎn)程登錄到系統(tǒng)進(jìn)程的操作。圖6中,用戶通過Android系統(tǒng)[6]運(yùn)行智能家居客戶端,客戶端可以通過連接方式登錄到ARM主控服務(wù)器中,繼而查看溫度、光強(qiáng)、煙霧等信息,并可以通過對(duì)節(jié)點(diǎn)繼電器的控制,進(jìn)而控制家用電器。圖6中,一號(hào)節(jié)點(diǎn)控制的燈被打開了。圖7所示為通過運(yùn)行連接后,輸入服務(wù)器的IP地址,準(zhǔn)備遠(yuǎn)程登錄到服務(wù)器中。圖8所示為通過客戶端查看節(jié)點(diǎn)的溫度值,從數(shù)據(jù)上看,當(dāng)前的溫度值是穩(wěn)定的,而且很正常。按照同樣的方式,可以查看光強(qiáng)值、煙霧值等。圖9顯示的則是由WEB遠(yuǎn)程登錄到服務(wù)器中,通過主控板上的攝像頭實(shí)時(shí)查看遠(yuǎn)端的情況。
本文設(shè)計(jì)并實(shí)現(xiàn)了基于Android和物理網(wǎng)技術(shù)的智能家居系統(tǒng),通過物聯(lián)網(wǎng)以及ZigBee技術(shù)可以方便靈活的構(gòu)建低功耗、低成本、安全的無線傳感網(wǎng)絡(luò)。主控設(shè)計(jì)基于Android系統(tǒng)可以很好地處理各種級(jí)別的IO問題,在Boa嵌入式服務(wù)器的運(yùn)轉(zhuǎn)下,用戶可以很方便地通過Android手機(jī)的智能家居客戶端或者PC以WEB的形式登錄到服務(wù)器中,實(shí)現(xiàn)遠(yuǎn)程的監(jiān)控與控制。總之,通過設(shè)計(jì)并實(shí)現(xiàn)此智能家居系統(tǒng),可以發(fā)現(xiàn)它具有很好的應(yīng)用價(jià)值。
參考文獻(xiàn)
[1] 李巖巖,李敬兆.ZigBee技術(shù)在路燈監(jiān)控系統(tǒng)中的應(yīng)用[J]. 微型機(jī)與應(yīng)用,2013,32(5):51-53.
[2] 司海飛,楊忠,王珺,等.無線傳感器網(wǎng)絡(luò)研究現(xiàn)狀與應(yīng)用[J].機(jī)電工程,2011,28(1):16-20.
[3] 張永梅,楊沖,馬禮,等.一種低功耗的無線傳感網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)計(jì)方法[J].計(jì)算機(jī)工程,2012,38(3):71-73.
[4] 陳繼海,劉軍民.無線網(wǎng)絡(luò)的氣體檢測(cè)報(bào)警系統(tǒng)設(shè)計(jì)[J].電子科技,2012,25(10):29-31.
[5] 李凱.Android操作系統(tǒng)分析與移植[D].廣州:華南理工大學(xué),2011.
[6] 朱乃昌.基于Android的物聯(lián)網(wǎng)無線報(bào)警系統(tǒng)[D].北京:北京郵電大學(xué),2012.