摘 要: 提出了一種基于無線傳感器網絡技術的智能保險箱安防監測系統。該系統由前端監測設備、物聯網網關和手機客戶端3部分組成,實現了集遠程監控、實時報警和、遠程動態管理于一體的安防監測功能,并提出了部分重發算法等調優算法以減低丟包率。測試結果表明,該系統實現了所提出要求,并擁有系統穩定,發送快速,可糾正丟幀等優點, 具有可行性與實用性。
關鍵詞: 無線傳感器網絡; 智能保險箱; iPhone; 遠程監測; MSP430
中圖分類號: TN964?34 文獻標識碼: A 文章編號: 1004?373X(2013)12?0137?06
0 引 言
在當今保險箱快速發展的同時,人們對資產及個人收藏品的全方位防護需求也同樣在升級,而對于目前市面上的保險箱防護手段過于單一,應急反應緩慢等弊病,而造成了多起保險箱被盜事故。目前在貴重物品防護及相關珍藏品收藏的保險箱系統中,大多都采用物理安防手段,采取深層加密或者加厚保險箱外層材料厚度等等,雖然保護了保險箱內部的物品,但是系統不能保護保險箱自身,而常常造成保險箱本身失竊而給用戶帶來巨大損失。
在我國數字信息化發達的今天,無線傳感器網絡技術的興起,已在各個安防領域得到廣泛的應用[1]。但就目前而言,基于多手段,全方位,全天時的無線傳感器網絡技術如何讓保險箱防護體系做到更安全,已經成為目前安防保險箱行業的一個重要研究課題。目前,傳感器網絡技術應用到保險箱的領域在國內還沒有先例,有的企業也做了一些安防聯動的手段,但是依然探測手段單一,無法真正達到實際應用的需求[2]。
針對現有的保險箱系統中存在的這些問題,將無線傳感器網絡引入現有保險箱系統中,希望能成為主流解決方案。仔細分析需求后,現代的保險箱安防系統應有以下特點:
(1)從硬件角度,該安防系統具有無線傳感器網絡的特點[3]:低功耗,自組織,可采集數據等,同時可發實時報警并追蹤狀態。該特點的使得保險箱一旦出現異常,可第一時間通知用戶,并實時追蹤動態。
(2)從用戶角度看,安防系統提供多種查詢方式,例如短信息,B/S架構訪問頁面,以及手機客戶端等等,使用戶時刻掌握保險箱的動態。
因此,為了實現以上功能,除了在系統中使用技術通用分組無線服務技術(General Packet Radio Service,GPRS)[4],全球定位系統技術(Global Positioning System,GPS)[5]等常規模塊的同時,還需要增加不同功能的報警傳感器(如震動傳感器等)。同時,還需要引入更多的用戶功能,例如用戶可能會用到的網頁支持,手機客戶端等。
1 基于物聯網的安防監測系統功能分析
本文所屬的安防系統的功能由以下子模塊組成:
(1)前端監測設備
異常監測模塊:包括了多種傳感器(紅外,震動,溫濕度等);
無線傳輸模塊:通過GPRS模塊將所有數據(報警信息,位置信息,心跳幀等)發送至網關;
定位模塊:通過GPS完成對節點的定位;
視頻采集模塊:通過具有夜視功能的廣角攝像頭進行圖像采集后會發送至服務器;
報警模塊:監測節點將報警信息以短信方式發送至用戶手機,手機客戶端則以推送的方式提醒用戶。
(2)服務器網關:一臺連入公網的服務器,作為系統的中間件部分負責連接底層硬件與上層應用,收發和存儲所有中間數據。
(3)用戶手機應用:允許用戶通過iPhone 客戶端對監控系統的狀態和信息進行查詢。
這些模塊與功能是從實際應用角度進行劃分與設計,實際上,他們是一個整體,之間有著非常緊密的聯系,在某一功能被觸發時,需要多個模塊進行協同工作。
2 硬件系統介紹
2.1 系統結構
本監測系統共分為3個部分:前端監測,服務器網關和用戶終端。
其中前端監測部分實時監測用戶節點的異常變化,當有異常情況(震動,溫度濕度超過標準值,非法闖入等)發生時,傳感器將數據通過無線網絡傳輸到服務器網關,并通過手機預警的方式通知用戶。若此時節點被移動,還將對其進行實時跟蹤。
服務器網關部分包括數據接收,數據解析處理,數據存儲,有效數據挖掘4個部分。
2.2 節點結構
監測節點主要功能為:利用傳感器感應異常,利用GPRS傳輸數據,使用GPS模塊獲取位置,通過攝像頭/麥克風等設備采集圖像音頻數據。
2.3 數據流向
3 軟件實現及改進
本節將分2部分介紹系統的軟件實現,從節點軟件和上層iPhone客戶端來詳細說明本安防系統的工作方式。
3.1 節點軟件實現
3.1.1 任務設計
下面會重點介紹核心模塊的實現。
3.1.2 接收中斷的實現
如表1所示,系統中含有4個串口接收中斷。出于功能分析與拓展性考慮,這些進程的流程基本類似,這里只介紹配置串口進程的實現,如圖5所示。
3.1.3 拍照功能的實現
系統選用攝像頭為一款針對串口通信與微光條件的廣角黑白攝像頭,可作為JPEG照相機應用在系統中,獲得高解析度的單幀圖像,圖像壓縮成JPEG格式后通過串口傳回主控設備。程序流程如圖6所示。出于對系統性能的考慮,給收到的每個數據包重新打包,附加設備IMEI號與結尾校驗位后再發送至后臺服務器。這樣的好處是,當多臺設備同時發送數據時,后臺程序將數據包的頭尾進行解析,從而避免混淆。
3.2 節點軟件調優
3.2.1 模式的選擇
該模塊擁有2種發送模式,分別是命令模式與透明模式,他們的特點為:
透明模式 模塊收到的任何從串口得到的數據均會被轉發出去,包括數據與AT命令。
在通常情況下,人們會默認使用命令模式來進行配置與數據解析,但在該模式下發送過程會因遇到某些特殊位而停止(例如中止位一般為0x1A),因此在該模式下無法發送例如JEPG圖等16進制數據。但若使用透明模式,則無法解析短信或AT命令,使模塊處于
為了解決這個問題,在本系統中引入混合模式,即命令模式與透明模式。
3.2.2 丟幀的解決
(1)部分重發機制:仿滑動窗口協議
在本系統中,由于選用超低功耗芯片MSP430,因此不可能將整張圖片保存在FLASH中。本文在此借用了TCP/IP中的滑動窗口協議原理實現部分重發機制。
(2)丟幀后的校正
此部分算法在網關服務器上實現,大致流程為:在服務器上將JEPG圖像轉化為BMP圖像(利用GDI+實現),并獲得其縮略圖。然后利用灰度圖像處理中的膨脹算法,通過計算空白區域周圍的像素點獲得內部像素點。
3.3 iPhone客戶端實現
3.3.1 iOS系統與Objective?C介紹
蘋果iOS是由蘋果公司開發的手持設備操作系統。iOS與蘋果的Mac OS X操作系統一樣,它是以Darwin為基礎的,因此同樣屬于類Unix的商業操作系統。
iOS開發所需語言為Objective?C,它是擴充C的面向對象編程語言。
3.3.2 iOS客戶端設計
作為此監測系統的移動客戶端,在iOS平臺上實現主要功能為:用戶登錄,查詢保險箱位置,查詢實時圖片,主動拍照與定位以及基本配置。這些功能既滿足了客戶的基本需求,又具有了一定的可移植性。
如上節所述,當保險箱報警模塊被觸發后(異常震動,濕度溫度過高等),會將最新GPS位置信息,連同所采集到的圖像信息發送至服務器。此時服務器會向iOS客戶端發送一報警信息,隨后客戶端通過PUSH(推送)功能向手機使用者推送報警信息。若用戶查看客戶端,可以獲取當前最新的所有信息,有助于幫助用戶更好地管理以及追回保險箱。同時,該客戶端提供用戶主動查詢位置與拍照功能,使用戶了解保險箱的實時狀態。
3.3.3 iOS客戶端實現
從用戶角度進行需求分析,該應用主要用到與服務器交互,地圖定位,圖片操作,發送短信等功能。以上功能的實現將逐條介紹。
(1)與服務器交互
手機終端與服務器間的通信的數據格式采用可擴展標記語言格式(Extensible Markup Language,XML),手機通過HTTP和SOAP方式與服務器進行數據交互。
SOAP方式可通過開源類“ASIHTTPRequest”與“GDATA”共同實現。
具體實現流程為:首先按照WEB Service提供SOAP 1.2請求示例打包SOAP請求字符串,同時按照該示例創建請求實例,所包含字段為:HOST,Content?Tpye,Content?Length與SOAPAction。完成后將該請求發送至Web服務器,在收到回復后利用SOAP類解析其中內容即可。
(2)地圖定位
在iOS 5.x及以下版本中,都可采用谷歌地圖實現該功能。本軟件利于MapKit框架并配合CoreLocation框架進行開發。在進入地圖頁面后,客戶端訪問Web服務器獲得用戶保險箱所在位置坐標,并對坐標值進行校對,而后標注在地圖上。考慮到若保險箱丟失,用戶無法判斷陌生地點的情況,客戶端允許用戶分別以標準/衛星/混合3種方式查看地圖。在載入地圖后,客戶端通過調用MKReverseGeocoder類反相查詢坐標點信息,以獲得所處位置的國家/城市/街道名,供用戶更方便的追蹤設備位置。
(3)數據信息處理
客戶端提供3種數據信息服務:查看最新報警數據,查看歷史數據與手動采集數據。查看最新報警數據是利用Web服務器從服務器讀取最新數據,用戶若認為此數據有用,那么可以連同該圖片所在位置信息等保存至客戶端,方便以后查看。另外,客戶端可以通過短信方式控制用戶擁有的監控設備進行數據采集,隨后在更新服務器數據后顯示在客戶端上。
4 功能測試
5 結 語
在對基于WSN的安防監測系統進行功能分析,系統設計與軟硬件實現后,開發出了一套基于C/S架構的安防監測系統。該系統的硬件以超低功耗單片機MSP430為核心,具有無線傳感器網絡的優點,并結合了多媒體技術,具有穩定性高,正確報警率高,監測信息完善等特點。同時該套系統具有較為完善的用戶服務,提供包括PC機,短信,用戶網站與手機客戶端等多種方式進行查詢與追蹤。
參考文獻
[1] 郭曉樂,楊瑞峰,賈建芳.基于 WSN 的工廠安防管理系統[J].山西電子技術,2012(5):43?45.
[2] 馮冠宇.網絡保險箱設計與實現[D].長春:吉林大學,2008.
[3] 李曉維.無線傳感器網絡技術[M].北京:北京理工大學出版社,2007.
[4] 田齊,楊小平.安防報警系統中GSM通信模塊的設計實現[J].科技信息,2006(10):44?45.
[5] 趙金東,馬領先.基于GPS/GPRS的車輛監控系統的設計與實現[J].計算機工程與設計,2007,28(10):2498?2500.
[6] 周欽山.基于Client/Server模式的煤礦安全監控系統軟件設計[D].濟南:山東大學,2008.
[7] 周學泳,石丹.短信息(SMS)與WAP的開發及應用[M].北京:電子工業出版社,2002.
[8] 楊靖,洪露,李捍東.基于WSN的家居安防系統中防入侵探測節點的設計[J].計算機衡量與控制,2012(7):1941?1943.
[9] 陳鈺瑩,付蔚,劉謀黎.基于WSN的智能家居系統方案設計[J].物聯網技術,2012(10):57?59.
[10] 周梅,鄧瑾.基于新浪微博開放平臺的iPhone地圖應用與開發[J].電腦開發與應用,2012(9):83?86.
[11] 薩丹,張彩霞.iPhone開發秘籍[M].2版.北京:人民郵電出版社,2011.
[12] 達爾林普爾,納斯特.Objective?C高級教程[M].北京:人民郵電出版社,2009.
[13] 沈建華,楊艷琴,霍曉曙.MSP430系列16位超低功耗單片機原理與應用[M].北京:清華大學出版社,2004.