姜永增,董 晶,宋廣軍,吳 迪
JIANG Yong-zeng1,DONG Jing2,SONG Guang-jun1,WU Di1
(1.齊齊哈爾大學 計算機系,齊齊哈爾 161006;2.齊齊哈爾大學 教育技術系,齊齊哈爾 161006)
隨著物聯(lián)網(wǎng)技術的發(fā)展,無線智能家居系統(tǒng)將成為智能家居系統(tǒng)發(fā)展的主流之一。智能家居系統(tǒng)使用無線傳感器網(wǎng)絡技術不但克服了有線系統(tǒng)的高成本和不方便等缺點,而且使用方便,能夠快捷的管理家務、監(jiān)測家居環(huán)境、遙控家用電器等。本文分析了智能家務無線控制系統(tǒng)的總體結構,設計了一個小型智能家居無線傳感器網(wǎng)絡,詳細介紹了無線傳感器網(wǎng)絡節(jié)點的硬件設計和軟件編寫。實踐表明,采用nRF24E1無線模塊搭建智能家居無線傳感器網(wǎng)絡,具有成本低、功耗低、快速、開放的特點,有很強的推廣價值和廣闊的市場前景。
nRF24E1是北歐集成電路公司(NORDIC)推出的一款帶2.4GHz無線收發(fā)器和增強型8051內核的無線收發(fā)模塊,適用于各種無線設備的短距離互連應用場合。該模塊工作于2.4GHz的ISM(工業(yè)、科學、醫(yī)學)頻段,有多達125個頻點,能夠實現(xiàn)點對點、點對多點的無線通信,同時可通過改頻、跳頻來避免干擾。nRF24E1集成度非常高,內部集成了增強型51內核,2.4GHz無線收發(fā)器,100Kbps的9路模數(shù)轉換器,UART接口,SPI接口、PWM輸出,內置RC振蕩器、看門狗和喚醒定時器以及專門的穩(wěn)壓電路。所有高頻元件包括電感、振蕩器等都集成在芯片內部,因此芯片的性能穩(wěn)定,受外部環(huán)境的影響小。收發(fā)器的功耗相當?shù)停l(fā)射模式下,射頻電流消耗僅為10.5mA,接收模式下僅為18mA。
基于以上特點,本系統(tǒng)采用nRF24E1作為無線傳感器網(wǎng)絡節(jié)點的控制核心和無線收發(fā)器。
本文僅以一個被控系統(tǒng)和一個環(huán)境監(jiān)測網(wǎng)絡節(jié)點為例進行簡單說明,其他網(wǎng)絡節(jié)點略去。
本系統(tǒng)采用星形拓撲結構,主要由主控系統(tǒng)、被控系統(tǒng)、環(huán)境監(jiān)測系統(tǒng)幾個部分組成。被控系統(tǒng)由多個被控系統(tǒng)網(wǎng)絡節(jié)點構成,被控系統(tǒng)網(wǎng)絡節(jié)點又由被控無線模塊和家電組成,具體實現(xiàn)方法就是為每一個需要進入智能家居控制系統(tǒng)的家電通過接口設備,如智能開關等安裝被控無線模塊。被控無線模塊的控制核心也是nRF24E1。主控系統(tǒng)由主機和主控無線模塊組成,其中主機可以采用嵌入式系統(tǒng)芯片,也可以采用PC機;主控無線模塊由nRF24E1擔當控制核心。
環(huán)境監(jiān)測系統(tǒng)由多個環(huán)境監(jiān)測網(wǎng)絡節(jié)點構成,每一個節(jié)點由無線模塊、環(huán)境監(jiān)測傳感器和一些外圍器件構成。同樣,環(huán)境監(jiān)測網(wǎng)絡節(jié)點的控制核心仍然由nRF24E1擔當。
系統(tǒng)工作原理為:主控系統(tǒng)的主機發(fā)出指令,主控無線模塊將指令無線傳送到被控系統(tǒng),被控無線模塊將接收到的指令由接口設備傳給家電,控制家電的運行,如自動窗簾的打開和關閉等。對于環(huán)境監(jiān)測系統(tǒng),由環(huán)境監(jiān)測傳感器采集當前環(huán)境中的數(shù)據(jù),如空氣中煤氣含量、溫度、濕度、光強度等,一旦發(fā)生煤氣泄漏、失火等突發(fā)情況,可以將報警信號通過無線模塊傳送至主控系統(tǒng),由主控系統(tǒng)下達命令,如打開消防開關、打開排氣系統(tǒng)等。另外,對于普通家居生活,用戶可根據(jù)需要設定一定的控制命令,如溫度降低,自動打開空調加溫;光線變暗,自動打開電燈開關等。
被控系統(tǒng)網(wǎng)絡節(jié)點硬件組成框圖如圖1所示。
圖1 被控系統(tǒng)網(wǎng)絡節(jié)點結構框圖
監(jiān)控系統(tǒng)網(wǎng)絡節(jié)點硬件組成框圖如圖2所示。
圖2 環(huán)境監(jiān)測網(wǎng)絡節(jié)點結構框圖
對于家用電器來說,安裝被控無線模塊需要來自于各個領域的技術支持,且因家用電器種類不同而不同;同樣,對于各種不同的環(huán)境監(jiān)測傳感器來說與微處理器的接口也各不相同。本文主要介紹無線模塊的硬件組成,其硬件原理圖如圖3所示。
其中,nRF24E1的電源由MAX856提供,MAX856是一種高效的CMOS升壓DC-DC電壓源變換器,其輸入電壓0.8-6V,輸出電壓為3.3V或5V,本設計中輸入電壓可由電池提供,輸出電壓選擇3.3V。
由于nRF24E1內部只有一個512Byte的ROM,使用過程中需要擴展片外存儲器,采用32K串行EEPROM 25AA320作為片外存儲器,存放nRF24E1運行所需的主要程序。系統(tǒng)上電后,512字節(jié)ROM引導程序將EEPROM中存儲的程序下載到4KB RAM的程序運行空間,另外256字節(jié)RAM用于數(shù)據(jù)存儲器。
對于被控系統(tǒng)網(wǎng)絡節(jié)點的設計,只需在圖4的基礎上增加與家用電器的接口電路即可,其信號無非兩類,一類是數(shù)字信號,可由nRF24E1的雙向I/O口接入,另一類是模擬信號,可由其模擬輸入口AIN0——AIN7接入,利用nRF24E1自帶的A/D轉換器將模擬信號轉換成數(shù)字信號。
圖3 無線模塊硬件原理圖
nRF24E1有多種工作方式,可以通過PWR_ UP、CE和三個控制引腳設定。當PWR_UP=1、CE=1、CS=0時設定其為ShockBurst模式,此模式不需要昂貴高速的CPU處理數(shù)據(jù),應用片上FIFO緩沖器,以較低的速率寫入數(shù)據(jù),較高的速率發(fā)送數(shù)據(jù),達到了節(jié)電目的,并且具有較高的數(shù)據(jù)傳輸率。
系統(tǒng)工作機制可采用主控系統(tǒng)輪詢和突發(fā)事件報告機制。其工作流程為:主控系統(tǒng)每隔一定的時間向每一個網(wǎng)絡節(jié)點發(fā)送查詢命令,網(wǎng)絡節(jié)點收到查詢命令后,向主控系統(tǒng)回發(fā)數(shù)據(jù)。如發(fā)生緊急事件,網(wǎng)絡節(jié)點可以主動向主控系統(tǒng)發(fā)送報告,由主控系統(tǒng)進行處理并發(fā)出相應報警信息。主控系統(tǒng)可以對網(wǎng)絡節(jié)點的閾值參數(shù)進行設置,以滿足不同用戶的需要。
網(wǎng)絡節(jié)點打開電源,初始化,申請加入網(wǎng)絡后,直接進入休眠模式,當主控系統(tǒng)收到網(wǎng)絡節(jié)點的中斷請求時,觸發(fā)中斷,激活網(wǎng)絡節(jié)點,接收信息,處理完畢后繼續(xù)進入休眠狀態(tài),等待有中斷請求時再次激活。若有多個網(wǎng)絡節(jié)點同時向主控系統(tǒng)發(fā)送中斷請求時,主控系統(tǒng)來不及處理而丟掉一些請求,當網(wǎng)絡節(jié)點發(fā)現(xiàn)自己的請求沒有得到響應后幾秒鐘將再次發(fā)送請求,直到得到主控系統(tǒng)的響應為止。
所以,被控節(jié)點處的程序要有以下功能:向主控系統(tǒng)發(fā)出加入網(wǎng)絡的申請;監(jiān)測空氣中的無線信號,并判斷是否有發(fā)給本節(jié)點的控制、查詢、設置命令;執(zhí)行相應的控制、查詢、設置命令;發(fā)送和接收無線信號。
根據(jù)上面的設計思路,我們設計出如下程序流程圖,如圖4所示。
圖4 被控系統(tǒng)網(wǎng)絡節(jié)點程序框圖
監(jiān)控系統(tǒng)網(wǎng)絡節(jié)點的軟件部分主要負責對傳感器采集的信號進行A/D轉換并判斷采集的結果是否達到報警值,若達到則進行報警處理。利用nRF24E1內部自帶的A/D轉換器進行轉換。同時,監(jiān)控系統(tǒng)網(wǎng)絡節(jié)點作為系統(tǒng)的一個分節(jié)點,在開始之前也要先加入網(wǎng)絡中,并接受主控系統(tǒng)的控制,執(zhí)行相應的查詢、控制功能。
根據(jù)無線傳感器網(wǎng)絡技術和智能家居的特點,提出了基于nRF24E1的智能家居無線傳感器網(wǎng)絡系統(tǒng)的構成方案,詳細介紹了無線傳感器網(wǎng)絡節(jié)點硬件組成和軟件編寫。由于nRF24E1的集成度高,功耗低,使其應用系統(tǒng)更為簡化,大大增強了無線系統(tǒng)的穩(wěn)定性和可靠性,同時開發(fā)也變得更為簡單,成本進一步降低。實驗表明,該系統(tǒng)的配置合理,通信協(xié)議簡單,功耗低,有良好的市場前景。
[1]劉恒,馬建倉,張小兵.基于nRF24E1的點到多點的無線測控系統(tǒng)的設計[J].微電子學與計算機,2006,23(11):78-80.
[2]劉志平.基于MSP430和NRF2401的WSN節(jié)點設計[J].國外電子測量技術,2009,28(8):57-59.
[3]吳釗炯,嚴仍友.2.4GHz無線收發(fā)芯片nRF24E1的原理及應用[J].國外電子元器件,2004,(9):35-37.
[4]鄭君剛,吳成東,韓中華,楊英翔.基于nRF2401的智能家居無線網(wǎng)絡節(jié)點設計[J].低壓電器,2007,(14):12-15.
[5]任豐原,黃海寧,林闖.無線傳感器網(wǎng)絡[J].軟件學報,2003,14,(7):1282-1297.
[6]任楓軒,李偉.嵌入式無線網(wǎng)絡節(jié)點的設計[J].國外電子測量技術,2008,27,(6):50-53.
[7]姜艷華,朱旻,葛運建.主從式機器人無線通信系統(tǒng)研究[J].自動化與儀表,2008,23(1):17-21.