基于RFID技術的智能家庭用電信息系統(tǒng)構建
0 引 言
近年來,RFID 技術在零售業(yè).圖書館服務.供應鏈管理等領域得到廣泛使用.同時,RFID 技術也逐步應用于電力系統(tǒng)用以構筑智慧電網(wǎng).傳統(tǒng)居民用戶信息采集系統(tǒng)的主站一般設置在供電局,用戶要了解用電信息需采用賬單查詢.上網(wǎng)查詢或電話查詢等方式.這些方式不夠便捷,難以滿足用戶需求且只能查詢用電總額,無法知道各個用電終端的用電情況,出現(xiàn)故障也無法及時排除.與此同時,現(xiàn)代人對于提高家用電器的智能控制能力及家庭安防保障等也提出了更高的要求.
根據(jù)我國當前智能電網(wǎng)的發(fā)展趨勢,為了有效監(jiān)控家庭用電終端,維護用電安全,本文構建了一個基于RFID 技術與各種探測傳感器相融合的智能家庭用電信息系統(tǒng).該系統(tǒng)可解決如下問題:
(1) 完成家庭照明設備的開.關.亮度調(diào)節(jié)及狀態(tài)顯示;
(2) 實現(xiàn)對家庭中所有家用電器的統(tǒng)一控制與管理;
(3) 溫濕度采集傳感器根據(jù)家庭內(nèi)外溫濕度的變化,自動調(diào)節(jié)窗簾的開合.空調(diào)的啟停;
(4) 安裝的煙霧傳感器.煤氣傳感器發(fā)現(xiàn)危險信息時,能自動報警并及時給家庭成員發(fā)送報警信息;
(5) 分析報告各個用電設備用電狀況,指導用戶合理用電,提醒用戶及時充值.
1 系統(tǒng)整體結(jié)構
典型的RFID 系統(tǒng)由標簽(Tag).讀卡器(Reader).中間件(Middleware) 和控制計算機及軟件等稱為應用(Application)的四部分組成.智能家庭用電信息平臺利用標簽獲取用電終端的用電狀況及各探測傳感器的狀態(tài),安裝在房間特定區(qū)域的讀卡器根據(jù)接收到的標簽數(shù)據(jù)對家居環(huán)境進行監(jiān)控,通過計算機網(wǎng)絡將接收到的標簽數(shù)據(jù)經(jīng)過預處理之后存入系統(tǒng)數(shù)據(jù)庫中.監(jiān)控用戶可以使用電腦.智能手機等實時了解用電終端的工作狀況,必要的報警信息還會觸發(fā)外設的聲光報警器.
圖1 所示是該平臺的系統(tǒng)拓撲結(jié)構.本系統(tǒng)中的標簽分為兩種類型:電能計量標簽與用電設備插頭相連,實時探測用電設備電能消耗,控制用電設備功率大小;環(huán)境監(jiān)測標簽由溫濕度.煙霧及煤氣傳感器等組成,安裝在室內(nèi)外特定區(qū)域,實時監(jiān)測室內(nèi)外環(huán)境.標簽定時將探測到的數(shù)據(jù)發(fā)送給讀卡器.讀卡器通過天線控制覆蓋接收信號的范圍,接入家庭網(wǎng)絡,將轉(zhuǎn)發(fā)的標簽數(shù)據(jù)存入系統(tǒng)數(shù)據(jù)庫中.標簽數(shù)據(jù)在數(shù)據(jù)庫中進行合并.去冗余.挖掘特征信息等處理.系統(tǒng)監(jiān)控用戶通過瀏覽器獲取這些處理過的信息,從而知道用電終端的用電狀況,家庭內(nèi)外的環(huán)境狀況,同時,當家庭安防出現(xiàn)異常情況時,系統(tǒng)會通過郵件推送技術給用戶發(fā)送郵件.根據(jù)需要,系統(tǒng)還可以方便地進行功能擴展,比如在室內(nèi)外特定區(qū)域安裝攝像機,報警信息觸發(fā)外部聲光報警器等.

