《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 基于ZigBee技術(shù)的無線溫濕度監(jiān)測系統(tǒng)的設(shè)計與實現(xiàn)
基于ZigBee技術(shù)的無線溫濕度監(jiān)測系統(tǒng)的設(shè)計與實現(xiàn)
趙政華,吳 磊,黃建林
摘要: 介紹了應(yīng)用ZigBee技術(shù)的無線收、發(fā)模塊CC1010和溫、濕度傳感芯片SHT11,實現(xiàn)一個無線溫度、濕度監(jiān)測系統(tǒng)的方案
Abstract:
Key words :

  摘 要: 介紹了應(yīng)用ZigBee技術(shù)的無線收、發(fā)模塊CC1010和溫、濕度傳感芯片SHT11,實現(xiàn)一個無線溫度、濕度監(jiān)測系統(tǒng)的方案。
    關(guān)鍵詞: ZigBee;CC1010;SHT11

    無線技術(shù)的快速發(fā)展帶動了其應(yīng)用領(lǐng)域的迅速擴大,然而無線設(shè)備在實際應(yīng)用中又受到了功耗、成本、傳輸可靠性等方面的限制,這些問題在ZigBee無線技術(shù)問世之后得到了很好的解決。
  ZigBee是一種近距離、低功耗、低速率、低成本、短時延的無線通信技術(shù),主要適合于自動控制和遠(yuǎn)程控制領(lǐng)域,可以嵌入各種設(shè)備中。完整的 ZigBee協(xié)議棧由物理層(PHY)、介質(zhì)訪問控制層(MAC層)、網(wǎng)絡(luò)/安全層和應(yīng)用架構(gòu)層4部分組成。其中,IEEE 802.15.4制定前2層標(biāo)準(zhǔn),ZigBee聯(lián)盟在IEEE 802.15.4基礎(chǔ)上定義了網(wǎng)絡(luò)/安全層和應(yīng)用架構(gòu)層。ZigBee組網(wǎng)靈活,可構(gòu)造星型網(wǎng)、樹型網(wǎng)及網(wǎng)狀網(wǎng),1個星型網(wǎng)絡(luò)最多可容納254個從設(shè)備和1個主設(shè)備,具有較大的網(wǎng)絡(luò)容量,并且傳輸可靠性高。在無線通信技術(shù)上,采用免沖突多載波信道接入(CSMA-CA)方式,有效地避免了無線電載波之間的沖突,還建立了完整的應(yīng)答通信協(xié)議。ZigBee設(shè)備工作周期短,內(nèi)部協(xié)議簡單,收發(fā)間隔采用休眠機制,并且具有能量檢測及鏈路質(zhì)量指示能力,可自動調(diào)整設(shè)備的發(fā)射功率,在保證通信鏈路質(zhì)量的條件下,降低了功耗和成本[1]。 
  本文提出的無線溫、濕度監(jiān)測系統(tǒng)的實現(xiàn)方案,就是基于ZigBee無線傳輸技術(shù),發(fā)送端和接收端使用ZigBee協(xié)議進(jìn)行無線溫、濕度數(shù)據(jù)的傳輸,下面介紹系統(tǒng)的硬件結(jié)構(gòu)和軟件結(jié)構(gòu)。
1 系統(tǒng)硬件結(jié)構(gòu)
  基于ZigBee技術(shù)的無線溫、濕度監(jiān)測系統(tǒng)由2部分構(gòu)成,即發(fā)送端和接收端。系統(tǒng)的硬件結(jié)構(gòu)框圖如圖1所示。

 


    在本系統(tǒng)中,發(fā)送端由若干個終端節(jié)點(以下稱發(fā)送節(jié)點)組成,每一個發(fā)送節(jié)點扮演著數(shù)據(jù)源的角色,它由1個溫、濕度傳感器和1個ZigBee無線射頻發(fā)送模塊組成,通過ZigBee網(wǎng)絡(luò)向接收端發(fā)送溫、濕度數(shù)據(jù)。接收端由1個ZigBee射頻接收模塊,1個MAX232轉(zhuǎn)串口模塊和主機組成。接收模塊建立1個星型的ZigBee網(wǎng)絡(luò),扮演著網(wǎng)絡(luò)協(xié)調(diào)器的角色,通過ZigBee網(wǎng)絡(luò)接收各個發(fā)送節(jié)點發(fā)送來的數(shù)據(jù),并通過MAX232傳輸?shù)街鳈C。下面詳細(xì)介紹發(fā)送端和接收端的硬件結(jié)構(gòu)。
