張洪華
(長沙理工大學(xué)電氣與信息工程學(xué)院,湖南長沙 410010)
硬件平臺(tái)處理器采用Cortex-M3內(nèi)核芯片STM32F107RBT7,該芯片具有豐富資源,集成CAN總線控制器和USB OTG控制器等多種外設(shè)。并且其低成本、超低功耗的特性使得其非常適合于手持設(shè)備的應(yīng)用。外圍擴(kuò)展數(shù)據(jù)采集模塊、鍵盤與液晶顯示器、幾種通信接口、SD卡與U盤接口。因此,采集的溫度數(shù)據(jù)可以能過LCM實(shí)時(shí)顯示,也可以通過SD卡和USB接口以文件形式存儲(chǔ)到SD卡或U盤等移動(dòng)存儲(chǔ)介質(zhì),或通過RS232接口、USB接口、無線模塊和CAN總線接口傳輸?shù)絇C端上位機(jī)作更一步的數(shù)據(jù)分析與智能控制。
本溫度測試儀主要支持兩種類型的溫度傳感器,熱電阻與熱電偶。
考慮到熱電阻的種類的差異性,對于熱電阻,本測試儀固定使用一種型號的熱電阻Pt100,因?yàn)槠渚€性度高,精度大,所以作為主測溫傳感器。Pt100是一種鉑電阻溫度傳感器,具有精度高,穩(wěn)定性好,溫度感應(yīng)范圍廣等特點(diǎn),是一種在中低溫區(qū)(-200℃~650℃)使用最廣泛的溫度傳感器。此外,鉑電阻傳感器還具有很好的長期穩(wěn)定性,同等精度的溫度傳感器中,成本相對較低,被廣泛應(yīng)用于工業(yè)測溫與計(jì)量和校準(zhǔn)的各種溫度測試設(shè)備中。
熱電偶是另一種溫度傳感器,與熱電阻不同的是其溫度與熱電勢關(guān)系并非線性,并且還需要對冷端溫度進(jìn)行補(bǔ)償。在使用熱電偶測試溫度時(shí),主要測得熱電勢冷端溫度兩個(gè)值,再根據(jù)用戶設(shè)置的熱電偶類型查找對應(yīng)的分度表來獲取溫度值。
熱電偶冷端溫度由芯片MAX6610提供,MAX6610是高精度、低功耗模擬溫度傳感器,帶有高精度電壓基準(zhǔn),其低溫漂基準(zhǔn)典型值為±10ppm。在排除手持測試儀上人體體溫影響后,直接測得環(huán)境溫度,作為冷端補(bǔ)償溫度和環(huán)境參考溫度使用,同時(shí)也為本測試儀AD轉(zhuǎn)換器提供參考電壓。
在使用時(shí)應(yīng)根據(jù)實(shí)際情況選擇溫度傳感器,因?yàn)閮煞N傳感器有各自的適用環(huán)境,熱電偶常用在高溫區(qū)(300度以上),熱電阻在低溫區(qū)。熱電阻測量范圍小,但精度比熱電偶的高;熱電偶測溫范圍可達(dá)一千多度,溫度反應(yīng)時(shí)間要比熱電阻的快。
單聚合物鋰電池為系統(tǒng)提供穩(wěn)定可靠的電源。通過USB接口充電,充電電流管理芯片采用低成本方案TP4052,可以自行設(shè)定充電電流,并具有溫度保護(hù)功能。鋰電池內(nèi)部集成保護(hù)板,可有效防止過充過放、短路,為系統(tǒng)提供安全穩(wěn)定的電源。數(shù)據(jù)采集模塊電源采用芯片F(xiàn)0303T-1W進(jìn)行隔離,該芯片3.3V到3.3V的DC-DC電源輸出,對控制可提供3KV的直流隔離,為本測試儀提供硬件上的安全保障。
模擬數(shù)據(jù)采集是溫度測試儀最基本,也是最重要的一部分,在采集過程中會(huì)對傳感器產(chǎn)生的電信號進(jìn)行量化編碼輸出,給MCU提供可處理的數(shù)據(jù)。檢測回路將測試對象的溫度的信號量實(shí)時(shí)地采集,并經(jīng)過A/D轉(zhuǎn)換器以數(shù)字量的形式送入存儲(chǔ)器中,再對這些數(shù)據(jù)進(jìn)行相關(guān)的分析處理。
數(shù)據(jù)采集模塊主要芯片為TI公司生產(chǎn)的ADS1147,是一種專為溫度傳感器設(shè)計(jì)的高速高精度模數(shù)轉(zhuǎn)換器,數(shù)據(jù)輸出率高達(dá)2k SPS。因?yàn)閮?nèi)部為Σ-Δ結(jié)構(gòu),在高速采集的條件下也不需要添加復(fù)雜的外圍電路,如信號跟隨器、前級放大器等。ADS1147提供兩路差分輸入,在實(shí)際應(yīng)用中,僅使用一路差分輸入,通過濾波電路接入熱電偶,直接測試熱電偶電壓值。另一通道連接多路模擬開關(guān),使其可同時(shí)采集多路溫度信號。
74HC4052是雙四選一模擬開關(guān),支持寬輸入電壓,信號輸入通道選擇由MCU數(shù)字量控制,為增加系統(tǒng)的穩(wěn)定性,采取了AD部分與MCU隔離,所以增加了ADUM1200磁隔離芯片。電路如圖3所示,其中INA到IND為四路熱電阻信號的輸入,IN0+為ADS1147的AD轉(zhuǎn)換器單端輸入口。
對于另一通道,因?yàn)锳D轉(zhuǎn)換芯片為Σ-Δ結(jié)構(gòu),熱電偶輸入的外圍電路可以相當(dāng)簡單,通過濾波電路(未畫出)直接進(jìn)入AD轉(zhuǎn)換器的一個(gè)差分通道。AD轉(zhuǎn)換主電路如圖3所示,其中部分電源濾波電容已省。
圖3 AD轉(zhuǎn)換模塊部分電路
熱電偶測量電壓后還需要測試?yán)涠藴囟?,由溫度傳感器芯片MAX6610提供,輸入到ADS1147的通道AIN0。同時(shí),ADS1147的基準(zhǔn)電壓也由其提供。
對于數(shù)據(jù)的存儲(chǔ),存儲(chǔ)介質(zhì)可以為SD卡或U盤。溫度數(shù)據(jù)通過FATFS管理模塊將數(shù)據(jù)以二進(jìn)制文件形式保存在SD卡或U盤中,并以測試開始時(shí)間作為文件名進(jìn)行存儲(chǔ),從而達(dá)到方便管理的目的。
對于通信接口,無線通訊、CAN總線與RS232都采用ModBus數(shù)據(jù)鏈路層協(xié)議進(jìn)行通信,而USB接口則直接連接電腦后自動(dòng)更新為從機(jī)模式,達(dá)到與上位機(jī)通信的目的。無線模塊使用RF4432,中心頻率為433MHz,通過PC端無線模塊接入[2]。而CAN總線外接NXP公司生產(chǎn)的高速收發(fā)器TJA1050則可接入外部總線,從而進(jìn)行通信,CAN總線波特率設(shè)定為50Kbps。RS232接口為系統(tǒng)中最簡單接口,只將波特率設(shè)為9600bps即可連接到上位機(jī)軟件。
在生產(chǎn)的工業(yè)現(xiàn)場中,各種通信信號與輻射無處不在,會(huì)產(chǎn)生了較大的電磁干擾,元器件之間本身也會(huì)產(chǎn)生干擾信號。這些干擾信號都可能會(huì)對通信或處理器的運(yùn)行產(chǎn)生各種影響,因此必須采取相應(yīng)的抗干擾措施。整個(gè)系統(tǒng)采取的硬件抗干擾措施主要有:隔離電源系統(tǒng)模塊、電路板合理布局和布線、采用硬件看門狗。
測試儀在AD采集部分主要從兩方面增加其穩(wěn)定性與抗干擾能力,一是硬件隔離;二是軟件濾波。
針對工業(yè)生產(chǎn)這種環(huán)境相對惡劣的場合,一般都會(huì)存在高壓、大電流等干擾,所以AD采樣一般都會(huì)經(jīng)過隔離后方可輸入MCU,本測試儀采用全隔離方式來減少外界對系統(tǒng)的破壞,包括電源和AD的控制總線。
但對于小信號,在采樣的過程中可能會(huì)很有多噪聲干擾,需采用濾波的方法來抑制干擾。濾波的方式主要有硬件濾波和軟件濾波兩種,由于采用軟件濾波算法不需增加硬件設(shè)備,可靠性高,功能多樣,使用靈活,具有許多硬件濾波措施所不具備的優(yōu)點(diǎn),在設(shè)計(jì)中采用軟件濾波的方法來抑制噪聲干擾。軟件濾波的方法主要有中值濾波法、算術(shù)平均濾波法、遞推平均濾波法、中值平均濾波法、一階滯后濾波法等[3],考慮到溫度值一般相對變化較慢,傳感器受到的干擾則會(huì)以脈沖干擾為主,對比各種濾波方法的優(yōu)缺點(diǎn)及適用場合,用中值濾波法作為采集模塊的軟件濾波方法為宜。
本系統(tǒng)中值濾波法的函數(shù)功能實(shí)現(xiàn)為:
INT16U AD_Filter(INT8U ch) // ch 為采樣通道
{
循環(huán)調(diào)用采樣單個(gè)輸入通道函數(shù)Read_ADC 9次;
對9次采樣結(jié)果按從小到大的順序排序;//
求中間1/3個(gè)數(shù)據(jù)的算術(shù)平均值;
返回所得值;
}
系統(tǒng)運(yùn)行過程是:系統(tǒng)上電復(fù)位,STM32進(jìn)行時(shí)鐘設(shè)置,初始化外設(shè),讀取配置信息,顯示主界面并等待按鍵輸入。當(dāng)有按鍵后分別進(jìn)入設(shè)置模式和采集模式。采集模式中自動(dòng)循環(huán)進(jìn)行AD采集通道設(shè)置,再進(jìn)行一次采集,再切換通道采集,如果是熱電偶根據(jù)設(shè)置采集冷端溫度與查表計(jì)算溫度值,熱電阻直接計(jì)算出溫度值。一輪測試之后進(jìn)行軟件濾波,再更新顯示或保存與傳輸給外部。
除了溫度數(shù)據(jù)的實(shí)時(shí)顯示,還可以回放已存儲(chǔ)的溫度曲線,并能回顯每一時(shí)刻溫度,方便用戶進(jìn)行溫度曲線分析[4],或簡單的溫度曲線擬合,從而達(dá)到智能化要求。
測試儀的精度要求是否合格,需要通過實(shí)驗(yàn)來檢驗(yàn)其精度。測試設(shè)備為Fluke 7341恒溫槽,測試四個(gè)點(diǎn),為0℃、50℃、100℃和150℃,結(jié)果見表1。
表1 溫度測試結(jié)果分析表
由表2可知,測試儀的測溫誤差低于0.05℃,滿足實(shí)際應(yīng)用要求。
設(shè)計(jì)并實(shí)現(xiàn)了一種手持式高精度智能多路溫度測試儀,對測試儀的總體結(jié)構(gòu)進(jìn)行了描述,詳細(xì)介紹了以ADS1147為核心的采集模塊的設(shè)計(jì),還介紹了系統(tǒng)硬件設(shè)計(jì)中采取的抗干擾措施與軟件控制方法。本測試儀可以同時(shí)測試多點(diǎn)溫度,并能滿足用戶的精度要求,測試運(yùn)行表明,該系統(tǒng)精度高,能耗低,軟件使用簡單快捷,具有較高的推廣價(jià)值。
[1] 瞿濤,萬樂生. 智能儀表熱電偶毫伏-溫度高精度查表法[J]. 工業(yè)儀表與自動(dòng)化裝置, 1992
[2] 季一錦, 尹明德. 一種用于氣體濃度檢測的無線局域網(wǎng)絡(luò)系統(tǒng)的設(shè)計(jì)[J]. 江南大學(xué)學(xué)報(bào), 2005, 4(1):11-18
[3] 張輝. 淺談微機(jī)控制中的濾波方法[J]. 丹東師專學(xué)報(bào),2000, 22(82):30-31
[4] 周澤魁.控制儀表與計(jì)算機(jī)控制裝置[M].北京:化學(xué)工業(yè)出版社,2004.