智能家庭用電信息系統(tǒng)硬件部分使用有源RFID 設備.
軟件部分依照瀏覽器/ 服務器(Browser/Server, B/S) 框架結(jié)構,使用開源而廣泛使用的LAMP(Linux + Apache + MySQL+ PHP) 作為解決方案包.服務器是后臺控制軟件,提供閱讀器訪問.通信協(xié)議解析.標簽數(shù)據(jù)存儲和數(shù)據(jù)庫管理等服務;瀏覽器作為人機交互工具,提取數(shù)據(jù)庫中數(shù)據(jù),進行合理引用處理,使得任何網(wǎng)絡終端設備都可以實現(xiàn)對用電終端設備監(jiān)控;數(shù)據(jù)庫起到樞紐作用,作為系統(tǒng)核心,連接后臺解析的數(shù)據(jù),響應前臺Web 網(wǎng)頁訪問請求.
智能用電信息系統(tǒng)后臺軟件使用JAVA 語言開發(fā),采用基于TCP/IP 協(xié)議的套接字(Socket) 技術實現(xiàn)上位機(host) 與讀卡器直接的通信,利用JAVA 語言中JDBC 與系統(tǒng)數(shù)據(jù)庫交互.
該系統(tǒng)前臺部分使用PHP 語言開發(fā),整合Ajax(AsynchronousJavaScript and XML) 技術,實現(xiàn)頁面實時刷新.
2 系統(tǒng)硬件設計
系統(tǒng)硬件部分主要包括標簽和閱讀器.標簽的硬件構成如圖2 所示.它集成微處理器.電源管理模塊.數(shù)據(jù)存儲模塊.射頻通信模塊和數(shù)據(jù)采集接口于一體.根據(jù)數(shù)據(jù)采集接口中使用傳感器的不同,標簽可以劃分為不同的類型.在本系統(tǒng)使用了兩種類型標簽,電能計量標簽和環(huán)境監(jiān)測標簽.

電能計量標簽的數(shù)據(jù)采集接口基于美國凌云邏輯公司的單相雙向電能芯片CS5460A.該芯片符合IEC.JIS 工業(yè)標準,能夠測量瞬時電壓.瞬時電流.瞬時功率,同時具有相位補償及系統(tǒng)自動校準功能[8].與用電設備插頭相連的電能計量標簽采集電壓信號及電流信號,采集的電壓.電流信號通過相應的互感器之后進入流/ 壓變換電路,作為CS5460A 電能采集芯片的輸入.CS5460A進行電能計量,通過串行外設接口 (SerialPeripheral Interface, SPI) 與微處理器進行數(shù)據(jù)交互.
環(huán)境監(jiān)測標簽在本系統(tǒng)中主要用來監(jiān)測家庭環(huán)境信息,其子類別包括溫度采集標簽.濕度采集標簽.煙霧濃度采集標簽和煤氣濃度采集標簽.它們的功能原理都是實時采集環(huán)境參數(shù),通過與微處理器內(nèi)置的基準參數(shù)比對,獲得趨近于實際環(huán)境情況的參數(shù)值.微處理器內(nèi)部還可以預設范圍閾值,當采集的參數(shù)超過閾值范圍時,就可以得到報警信號.
微處理器將數(shù)據(jù)采集接口采集到的信號按照一定的編碼規(guī)則進行整合與處理,將整合之后的數(shù)據(jù)通過射頻通信模塊以射頻信號方式發(fā)射出去.接收時再按照與編碼規(guī)則相同的解碼規(guī)則對數(shù)據(jù)進行解碼.
讀卡器作為數(shù)據(jù)交換的一環(huán),將前端標簽采集的家庭現(xiàn)場環(huán)境信息傳遞給后端的計算機網(wǎng)絡.一方面,通過天線與標簽進行無線通信,實現(xiàn)讀取標簽采集的數(shù)據(jù)和設置標簽的設備參數(shù).另外一方面,讀卡器又通過計算機網(wǎng)絡與上位機系統(tǒng)相連,轉(zhuǎn)發(fā)接收到的標簽信息,由上位機系統(tǒng)實現(xiàn)對標簽數(shù)據(jù)的存儲.管理和控制.
本系統(tǒng)使用的讀卡器使用2.4 GHz 微波與標簽雙向通信,預留RS232.RJ45 接口.讀卡器配置TCP Server.TCPClient.UDP 以及COM 協(xié)議棧,上位機系統(tǒng)可以方便選擇一種協(xié)議棧接收讀卡器轉(zhuǎn)化的標簽數(shù)據(jù).為了實現(xiàn)同時對多個標簽進行識別,讀卡器執(zhí)行防碰撞算法.該讀卡器還內(nèi)置兩個繼電器,繼電器可以與電源開關相連,也可以與報警器相連.
當系統(tǒng)中出現(xiàn)緊急情況時,觸發(fā)繼電器斷開電源開關或者觸發(fā)外部報警器提醒用戶,從而保障用電安全.
3 系統(tǒng)軟件設計
根據(jù)模塊化的設計原則,在功能上把系統(tǒng)軟件劃分為三層,即數(shù)據(jù)服務層.邏輯處理層和用戶表示層.數(shù)據(jù)服務層將標簽采集到的各設備的數(shù)據(jù)信息存儲到磁盤上;邏輯處理層提供一系列數(shù)據(jù)處理接口,根據(jù)系統(tǒng)的要求將各種類信息進行歸并.去冗余等操作;用戶表示層與系統(tǒng)用戶直接交互,接受用戶的訪問請求,出現(xiàn)異常情況及時向用戶報告.
3.1 數(shù)據(jù)服務層
智能家庭用電信息系統(tǒng)使用關系型數(shù)據(jù)庫MySQL 存儲數(shù)據(jù)信息.圖3 所示是其數(shù)據(jù)庫表結(jié)構.

