閆傳平 王 斌 吳 昊 黃家鵬
[摘要]設計以CC2510無線單片機構架的星狀拓撲無線網絡為網絡基礎,以多個DS18B20數字溫度傳感器終端節點構成的無線溫度采集系統。簡要介紹CC2510、DS18B20的功能特點,并詳細介紹溫度采集系統的軟硬件設計。該系統有多個終端節點、一個數據中心和一臺電腦組成,單獨工作的終端節點能夠連續多點測溫,并且通過顯示電路顯示顯示,整個系統,通過傳感器的編號對應相應的位置實現區域的溫度的實時自動監控,且能夠通過串口連接到電腦進行操作,具有高精度,自動化,多功能,高度的可擴展性以及低功耗等特點。
[關鍵詞]星狀拓撲 無線 CC2510 DS18B20 低功耗
中圖分類號:TN99文獻標識碼:A文章編號:1671-7597(2009)0920053-02
一、引言
無線溫度采集網絡系統多個網絡終端節點組成,每個終端節點由CC2510無線單片機[1]外接DS18B20一線式數字溫度傳感器和一個3位八段數碼管顯示電路組成。節點由電池供電,并且可以通過外部中斷觸發,使其工作于低功耗模式。每一個DSl8B20包括一個唯一的64位長的序號,通過對序列號與地址的對應關系,就可以獲取某地的實時的溫度情況,最后由一個終結點傳輸到電腦,實現區域的溫度實時監控。節點可以配合終結點使用,也可以單獨使用,用于測試該點的溫度。
二、系統硬件電路
系統硬件由連接到多個數據終端的星形無線傳感器網絡合一個數據中心節點[2,3]以及電腦終端構成。每個數據終端則包括了天線、顯示電路等。
(一)整體框圖
無線溫度采集網絡系統的結構如圖1,主要把包括射頻天線、鍵控開關、顯示模塊、DS18B20溫度傳感器、CC2510終結點以及終端的串口通信程序。圖中所畫的基本模型為兩個終端節點和一個數據中心節點與電腦的通信,無線信道采用星形拓撲結構,工作于2.4GHz免費頻段。

(二)單片機
系統選用CC2510無線單片機。其連接圖見圖2。CC2510是由Chipcon公司開發的內嵌51內核的單片可編程UHF收發器芯片,它還內嵌32kB的Flash存儲器、4kB的SRAM,以及8通道8-14bitA/D轉換器、1個16位定時器和3個8位定時器、2個UART/SPI、RTC、看門狗電路、DES編碼和21個通用I/O。芯片的高度集成結構使其具有高速度、高靈敏度性、低功耗、低成本、集成單片機和位判決、同步、頻率靈活性等特點。本電路采用9V電池供電,以方便外圍芯片的供電。再有LM1117轉換成3.3V和5V的直流電源。并帶有外設接口,可以方便的進行硬件的升級,以及添加多種傳感器。

(三)溫度傳感器

本系統采用了一線式數字溫度傳感器DS18B20。與傳統的熱敏電阻相比,它能夠直接讀出被測溫度并且可根據實際要求通過簡單的編程實現9~12位的數字值讀數方式,可以分別在93.75ms和750ms內完成9位和12位的數字量,并且從DS18B20讀出的信息或寫入DS18B20的信息僅需要一根口線(單線接口)讀寫,溫度變換功率來源于數據總線,總線本身也可以向所掛接的DS18B20供電,而無需額外電源。因而使用DS18B20可使系統結構更趨簡單,可靠性更高。它在測溫精度、轉換時間、傳輸距離、分辨率等方面較DS1820有了很大的改進,給用戶帶來了更方便的使用和更令人滿意的效果。它有獨特的單線接口方式:DS18B20與微處理器連接時僅需要一條口線即可實現微處理器DS18B20的雙向通訊。在使用中不需要任何外圍元件。可用數據線供電,電壓范圍:+3.0V~+5.5V。測溫范圍:-55℃~+125℃。通過編程可實現9~12位的數字讀數方式。用戶可自設定非易失性的報警上下限值。支持多點組網功能,多個DS18B20可以并聯在惟一的三線上,實現多點測溫。負壓特性,電源極性接反時,溫度計不會因發熱而燒毀,但不能正常工作。
(四)顯示電路
八段數碼管和鍵控開關是進行人機交互的重要手段。八段數碼管的功耗很低,比較適合電池供電的而應用場合。通過它們,數據可以顯示無線單片機的工作狀態,并且使得每個終端節點可以在當地即可讀取溫度值,增加了數據終端節點的功能。由于CC2510的GPIO口較少,我們只采用了兩個鍵控開關,直接與GPIO口相連,通過查詢方式獲得數據。

