《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 測試測量 > 設(shè)計應(yīng)用 > 便攜式多點溫度同步采集系統(tǒng)設(shè)計
便攜式多點溫度同步采集系統(tǒng)設(shè)計
摘要: 以嵌入式ARM處理器STM32F103VC為核心,,結(jié)合無線通信和溫度檢測技術(shù),,設(shè)計了一套多點溫度同步采集系統(tǒng),。系統(tǒng)可根據(jù)設(shè)定的采集模式對多點溫度進行同步采集,,并將時間信息及溫度數(shù)據(jù)存入SD卡,用戶可將SD卡內(nèi)數(shù)據(jù)本機回放,,也可讀入上位機進行分析,、存儲等。系統(tǒng)功耗極低,,采用電池供電,,采集過程無需人工干預(yù),也可適用于野外溫度數(shù)據(jù)的采集與存儲,。給出了硬件組成與軟件編制方法,。實驗表明,系統(tǒng)溫度檢測精確,,同步精度高,,稍作修改即可實現(xiàn)對其它信號的同步采集。
Abstract:
Key words :


摘要:以嵌入式ARM處理器STM32F103VC為核心,,結(jié)合無線通信和溫度檢測技術(shù),,設(shè)計了一套多點溫度同步采集系統(tǒng),。系統(tǒng)可根據(jù)設(shè)定的采集模式對多點溫度進行同步采集,,并將時間信息及溫度數(shù)據(jù)存入SD卡,用戶可將SD卡內(nèi)數(shù)據(jù)本機回放,,也可讀入上位機進行分析,、存儲等。系統(tǒng)功耗極低,,采用電池供電,,采集過程無需人工干預(yù),,也可適用于野外溫度數(shù)據(jù)的采集與存儲。給出了硬件組成與軟件編制方法,。實驗表明,,系統(tǒng)溫度檢測精確,同步精度高,,稍作修改即可實現(xiàn)對其它信號的同步采集,。
關(guān)鍵詞:ARM;M32F103 VC,;同步采集,;SD卡;FATFS

0 引言
    目前在工業(yè)控制及野外勘測等領(lǐng)域經(jīng)常需要同步測量不同地點的溫度參數(shù),,并進行長時間記錄,,完成后將時間同步的溫度數(shù)據(jù)載入計算機進行分析。但實現(xiàn)精度較高的時間同步一般采用有線同步技術(shù),,這樣就非常不便于應(yīng)用,。因此設(shè)計一種便攜式的、基于無線同步技術(shù)的多點溫度同步采集與存儲系統(tǒng)就顯得尤為重要,。本文給出了基于STM32F103VC微控制器和無線同步技術(shù)相結(jié)合的溫度采集系統(tǒng),,能夠根據(jù)事先設(shè)定好的模式對溫度參數(shù)進行采集,并將同步時間及溫度數(shù)據(jù)存入SD卡進行長期存儲,。系統(tǒng)采用電池供電,,特別適合不便于取市電的應(yīng)用場合。

1 硬件組成及原理
    置于不同位置的溫度采集系統(tǒng)硬件結(jié)構(gòu)上完全相同,,只是不同系統(tǒng)有唯一的ID號,,ID號可人為設(shè)置。同步采集溫度時有以下幾種啟動模式:溫度低越限,、溫度高越限,、溫度變化率越限、定時采集,。任一滿足啟動條件的系統(tǒng)都會發(fā)出無線指令,,通知其它系統(tǒng)同步啟動溫度采集。系統(tǒng)由微控制器模塊,、電源模塊,、人機接口、無線通信模塊,、SD卡組成,,總體結(jié)構(gòu)如圖1所示。下面就重要部分進行分別介紹,。

a.jpg


