《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于ZigBee技術(shù)的無(wú)線溫度采集系統(tǒng)
基于ZigBee技術(shù)的無(wú)線溫度采集系統(tǒng)
景軍鋒,李嘉琨,王 波,,聶魯華
(西安工程大學(xué) 電子信息學(xué)院,陜西 西安 710048)
摘要: 詳細(xì)闡述了ZigBee技術(shù)及其應(yīng)用,,提出了一種基于ZigBee技術(shù)的無(wú)線溫度采集系統(tǒng)的方案。針對(duì)所提方案設(shè)計(jì)了系統(tǒng)的硬件電路及相關(guān)軟件,并通過實(shí)驗(yàn)證明了方案的可行性及正確性。
關(guān)鍵詞: PIC ZigBee DS18B20 CC2430 2.4 GHz
Abstract:
Key words :

 摘  要: 詳細(xì)闡述了ZigBee技術(shù)及其應(yīng)用,提出了一種基于ZigBee技術(shù)的無(wú)線溫度采集系統(tǒng)的方案,。針對(duì)所提方案設(shè)計(jì)了系統(tǒng)的硬件電路及相關(guān)軟件,并通過實(shí)驗(yàn)證明了方案的可行性及正確性。
關(guān)鍵詞: ZigBee,;DS18B20,;CC2430;2.4 GHz

  在人們?nèi)粘5纳a(chǎn)生活中,,經(jīng)常需要通過傳感器將一些物理量,,如溫度、濕度,、光照度等非電量轉(zhuǎn)變成電量,,然后通過傳輸線傳輸?shù)街鳈C(jī)進(jìn)行數(shù)據(jù)處理,再產(chǎn)生相應(yīng)的控制信號(hào),。工業(yè)中的傳輸線通常采用的是現(xiàn)場(chǎng)總線,,如CAN總線等。但是在一些場(chǎng)合采用這種有線介質(zhì)作為傳輸線并不是最理想的方案,。比如一個(gè)大型糧倉(cāng)或蔬菜大棚要實(shí)現(xiàn)多點(diǎn)的溫度采集時(shí),,按照有線傳輸方案需要從各個(gè)傳感器節(jié)點(diǎn)連接很多且復(fù)雜的傳輸線到主機(jī),蔬菜大棚需要保持一定的溫濕度,,長(zhǎng)期下來會(huì)對(duì)傳輸線造成腐蝕,、損壞,,從而影響整個(gè)系統(tǒng)的正常工作,。此外,多點(diǎn)溫度采集系統(tǒng)所傳輸?shù)臄?shù)據(jù)量并不大,,且對(duì)數(shù)據(jù)傳輸速率的要求也不高,,所以在這種情況下采用無(wú)線方式進(jìn)行信號(hào)的采集傳輸是十分理想的。
  當(dāng)前主要的無(wú)線技術(shù)有WiFi,、Bluetooth,、UWB、NFC以及紅外等,。采用紅外技術(shù)應(yīng)用于傳感器裝置上的缺陷是:要求傳輸雙方必須在可見范圍內(nèi)而且是定向傳輸,,中間不能有障礙物否則會(huì)影響數(shù)據(jù)傳輸質(zhì)量。而其他無(wú)線技術(shù)的主要問題是開發(fā)成本過高,,適用面較窄,。
  ZigBee是一種短距離、架構(gòu)簡(jiǎn)單,、低功耗和低傳輸速率的無(wú)線通信技術(shù),,工作頻率為2.4 GHz免費(fèi)頻段,其傳輸距離一般在幾十米范圍內(nèi),,數(shù)據(jù)傳輸速率為250 Kb/s,。ZigBee可以基于協(xié)議棧組成網(wǎng)絡(luò)實(shí)現(xiàn)各個(gè)節(jié)點(diǎn)的數(shù)據(jù)傳輸,并采用了碰撞避免機(jī)制,信息在整個(gè)ZigBee網(wǎng)絡(luò)中通過自動(dòng)路由的方式進(jìn)行傳輸,,保證了信息的安全性,。Zigee技術(shù)既解決了傳輸?shù)目煽啃詥栴},又因?yàn)槠鋫鬏敼牡?,傳輸采用免費(fèi)頻段等因素,,使其降低了成本[1]。
