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

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

(三)溫度傳感器

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

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

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