趙鋼
(西安航空職業(yè)技術學院 陜西 西安 710089)
垃圾問題,伴隨人類文明的發(fā)展日益嚴重。 新浪網(wǎng)曾做過一項調(diào)查,在3435 名被訪者中,僅有38.6%的家庭給垃圾分了類。 很多市民很愿意配合垃圾分類這項工作,但困擾他們的問題是:垃圾該如何準確分類。 在《關于廣州市資源環(huán)??疾靾F赴臺考察情況的報告》中明確寫道,“雖然98%的人支持垃圾分類,但自覺參與垃圾分類、且相對投放準確的不到30%。 ”
2013 年7 月,“垃圾不落地” 模式在廣州越秀區(qū)六榕街道試行近一年。 如今大部分街坊,垃圾不再混合堆放樓道,而是下樓再扔。盡管如此,可在分類的準確度上,卻仍有待提高。
面對日益增長的垃圾產(chǎn)量和環(huán)境狀況惡化的局面,我們需要通過科學的垃圾分類管理,最大限度地實現(xiàn)垃圾資源利用,減少垃圾處置量,改善生存環(huán)境質(zhì)量。 因此,研究一套便捷的可向用戶展示日常垃圾分類信息的系統(tǒng)是很有必要的。
無線技術可以分為高速率和低速率兩類[1],高速率無線技術主要包括Infrared Ray、Wi-Fi、HomeRF、Bluetooth、DECT(Digital Enhanced Cordless Telecommunications)、HiperLAN 和UWB(Ultra Wideband)等,低速率無線技術主要包括ZigBee 和Z-Wave(基于射頻的短距離無線通信技術)。 可組網(wǎng)的無線技術特性如表1 所示。
表1 可無線通信技術特性比較Tab.1 Comparative study of wireless communication technology
其中ZigBee 自組自愈能力強,通信可靠,工作頻段靈活,最大傳輸范圍在10~75 m, 且理論上可組建65536 個節(jié)點的網(wǎng)絡,其網(wǎng)絡容量及250 kbps 的傳輸速率已完全滿足小區(qū)信息提示網(wǎng)絡的需要。
基于ZigBee 的小區(qū)垃圾分類提示系統(tǒng)的實現(xiàn)方案,實際上是向住在小區(qū)的住戶展示日常生活垃圾的分類信息, 方便用戶查詢。 主要由終端節(jié)點、ZigBee 路由器、ZigBee 網(wǎng)絡協(xié)調(diào)器以及服務器終端等組成,其網(wǎng)絡結(jié)構(gòu)示意圖如圖1 所示。
圖1 小區(qū)ZigBee 網(wǎng)絡結(jié)構(gòu)示意圖Fig. 1 Community ZigBee network structure
終端節(jié)點主要用于向用戶展示基本的垃圾分類規(guī)則,并收集轉(zhuǎn)發(fā)不確定分類垃圾的信息,ZigBee 網(wǎng)絡路由器是建網(wǎng)的主要環(huán)節(jié),負責識別加入終端節(jié)點的網(wǎng)絡地址,并選擇合適的網(wǎng)絡路徑傳輸給協(xié)調(diào)器;ZigBee 網(wǎng)絡協(xié)調(diào)器負責發(fā)起網(wǎng)絡并對其進行管理和維護,包括對新加入的設備分配網(wǎng)絡地址,節(jié)點的加入和離開等。
系統(tǒng)是基于ZigBee 技術[2-3]的信息提示網(wǎng)絡,選擇Chipcon公司推出的用來實現(xiàn)嵌入式ZigBee 應用的片上系統(tǒng)CC2430。 CC2430 采用增強型8051MCU、32/64/128KB 閃存、8KBSRAM 等高性能模塊, 并內(nèi)置ZigBee 協(xié)議棧, 同時支持2.4 GHz、IEEE802.15.4/ZigBee 協(xié)議。
終端節(jié)點[4]包括以下幾個部分:基于單片機的顯控錄音模塊、 紅外人體感應模塊、CC2430 片上系統(tǒng)、32 MHz 系統(tǒng)時鐘和32.768 kHz 的實時時鐘、調(diào)試接口、天線以及電源。 其中單片機的顯控模塊主要用來顯示常用垃圾分類信息與社區(qū)每日推送的信息等, 紅外人體感應模塊用于檢測靠近終端的居民從而喚醒終端,CC2430 片上系統(tǒng)主要完成服務器消息的接收與用戶消息的上傳,其硬件結(jié)構(gòu)圖如圖2 所示。
圖2 終端硬件結(jié)構(gòu)示意圖Fig. 2 Terminal hardware structure
由于終端節(jié)點系統(tǒng)設計[5],一般會考慮低功耗的因素,故通信距離在100 m 左右,這個距離并不利于組建覆蓋范圍較大的網(wǎng)絡,為了進一步提高網(wǎng)絡的覆蓋范圍,可利用射頻前端CC2591,來提高發(fā)送功率以及接收靈敏度。 其硬件結(jié)構(gòu)圖如圖3 所示。
圖3 路由器硬件示意圖Fig. 3 Structure of router hardware
CC2591 集成了+22 dBm 的功率放大器以及+6 dB 的低噪聲放大器,是一款高性能、低成本、低功耗,集成度最高的2.4 GHz 射頻前端。
由于小區(qū)垃圾分類提示系統(tǒng)工作在居民小區(qū), 故會存在2.4 GHz 頻帶,以家用無線設備為主的干擾源,如工作在2.4 GHz 的無線鍵鼠等。為使提示系統(tǒng)可覆蓋整個小區(qū),需使用多種天線配合組網(wǎng),在樓層間距離短,可采用PCB 板載倒F 型天線; 在樓宇間由于傳輸距離較遠, 同頻干擾對網(wǎng)絡影響較大, 可使用具有較強方向性的八木天線與平板天線結(jié)合的方式,八木天線可用于路由器發(fā)射天線,平板天線可用于協(xié)調(diào)器接收天線。
基于ZigBee 網(wǎng)絡的小區(qū)垃圾分類提示系統(tǒng)[6],其軟件性能取決于協(xié)議棧的設計與應用程序的開發(fā)。因此,軟件部分設計主要包括ZigBee 協(xié)議棧和ZigBee 模塊相關部分設計。
協(xié)議棧[2]定義了通信硬件和軟件在不同級間協(xié)調(diào)工作的方式,ZigBee 無線網(wǎng)絡是建立在ZigBee 協(xié)議棧的基礎上的。ZigBee 協(xié)議棧采用分層結(jié)構(gòu),由一組子層構(gòu)成;協(xié)議分層的目的,是為了使各層相對獨立,每一層都能提供特定服務,服務由協(xié)議定義,程序員只需關心與自身工作直接相關層級協(xié)議。
本設計中,采用Chipcon 公司開發(fā)的協(xié)議棧Z-Stack。 ZStack 協(xié)議棧是TI 提供的符合ZigBee 規(guī)范的免費協(xié)議棧,可以完全運行在CC2430 節(jié)點上。 它運行在操作系統(tǒng)的抽象層(OSAL,Operating System Abstract Layer)上,而OSAL 采用了與Windows 程序類似的消息事件驅(qū)動機制,通過觸發(fā)任務事件來實現(xiàn)系統(tǒng)的任務調(diào)度。
ZigBee 模塊的工作,通過每層特定服務,完成設定的工作任務。各項服務都是通過服務原語來實現(xiàn)的,原語在程序中就相當于一個可實現(xiàn)設定功能的函數(shù), 每個事件都是由服務原語組成,它使一個設備的其中一層,可通過該層的服務入口與建立對等連接的設備相同層級進行通訊。 原語通常分為以下四類型: 請求原語 (Request primitive), 響應原語(Response primitive),指示原語(Indieation primitive)和確認原語(Confirm primitive)。
ZigBee 設備都具有兩個基本功能,即加入網(wǎng)絡和離開網(wǎng)絡。 ZigBee 協(xié)調(diào)器和ZigBee 路由器還具有:允許設備加入網(wǎng)絡,允許設備離開網(wǎng)絡,參與分配邏輯網(wǎng)絡地址,維護近鄰設備列表等功能。
4.3.1 ZigBee 模塊協(xié)調(diào)器建網(wǎng)
一個ZigBee 網(wǎng)絡[2]有且只有一個網(wǎng)絡協(xié)調(diào)器,網(wǎng)絡的建立由它發(fā)起。當需要建立一個新的ZigBee 網(wǎng)絡時,協(xié)調(diào)器將經(jīng)過以下主要步驟,能量探測、主動掃描,信道選擇,以及網(wǎng)絡短地址、網(wǎng)絡標識符、網(wǎng)絡拓撲參數(shù)、信標周期等的確定。 其網(wǎng)絡建立流程如圖4 所示,允許節(jié)點加入網(wǎng)絡流程圖如圖5 所示。
圖4 協(xié)調(diào)器建網(wǎng)流程圖Fig. 4 The coordinator network flow chart
在協(xié)調(diào)器建網(wǎng)建網(wǎng)過程中, 初始化創(chuàng)建新網(wǎng)絡使用了NLME-NETWORK-FORMATION.request 原語。設備NLME 將檢索主動掃描返回的PAN 掃描符,找到其中現(xiàn)存網(wǎng)絡最少的第一個信道作為創(chuàng)建新網(wǎng)絡的工作信道。 如果找不到合適的信道,NLME 將中止創(chuàng)建新網(wǎng)絡的過程并通知上層:創(chuàng)建網(wǎng)絡失敗。如果找到合適的信道,NLME 將為新網(wǎng)絡選擇一個PAN標識。
ZigBee 協(xié)調(diào)器和ZigBee 路由器能夠允許節(jié)點加入網(wǎng)絡,而ZigBee 終端節(jié)點則不能,如果允許節(jié)點加入網(wǎng)絡過程初始化發(fā)生在一個ZigBee 終端節(jié)點上, 節(jié)點NLME 將中止該過程。允許節(jié)點加入網(wǎng)絡的過程通過NLME-PERMIT-JOINING.request 原語來初始化。
圖5 允許節(jié)點加入網(wǎng)絡流程圖Fig. 5 Allows a node to join the network flow chart
4.3.2 ZigBee 模塊路由器建網(wǎng)
路由器節(jié)點在ZigBee 網(wǎng)絡[7-8]中起接力的作用,終端節(jié)點、 路由節(jié)點以及協(xié)調(diào)器節(jié)點間的數(shù)據(jù)傳輸都可以通過路由實現(xiàn)。 NLME_START_ROUTER 原語用來把一個新的網(wǎng)絡的設備初始化成ZigBee 路由器,或用來重新配置一個ZigBee 路由器的超幀。 其參數(shù):BeaconOrder 表示上層期望的網(wǎng)絡信標階數(shù);SuperframeOrder 表示上層期望的網(wǎng)絡超幀階數(shù);BatteryLifeExtension 取 值 為TRUE 時,NLME 將 請 求ZigBee路由器運行時支持電池壽命延長模式, 取值為FALSE 時,NLME 將請求ZigBee 路由運行時不支持電池壽命延長模式。其建網(wǎng)流程與允許節(jié)點加入網(wǎng)絡流程相似。
本設計的ZigBee 路由的建立過程采用按需路由協(xié)議AODV,該協(xié)議適合運用于移動頻繁或節(jié)點數(shù)據(jù)較多的應用場合。 在ZigBee 網(wǎng)絡中AODV 算法為兩個節(jié)點之間路由路徑提供多種選擇,當一條路徑失效,AODV 算法可快速尋找一條新的路由路徑來代替原來的路由,具有很強的網(wǎng)絡自適應能力。
4.3.3 ZigBee 模塊終端節(jié)點入網(wǎng)過程
終端節(jié)點主要用來傳遞用戶的不確定信息, 并向上發(fā)送至其上節(jié)點,最終發(fā)送到協(xié)調(diào)器,同時它也可以接收協(xié)調(diào)器發(fā)來的命令與信息。 子節(jié)點通過孤點方式連接網(wǎng)絡或者重新連接網(wǎng)絡的流程如圖6 所示。
圖6 子節(jié)點加入網(wǎng)絡流程圖Fig. 6 Child nodes to join the network flowchart
終端節(jié)點通過發(fā)送NLME-JOIN.request 來執(zhí)行孤點方式網(wǎng)絡連接,其原語RejoinNetwork 參數(shù)設置為0x01。 如果子節(jié)點掃描到父節(jié)點成功(即孤點掃描),則網(wǎng)絡層管理實體發(fā)送NLME-JOIN.confirm 原語通知上層請求連接執(zhí)行成功, 其原語狀態(tài)參數(shù)設置為SUCCESS。 如果孤點掃描不成功,網(wǎng)絡層管理實體終止該流程, 并通過發(fā)送NLME-JOIN.confirm 原語告知上層沒有掃描到網(wǎng)絡, 其原語的狀態(tài)參數(shù)設置為NO_NETWORKS。
本文所設計的基于ZigBee 技術的小區(qū)垃圾分類提示系統(tǒng),成功結(jié)合了ZigBee 無線網(wǎng)絡的數(shù)據(jù)傳輸速率高,功耗低,網(wǎng)絡容量大,自組自愈能力強,通信可靠等功能優(yōu)點,具有成本低,技術成熟、結(jié)構(gòu)合理,方便擴展等優(yōu)勢,在全面提高小區(qū)戶主環(huán)保意識的同時,為小區(qū)的垃圾分類管理,分類信息統(tǒng)計及垃圾回收研究提供了數(shù)據(jù)依據(jù),對研究我國城市垃圾分類及回收有一定的指導意義。
[1] 呂鑫,王忠. ZigBee無線數(shù)據(jù)傳輸模塊的設計與實現(xiàn)[J].安徽師范大學學報:自然科學版,2010,33(4):332-335.
LV Xin,WANG Zhong.Design & realization of ZigBee data transmission module [J].Journal of Anhui Normal University:Natural Science,2010,33(4):332-335.
[2] 高守瑋,吳燦陽.ZigBee技術實踐教程[M].北京航空航天大學出版,2009.
[3] 鄒志勇, 周曼. 基于ZigBee和GPRS飲水機自動叫水智能系統(tǒng)設計[J].自動化與儀器儀表, 2013,33(1):74-75.
ZOU Zhi-yong,ZHOU Man.Based on the ZigBee and GPRS dispenser automatically called water smart system design[J].Automation & Instrumentation, 2013,33(1):74-75.
[4] 丁捷.基于ZigBee的溫室無線網(wǎng)絡節(jié)點設計及研究[D].鄭州:河南科技大學,2012.
[5] 黃玉立.基于CC2591的無線通信前端設計及實現(xiàn)[D].成都:電子科技大學,2011.
[6] 任麗莉, 范亞芹. ZigBee信號在智能小區(qū)中傳輸?shù)母倪M[J].吉林大學學報:信息科學版,2011,29(6):518-522.
REN Li-li,FAN Ya-qin.Transmission improvement of ZigBee signal in intelligent community [J].Journal of Jilin University:Information Science Edition,2011,29(6):518-522.
[7] 陳海燕,張晨.ZigBee無線語音通信組網(wǎng)技術[J].哈爾濱理工大學學報,2012,17(4):68-72.
CHEN Hai-yan,ZHANG Chen.The technology of ZigBee for building wireless voice communications network [J].Journal of Harbin University of Science and Technology,2012,17(4):68-72.
[8] 曾小虎.ZigBee路由實現(xiàn)與通信性能測試研究[D].廣州:廣東工業(yè)大學,2012.