1 系統(tǒng)方案
  當(dāng)系統(tǒng)組成1個(gè)ZigBee網(wǎng)絡(luò)時(shí),,根據(jù)實(shí)際情況來確定網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),。網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)關(guān)系到網(wǎng)絡(luò)成本、網(wǎng)絡(luò)維護(hù)的難易,、網(wǎng)絡(luò)可靠性以及網(wǎng)絡(luò)穩(wěn)定性,。ZigBee基本的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)有如下幾種:星型網(wǎng)絡(luò)、樹型網(wǎng)絡(luò)以及網(wǎng)型網(wǎng)絡(luò)[1-3],。網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖1所示,。


  網(wǎng)絡(luò)中存在3種類型的節(jié)點(diǎn):子節(jié)點(diǎn)(RFD)、路由節(jié)點(diǎn)(FFD),、主節(jié)點(diǎn)(COORDINATOR),。子節(jié)點(diǎn)與傳感器連接,散布在現(xiàn)場(chǎng)中,,主要作用是采集信號(hào)并傳輸,;路由節(jié)點(diǎn)的作用是擴(kuò)展網(wǎng)絡(luò)深度與廣度,星型網(wǎng)絡(luò)中若對(duì)網(wǎng)絡(luò)深度廣度要求不高,,可以省略路由節(jié)點(diǎn),;主節(jié)點(diǎn)與上位監(jiān)控PC機(jī)連接,主要作用是建立網(wǎng)絡(luò),,處理各個(gè)子節(jié)點(diǎn)及路由節(jié)點(diǎn)發(fā)送的信息,,相當(dāng)于有線網(wǎng)絡(luò)中的服務(wù)器[2-3]。
  本文采用了星型拓?fù)浣Y(jié)構(gòu)設(shè)計(jì)了一種基于無(wú)線ZigBee技術(shù)的溫度系統(tǒng),,系統(tǒng)總體方案框圖如圖2所示,。


  系統(tǒng)的工作過程為:主節(jié)點(diǎn)先建立網(wǎng)絡(luò),等待各自節(jié)點(diǎn)的加入,;子節(jié)點(diǎn)加入網(wǎng)絡(luò)后,,把溫度傳感器采集到的溫度數(shù)據(jù)打包并攜帶自己的地址通過無(wú)線形式傳輸給主節(jié)點(diǎn);主節(jié)點(diǎn)接收到數(shù)據(jù)包后進(jìn)行數(shù)據(jù)處理,,并將溫度信息以及子節(jié)點(diǎn)地址等有效信息存儲(chǔ)并顯示在監(jiān)控界面上,。
2 硬件設(shè)計(jì)
  系統(tǒng)采用Chipcon公司的CC2430芯片,CC2430是一款片上系統(tǒng)芯片,,內(nèi)部帶有豐富的系統(tǒng)資源,,只需要很少的外圍部件就能實(shí)現(xiàn)接收或發(fā)送信號(hào)功能[2,,4]。系統(tǒng)的傳感器采用DS18B20型溫度傳感器,。DS18B20數(shù)字溫度傳感器是DALLAS公司生產(chǎn)的1-Wire,,即單總線器件,具有線路簡(jiǎn)單,,體積小的特點(diǎn)[5],。系統(tǒng)的硬件電路圖如圖3、圖4所示,。


    圖3所示是由CC2430芯片及一些外圍器件組成的ZigBee節(jié)點(diǎn)的典型電路,,子節(jié)點(diǎn)與主節(jié)點(diǎn)均采用了這種電路結(jié)構(gòu)。主節(jié)點(diǎn)是由CC2430電路和1個(gè)MAX3232接口電路組成,,MAX3232接口電路是為了實(shí)現(xiàn)主節(jié)點(diǎn)與上位監(jiān)控PC機(jī)之間的通信,;子節(jié)點(diǎn)是由CC2430電路和DS18B20溫度傳感器組成,實(shí)現(xiàn)各點(diǎn)溫度的采集,;由于本采集系統(tǒng)工作的范圍不大,,所以沒有設(shè)計(jì)路由節(jié)點(diǎn)。ZigBee節(jié)點(diǎn)的實(shí)物圖如圖5所示,,中間為CC2430,,前端為一個(gè)PCB天線。