1.1 微控制器模塊
    本系統(tǒng)的主控制器采用STM32F103VC處理器,,與電源電路,、時鐘電路、存儲器系統(tǒng)及復(fù)位電路共同組成微控制系統(tǒng),。復(fù)位電路選用了系統(tǒng)監(jiān)視復(fù)位芯片IMP811S,,可提供高效的電源監(jiān)視功能,確保系統(tǒng)工作正常,。
    STM32F103VC采用ARM公司的高性能“Cortex—M3”內(nèi)核,。運行的頻率高達72 MHz,指令速度達1.25 DMipa/MHz,。在此基礎(chǔ)上還擴展了一系列完整的通用外圍接口單元,,能夠提供高性價比的嵌入式解決方案。STM32F103VC系統(tǒng)外圍接口單元主要包括支持60個中斷源的中斷控制器,,2個DMA控制器,,80個通用I/O口,1個SD卡接口,,3個可編程波特率的UART,,16路12位A/D轉(zhuǎn)換器,SD卡接口,,2個多主機I2C總線控制器,,3個SPI接口等。
1.2 無線通信接口
    本設(shè)計各采集系統(tǒng)之間的無線同步采集采用單片射頻收發(fā)芯片NRF24L01,,該芯片是真正的GFSK單收發(fā)芯片,,內(nèi)置鏈路層,支持自動應(yīng)答及自動重發(fā)功能,,帶有地址及CRC檢驗功能,,數(shù)據(jù)傳輸率最高達2 Mbps,采用SPI接口進行數(shù)據(jù)傳輸,,速率最高位8 Mbps,。基于NRF24L01芯片的無線通信接口電路見圖2,,該種方式下,,若采用阻抗匹配的天線,無線傳輸距離可達150 m,,完全滿足常規(guī)采集需求,。

b.jpg


    圖2中,NRF24L01的SPI總線直接與STM32F103VC的SPl0接口相連,,TX/RX選擇端CE和片選CSN與STM32F103VC的GPIO相連即可,,中斷口IRQ連接于STM32F103VC的外部中斷0,以提供中斷信號,。
1.3 人機接口與信息存儲
    為了便于模式設(shè)置和參數(shù)顯示,,系統(tǒng)加入了矩陣鍵盤和LCD顯示器。矩陣鍵盤直接與STM32F103VC的GPIO相連,,采用掃描方式進行按鍵檢測,。顯示器選用LM9033四級灰度LCD模塊,該模塊功耗極低,,帶有電源控制,,特別適用于電池供電的系統(tǒng)。LM9033可采用并口或SPI接口方式,,這里直接將其連接于STM32F103VC的SPI1接口,。為了能夠?qū)r間信息及溫度數(shù)據(jù)進行長時間存儲,系統(tǒng)加入了SD卡存儲裝置,。由于STM32 F103VC芯片本身帶有SD卡接口,,因此只需將SD卡座與STM32F103VC的SD卡接口直接相連即可實現(xiàn)數(shù)據(jù)讀寫。
1.4 溫度檢測電路
    溫度檢測采用熱電阻傳感器PT1000,,信號調(diào)理電路如圖3所示,。圖3中,PTl000與電阻R1,、R2和Rt1組成電橋,,調(diào)節(jié)電阻Rt1即可調(diào)零。由于信號較弱,,所以后端采用A1和A2進行兩級放大,,放大器選用零漂移、軌對軌輸出的集成運放LTC2051,,該芯片內(nèi)部集成兩個獨立運放,,一片即可滿足本系統(tǒng)需求,采用單電源供電,。通過調(diào)節(jié)電阻Rt2即可實現(xiàn)量程的調(diào)節(jié),。因為溫度變化比較緩慢,所以采用R9和C1組成一階低通濾波電路,,濾除由電源噪聲等引起的干擾,,以提高測量精度。運放的輸出直接與STM32F103VC的內(nèi)置A/D轉(zhuǎn)換器相連,。

c.jpg



2 系統(tǒng)軟件設(shè)計
    在溫度同步采集系統(tǒng)中,,STM32F103VC完成無線通信、溫度檢測,、參數(shù)輸入與顯示,、SD卡讀寫等功能。整個系統(tǒng)軟件部分包括主程序,、人機接口程序,、無線通信程序,、SD卡讀寫程序、文件系統(tǒng)程序,、溫度計算程序,、實時時間讀取、自診斷等功能模塊,。由于軟件較復(fù)雜,,所以實際編程中嵌入了μC/OS-Ⅱ實時操作系統(tǒng)