本系統(tǒng)對用戶的電表.系統(tǒng)的用電設備.環(huán)境監(jiān)測位置及用戶信息進行統(tǒng)一編號,并以編號作為唯一標識符連接各個實體.
系統(tǒng)包括六張表:系統(tǒng)信息表存儲用戶家庭用電總體信息,系統(tǒng)以固定的時間間隔計算系統(tǒng)的電量消耗情況,因而時間作為主鍵.其他的字段信息包括總用電量.月用電量.停電閾值和剩余電量.設備信息表存儲系統(tǒng)監(jiān)測設備的相關信息,本系統(tǒng)為每個用電設備預設了最大的消耗電量值.該表以設備編號為主鍵,同時對設備位置.設備名稱及購買時間等信息也進行了存儲.電能計量標簽采集的數(shù)據(jù)存儲到設備用電信息表中,該表以設備編號和計量時間作為聯(lián)合主鍵,實時反映設備用電信息.環(huán)境監(jiān)測標簽采集的數(shù)據(jù)存入家居安防信息表中,實時存儲檢測到的溫濕度.煙霧濃度及煤氣濃度信息.為保障系統(tǒng)安全,系統(tǒng)為其設計了用戶信息表,該表存儲具有訪問權限的用戶信息及用戶級別.當系統(tǒng)出現(xiàn)異常情況需要報警時,相關的信息會存入報警信息表中.它具有處理標識,如果該報警信息已經(jīng)被用戶處理了,則不再重復報警.
為了使系統(tǒng)各層具有高內(nèi)聚.低耦合特性,同時方便數(shù)據(jù)庫操作,本設計集成Hibernate 框架于系統(tǒng)中進行對象實體關系映射.同時,Hibernate 對JDBC 進行了輕量級對象封閉,使得Java 程序員可以使用面向?qū)ο蟮乃季S來操作關系數(shù)據(jù)庫.另外,系統(tǒng)還對數(shù)據(jù)庫中每一張數(shù)據(jù)表建立了一個數(shù)據(jù)訪問對象(Data Access Object,DAO),并由DAO 作為訪問數(shù)據(jù)庫的統(tǒng)一接口,因而隱藏了數(shù)據(jù)庫具體實現(xiàn)細節(jié).
3.2 邏輯處理層
邏輯處理層為系統(tǒng)提供數(shù)據(jù)訪問操作接口,具體劃分為如圖4 所示的四個業(yè)務子模塊,即業(yè)務接口模塊.業(yè)務處理模塊.數(shù)據(jù)接口模塊和數(shù)據(jù)緩沖模塊.業(yè)務接口模塊接收從用戶觸發(fā)的訪問請求事件,將事件傳遞.解析,根據(jù)訪問請求的事件類型調(diào)用業(yè)務處理模塊中對應的功能模塊.業(yè)務處理模塊定義本系統(tǒng)所要做工作,包括電能計量.電價查詢.家庭安防及異常報警等.數(shù)據(jù)接口模塊直接面向數(shù)據(jù)庫,提供數(shù)據(jù)庫查詢訪問及數(shù)據(jù)篩選等工作,之后將數(shù)據(jù)交給數(shù)據(jù)緩沖模塊進行數(shù)據(jù)的分析和封裝.這樣一個流程之后,用戶就能獲得所訪問的結(jié)果.
家庭智能用電系統(tǒng)的各個模塊分工合作,完成各自任務,實現(xiàn)系統(tǒng)功能,圖5 所示是其程序流程.