3 軟件設(shè)計(jì)
    系統(tǒng)中的主節(jié)點(diǎn)和子節(jié)點(diǎn)在硬件結(jié)構(gòu)上差異并不大,,主要是通過程序的編寫實(shí)現(xiàn)主子節(jié)點(diǎn)各自不同的功能,。程序主要分為主節(jié)點(diǎn)程序和子節(jié)點(diǎn)程序。主節(jié)點(diǎn)首先形成網(wǎng)絡(luò)等待各個(gè)子節(jié)點(diǎn)的加入,,網(wǎng)絡(luò)形成后接收來自各子節(jié)點(diǎn)的數(shù)據(jù)并加以處理,,再與上位PC機(jī)進(jìn)行通信,;子節(jié)點(diǎn)上電后尋找可加入的網(wǎng)絡(luò),,成功加入后開始采集溫度,并將溫度信息以及自身網(wǎng)絡(luò)地址打包并通過無(wú)線形式傳給主節(jié)點(diǎn),,實(shí)現(xiàn)星型無(wú)線網(wǎng)絡(luò)的功能,。部分重要程序段如下,并對(duì)無(wú)線網(wǎng)絡(luò)的形成及數(shù)據(jù)傳輸?shù)裙δ軐?shí)現(xiàn)加以解釋說明,。
  # ifdef COORDINATOR    //若節(jié)點(diǎn)定義為COORDINATOR
  aplFormNetwork(),;               //格式化1個(gè)新網(wǎng)絡(luò)
  while(apsBusy()){apsFSM();}               //延時(shí)等待
  conPrintROMString(“Network formed,,waiting for RX\n”),;
  Print(“Network formed!”);           //顯示網(wǎng)絡(luò)形成
  Print(“ZigBee COORDINATOR”),;
  Print(“Waiting for nodes”)
  # else    //若不是COORDINATOR則認(rèn)為是RFD節(jié)點(diǎn)
  do
  {aplJoinNEtwork(),;                  //加入網(wǎng)絡(luò)函數(shù)
    While(apsBusy()) {apsFSM(),;}         //等待加入網(wǎng)絡(luò)
    if(aplGetStatus()==STATUS_SUCCESS)
    {
      conPrintROMString(“Network Join succeeded!/n”);
      conPrintROMString(“My ShortAddress is:”),;
      conPrintUINT16(aplGetMyShortAddress()),;
                                   //串口輸出網(wǎng)絡(luò)地址
      conPrintLADDR(aplGetParentLongAddress());
                                   //串口輸出物理地址
        }
        else
        {
        conPrintROMString(“Network Join Failed!Waiting,, then try again”),;
        }
        # endif
        # ifdef RFD                       //子節(jié)點(diǎn)函數(shù)
           {
   dstADDR.saddr=0;
                                             //RFD發(fā)送數(shù)據(jù)的目的地址為網(wǎng)絡(luò)主節(jié)點(diǎn)
   aplSendMSG(APS_DSTMODE_SHORT,,
   &dstADDR,,                             //目的地址
       &payload[0],                             //數(shù)據(jù)存儲(chǔ)區(qū)
       apsGenTSN(),,
       FALSE),;                          //無(wú)需APS層應(yīng)答
       }
       #endif
  通過比較ZigBee以及其他幾種無(wú)線傳輸方式的優(yōu)缺點(diǎn),本文提出了基于ZigBee技術(shù)的無(wú)線溫度采集系統(tǒng)的整體方案,,并設(shè)計(jì)實(shí)現(xiàn)了系統(tǒng)的硬件電路及相應(yīng)程序,。系統(tǒng)運(yùn)行穩(wěn)定,數(shù)據(jù)傳輸準(zhǔn)確性高,,能夠達(dá)到預(yù)期所設(shè)想的目標(biāo),。
參考文獻(xiàn)
[1] IEEE 802.15.4 standard specification, standards. IEEE. org/getieee802/.
[2] 李文仲,,段朝玉.ZigBee無(wú)線網(wǎng)絡(luò)技入門與實(shí)踐[M].北京:北京航空航天出版社,,2007.
[3] 夏蕓.CC1010芯片在無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)計(jì)中的應(yīng)用[J].計(jì)算機(jī)與自動(dòng)化技術(shù),2005,,31(5).
[4] Chipcon Products from Texas Instruments. CC2430 Datasheet.
[5] DS18B20 Programmable Resolution Wire Digital Termometer. www. dalsemi. com.

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