2.1 μC/OS-Ⅱ?qū)崟r操作系統(tǒng)
    μC/OS-Ⅱ?qū)崟r操作系統(tǒng)是真正源碼公開的,,采用占先式的實時內(nèi)核,,支持多達56個用戶任務(wù),穩(wěn)定性和可靠性高,,而且移植方便,,占用內(nèi)存小。μC/OS-Ⅱ?qū)崟r操作系統(tǒng)中各任務(wù)要分配不同的優(yōu)先級,,優(yōu)先級用數(shù)字表示,,數(shù)字越小其優(yōu)先級越高。針對本系統(tǒng)中各任務(wù)的重要性,,為各任務(wù)分配了表1所示的優(yōu)先級,。

d.jpg


2.2 無線通信程序
    無線通信程序主要完成基于NRF24L01的數(shù)據(jù)發(fā)送和接收,要嚴(yán)格遵守其發(fā)送及接收時序,。由于溫度采集時每個系統(tǒng)都可能成為發(fā)出同步啟動信號的主機,,因此采集前NRF24L01都配置為接受模式。若某個系統(tǒng)檢測到已滿足啟動條件,,則自動配置為發(fā)送模式,,將同步啟動信號發(fā)送給其它系統(tǒng),于是同步采集開始,。將NRF24L01配置為增強型ShockBurst模式并啟動自動應(yīng)答,,這樣可以在接收方接收到信號后自動產(chǎn)生應(yīng)答以確認通信的正確性,發(fā)送方未收到應(yīng)答則會自動重發(fā),,無需增加控制器的工作量,。
2.3 SD卡讀寫程序
    本系統(tǒng)SD卡采用了FatFS文件系統(tǒng)以方便將SD卡內(nèi)的數(shù)據(jù)通過讀卡器導(dǎo)入到上位計算機。FatFS是一種通用的文件系統(tǒng)模塊,,在小型嵌入式系統(tǒng)中實現(xiàn)FAT文件系統(tǒng),。FatFS文件系統(tǒng)使用非常方便,因為FatFS模塊完全與磁盤I/O層分開,,因此只需要改寫對應(yīng)的函數(shù)來實現(xiàn)底層物理磁盤的讀寫與獲取當(dāng)前時間即可,。本設(shè)計中應(yīng)用到這幾個函數(shù):disk_initialize用來初始化磁盤驅(qū)動器,這里初始化SD卡;disk_read用來讀SD卡扇區(qū),;disk_write用來寫SD卡扇區(qū),;disk_ioctl用來控制與設(shè)備相關(guān)的特性;get_fattime用來獲取當(dāng)前時間,,為文件加蓋時間戳,。時間的獲取采用讀STM32內(nèi)部RTC的方式實現(xiàn),,為此,,要在RTC的備用電池引腳接3V的紐扣電池,以實現(xiàn)掉電后的時間維持,。

3 實驗參數(shù)
    實驗表明,,NRF24L01芯片在2 Mbit/s的傳輸速率下,若SPI總線速率控制為4 Mbit/s,,則主機發(fā)送從機地址與一個字節(jié)數(shù)據(jù)需要90μs左右的時間延遲,,因此無線同步采集的時問誤差可控制在90μs。若主機發(fā)送完同步信號后延遲90μs再啟動采樣,,則同步采集的時間誤差可控制在10μs內(nèi),,可滿足絕大部分同步采集的需要。經(jīng)測試,,只加板載天線時無線傳輸距離在空曠地可達50 m,,若使用專用天線,則無線傳輸距離可達150 m,,適用于多種測量領(lǐng)域,。

4 結(jié)束語
    本文所設(shè)計的溫度同步采集系統(tǒng)具有成本低、精度高及可靠性高,、通信距離遠,、存儲容量大等優(yōu)點,調(diào)節(jié)電位器即可實現(xiàn)溫度量程的調(diào)節(jié),,既適用常溫范圍測量,,又適用于工業(yè)溫度范圍測量。同步采集后的數(shù)據(jù)很容易在計算機中進行分析,、處理及打印等,。將溫度調(diào)理電路做少量修改即可實現(xiàn)對壓力、濕度等其它物理量的同步采集,,因此應(yīng)用領(lǐng)域廣泛,。

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