1.1 發(fā)送端硬件結(jié)構(gòu)
  在發(fā)送端,每一個發(fā)送節(jié)點都是由1個ZigBee無線射頻(RF)模塊CC1010和1個溫、濕度傳感器SHT11組成。
  ZigBee模塊CC1010是挪威Chipcon公司推出的單片、多頻段、低功耗、超高頻射頻芯片。采用0.35 μm CMOS技術(shù)制成,內(nèi)嵌高性能的8051微控制器(MCV)??赏ㄟ^編程控制其工作于300 MHz~1 000 MHz頻段范圍之內(nèi)。CC1010有UART0和UART1 2個串行接口,可通過寄存器來控制模塊的收/發(fā)模式(RX/TX),CC1010的8051外設(shè)有P0、P1、P2、P3 4個通用的I/O口,每個I/O口都可由端口寄存器和端口方向寄存器來控制是讀取數(shù)據(jù),還是輸出數(shù)據(jù)[2]。
  溫、濕度傳感器SHT11將溫、濕度傳感器、信號放大調(diào)理、A/D轉(zhuǎn)換和數(shù)字通信接口集成在一個芯片上。數(shù)字接口方面,SHT11提供二線數(shù)字串行接口SCK和DATA,SCK為串行時鐘線,用于實現(xiàn)與微處理器之間的通信同步,DATA為串行數(shù)據(jù)線,與微處理器之間進(jìn)行數(shù)據(jù)傳輸。此芯片接口簡單,傳輸可靠性高,測量精度可編程調(diào)節(jié)。測量和通信結(jié)束后,自動轉(zhuǎn)入低功耗模式[3]。
  CC1010與SHT11連接如圖2所示。SHT11共有8個外接引腳線,GND、DATA、SCK、VDD,引腳連接如圖,其余4個引腳閑置。為避免信號沖突,在DATA線與VDD之間外接1個上拉電阻。在VDD與GND之間加入1個100 nF的電容,用以去耦濾波[3]。SHT11與串行接口類似但不兼容I2C總線協(xié)議,在此用CC1010的通用I/O口P0的P0_0、P0_1分別與SHT11的串行時鐘線SCK與串行數(shù)據(jù)線DATA相連接,用于實現(xiàn)通信同步以及數(shù)據(jù)傳輸。CC1010的發(fā)送/接收模式由寄存器RFMAIN控制,在發(fā)送節(jié)點設(shè)置其RXTX=1,為發(fā)送模式,并采用字節(jié)發(fā)送模式。

1.2 接收端結(jié)構(gòu)
  接收端由1個接收模塊CC1010、1個MAX232及主機組成[4]。在此令CC1010為接收模式,接收數(shù)據(jù)時,RF接收的信號經(jīng)低噪聲放大器放大后翻轉(zhuǎn)進(jìn)入混頻器,通過混頻后產(chǎn)生中頻信號,在中頻處理階段,該信號送入解調(diào)器之前被放大和濾波,解調(diào)的數(shù)據(jù)被放入移位寄存器中,然后存入RFBUF中。MCU把RFBUF中的數(shù)據(jù)取出后,存入UART的數(shù)據(jù)緩沖寄存器SBUF中,經(jīng)由MAX232轉(zhuǎn)串口模塊將溫、濕度數(shù)據(jù)傳輸?shù)街鳈C,其結(jié)構(gòu)如圖3所示。

2 系統(tǒng)軟件設(shè)計
  系統(tǒng)的軟件設(shè)計分為發(fā)送端軟件設(shè)計和接收端軟件設(shè)計。每一個節(jié)點的軟件設(shè)計又分為驅(qū)動模塊和應(yīng)用模塊。驅(qū)動模塊中的硬件驅(qū)動程序為應(yīng)用模塊軟件提供接口函數(shù),以下介紹應(yīng)用模塊軟件設(shè)計。
