基于CC2420的無線傳感器網絡節點的設計
無線傳感器網絡是當今國內外通信領域的一大研究熱點,它在軍事、民用及工商業領域都具有廣闊的應用前景。在軍事領域,通過無線傳感器網絡,隱蔽地分布在戰場上的傳感器可將獲取的信息回給指揮部;在民用領域,無線傳感器網絡可在家居智能化、環境監測、醫療保健、災害預測等方面得到廣泛應用;在工商業領域,無線傳感器網絡在工業自動化、空間探索和其他商業用途卜得到廣泛應用。
本文引用地址:http://www.104case.com/article/188866.htm考慮到無線傳感器網絡在通信上消耗能量較大,故選用功耗較小的CC2420芯片作為通信芯片來設計節點。
1 無線傳感器網絡節點的特征
無線傳感器網絡由大量體積小、能耗低、具有無線通信、傳感和數據處理功能的傳感器節點組成。因此,傳感器節點是尤線傳感器網絡的基本單元,節點設計的好壞直接影響到整個網絡的質量。無線傳感器網絡節點主要負責對周圍信息的采集和處理,并發送自己采集的數據給相鄰節點或將相鄰節點發過來的數據轉發給基站或更靠近基站的節點。它一般由傳感器模塊(傳感器、A/D轉換器)、處理器模塊(微處理器、存儲器)、無線通信模塊(無線收發器)和能量供應模塊(電池)組成,如圖1所示。
![]() |
所有無線傳感器網絡節點都具有相同的功能,但在某一時刻,各個節點可能正在執行不同的功能。根據功能,可以把節點分成傳感器節點、簇頭節點和匯聚節點3種類型。當節點作為傳感器節點時,主要是采集周圍環境的數據(溫度、光度和濕度等),然后進行A/D轉換,交由處理器處理,最后由通信模塊發送到相鄰節點,同時該節點也要執行數據轉發的功能,即把相鄰節點發送過來的數據發送到匯聚節點或離匯聚節點更近的節點;當節點作為簇頭節點時,主要是收集該簇內所有節點所采集到的信息,經數據融合后,發往匯聚節點;當節點作為匯聚節點時,其主要功能就足連接傳感器網絡與外部網絡(如Internet),將傳感器節點采集到的數據通過互聯網或衛星發送給用戶。
CC2420是Chipcon公司開發的首款符合Zigbee標準的2.4 GHz射頻芯片,集成了所有Zigbee技術的優點,可快速應用到Zigbee產品中。Zigbee是建立在IEEE 802.15.4定義的可靠的PHY(物理層)和MAC(媒體訪問控制層)之上的標準,它定義了網絡層、安全層和應用層。Zigbee的協議架構如圖2所示。
![]() |
Zigbee技術的特點如下:
a) 數據傳輸速率低:只有20~250 kbit/s,專注于低傳輸速率的應用。
b) 時延短:休眠激活時延和活動設備接入信道時延均為15 ms,典型的搜索設備時延為30 ms,這便可以使系統有更多的睡眠時問,從而大大降低能量消耗。
c) 功耗低:由于Zigbee的傳輸速率低,且采用了休眠模式,因此大大降低了功耗。單靠兩節5號電池便可維持6到24個月,這是其他無線通信技術望塵莫及的。
d) 安全性高:Zigbee提供了基于CRC(循環冗余校驗)的數據包完整性檢查功能,支持鑒權和認證,采用高級加密標準(AES-128)的對稱密碼,以靈活確定其安全屬性。
e) 免執照頻段:采用直接序列擴頻在ISM(工業、科學、醫療)頻段,2.4 GHz(全球)、915 MHz(美國)和868 MHz(歐洲),均為免執照頻段。
f) 網絡容量大:Zigbee可采用星狀、樹狀和網狀網絡結構,并采用IEEE標準的64-bit編址和16 bit短編址。由一個主節點管理若干子節點,最多一個主節點可管理254個子節點;同時,主節點還可由上一層網絡節點管理,最多可組成65 000個節點的大網。
g) 可靠性高:采用了CSMA-CA技術來避免發送數據的競爭和沖突。MAC層采用了完全確認的數據傳輸模式,每個發送的數據包都必須等待接收方的確認信息。
h) 低成本:由于Zigbee數據傳輸速率低,協議簡單,因此大大降低了成本。
CC2420芯片除了擁有以上Zigbee的所有優點外,還具有與微控制器的接口配置容易(四線SPI串行口)、接收與發送采用不同存儲空間、所需外部元件較少以及采用QLP-48封裝,外形尺寸只有7 mm×7 mm等性能特征。
CC2420芯片的內部結構如圖3所示。天線接收的信號經低噪聲放大器放大,并通過I/Q降頻轉換為2 MHz的中頻信號。該信號再經濾波、放大、A/D轉換、自動增益控制、終端信道過濾以及信號修正等,最終得到正確數據。當要發送數據時,先把要發送的數據放入容量為128字節的發送緩沖區。報頭和起始幀由硬件自動生成。根據IEEE 802.15.4標準,將數據流的每4個比特擴展為32碼片,然后送到D/A轉換器。最后,經過低通濾波和上變頻混頻,并在能量放大器中進行放大后,交由天線發送。
![]() |
3 節點設計
由于在設計中用到的傳感器較少(主要是溫度傳感器和光傳感器),因此將傳感器模塊集成到處理器模塊中。所以對節點設計的描述將分為處理器模塊、通信模塊和供電模塊3部分。其中處理器模塊選用ATmega128L作為處理器芯片,通信模塊選用CC2420作為通信芯片,在電源方面,采用2節5號電池提供3V供電。
3.1 處理器模塊
處理器是整個節點的中心,其他模塊都要通過處理器來聯系,因此處理器性能的好壞決定了整個節點的性能。ATmega128L芯片是ATMEL公司開發的一款高性能、低功耗的8位AVR微處理器。它有128 kB的系統可編程Flash存儲器,4 kB EEPROM,以及4 kB的片內SRAM,同時還可以擴展外部存儲器;采用先進的RISC結構,大部分指令在一個時鐘周期內完成;有64個10引腳,都與通用單片機兼容;片內提供1個串行外圍接口SPI、1個兩線串行接口TWI和2個通用同異步串行接口,用于與外部元件的通信;并提供8通道10位采樣精度的A/D轉換器,該器件同時支持16路差分電壓輸入組合。
處理器與傳感器的連接如圖4所示。因為光傳感器與溫度傳感器的工作原理相似,因此它們可采用同樣的電路圖。圖中的R1為光敏電阻或熱敏電阻,R2為10kΩ電阻,用于保護電路,加入電容C1是為使A/D轉換器采樣所得到的數據更精確。
電路的工作原理是:用ATmega128L的一個引腳給電路提供電源,從圖中的電源端輸入電路。R1的阻值根據光(R1為光敏電阻)或溫度(R1為熱敏電阻)的變化而發生變化,從而引起其壓降的變化。將R1的負端與處理器的一個A/D轉換器端口連接,處理器即可收到一個電信號,然后處理器啟動A/D轉換功能,將電信號轉換為數字存入寄存器,當MCU需要處理或發送該數據時便可來取。利用下式可計算出十位二進制A/D轉換器讀數DADC。
![]() |
式中:Vin為A/D轉換器引腳的輸入電壓;Vref為參考電壓。
評論