程序開始運行之后獲取各個標簽的狀態(tài)量,這些狀態(tài)量包括家庭各用電設備的電流電壓功率.室內(nèi)外環(huán)境中溫濕度.室內(nèi)外環(huán)境中煙霧及煤氣濃度,然后判斷這些狀態(tài)量中是否存在有異常情況.如果有異常,則判斷異常屬于哪種情況,將相關信息寫入數(shù)據(jù)庫并提示報警;反之,則直接通過Internet連接供電局得到當前階段電價.程序根據(jù)階段電價信息計算用戶當前所用電量電費,如果用戶預存入的電費余額不多,也把相關信息寫入數(shù)據(jù)并提醒用戶及時充值.

3.3 用戶表示層
為了適應當前移動平臺發(fā)展趨勢,本系統(tǒng)以B/S 作為框架結(jié)構,并以PHP 語言結(jié)合CSS.HTML 來開發(fā)用戶表示層.
為了保證系統(tǒng)具有良好的響應機制,在實施的過程中采用Ajax 技術.使用Ajax 技術,系統(tǒng)在對用戶請求進行響應過程中建立異步請求對象,避免了客戶端和服務器間直接交互.用戶請求的數(shù)據(jù)信息交由Ajax 引擎完成,使用戶操作和服務器響應異步化,減少冗余數(shù)據(jù)的重載,縮短了用戶的等待時間.
為本系統(tǒng)開發(fā)的一個官方微博能自動發(fā)布消息.進入互聯(lián)網(wǎng)提供商的應用開發(fā)平臺創(chuàng)建應用后申請App Key 和AppSecret 這兩個與授權相關的信息,下載與開發(fā)語言相對應的SDK( 本系統(tǒng)使用Java 版本),里面有demo,把App Key 及App Secret 填入配置文件,根據(jù)想要實現(xiàn)的功能編寫和修改demo.
借助甲骨文公司提供的JavaMail API,利用谷歌郵箱作為發(fā)送者,使用簡單郵件傳輸協(xié)議(Simple Mail TransferProtocol, STMP),實現(xiàn)系統(tǒng)郵件自動推送.
4 系統(tǒng)功能
注冊用戶可以遠程實現(xiàn)對電器設備自動化監(jiān)控和電能計量管理,系統(tǒng)出現(xiàn)的異常報警信息則以郵件推送方式報告給用戶.本系統(tǒng)實現(xiàn)的具體功能如下:
(1) 用戶可以通過瀏覽器實時查看家庭內(nèi)部耗電設備的有功功率的變化曲線及耗電設備占家庭用電的百分比.
(2) 用戶可以通過瀏覽器更改家庭設備的參數(shù),從而遠程控制家庭設備的開關.
(3) 系統(tǒng)每月自動生成包含所有設備用電狀況的電費賬單,包括用電總度數(shù).超出各檔階梯電價度數(shù).各設備具體用電度數(shù)及占總耗電的百分比.本月用電趨勢等信息.幫助用戶詳細了解用電狀況,從而指導用戶提出更優(yōu)化的用電方案.
(4) 電費賬單通過綁定的郵箱和微博推送,用戶只需登錄郵箱或關注系統(tǒng)綁定的官方微博就可以了解最新的家庭用電狀況.
(5) 用戶可以設定各用電設備的功率及耗能閾值,當設備用電功率或本月總耗能超出設定的閾值時,通過發(fā)送郵件和微博進行提醒,用戶可以根據(jù)需要決定是否遠程關閉用電設備.
(6) 系統(tǒng)實時監(jiān)控家庭環(huán)境信息,自動調(diào)控室內(nèi)的溫濕度信息.
(7) 煙霧及煤氣檢測標簽監(jiān)控室內(nèi)其濃度含量,出現(xiàn)異常事件時,及時報警.
5 結(jié) 語
基于RFID 技術的智能家庭用電信息平臺可實時采集顯示用戶當前用電信息,提供用電信息查詢功能,監(jiān)控家庭環(huán)境溫濕度信息,并具有防火災報警及防煤氣泄露功能,同時可實現(xiàn)對用電終端.家庭安防的智能監(jiān)控.另外,本系統(tǒng)以RFID 標簽作為采集器采集家庭環(huán)境信息,以無線射頻信號作為通信介質(zhì),通過讀卡器轉(zhuǎn)化標簽信號與網(wǎng)絡相連,上位機系統(tǒng)將數(shù)據(jù)存儲在數(shù)據(jù)庫中,對其進行算法處理和數(shù)據(jù)分析,瀏覽器可以方便地對這些信息訪問,并具有網(wǎng)絡安全性高.可靠性強.實施難度低和性價比高等優(yōu)點,功能容易擴展.