2.1 發(fā)送端應(yīng)用模塊軟件設(shè)計
  發(fā)送節(jié)點的軟件設(shè)計主要包括以下兩部分:
    (1)實現(xiàn)SHT11定時向CC1010傳輸檢測到的溫、濕度相對數(shù)據(jù),并且CC1010內(nèi)部的MCU對其溫、濕度相對數(shù)據(jù)進(jìn)行濕度非線性補償和溫度補償,將其修正為準(zhǔn)確值,并存入RFBUF中,經(jīng)過調(diào)制發(fā)往接收端。調(diào)制后的數(shù)據(jù)包格式如表1所示。


  表中,前導(dǎo)碼使接收端完成位同步,地址標(biāo)識發(fā)送節(jié)點的身份,CRC校驗用于保證通信的可靠性,數(shù)據(jù)包是溫、濕度值。
  (2)將CC1010與扮演協(xié)調(diào)器角色的接收端進(jìn)行綁定,兩者分配一個相同且唯一的網(wǎng)絡(luò)ID,分配成功之后,用以實現(xiàn)在這唯一的ID標(biāo)識的網(wǎng)絡(luò)中進(jìn)行收、發(fā)數(shù)據(jù),即使發(fā)送節(jié)點還處于另外一個ZigBee網(wǎng)絡(luò)之中,也不與其協(xié)調(diào)器通信,而只識別與其本身網(wǎng)絡(luò)ID相同的協(xié)調(diào)器。當(dāng)發(fā)送節(jié)點初始化后,首先尋找與其綁定的協(xié)調(diào)器建立的ZigBee網(wǎng)絡(luò),等待協(xié)調(diào)器將其加入網(wǎng)絡(luò)中,進(jìn)行無線通信。每個發(fā)送節(jié)點的軟件設(shè)計是相同的,其程序流程圖如圖4所示。


2.2 接收端應(yīng)用模塊軟件設(shè)計
  接收端的ZigBee無線射頻模塊CC1010接通電源并復(fù)位后,首先要開始一個具有唯一ID標(biāo)識的ZigBee網(wǎng)絡(luò),應(yīng)答與其綁定的各個發(fā)送模塊的請求并將其加入到網(wǎng)絡(luò)中,同時為每個發(fā)送模塊分配本網(wǎng)絡(luò)內(nèi)唯一的16位的地址之后,等待發(fā)送端發(fā)送數(shù)據(jù),當(dāng)檢測到有數(shù)據(jù)時便接收這些數(shù)據(jù),并通過MAX232將接收到的數(shù)據(jù)包傳輸給主機。接收端流程如圖5所示。

 


    本文設(shè)計實現(xiàn)了一個由ZigBee無線射頻模塊CC1010,溫、濕度傳感模塊SHT11及主機組成的無線溫、濕度監(jiān)測系統(tǒng)。本系統(tǒng)功耗極低、傳輸可靠性高、測量精度好。CC1010應(yīng)用ZigBee無線技術(shù)組成的網(wǎng)絡(luò)具有容量大、功耗低、時延短、抗干擾性強的性能,并且通過編程,控制其在工作模式、節(jié)能模式和休眠模式3種模式間進(jìn)行轉(zhuǎn)換,以節(jié)省能量[5]。SHT11接口簡單、測量精度好、測量和通信結(jié)束后可自動轉(zhuǎn)入低功耗模式來節(jié)省能量。所以本設(shè)計采用了這2種芯片來滿足系統(tǒng)對多節(jié)點、使用期長、可靠性高、響應(yīng)實時數(shù)據(jù)的要求,特別是滿足了發(fā)送節(jié)點低功耗、傳輸可靠性高的要求。                    

 

參考文獻(xiàn)
[1] 蔣挺,趙成林.紫蜂技術(shù)及其應(yīng)用[M].北京:北京郵電大學(xué)出版社,2006.
[2] Single chip very low power RF transceiver with 8051-compatible microcontroller. http://www.chipcon.com.
[3] Datasheet SHT1x Humidity and Temperature Sensor. http://www.sensirion.com/en/pdf/product_information/Datasheet-humidity-sensor-SHT1x.pdf.
[4] 陳海波,區(qū)穎剛,胡均萬,等.基于CC1010的土壤水分無線監(jiān)測系統(tǒng)的設(shè)計[J].農(nóng)機化研究,2008(5).
[5] TORVMARK K H.Low power systems using the CC1010[Z].Chipcon Application Note, NO 17,2002.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。