O 引言
隨著通訊技術的發展,傳統的信息和控制傳送的方式正在被新的技術所取代,有線的非功率傳送的通訊和控制系統由于線路安裝和維護的成本高昂,隨著時間的推移可靠性更加難以保證,而且網絡的組織一經安裝完畢就不可更改,除非再次布網,而無線的通訊和控制傳送網絡由于低成本、低功耗、組網方便正日益得到廣泛的應用。
短距離無線通訊的歷史發展到標準網絡是近十幾年的事,目前正在成為無線通信技術的一大熱點,表1列出了正在使用的幾種主要標準的發展時間表和主要特點:
紅外技術成本較低,具有很好的安全性和抗干擾性,但是傳輸距離較短且為視距傳播,無法組網。Wi-Fi傳輸速率高、傳輸距離遠,可以實現小范圍的組網,但是Wi-Fi的802.11的射頻和基帶協議較為復雜,實現成本高、功耗大,實現嵌入式應用困難。Home RF的共享協議主要是側重于PC及其外設,成本較高,抗干擾性較差。藍牙的技術比較復雜,應用系統費用高、功耗高、產品的互操作性還未得到很好的解決。而zigBee的成本低、功耗低,可以勝任Wi-Fi無法勝任的領域,可以補充藍牙技術達不到的低速率長距離的技術盲區。
GPRS(通用分組無線服務)是一整套基于全球移動通信系統GSM的包模式通信服務,GPRS用戶以一種低成本有效利用GSM網絡的非接入方式的通信,具備以下特性:
·間歇的非周期性發送,發送間隔時間一般大于傳輸時延
·頻繁傳送低容量數據
·傳送高容量數據不頻繁
GPRS通信中有兩種服務方式,一種為點到點的服務方式PTP,一種是點到多點的服務方式PTM。
1 ZigBee簡介
ZigBee是英國Invensys公司、日本三菱電氣公司、美國摩托羅拉公司以及荷蘭飛利浦公司于2002年10月共同提出的一種新的短距離低速率無線通信技術,ZigBee由IEEE 802.15.4小組和ZigBee聯盟兩個組織制訂,ZigBee的意思是模仿蜜蜂的ZigZag通訊。ZigBee的通信協議分
為六層,其中網絡層和應用層由ZigBee聯盟制訂,數據鏈路層(包括LLC和MAC)和物理層由802.15.4小組制訂。ZigBee的連接時延一般在大約15ms到30ms之間,使用的工作頻段分別為2.4G(全球通用)、868MHz(歐洲)和915MHz(美國),均為免執照頻段。
ZigBee的網絡設備主要包括網絡協調器、全功能設備和精簡功能設備三類。其中,網絡協調器最復雜,其功能是發送網絡信標、建立網絡、管理節點、尋找一對節點間的路由和接收信息。全功能設備(FFD)擔任網絡協調者形成網絡,然后讓其他的精簡功能裝置(RFD)聯結,可提供雙向傳輸,具備全部IEEE802.15.4的功能和特征,閑時起到網絡路由器的功能,也可以做終端設備。精簡功能設備只能傳送信息給FFD和從FFD接收信息,在網絡中常用作終端設備,成本較低,一般由簡單的8位處理器和小協議棧構成。
2 融合GPRS技術的ZigBee應用
由于ZigBee網絡的有效通訊范圍一般為10~300m,對于空間上相對分布比較分散的單位或者距離較遠的單位之間,各個ZigBee網絡網內或網間控制數據的傳送往往需要非常遠的距離,有可能超過ZigBee網絡通訊的有效距離。而由ZigBee技術構成的局域網本身也存在聯網的需要。而空間距離非常大的廣域網的運行和維護如果采用數傳電臺等用戶系統,不但運行和維護成本較高,所需要的無線電頻段可能還需要申請和付費。而采用GPRS這種成熟的第三方傳輸服務就可以節省大量的運行和維護費用,目前采用GPRS傳送數據每k字節成本不到一分錢,相對來說非常經濟。
3 GPRS-ZigBee混合系統的整體設計
3.1 GPRS-ZigBee系統簡介
GPRS-ZigBee是由多個ZigBee節點構成,每個ZigBee節點都可以通過CAN總線和現場工作單元連接,可以進行控制數據的采集、計算和通信。ZigBee網絡設備根據拓撲結構可以分為三類:網絡協調器、網絡路由器和網絡終端。網絡協調器功能最強也最復雜,網絡路由器一般為
FFD,網絡終端可以是精簡功能設備。簡單的網絡可以由網絡協調器和精簡功能設備構成,形成星形結構(STAR),比較復雜的網絡可以有中間層FFD構成ZigBee網內路由節點,形成樹狀網絡(TREE)和網狀網絡(Mesh)。本文的GPRS-ZigBee混合系統的網絡協調器配備GPRS通訊模塊,可以實現GPRS-ZigBee系統問的遠程互連或者和其他計算機系統的遠程互連。
3.2 本文GPRS-ZigBee混合系統網絡協調器節點的硬件設計
為了實現本網絡節點的設計,將本節點的硬件設計分為四個模塊,一個是ZigBee無線收發模塊,一個是GPRs收發模塊,ZigBee模塊功能由Chipcon公司的CCl0O0無線收發芯片實現,GPRS模塊功能由英國Simcom公司的GPRS模塊SIM300實現,主控模塊由Atmel公司的微型處理器At-Megal28控制,另外有由MCP2515和MCP255l組成的CAN總線控制接口,可幫助調試的串口和用于數據快速上傳下載的USB接口。為了獲得較遠的傳輸距離,本混合系統的ZigBee無線收發模塊采用868MHz的收發頻率,測試單元采用與計算機相連的868MHz無線收發單元。
電路電源模塊采用GPRS模塊常用的MIC29302和SPXll17,分別提供4.2V穩壓和3.3V穩壓,無線收發模塊芯片CCll00的電源濾波電路根據Chipcon公司提供的濾波電容電阻電感組合設計,對于不同的收發頻率有不同的元件組合,入網指示有LED顯示。天線采用和頻率對應的棒狀天線,并且PCB板做有金屬外殼以符合EMC要求。
CCl000是一種理想的超高頻收發芯片,它專用于低功率和低電壓類無線產品,此IC主要用于ISM(工業科學醫療)方面和SRD(短距離通訊)方面,工作頻帶分別為315MHz、868MHz和915MHz,但CCl000可以很容易地通過編程使其工作在300~1000MHz。CC1000的FSK數傳可以達到72.8kHz。
SIM300是一種三頻緊湊型封裝GSM/GPRS模塊,可以工作在900/1800/1900MHz頻段,可以低功耗地實現語音、短信息和數據及傳真通訊,SIM300的特性可以使它理想地用于固定式無線終端,M2M以及手持設備等應用。SIM300模塊通過SIM卡座和SIM卡相連并通過微型天線卡座連接9dB天線,通過此二種外設實現SIM300模塊和GSM基站之間的信號發送和接收。文章設計僅僅使用了SIM300的GPRS功能,該GPRS功能是通過SIM300和主控制器之間的UART通訊實現的。
主控制器為AtMegal28處理器芯片,AtMegal28是RISC型的8位微處理器芯片,主頻為16MHz,芯片內部有128kN片上FLASH,選擇這個芯片是因為這個芯片有足夠大的片上空間可以裝下ZigBee協議棧。GPRS、zigBee、CAN和USB模塊均接在AtMegal28的中斷輸入引腳上,四級中斷形成雛菊花鏈式中斷結構。主控制器芯片的定時器和計數器可以輔助主控制器和ZigBee芯片之間的控制時序和協議棧協議內容的實現。
主控制微處理器連接有CAN總線收發器和CAN總線控制器,它們可以和本地控制單元有線連接,并且通過CAN總線協議和網絡協調器進行數據交換,再通過網絡協調器與ZigBee網絡進行局域數據交換或者通過GPRS進行廣域數據交換。CAN總線模塊采用Microchip公司的MCP2515和MCP2551組合實現,通過CAN總線模塊可以和本地控制單元實現數據交互以實現應用工業控制或者科學醫療樓宇自動化控制等應用,CAN應用符合CAN2.0B總線規范。
對于射頻電路來說,器件的相互干擾成為一種敏感的負面因素,本混合系統網絡協調器由于包含了兩種射頻單元因而這個考慮變得更加重要,在PCB設計中,兩個射頻部分在布線的時候采取了分開布局的考慮,而且在射頻部分各自加裝了金屬板屏蔽以避免射頻的相互干擾,并在軟件設計時避免兩種射頻的同時發射或接收。
本混合系統的測試系統為RFD器件,RFD器件只進行數據的收發,并通過CAN總線收發器和局部控制單元進行數據交互。RFD器件的收發頻率和混合系統網絡協調器的ZigBee單元的收發頻率一致,應用802.15.4標準實現初始化和接入ZigBee網絡,實現ZigBee網絡的組網和數據收發。
3.3 GPRS-ZigBee混合系統網絡協調器的軟件設計
3.3.1 ZigBee模塊軟件結構
ZigBee協議棧是基于OSI模型分層設計,分為驅動層、協議層和應用層。驅動層主要提供硬件控制和相應的接口,協議層主要包括基于802.15.4協議的物理層數據鏈路層和網絡層,應用層調用協議層提供的服務,完成系統操作并和其他模塊通訊。
3.3.1.1 驅動層的設計
驅動層的設計主要是CCl000的驅動設計,CCl000可以由PDATA、PCLK和PALE實現通信配置,并由DIO和DCLK完成數據的傳輸。一個完整的CCl000配置要求發送29個數據幀,每個16位(7個地址位、1個讀/寫位和8個數據位)。驅動層的CCl000驅動以及驅動層和協議層的接口在AtMegal28中軟件實現。
3.3.1. 2 協議層的設計
協議層主要完成網絡的組成和網絡成員的管理,其中物理層主要負責物理層數據的發送和接收,MAC層主要負責幀控制和數據校驗,網絡層主要負責網絡的組建和網絡成員管理,本設計為一個網絡協調器和多個網絡節點組成的星型網絡,在組建網絡前網絡協調器首先檢查網絡環境,掃描網絡信道,發送組網廣播,通告網絡的PAN ID以及自己的64位MAC地址,等待網絡節點設備的連接請求,并依次登錄網絡節點設備。網絡節點掃描信道,向網絡協調器發出登錄或者離開請求,等待網絡協調器將該節點加入或刪除出網絡。
節點申請加入時搜索信道空閑狀態,發送信標幀,在接收到多個帶有鏈路質量信號參數的信標幀后,選取鏈路質量較好的節點并向協調器發出入網請求幀,協調器準許后會分配網內短地址給該節點。每個節點都有一個鄰居表,并且可以對其動態維護,在該鄰居表中含有一個父節點地址(除了根節點外)和多個子節點地址(除了葉結點外),如此依次處理,則所有節點都登錄形成無線網絡,同理,一個節點離開網絡時,將向其父節點發送請求幀,父節點在接收到請求后會將該節點從網絡中摘除并向子節點發送響應幀。
網內傳播的信息幀有四種類型,分別為信標幀、數據幀、命令幀和確認幀。以通用NWK幀為例,信息幀的格式為:
3.3.2 GPRS模塊設計
GPRS模塊通過GPRS的AT指令集控制GSM和GPRS通信,AT指令集是美國賀氏公司開發的Modem控制指令集,每個指令都采取“AT+控制字符串”的形式傳送,指令開始的“AT”字符可以用來在SIM300和AtMegal28之間開始UART通信時實現自適應波特率設置。主CPU通過UART控制SIM300的GPRS通信。
3.3.3 CAN模塊設計
本系統的主控CPU通過MICROCIP公司的CAN總線控制器和CAN總線收發器實現CAN總線控制,通過CAN總線控制可以實現本地控制和zigBee無線傳感器網絡以及GPRS廣域網之間的數據通信,實現更復雜的系統控制。
3.3.4 系統級設計
網絡協調器通過中斷控制協調GPRS模塊、ZigBee模塊、CAN總線模塊和USB模塊的工作,中斷的優先級控設定為GPRS通訊為優先級最高,然后依次是ZigBee通訊、CAN總線通訊和USB通訊。中斷序列的管理采用一種優先級郵箱式的管理,每級中斷來臨時都會向中斷序列郵箱發送一封郵件,郵件根據中斷來源具備四種優先級之一,控制器每次中斷來臨時都會檢查當前中斷是否為中斷序列郵箱中中斷級別最高的中斷,如果是,則啟動該優先級的中斷或者繼續處理當前中斷,如果當前中斷不是中斷序列郵箱中中斷級別最高的中斷,則放棄當前優先級中斷并開啟當前中斷序列郵箱中級別最高的中斷。控制器在處理完每個中斷后控制器把剛剛處理完的優先級的中斷刪除出中斷序列郵箱,然后在中斷序列郵箱中再次尋找優先級最高的優先級中斷啟動或繼續處理。
主網絡協調器確定網絡標準時間基準,通過GPRS在ZigBee網絡內以信標幀的形式發送,各網絡協調器生成各自的控制令牌,在各網絡協調器管理的子網絡中,網絡節點按照節點注冊的順序以時間平均TDMA的方式在由注冊節點組成的環形隊列中順序傳送控制令牌,得到控制令牌的節點可以發送或者接收數據,沒有發送和接收數據需要的節點將被忽略。圖9系統狀態轉移圖,圖10系統PCB圖。
4 結束語
文章提出了一種基于GPRS技術和ZigBee技術相融合的無線網絡,并且提出了以網絡協調器為核心的硬件設計實現。此設計采用低功耗的GPRS和ZigBee模塊并以功能較強的微處理器AtMegal28為核心,利用SIM300GPRS模塊的TCP/IP協議棧和基于Chipcon CCl000的自構建的Zig-Bee協議棧實現廣域與局域的無線網絡數據交換,在配合有FFD和RFD節點的情況下實現ZigBee蜂窩通信無線網絡和ZigBee網絡之間的數據交換,是一種低成本低功耗經濟性適用性都很強的無線通訊網絡。