在糧庫溫控系統、冷庫溫控系統、智能化建筑控制系統、中央空調系統等眾多應用系統中,都需要多點分布式溫度測量系統。傳統的多點分布式溫度測量系統多采用有線傳輸方式,需要在現場進行大量布線,這給系統的布設、維護和更新升級帶來諸多不便。本文設計的倉庫溫度監控系統采用ZigBee技術的無線通信網絡來對倉庫各點溫度進行連續24 h的監控,從而使管理者可以在控制室隨時了解倉庫現場的溫度信息。 1 ZigBee無線網絡 ZigBee是一種新興的短距離、低速率無線網絡技術,它是一種介于無線標記和藍牙之間的無線技術方案。ZigBee的基礎是IEEE 802. 15.4,它規定了ZigBee的物理層和媒體接人控制層。ZigBee的工作頻段分別為868 MHz、915 MHz、2.4GHz三個頻段,其中頻段868 MHz定義了1個頻道:頻段915 MHz定義了 10個頻道;頻段2.4 GHz定義了16個頻道。ZigBee技術采用CSMA-CA的信道接入方式,可有效避免通信的沖突。ZigBee網絡層協議由ZigBee聯盟制定,其設備可以構造成星型網絡或點對點的網絡,連接地址分為16位短地址和64位長地址。因而具有較大網絡容量。它的應用層可根據用戶的需要進行開發利用。其ZigBee協議棧結構如圖l所示。 ZigBee技術具備強大的設備聯網功能,它支持星型結構、網狀結構和樹形結構等三種主要的自組織無線網絡類型。特別是網狀結構,它具有很強的網絡健壯性和系統可靠性。本設計就是采用樹形結構來擴大通信區域。 2 分布式溫度采集系統原理 本系統由三類節點組成:ZigBee協調器節點、路由器節點、傳感器節點。圖2所示是其組成示意圖,其中ZigBee協調器是分布式處理中心,即匯聚節點。多個傳感器節點置于不同的監測區域,每個傳感器節點會先把數據傳給匯聚節點,然后匯聚節點把數據通過串口傳給上位機做進一步處理并顯示給用戶。協調器節點可以與多個傳感器節點通信,這樣可以使本系統同時監測多個區域,何時檢測哪個區域通常由用戶通過協調器節點來控制。當被檢測區域的障礙物較多或者協調器節點距離傳感器節點較遠時,可以通過增加路由器節點來增強網絡的穩定性。當用戶沒有數據請求時,傳感器節點只進行低功耗的信道掃描。 3 節點的硬件設計 3.1 ZigBee無線收發器CC2430 無線模塊可選用無線收發器CC2430來實現。CC2430是挪威Chipcon公司的一款真正符合IEEE802.15.4標準的片上ZigBee產品。CC2430采 用Chipcon公司最新的SmaitRF03技術和0.18μmCMOS工藝制造,采用7×7 mm QLP48封裝。該芯片除了包括RF收發器外,還集成了加強型805lMCU、32/64/128 KB的Flash內存、8 KB的RAM、ADC、DMA和看門狗等。CC2430工作在2.4GHz頻段,采用低電壓(2.O~3.6 V)供電,且功耗很低(接收數據時為27 mA,發送數據時為25 mA)、靈敏度高(-97 dBm)、最大輸出為24dBm、最大傳送速率為250 kb/s。CC2430的外圍元件數目很少,它使用非平衡天線,因為連接非平衡變壓器可使天線性能更好。CC2430無線單片機在待機時的電流消耗僅0.2μA,在32 kHz晶體時鐘下運行時的電流消耗小于1 μA。因此,使用小型電池壽命可以長達10年。 3.2 ZigBee協調器節點的硬件設計 ZigBee協調器節點硬件設計如圖3所示,該節點由無線收發器CC2430、射頻天線RF、電源模塊、晶振電路和串口電路組成。RF的輸入/輸出是高阻和差動的,用于RF口最合適的差動負載是(115+j180)Ω。當使用不平衡天線(例如單極天線)時,為了優化性能,應當使用不平衡變壓器。不平衡變壓器可以運行在使用低成本的單獨電感器和電容器的場合。電源模塊用于CC2430的數字I/O和部分模擬I/O的供電,供電電壓為2.0~3.6 V。CC2430可以同時接32 MHz和32.768kHz的兩種頻率的晶振電路,以滿足不同的要求。串口電路用于CC2430將接收到的數據傳送給上位工控機,由于上位工控機與CC2430的電平不一致,所以需要一個MAX232電平轉換電路。 3.3 路由器節點的硬件設計 路由器節點的主要任務是將不同區域的數據從傳感器節點路由到協調器節點,因此,該電路比較簡單,該節點由無線收發器CC2430、射頻天線RF、電源模塊和晶振電路組成。 3.4 傳感器節點的硬件設計 傳感器節點和硬件設計如圖4所示,該節點由無線收發器CC2430、射頻天線RF、電源模塊、晶振電路和串口電路組成。電路中DSl8820與CC2430的連接非常簡單,僅需一根接口線,接口十分方便。由于每片DSl8820均有唯一的產品序列號,所以允許在單總線上掛接數十至上百片數字式傳感器,并可以非常方便地構成多路溫度測量系統。DSl8820內部有9個字節的暫存器,開始最高有效位元(Most Significant Bit,MSB)和最低有效位元(Least Significant Bit,LsB)這2個單元可存放當前的溫度值,以16位補碼形式表示12位溫度讀數,高位是溫度值的符號位。當CC2430發出溫度轉換命令后,DSl8820將測得的溫度值保存在MSB(高8位)、LSB(低8位1 2個單元中,以供CC2430讀取。 4 系統軟件設計 本系統所用的開發環境是IAR7,采用的協議棧為TI的Z-STACK。由于本系統采用樹形結構,所以,ZigBee協調器必須知道每個傳感器節點的網絡地址,這就需要每個傳感器在加入網絡后,都要把網絡地址發送給協調器,協調器收到傳感器的網絡地址后,便可建立地址表并存儲起來,以便用戶要求采集溫度數據時,依據地址表來采集每個傳感器的數據。圖5所示是其程序流程圖,圖中的左邊是協調器節點的軟件設計程序流程圖,右邊是傳感器節點的軟件設計程序流程圖。 5 結束語 基于ZigBee技術的溫度采集系統可同時對多個區域進行監測,而且開發成本較低、性價比高,安裝維護簡單,且只需安裝二次就可以進行長期的監測工作,因而具有傳統溫度監測系統所不具備的優勢,能較好地解決傳統溫度監測系統中存在的布線、搬遷等問題。非常適用于環境的監測應用。 |