(五)系統終結點
系統數據中心節點由一個基本的終端節點電路和串口電平轉換電路構成。數據中心節點直接與電腦串口相連,通過電腦的串口可以方便的接收來自于各個節點的溫度數據。本系統選擇波特率為57600bps,通過特定的幀格式識別數據。將溫度與傳感器編號一一對應,通過查找事先存儲在電腦上的地名與傳感器編號的匹配,更新各地的溫度情況,然后在圖中顯示出來。對于超過臨界值的溫度地點,給予紅色警報提示,提醒管理員做適當操作。
三、系統軟件設計

整個系統軟件設計分為三部分,第一部分是單片機的軟件設計主要由溫度采集、低功耗設計、LED顯示、無線數據發送組成。第二部分由低功耗設計、無線數據接收和串口通信模塊組成。第三部分是電腦的串口編程,主要完成數據的識別,傳感器編碼與地址的匹配,以及溫度信號的處理、存儲等功能。
(一)溫度采集
該系統采用DS18B20溫度傳感器,可提供最高12位數據,轉換精度可達0.0625℃,測溫范圍-55℃~+125℃。每次測溫前,必須先對其進行初始化,由于是一線式的,因此要求非常精確的時延。溫度的讀寫是按位讀取的。本系統選擇12為數據。首先編寫初始化程序,其次是按位寫子程序與按位讀程序。然后通過調用按位寫程序寫入控制字,開始測試溫度,并將結果存入寄存器,再調用按位讀程序,逐個讀出溫度。最后通過把個個位的數據組成長整形的數據,以便一次性轉換為浮點型數據,方便讀出十位,個位以及十分位的數據,一邊傳送。
值得注意的是,一定要計算時每個延時程序的精確的調用時間,包括程序調用自身所用的時間,最好每個時延都用示波器測試一下,看是否符合要求。
(二)LED顯示
LED顯示部分主要是顯示其編碼號和實時溫度。要實現LED的正常顯示至少需要下面幾個重要步驟:選擇LED驅動模式、制定相應驅動模式下LED的BCD碼顯示存儲表、設置LED時鐘、設置通用I/O端口屬性和更新LED顯示緩存區。本系統選擇靜態LED驅動模式,制定了0~F的BCD碼顯示存儲表,采用1024Hz的時鐘頻率,設置通用I/O口屬性為輸出,根據不同功能實時更新LED顯示緩存區的內容。
(三)無線收發
CC2510使用的2.4GHz的免費無線網絡資源,不會給系統帶來額外的開銷。通過調用射頻初始化程序,設定頻率,然后向無線發送數據寄存器按位寫入數據,逐位發送數據。接收端則通過判斷接收寄存器指示為判斷是否有數據寫入,如有則讀出,并將指示位置位。這樣就完成了數據的逐為傳輸。
四、結束語
本網絡系統實現了溫度的遠程無線實時監控,并且可以在節點處顯示實時溫度,在同類產品中還從未出現過類似功能。用星形網絡拓撲,使組網更加方便,結構簡單,線路清晰。同時,本系統工作穩定,精度高,并且方便擴展,通過外接不同的擴展板就可以實現多種的物理參數的監控,可用于溫室大棚溫度濕度監控以及多種工業控制,且成本低廉。通過無線網絡使節點設置更加方便靈活,且帶有節能模式[4],可低功耗運行,延長了一次性的使用時間。且CC2510有多種組網方式,靈活方便,可隨時增加或者減少節點而對系統無任何影響,可實現動態的節點分布測量。
參考文獻:
[1]李文仲、段朝玉等,cc1110/cc2510無線單片機和無線自組織網絡入門與實踐[M].北京航空航天大學出版社,2008.
[2]基于CC2431的無線傳感器網絡節點的設計[J].中國期刊全文數據庫,2008.
[3]無線傳感器網絡中目標定位的節點選擇策略[J].中國期刊全文數據庫,2009.
[4]無線傳感器網絡SMAC協議的節能改進[J].中國期刊全文數據庫,2008.
作者簡介:
閆傳平(1987-),男,漢族,2006級本科生,主要研究方向:現代通信技術。