|
引言 在近距離無線數據采集與自動控制系統中,往往需要組成點對多點的系統,即一個主機與多個從機的系統,如圖1所示。在這樣的系統中,主機作為整個系統的控制中心,負責發送指令和接收數據;從機被動地接收主機的指令,收到指令后,首先確定指令的類型,然后開始相應的工作。例如在無線數據采集系統中,主機負責選擇需要的從機,并啟動從機進行數據采集,然后接收從機采集到的數據;從機則根據接收到的主機發給自己的指令,啟動數據采集并發送數據給主機,或停止工作。
點對多點的無線系統對無線傳輸提出了雙向通信的要求,即主機和從機都可以進行發射與接收,并且相互之間協調有序,不會產生沖突和干擾。其實現方式有多種,本文從基于無線收發芯片CCl020實現這種點對多點無線系統出發,詳細論述了該系統的3種簡單實現方式。 1 基于CCl020實現點對多點系統 1.1 CCl020概述 CCl020是為極低功率、極低電壓的無線應用而設計的單片UHF收發芯片。電路主要應用于402、424、426、429、433、447、449、 469、868和915 MHz的ISM和SRD頻帶,也可以通過編程工作于402~470 MHz和804~940 MHz的其他頻率。 CCl020電源電壓為2.3~3.6 V,有接收、發射和低功耗3種模式。在接收模式下,電流消耗為17 mA。CCl020尤其適用于信道間距為12.5 kHz或25 kHz的窄帶系統。在12.5 kHz帶寬的信道中,靈敏度可達一119 dBm,數據速率高達153.6 kbps。CCl020具有ASK、FSK和GFSK三種數據調制方式,有數字接收信號強度指示器、載波檢測指示器和鏡像抑制混頻器,無需溫度補償晶體振蕩器(TCXO)即可補償晶體溫度漂移。 在典型應用系統中,CCl020與單片機和少量外部無源元件結合使用。圖2為CCl020與單片機AT89C2051連接的電路示意圖。圖中DVDD與 AVDD均為3 V。
CCl020的工作是建立在對其33個可編程配置寄存器進行編程基礎上的,33個配置數據可由SmartRF Studio軟件根據參數選取的不同生成最佳搭配值,再根據自己的實際需要調整個別寄存器的參數。 單片機使用3或4個I/0引腳與CCl020的結構配置SPI兼容接口(PDI,PDO,PCLK和PSEL)連接。PD0接單片機的輸入,PDI、 PCLK和PSEL接單片機的輸出。如果PDI和PD0連接在一起,則可以節省一個I/0引腳,此時單片機使用一個雙向引腳。單片機的一個雙向引腳與 CCl020的DIO引腳連接,用于數據的發射和接收(輸入與輸出)。DCLK提供數據時鐘,必須連接到單片機的一個輸入端。當工作在同步模式時,根據 DCLK引腳端提供的同步時鐘從DIO引腳進行數據的收發。 在點對多點系統的實現中,重點在于對CCl020的結構配置與收發軟件的設計上。 1.2 基于地址碼的點對多點系統 點對多點系統中從機與主機的交流可以通過地址碼的形式來實現,地址碼包含在數據幀中。最簡單的數據幀形式如下:
Lead為引導字節(即同步碼),通過測試和試驗發現,OxFF后跟OxAA、Ox55在噪聲中不容易發生,接收協議規定只接收以OxFF后跟OxAA、 0x55開始的包;Address為從機地址碼;地址碼后跟規定字節的數據;CheckSum為數據幀校驗字節。 工作時,主機根據所選的從機改變地址碼,緊跟著發送指令數據;從機則在識別到同步碼后,首先根據地址碼判斷此數據幀是否是發給自己的,然后相應地選擇放棄或接收。從機發送、主機接收的協議與此類似。圖3與圖4分別給出了基于CCl020使用地址碼應用于點對多點無線數據采集系統的主從機軟件工作流程。
該方式下,從機的個數取決于地址碼的大小。使用一個字節時可以連接256個從機,從機個數較少,但擴展比較容易。需要增加從機個數時可以增加所使用地址碼的字節數,每增加一個字節的地址,從機個數擴展28倍,擴展時所需工作量也不大。 使用地址碼方式實現的點對多點系統,由于主機與所有從機之間使用相同頻率的信道,在同一時間只能有一個從機工作,因此主機在從機之間選擇切換時,必須將前一個從機關閉,否則兩個從機發生干擾而導致系統無法工作。 1.3 基于工作頻率的點對多點系統 CCl020 的工作頻率是通過對配置寄存器的頻率字編程來設置的。2個頻率字寄存器FREQ_A和FREQ_B能被設置成不同的2個頻率。為了在發射模式與接收模式之間快速切換,一個頻率字寄存器用于接收(本振頻率),另一個用于發射(發射載波頻率)。它們也可以用于發射(或接收)的兩個不同信道。 利用CCl020工作頻率可編程的特性,可以實現多信道的點對多點系統。主機的工作頻率根據選擇的從機的不同而進行改變,每個從機工作在各自的頻率下。 軟件實現時,由于多信道是基于工作頻率建立主機與從機互連的,所以在收發中不需要使用地址碼。當主機在從機間進行切換時,只需要改變頻率字寄存器 FREQ_A和FREQ_B的內容就可以了。其他的工作流程與圖3和圖4中使用地址碼的工作流程基本相同。 由工作頻率實現的點對多點系統能夠連接的從機數,取決于使用的工作頻帶與信道帶寬。當工作在402~470MHz、信道帶寬為25 kHz時,理論上可連接的從機數最多為2 720個。該方式下從機數的擴展有限,而且增加從機的個數將大大增加工作量,但是由于各個從機所占用的工作頻率不同,即使有多個從機同時工作,彼此之間也不會相互干擾。 1.4 基于地址碼與工作頻率組合的點對多點系統 在分別使用地址碼和工作頻率實現點對多點系統的基礎上,可以實現工作頻率+地址碼組合的點對多點系統。也就是說,連接的從機分成多組,各組從機分別使用不同的頻率;組內從機使用相同的頻率,通過地址碼進行區別。 軟件實現時,只需要在圖3與圖4所示的流程中,增加改變頻率字寄存器FREQ_A和FREQ_B內容的步驟來實現信道切換就可以了。 這種方式下可連接的從機數為:頻率信道數×地址碼數。例如,工作在402~470 MHz、信道帶寬為25 kHz、使用一字節地址碼時,可連接的從機數為:2 720×256=696 320,大大地增加了可連接的從機個數。同樣,隨著頻率信道數的增加,工作量顯著增加。 2 總結 本文論述了基于CCl020實現點對多點系統的3種方式。這3種方式屬于固定預分配方式,但都足夠滿足簡單無線通信的需求;從機擴展的實現難易各不相同,使用地址碼最容易進行擴展,另外兩種方式從機擴展難度依次有所增加,但卻有各自的優點與應用領域。3種方式的區別主要在于主從機信道的建立上,信道建立后的控制流程則基本相同。 這3種點對多點系統的實現方式雖然是基于CCl020的,但卻適合于所有采用無線收發芯片建立的系統。其中,使用地址碼的方式對于所有數字通信系統普遍適用,另外兩種方式則取決于收發芯片的頻率可編程特性。具體采用何種方式應根據系統的實際需求而定。 參考文獻 1. Chipcon CC1020 Low-Power RF Transceiver for Narrowband Systems 2. TI.SmartRF Studio User Manual 3. 聶光義 點對多點的多任務無線通信 [期刊論文] -單片機與嵌入式系統應用2003(1) 4. 張敬堂.李紅波.趙澤兵 現代通信技術 2004 作者:海軍工程大學 王彥波 察豪 來源:單片機與嵌入式系統應用 2009 (2) |