樓宇監(jiān)測是樓宇智能化的重要組成部分,主要是針對樓宇出入口、內(nèi)部過道以及一些重要場所進行監(jiān)測,特別是在無人值守的情況下。能夠自動監(jiān)測人員進入樓宇和重要場所情況。在必要情況下,能夠采集進入這些場所人員的圖像、聲音等信息,自動報警。樓宇監(jiān)測系統(tǒng)要求無人值守、網(wǎng)絡化、便于操作和管理、系統(tǒng)成本低廉、能夠自動報警并且自動收集到相關的信息?,F(xiàn)有的監(jiān)測系統(tǒng)多數(shù)通過有線方式進行數(shù)據(jù)傳輸,成本普遍比較高,通常高達幾萬元甚至幾十萬元,且維護困難,擴展性差。
ZigBee 技術(也稱之為802.15.4 標準)是一種近距離、低復雜度、低功耗、低數(shù)據(jù)速率、低成本、高容量的無線傳感網(wǎng)絡技術,主要適合于承載數(shù)據(jù)流量較小的業(yè)務。相對于現(xiàn)有的各種無線通信技術,ZigBee技術是最低功耗和成本的技術。而與ZigBee 技術相反,WiFi(Wireless Fidelity, 也稱之為802.11 標準)是一種遠距離、復雜度較高、高功耗、高數(shù)據(jù)速率(達54Mbps)、高成本的無線網(wǎng)絡技術。目前在無線局域網(wǎng)中得到了較為廣泛的應用,十分便于接入Internet.
可見基于ZigBee 技術的無線傳感器網(wǎng)絡具有可快速部署、隱蔽性強、成本低、無人值守等優(yōu)點,十分適合于樓宇監(jiān)測的應用。但是,由于Zig-Bee 技術是一種低數(shù)據(jù)速率的無線傳輸技術,它一般傳輸?shù)臄?shù)據(jù)量較小,而在樓宇監(jiān)測系統(tǒng)中,除了監(jiān)測是否有人員進入樓宇和重要場所之外,還需要采集和傳輸數(shù)據(jù)量較大的圖像、聲音等信息。這對于ZigBee 技術是個難點,很難完成,但是對于WiFi 則易如反掌。因此,為了滿足樓宇監(jiān)測系統(tǒng)的具體需要,我們可以將ZigBee 技術和WiFi 技術相結合,構建一個技術ZigBee 和WiFi 相結合的樓宇監(jiān)測系統(tǒng)。利用ZigBee 技術組建無線傳感器監(jiān)測網(wǎng)絡,監(jiān)測和報警人員進入情況,傳輸小數(shù)據(jù)量的監(jiān)測活動信息; 利用WiFi 技術組建無線監(jiān)測局域網(wǎng)絡,根據(jù)無線傳感器監(jiān)測網(wǎng)絡監(jiān)測的情況采集相關的圖像或聲音信息,傳輸大數(shù)據(jù)量的監(jiān)測活動信息。
1 監(jiān)測系統(tǒng)體系結構
根據(jù)上述對樓宇監(jiān)測系統(tǒng)的要求以及ZigBee技術和WiFi 技術的特點分析,提出了一種基于ZigBee 技術和WiFi 技術相結合的樓宇監(jiān)測系統(tǒng),其體系結構如圖1 所示。樓宇某層的網(wǎng)絡布局如圖2 所示,其中O(0, 0)表示坐標原點。
圖1 樓宇監(jiān)測體系結構
圖2 樓宇某層網(wǎng)絡布局圖
本系統(tǒng)由4個部分組成:①基于ZigBee 技術的無線傳感器網(wǎng)絡子系統(tǒng);②基于WiFi 技術的機器人子系統(tǒng);③基于WiFi 技術的攝像監(jiān)視子系統(tǒng); ④監(jiān)控中心子系統(tǒng)。
其中,基于ZigBee 技術的無線傳感器網(wǎng)絡子系統(tǒng)由若干個紅外傳感檢測器(IR)、音頻傳感檢測器、匯集節(jié)點Mo te 和網(wǎng)關T mo te 組成。IR 被安裝到樓宇進出口和重要場所,每臨近的5 個檢測器匯集到一個匯集節(jié)點Mote.匯集節(jié)點采用由美國克爾斯博科技(CrossBow )公司開發(fā)和生產(chǎn)的無線傳感設備Mote, 該節(jié)點由處理器和RF 芯片構成。
該子系統(tǒng)主要負責監(jiān)視人員進入樓宇和重要場所的活動情況,當有人員進入IR 的監(jiān)測范圍時,IR便將監(jiān)測數(shù)據(jù)發(fā)送給與它相連接的Mo te, 然后通過網(wǎng)關T mote 上報給監(jiān)控子系統(tǒng)。在監(jiān)控子系統(tǒng)中可以將這些監(jiān)測數(shù)據(jù)存入數(shù)據(jù)庫,同時對一些重要場所設置告警規(guī)則,當規(guī)測滿足時,觸發(fā)告警。
圖2 樓宇某層網(wǎng)絡布局圖基于WiFi 技術的機器人子系統(tǒng)由若干個機器人和無線網(wǎng)絡接入節(jié)點(無線路由器)組成。該子系統(tǒng)主要負責對重要場所的侵入活動進行跟蹤。當監(jiān)控中心子系統(tǒng)觸發(fā)告警后,通過WiFi 通信技術給機器人發(fā)送命令,指揮機器人到指定的位置進行跟蹤,采集相關的圖像和音頻信息,并將這些信息反饋到監(jiān)控中心顯示/ 播放和存檔。本系統(tǒng)中的機器人采用加拿大Dr. Ro bo t 公司設計和開發(fā)的智能無線機器人X80 系列WiRobot (該機器人配備有超聲波傳感器3 個、紅外距離傳感器7 個、人體傳感監(jiān)測器2 個、攝像頭1 個、音頻播放器1 個)。
無線網(wǎng)絡接入節(jié)點采用D- Link 公司生產(chǎn)的無線路由器。
基于WiFi 技術的攝像監(jiān)視子系統(tǒng)由若干個Web 照相機和無線網(wǎng)絡接入節(jié)點(無線路由器)組成。Web 照相機被安裝到樓宇進出口和重要場所,能夠?qū)ΡO(jiān)視范圍內(nèi)的活動情況進行拍照,并將照片通過無線網(wǎng)絡接入節(jié)點發(fā)送到監(jiān)控中心進行顯示和存檔。本系統(tǒng)中的Web 照相機采用D-Link 公司生產(chǎn)的DCS-G900 照相機。
監(jiān)控中心子系統(tǒng)由服務器、PC、筆記本電腦等組成。該子系統(tǒng)主要負責對整個監(jiān)測系統(tǒng)進行調(diào)度、控制、數(shù)據(jù)處理和存儲。監(jiān)控中心子系統(tǒng)中的設備可以通過有線,也可以通過WiFi 無線接入網(wǎng)絡。
2 關鍵技術
基于ZigBee和WiFi相結合的樓宇監(jiān)測系統(tǒng)中涉及到的關鍵技術主要有傳感數(shù)據(jù)的采集、傳感器節(jié)點能量的節(jié)省、坐標系統(tǒng)的建立以及機器人的控制。
2. 1 傳感數(shù)據(jù)的采集
傳感數(shù)據(jù)采集是本系統(tǒng)中最為基礎的功能,是系統(tǒng)處理的數(shù)據(jù)來源和控制基礎。本系統(tǒng)中采用的匯集傳感器節(jié)點是由克爾斯博科技(CrossBow )公司開發(fā)和生產(chǎn)的無線傳感設備Mo te, 該節(jié)點是在TinyOS 支持之下進行數(shù)據(jù)采集和通信工作。TinyOS是美國加州大學伯克利分校專門針對傳感器網(wǎng)絡特點而設計的操作系統(tǒng)。TinyOS 使用高效的基于事件的執(zhí)行方式,包含經(jīng)過特殊設計的組建模型,成為高效率的模塊化和易于構造的組件型應用軟件。在TinyOS 中,通過nesC 語言表達組件以及組件之間的事件/ 命令接口。
本系統(tǒng)中的傳感數(shù)據(jù)的采集和傳輸也是在TinyOS 基礎之上進行設計和開發(fā)的。利用nesC應用程序框架和各種組件開發(fā)了數(shù)據(jù)采集和數(shù)據(jù)傳輸功能模塊,并將采集的數(shù)據(jù)在監(jiān)控中心實時顯示和入庫存儲。為了便于數(shù)據(jù)的采集和識別,在監(jiān)控中心的服務器中預先給每個傳感器IR 分配一個惟一的標識(ID), 通過該ID 指示傳感器的位置。如圖2 所示的傳感器布局中,共布局了45 個IR 傳感器,根據(jù)每臨近的5 個IR 匯集為的原則,分別分配ID 號為11, 12, 13, 14, 15, 21, 22, ,,,91, 92, 93, 94, 95. 為了盡量節(jié)省傳感器的能量,傳感器IR 采用休眠工作機制,即當沒有數(shù)據(jù)需要發(fā)送時,傳感器IR 處于休眠狀態(tài),當需要發(fā)送數(shù)據(jù)時,IR 被喚醒并傳送數(shù)據(jù)。IR 檢測和傳送數(shù)據(jù)采用基于事件驅(qū)動方式,傳感器IR 檢測到人員活動時,將它的ID 通過匯集節(jié)點Mote 和網(wǎng)關T mo te傳送到監(jiān)控中心的數(shù)據(jù)采集模塊。數(shù)據(jù)采集模塊接收到該ID 后,提取當前的系統(tǒng)時間,然后將ID 和當前的系統(tǒng)時間實時顯示并存入數(shù)據(jù)庫。
在一個樓宇中可能有一些重要區(qū)域(或稱之為禁區(qū)), 當檢測到某個禁區(qū)出現(xiàn)人員活動時,檢測中心應當自動發(fā)出告警信息。為此,首先需要在該禁區(qū)安裝若干個傳感器IR, 如圖2 所示禁區(qū)316 中的5 個IR. 然后在監(jiān)控中心的服務器中預先將該禁區(qū)與該禁區(qū)中安裝的所有傳感器IR 的ID 進行關聯(lián),并設置告警條件。當處于該禁區(qū)所有IR 中的任何一個檢測到人員活動時,立即將該ID 以及當前的系統(tǒng)時間實時顯示并存入數(shù)據(jù)庫,同時通過聲音、顏色發(fā)布告警。
2. 2 基于能量均衡的分簇多跳路由
當樓宇中多層樓道的傳感器節(jié)點組成一個規(guī)模較大的傳感器網(wǎng)絡時,傳感數(shù)據(jù)往往需要經(jīng)過多個中間節(jié)點(簇頭)的轉(zhuǎn)發(fā)才能到達網(wǎng)關,再通過網(wǎng)關發(fā)送到監(jiān)控中心。由于傳感器中間節(jié)點的能量有限, 盡量降低傳感器中間節(jié)點的能量消耗。提高網(wǎng)絡的生存周期是無線傳感器網(wǎng)絡必須重點考慮和解決的問題。 將傳感器網(wǎng)絡的能量消耗分為有用能耗和無用能耗。有用能耗包括傳數(shù)據(jù)輸/ 接收、數(shù)據(jù)處理、數(shù)據(jù)查詢等; 無用能耗主要有空閑偵聽、數(shù)據(jù)重傳、額外開銷以及產(chǎn)生和處理控制包。高效的路由算法能夠較好的降低數(shù)據(jù)傳輸/接收能量消耗。
系統(tǒng)一個方面通過休眠機制, 使傳感器節(jié)點在無數(shù)據(jù)傳輸時處于休眠來降低節(jié)點的能量消耗。
同時由于充當簇頭節(jié)點的能量消耗遠遠高于其他的節(jié)點,為了提高整個網(wǎng)絡的整體生存期,提出了一種基于能量均衡的分簇多跳路由算法。算法的基本思想是將若干個節(jié)點劃分為一個簇,定時評估簇內(nèi)各個節(jié)點的剩余能量。根據(jù)能量評估結果,使剩余能量最多的節(jié)點充當簇頭,即定時動態(tài)產(chǎn)生簇頭,使簇內(nèi)各個節(jié)點輪值充當簇頭,從而避免長期讓某個節(jié)點充當簇頭將能量耗盡后無法工作的現(xiàn)象發(fā)生。該算法相對于其他的相關算法具有簡單、易于實現(xiàn)、高效的特點。
2. 3 坐標系統(tǒng)構建
本系統(tǒng)需要建立兩個坐標系統(tǒng),一個是傳感器布局實際空間坐標系統(tǒng),該坐標系統(tǒng)主要用于控制機器人的移動以及指示告警位置。另一個坐標系統(tǒng)是屏幕圖形顯示坐標系統(tǒng),主要用于屏幕以圖形方式顯示傳感器布局和告警點。
在傳感器布局實際空間坐標系統(tǒng)中需要標識的對象主要包括三個方面: 傳感器的位置、重要場所的位置以及特殊標識物的位置。
如前所述,由于預先將每個傳感器編制了惟一的ID, 于是可以根據(jù)坐標原點O(0, 0)預先測量確定傳感器IR 的坐標位置,然后建立傳感器ID 與傳感器位置信息的配置表。因此,當某個傳感器報警時,利用該傳感器的ID 通過查表可以確定報警點的位置。
重要場所(禁區(qū))的位置信息原則上可以通過安裝在該場所中傳感器的ID 來指示,但是由于需要控制機器人對該場所進行跟蹤監(jiān)視,實際上是對某區(qū)域范圍中的可疑人員進行跟蹤監(jiān)視。因此嚴格的說需要的是該場所的位置信息(確切的說是進入該場所入口的位置信息), 而不是場所中傳感器的位置信息。所以,可以將一些重要場所的位置信息預先在坐標系統(tǒng)中標出,并且建立場所中所有傳感器與該場所入口的位置信息對應表。當該場所中任何一個傳感器報警時,通過查找對應表,給出該場所入口的位置信息。如圖2 所示,當確定坐標原點O(0, 0)的位置后,通過測量,可以預先獲得一些重要場所的坐標信息。如: 302A 的坐標信息是(-182, 697); 302 的是(- 939, 1302); 329 的是(2393,1606); 330 的是(2121, 1303 ); 316 的是(1545,1698). 坐標信息的單位是厘米,因此根據(jù)該坐標系統(tǒng)控制機器人的移動,精確度可以達到1 厘米。
特殊標識物是用于控制機器人的一些輔助性標識。由于WiRobot X80 自身沒有位置定位裝置,但是在控制機器人移動的過程中,需要及時掌握機器人的當前位置,因此通過坐標系統(tǒng)和特殊標識物來解決這個問題。如圖2 所示墻壁1 和墻壁2 可用作特殊標識物,當控制機器人進入320, 330, 316 等房間時,需要利用墻壁1 作為標識,指示控制機器人轉(zhuǎn)向。當控制機器人進入329 房間時,需要利用墻壁1 和墻壁2 作為標識。根據(jù)圖2 中的位置,墻壁1 和墻壁2 的位置信息是: 墻壁1 (* * * ,1667). 由于利用墻壁1 控制機器人的轉(zhuǎn)動,只是關心它與原點的Y 值,而不關心它的X 值。墻壁2(2363, * * * ), 同理,只是關心它與原點的X 值,而不關心它的Y 值。
例如,當需要控制機器人進入316 房間,程序的控制規(guī)程是根據(jù)316 的坐標信息(1545, 1698)驅(qū)動機器人從原點O(0, 0)出發(fā),一直前行,直至到達墻壁1(通過機器人的紅外傳感可以檢測到), 然后控制機器人90b右轉(zhuǎn),當X 值達到1545 時,控制機器人90b左轉(zhuǎn)進入316 房間。
系統(tǒng)以圖形界面方式顯示傳感器布局、機器人的實時移動路線以及顯示告警點,因此還需要建立一個圖形界面坐標系統(tǒng)。為了保持顯示圖形能夠與實際傳感器布局以及告警點一致,與機器人的移動同步,需要將傳感器布局實際空間坐標系統(tǒng)與圖形界面坐標系統(tǒng)映射。具體方法是當進行圖形顯示時,將實際空間坐標系統(tǒng)中的坐標值映射為圖形界面中的坐標值,按照圖形界面中的坐標值進行畫圖顯示。當圖形被放大/ 縮小時,按照圖形放大/ 縮小的比例因子重新計算被映射的坐標值。為了保證系統(tǒng)的靈活性,我們開發(fā)了坐標系統(tǒng)映射配置功能,用戶可以預先輸入實際空間坐標系統(tǒng)中的傳感器、重要場所、特殊標識物以及原點等的坐標信息。系統(tǒng)能夠?qū)⑦@些坐標信息直接映射為圖形界面中的坐標值。當需要新增加禁區(qū)、特殊標識物、新增或移動傳感器節(jié)點時,只需要重新配置這些點的坐標信息即可,而不需要修改系統(tǒng)軟件部分。
2. 4 機器人的控制
基于WiFi 技術的機器人子系統(tǒng)主要負責對重要場所的侵入活動進行跟蹤。當監(jiān)控中心子系統(tǒng)觸發(fā)告警后,通過WiFi 通信技術給機器人發(fā)送命令,指揮機器人到指定的位置進行跟蹤,采集相關的圖像和音頻信息,并將這些信息反饋到監(jiān)控中心顯示/ 播放和存檔。
1)機器人的驅(qū)動。
機器人按照給定的速度前進(假定速度為Vcm/ s), 前進時間t 秒,可以計算出它移動的距離d= v* t . 這樣在實際空間坐標系統(tǒng)中我們可以確定機器人的當前位置,從而可以控制機器人順利到達目的地。但是實際情況較為復雜,在機器人前進的過程中,機器人可能不是完全走直線,也可能走成斜線,如圖3 所示。這樣根據(jù)速度和時間計算出來的d 值與坐標系統(tǒng)中的實際Y 值之間存在偏差,而且偏差值可能較大。為了解決該問題,我們可以根據(jù)d 和Y 計算得到偏移的x 值,然后對坐標X 值進行矯正。實際上,通過反復試驗發(fā)現(xiàn),如果當機器人在原點時的前進方向剛好垂直于特殊標識物墻壁1, 偏移值x 很?。ㄆ屏?lt; 3% ), 可以忽略。當然,在原點時的讓機器人的前進方向剛好垂直于特殊標識物墻壁1 是很困難的。
圖3 機器人可能行進的實際路線
如上述控制機器人進入316 房間的例子中,假定當機器人在原點時的前進方向剛好垂直于特殊標識物墻壁1. 如果考慮到實際可能存在的偏差,則程序的控制規(guī)程是,根據(jù)316 的坐標信息(1545, 1698)驅(qū)動機器人從原點O(0, 0)出發(fā),同時開始計時,一直前行,直至到達墻壁1(通過機器人的紅外傳感可以檢測到). 此時根據(jù)機器人實際行進的距離d 和已知的墻壁1 距離原點的垂直距離Y 值(1667), 計算出偏移值x . 同時比較機器人前方左右端兩個紅外傳感檢測值,可以判斷出是偏移正向的x , 還是偏移負向的x . 將機器人當前的位置設定為(x , 1667), 然后控制機器人90b右轉(zhuǎn),當X 值達到1545 時,控制機器人90b左轉(zhuǎn),繼續(xù)前行31 cm(1698~ 1667)進入316 房間。
2)障礙物的避讓。
控制機器人前行的過程中可能遇到障礙物。因此,需要控制機器人自動檢測和自動避讓障礙物。
障礙物的自動檢測比較簡單,利用機器人上配置的超聲波傳感器或紅外傳感器以及WiRobotSDK 提供的API 可以實現(xiàn)。本軟件系統(tǒng)采用紅外傳感器以及WiRobo tSDK 提供的API 來實現(xiàn),通過獲取機器人前端、左、右各個紅外傳感器的檢測值,可以分別判斷出在前方、左、右是否存在障礙物。
控制機器人避讓障礙物則較為復雜,主要是需要重新計算坐標值。設計和實現(xiàn)的機器人躲避障礙物控制流程如圖4 所示。
圖4 機器人躲避障礙物流程圖
當機器人在前行的過程中檢測到前方出現(xiàn)障礙物時,停止機器人的前進,繼續(xù)檢測左、右方是否也存在障礙物。①如果左方存在有障礙物(說明只能向右方躲避),則暫存當前的行進距離值y , 并且控制機器人向右轉(zhuǎn)動90b繼續(xù)前進,直到機器人的左方紅外傳感器檢測不存在障礙物為止(表明已經(jīng)繞過障礙物),假定向右行進了d 厘米,則將原來的目標點的坐標值X 修正為X - d, 然后控制機器人向左轉(zhuǎn)動90b繼續(xù)前進,同時在原來的y 值基礎上繼續(xù)記錄行進距離值。②如果右方存在有障礙物(說明只能向左方躲避),則暫存當前的行進距離值y , 并且控制機器人向左轉(zhuǎn)動90b繼續(xù)前進,直到機器人的右方紅外傳感器檢測不存在障礙物為止(表明已經(jīng)繞過障礙物),假定向左行進了d 厘米,則將原來的目標點的坐標值X 修正為X + d, 然后控制機器人向右轉(zhuǎn)動90b繼續(xù)前進,同時在原來的y值基礎上繼續(xù)記錄行進距離值。③如果左、右方均不存在障礙物(說明向左、右方均能躲避), 系統(tǒng)默認控制向右方躲避,其控制方法與①相同。
3 結論
由于ZigBee 和WiFi 各自存在較為明顯的特點,許多特性是相互補充的,因此將二者相結合具有很好的應用前景。本系統(tǒng)結合ZigBee 和WiFi 各自的優(yōu)點,建立了一種樓宇監(jiān)測無線網(wǎng)絡系統(tǒng)。它能夠自動監(jiān)測樓宇中人員的活動情況,并根據(jù)基于ZigBee 無線傳感器網(wǎng)絡發(fā)出的告警指令,自動控制機器人到達告警位置進行跟蹤。與傳統(tǒng)的監(jiān)測系統(tǒng)相比較,該系統(tǒng)具有低成本、無人值守的特點。該系統(tǒng)已經(jīng)在科羅拉多礦業(yè)學院工程系主樓上得到實際應用。該系統(tǒng)還可以應用于礦山、小區(qū)等地方,同時,也適用于環(huán)境監(jiān)測(需要將紅外距離傳感檢測器換成溫度、濕度等傳感檢測器). 但是,該機器人目前只能每次從固定的地點(坐標原點)出發(fā),經(jīng)過預定的路線到達目標點,當然,如果配備GPS 模塊,就很容易解決該問題。