王曉麗,姜 川,于 躍
(吉林建筑大學(xué)電氣與電子信息工程學(xué)院,吉林 長(zhǎng)春 130118)
?
校園能耗管理系統(tǒng)中無(wú)線(xiàn)異構(gòu)數(shù)據(jù)采集與傳輸系統(tǒng)設(shè)計(jì)
王曉麗,姜川,于躍
(吉林建筑大學(xué)電氣與電子信息工程學(xué)院,吉林 長(zhǎng)春 130118)
[摘要]設(shè)計(jì)了一種基于無(wú)線(xiàn)傳感器網(wǎng)絡(luò)校園能耗監(jiān)控系統(tǒng),并給出了多傳感器數(shù)據(jù)的融合與傳輸技術(shù).通過(guò)現(xiàn)代嵌入式開(kāi)發(fā)技術(shù)和數(shù)據(jù)融合技術(shù),實(shí)現(xiàn)了多點(diǎn)多數(shù)據(jù)的采集.采用模塊化程序設(shè)計(jì)框架使系統(tǒng)運(yùn)行效率得到提升,系統(tǒng)升級(jí)變得更加容易.通過(guò)2個(gè)無(wú)線(xiàn)采集節(jié)點(diǎn)進(jìn)行環(huán)境溫度和濕度采集的實(shí)驗(yàn),證明無(wú)線(xiàn)傳感器網(wǎng)絡(luò)和有線(xiàn)網(wǎng)絡(luò)能正常對(duì)接,也說(shuō)明了程序設(shè)計(jì)的正確性.
[關(guān)鍵詞]能耗監(jiān)控;無(wú)線(xiàn)傳感器網(wǎng)絡(luò);STM32;nRF2401;數(shù)據(jù)融合
近年來(lái),校園中的數(shù)字化電器盒信息通信設(shè)施日益增多,如何將這些設(shè)備有效地聯(lián)系起來(lái)并實(shí)現(xiàn)信息互聯(lián)互通是人們研究的熱點(diǎn).正是在這樣的需求驅(qū)動(dòng)下,校園網(wǎng)絡(luò)應(yīng)運(yùn)而生.校園網(wǎng)絡(luò)比企業(yè)網(wǎng)絡(luò)出現(xiàn)的晚,它可以看做是信息高速公路的一條校園分支,在計(jì)算機(jī)基礎(chǔ)網(wǎng)絡(luò)及專(zhuān)用網(wǎng)絡(luò)的支持下,校園網(wǎng)絡(luò)將各種用電設(shè)備和數(shù)字設(shè)施聯(lián)系到一起,為師生提供各種各樣的服務(wù).當(dāng)然,校園網(wǎng)絡(luò)也是整個(gè)信息化社會(huì)的一個(gè)有機(jī)組成部分,它覆蓋了整個(gè)校園,為其提供各種各樣的智能服務(wù),主要包括數(shù)據(jù)通信服務(wù)、安全服務(wù)、能源管理服務(wù)等.
校園網(wǎng)能源消耗較大,建設(shè)節(jié)約型校園網(wǎng)勢(shì)在必行.新型校園網(wǎng)絡(luò)的能源管理服務(wù)需要深入到底層,通過(guò)傳感器網(wǎng)絡(luò)來(lái)實(shí)現(xiàn)高效的能源管理.針對(duì)這一需求,本文設(shè)計(jì)了一套基于無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的校園能源管理無(wú)線(xiàn)異構(gòu)數(shù)據(jù)采集與傳輸系統(tǒng).系統(tǒng)的硬件平臺(tái)是以Cortex-M3微控制器為異構(gòu)數(shù)據(jù)處理系統(tǒng)的核心,通過(guò)nRF2401模塊實(shí)現(xiàn)能源管理系統(tǒng)的無(wú)線(xiàn)通信功能,系統(tǒng)網(wǎng)絡(luò)依靠異構(gòu)數(shù)據(jù)處理技術(shù)將多種傳感器數(shù)據(jù)統(tǒng)一匯聚至信息中心.無(wú)線(xiàn)異構(gòu)數(shù)據(jù)采集與傳輸節(jié)點(diǎn)可以部署至校園網(wǎng)絡(luò)的底層,形成一個(gè)更高效的能源管理系統(tǒng).
1無(wú)線(xiàn)異構(gòu)數(shù)據(jù)采集與傳輸節(jié)點(diǎn)的硬件設(shè)計(jì)
1.1電路原理圖設(shè)計(jì)
傳統(tǒng)能耗數(shù)據(jù)測(cè)量系統(tǒng)的工作模式:傳感器感知現(xiàn)場(chǎng)信息并將其轉(zhuǎn)換成電信號(hào),電信號(hào)經(jīng)過(guò)放大、濾波、模數(shù)轉(zhuǎn)換器的采樣、量化、編碼后成為數(shù)字信號(hào),數(shù)字信號(hào)存儲(chǔ)在本地或直接傳輸給處理器.在這樣的模式下,傳感器必須直接和處理器連接,整個(gè)感知網(wǎng)絡(luò)不能布置到系統(tǒng)的底層,也不能采集多樣化的數(shù)據(jù).本文設(shè)計(jì)了基于無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的校園能源管理無(wú)線(xiàn)異構(gòu)數(shù)據(jù)采集與傳輸系統(tǒng),支持多源異構(gòu)數(shù)據(jù)的本地處理和無(wú)線(xiàn)傳輸,非常有利于系統(tǒng)底層的多源能耗感知.
系統(tǒng)利用無(wú)線(xiàn)收發(fā)器nRF2401和Cortex-M3微控制器實(shí)現(xiàn)高速無(wú)線(xiàn)異構(gòu)數(shù)據(jù)傳輸硬件系統(tǒng).無(wú)線(xiàn)異構(gòu)數(shù)據(jù)采集與傳輸節(jié)點(diǎn)和控制節(jié)點(diǎn)的硬件框架見(jiàn)圖1,控制節(jié)點(diǎn)電路設(shè)計(jì)和無(wú)線(xiàn)異構(gòu)數(shù)據(jù)采集與傳輸節(jié)點(diǎn)電路設(shè)計(jì)見(jiàn)圖2和3.
圖1 系統(tǒng)的硬件框架
nRF2401是一個(gè)集成接收、發(fā)射器的單芯片解決方案,工作頻率段為全球開(kāi)放網(wǎng)絡(luò)的2.4 GHz頻段,共有125個(gè)頻道.nRF2401內(nèi)置了CRC糾檢錯(cuò)硬件電路和協(xié)議,具有高數(shù)據(jù)吞吐量,采用GFSK調(diào)制時(shí)的數(shù)據(jù)速率高達(dá)1 MB/s.nRF2401的發(fā)射功率、工作頻道等所有工作參數(shù)全部可以通過(guò)軟件設(shè)置完成[1].nRF2401滿(mǎn)足低功耗設(shè)計(jì)需求,支持1.9~3.6 V的低電壓供電.每個(gè)nRF2401節(jié)點(diǎn)可以通過(guò)軟件設(shè)置最多40位地址,只有收到本機(jī)地址時(shí)才會(huì)通過(guò)中斷提示輸出數(shù)據(jù);Cortex-M3是一個(gè)32位的微控制器內(nèi)核,僅33 000門(mén)的內(nèi)核性能可以集成許多耦合系統(tǒng)外設(shè).STM32F103VET6包括:基于Cortex-M3內(nèi)核的32位處理器芯片,該芯片最高工作頻率為72 MHz;內(nèi)置高速存儲(chǔ)器(512 kB Flash、64 kB RAM);2個(gè)基本定時(shí)器、4個(gè)通用定時(shí)器、2個(gè)高級(jí)定時(shí)器、3個(gè)SPI、2個(gè)IIC、5個(gè)串口、1個(gè)USB、1個(gè)CAN、3個(gè)12位ADC、1個(gè)12位DAC、1個(gè)SDIO接口、1個(gè)FSMC接口以及80個(gè)通用IO口.
圖2控制節(jié)點(diǎn)電路
圖3 感知節(jié)點(diǎn)電路
1.2無(wú)線(xiàn)傳輸系統(tǒng)軟件設(shè)計(jì)
nRF2401有4種工作模式(見(jiàn)表1),其配置接口主要有CE、PWR、CS、DATA、CLK1,其中CLK1為時(shí)鐘輸入接口,DATA為數(shù)據(jù)接口.
表1 收發(fā)模塊的4種工作模式
nRF2401的發(fā)射功率、工作頻道及其他參數(shù)都可以在初始化過(guò)程中進(jìn)行配置.系統(tǒng)工作之前,必須通過(guò)DATA引腳串行輸入120位的配置指令.
nRF2401具備ShockBurst模式和Direct模式,工作在ShockBurst模式下nRF2401自動(dòng)加載數(shù)據(jù)頭,并進(jìn)行CRC等過(guò)程[2].由于ShockBurst模式對(duì)外部編程要求少,處理器可以盡快地處理其他任務(wù),本文采用了ShockBurst工作模式.系統(tǒng)工作的軟件流程如圖4所示.
圖4 收發(fā)模塊發(fā)送(A)及接收(B)流程本文系統(tǒng)設(shè)計(jì)中數(shù)據(jù)包接收/發(fā)送部分核心代碼的實(shí)例如下:
數(shù)據(jù)包接收核心代碼實(shí)例
uint8_t nRF24_RXPacket(uint8_t* pBuf,uint8_t RX_PAYLOAD)
{
uint8_t status;
status = nRF24_ReadReg(nRF24_REG_STATUS);
if (status & nRF24_MASK_RX_DR)
{
if ((status & 0x0E) == 0)
{
nRF24_ReadBuf(nRF24_CMD_R_RX_PAYLOAD,pBuf,RX_PAYLOAD);
}
nRF24_ReadWrite(nRF24_CMD_FLUSH_RX);
nRF24_RWReg(nRF24_CMD_WREG | nRF24_REG_STATUS,status | 0x70);
return status;
}
nRF24_ReadWrite(nRF24_CMD_FLUSH_RX);
nRF24_RWReg(nRF24_CMD_WREG | nRF24_REG_STATUS,status | 0x70);
return status;
}
數(shù)據(jù)包發(fā)送核心代碼實(shí)例
uint8_t nRF24_TXPacket(uint8_t * pBuf,uint8_t TX_PAYLOAD)
{
uint8_t status;
CE_L();
nRF24_WriteBuf(nRF24_CMD_WREG | nRF24_REG_TX_ADDR,nRF24_TX_addr,nRF24_TX_ADDR_WIDTH);
nRF24_WriteBuf(nRF24_CMD_WREG | nRF24_REG_RX_ADDR_P0,nRF24_RX_addr,nRF24_RX_ADDR_WIDTH);
nRF24_RWReg(nRF24_CMD_WREG | nRF24_REG_EN_AA,0x01);
nRF24_RWReg(nRF24_CMD_WREG | nRF24_REG_SETUP_RETR,0x1A);
nRF24_RWReg(nRF24_CMD_WREG | nRF24_REG_RF_CH,0x6E);
nRF24_RWReg(nRF24_CMD_WREG | nRF24_REG_RF_SETUP,0x07);
nRF24_WriteBuf(nRF24_CMD_W_TX_PAYLOAD,pBuf,TX_PAYLOAD);
nRF24_RWReg(nRF24_CMD_WREG | nRF24_REG_CONFIG,0x0E);
CE_H();
CE_L();
status = nRF24_ReadReg(nRF24_REG_STATUS);
nRF24_RWReg(nRF24_CMD_WREG | nRF24_REG_STATUS,status | 0x70);
if (status & nRF24_MASK_MAX_RT)
{
nRF24_RWReg(nRF24_CMD_FLUSH_TX,0xFF);
return nRF24_MASK_MAX_RT;
};
if (status & nRF24_MASK_TX_DS)
{
nRF24_RWReg(nRF24_CMD_FLUSH_TX,0xFF);
return nRF24_MASK_TX_DS;
}
return status;
2校園能源管理系統(tǒng)中的異構(gòu)數(shù)據(jù)處理技術(shù)
傳感器必須直接和處理器連接,整個(gè)感知網(wǎng)絡(luò)不能部署到系統(tǒng)的底層,也不能采集多樣化的數(shù)據(jù).本文通過(guò)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)技術(shù)解決了感知網(wǎng)絡(luò)不能部署到系統(tǒng)底層的問(wèn)題.若系統(tǒng)可以采集到更加豐富的多源數(shù)據(jù),能源管理效益必將提升[3].為了獲取多源信息,校園能源管理無(wú)線(xiàn)異構(gòu)數(shù)據(jù)采集和傳輸系統(tǒng)中的數(shù)據(jù)采集與傳輸節(jié)點(diǎn)配備多個(gè)不同的傳感器,不同位置的傳感器節(jié)點(diǎn)也配備不同的傳感器.
2.1異構(gòu)數(shù)據(jù)處理單元的軟件結(jié)構(gòu)
根據(jù)軟件與硬件的相關(guān)程度以及軟件所承擔(dān)的功能,系統(tǒng)把Cortex-M3的軟件體系結(jié)構(gòu)自下向上分為嵌入式核心代碼、多源異構(gòu)數(shù)據(jù)處理中間件、信息傳輸核心代碼共3層.在軟件體系結(jié)構(gòu)中,這3層代碼共同構(gòu)成一個(gè)通用的軟件平臺(tái),這是軟件體系結(jié)構(gòu)的核心內(nèi)容[4].其目的是為實(shí)現(xiàn)多源傳感器數(shù)據(jù)從有差別結(jié)構(gòu)向無(wú)差別結(jié)構(gòu)的轉(zhuǎn)換.采用的是組件設(shè)計(jì)形式,組件間通信由嵌入式提供的邏輯“軟件總線(xiàn)”來(lái)完成,定制符合用戶(hù)需求的傳感器數(shù)據(jù)格式,不同的數(shù)據(jù)格式在平臺(tái)上可以實(shí)現(xiàn)動(dòng)態(tài)加載、卸載[5].
根據(jù)應(yīng)用程序需要實(shí)現(xiàn)的具體通信功能的內(nèi)容,可以把應(yīng)用程序分為傳感器群信息資源、網(wǎng)絡(luò)信息資源和輸入輸出資源.這些資源必須提供核心框架所規(guī)定的通用接口,可以被軟件平臺(tái)加載、運(yùn)行、配置和卸載,同時(shí),這些資源的內(nèi)容可以隨著傳感器數(shù)據(jù)的不同而有所變化,從而實(shí)現(xiàn)資源的可裁剪、可擴(kuò)充性[6].
2.2異構(gòu)數(shù)據(jù)處理技術(shù)
異構(gòu)數(shù)據(jù)協(xié)同處理技術(shù)將不同來(lái)源、格式的數(shù)據(jù)在邏輯上或物理上進(jìn)行整合、封裝、處理,提供一個(gè)統(tǒng)一的數(shù)據(jù)通信接口,屏蔽底層數(shù)據(jù)的差異,從而使信息傳輸系統(tǒng)不必再考慮底層數(shù)據(jù)模型、數(shù)據(jù)格式等因素[7].多源數(shù)據(jù)傳感器群的異構(gòu)數(shù)據(jù)處理發(fā)生在多個(gè)代碼行處理單元中,每個(gè)處理單元分擔(dān)一個(gè)程序或計(jì)算任務(wù),實(shí)現(xiàn)異構(gòu)數(shù)據(jù)的協(xié)同處理(見(jiàn)表2—5).
表2 溫度傳感器數(shù)據(jù)格式
表3 濕度傳感器數(shù)據(jù)格式
表4 光度傳感器數(shù)據(jù)格式
表5 融合數(shù)據(jù)格式
3系統(tǒng)的運(yùn)行效果
系統(tǒng)硬件平臺(tái)分為主機(jī)和從機(jī)2個(gè)部分.主機(jī)包括嵌入式處理器、無(wú)線(xiàn)收發(fā)模塊、有線(xiàn)通訊模塊以及LCD顯示.從機(jī)包括嵌入式處理器、傳感器、無(wú)線(xiàn)收發(fā)模塊、OLED.從機(jī)板卡采集數(shù)據(jù)后,首先將傳感器數(shù)據(jù)打包,然后通過(guò)無(wú)線(xiàn)網(wǎng)絡(luò)發(fā)送至主機(jī)板卡,主機(jī)板卡通過(guò)有線(xiàn)網(wǎng)絡(luò)將傳感器數(shù)據(jù)包發(fā)送至上位機(jī).
我們對(duì)該系統(tǒng)進(jìn)行了實(shí)驗(yàn),實(shí)驗(yàn)過(guò)程如下:
(1)主機(jī)、從機(jī)復(fù)位上電;
(2)溫度、濕度傳感器檢測(cè)室內(nèi)溫度、濕度,從機(jī)顯示屏顯示當(dāng)前信息(溫度為23℃,相對(duì)濕度為55%);
(3)無(wú)線(xiàn)傳輸模塊將測(cè)試結(jié)果上傳至主機(jī);
(4)主機(jī)通過(guò)以太網(wǎng)接口,將測(cè)得數(shù)據(jù)上傳至上位機(jī).圖5為上位機(jī)顯示界面,顯示當(dāng)前的溫度和濕度信息.
圖5 上位機(jī)顯示界面
4結(jié)語(yǔ)
以nRF2401無(wú)線(xiàn)收發(fā)器和Cortex-M3微控制器為核心的無(wú)線(xiàn)能耗監(jiān)控網(wǎng)絡(luò)具備電路連接簡(jiǎn)單、性能強(qiáng)大等優(yōu)點(diǎn).在無(wú)線(xiàn)能耗監(jiān)控網(wǎng)絡(luò)中,各節(jié)點(diǎn)采集環(huán)境數(shù)據(jù)后進(jìn)行統(tǒng)一打包封裝,將多源數(shù)據(jù)統(tǒng)一成一個(gè)通用的數(shù)據(jù)格式,并通過(guò)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)和有線(xiàn)以太網(wǎng)網(wǎng)絡(luò)將多源數(shù)據(jù)傳輸給上位機(jī).系統(tǒng)增加了采集與監(jiān)控的范圍和數(shù)據(jù)監(jiān)測(cè)種類(lèi),可以為能耗管理系統(tǒng)提供強(qiáng)有力的支持.
[參考文獻(xiàn)]
[1]ZHU JIAN-HONG,WANG JUN,LIU DI. Design of a wireless sensor network node based on nRF2401[C]//Proceedings of 2011 IEEE International Conference on Computer Science and Automation Engineering,Shanghai:IEEE,2011:203-206.
[2]李輝,宋詩(shī).基于ARM和nRF24l01的無(wú)線(xiàn)數(shù)據(jù)傳輸系統(tǒng)[J].電子設(shè)計(jì)工程,2008(12):44-46.
[3]遲嘉,孫語(yǔ)澤,胡亮.基于無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的室內(nèi)輸電線(xiàn)路熱老化預(yù)測(cè)研究[J].東北師大學(xué)報(bào)(自然科學(xué)版),2014,46(3):64-68.
[4]孫凌逸.基于神經(jīng)網(wǎng)絡(luò)的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)數(shù)據(jù)融合算法[J].傳感技術(shù)學(xué)報(bào),2011,24(1):122-127.
[5]劉宏,魏浩鵬,張子揚(yáng). 基于低能耗高效無(wú)線(xiàn)傳感器網(wǎng)絡(luò)路由協(xié)議研究[J].東北師大學(xué)報(bào)(自然科學(xué)版),2014,46(4):56-60.
[6]李從宇,王寶光.嵌入式DSP系統(tǒng)C語(yǔ)言硬件編程技術(shù)[J].測(cè)控技術(shù),2007,26(4):68-70.
[7]GUO W Z,XIONG N X,VASILAKOS A V,et al.Multisource temporal data aggregation in wireless sensor networks[J]. Wireless Personal Communications,2011,56(3):359-370.
(責(zé)任編輯:石紹慶)
Wirelessheterogeneous data acquisition and transmission system design in campus energy consumption management system
WANG Xiao-li,JIANG Chuan,YU Yue
(School of Electrical and Electronic Information. Jilin Jianzhu University,Changchun 130118,China)
Abstract:In this paper a kind of campus energy consumption monitoring system based on wireless sensor network is introduced for the campus energy consumption monitoring system. It illustrates the system hardware and software design and proposes multi-sensor data fusion and transmission technology. The multi-point multi-data acquisition by modern embedded development technology and data fusion technology are brought on. Modular programming framework used in system improves the efficiency of system operation and makes system update more easily. According to design,environment temperature and humidity acquisition experiments are carried out by two wireless acquisition nodes,which prove that the wireless sensor network and wired network can dock normally and also shows the accuracy of the design method.
Keywords:energy consumption monitoring,wireless sensor network,STM32;nRF2401;data fusion
[中圖分類(lèi)號(hào)]TP 393.11[學(xué)科代碼]520·20
[文獻(xiàn)標(biāo)志碼]A
[作者簡(jiǎn)介]王曉麗(1962—),女,教授,主要從事智能建筑自動(dòng)化技術(shù)研究.
[基金項(xiàng)目]吉林省科技支撐計(jì)劃項(xiàng)目(20130206084SF).
[收稿日期]2015-03-05
[文章編號(hào)]1000-1832(2016)01-0060-05
[DOI]10.16163/j.cnki.22-1123/n.2016.01.014