在許多傳統(tǒng)行業(yè)中,多路高精度溫度采集系統(tǒng)是不可或缺的。電廠、石化行業(yè)、鋼鐵廠以及制藥廠等企業(yè)使用了大量的各類測(cè)溫器件,如熱電阻、熱電偶等,這些器件需要定期校準(zhǔn);在嚴(yán)格執(zhí)行GMP規(guī)范的制藥廠等企業(yè),高溫滅菌箱需要定期進(jìn)行滅菌率的驗(yàn)證;在某些要求進(jìn)行嚴(yán)格的溫度控制的場(chǎng)合,也需要進(jìn)行多點(diǎn)高精度溫度測(cè)量。這些工作往往需要一個(gè)多路高精度測(cè)溫系統(tǒng)來(lái)完成。
在被測(cè)溫度變化緩慢的情況下,可以使用多路掃描開(kāi)關(guān)配以一個(gè)高精度測(cè)溫表進(jìn)行多路溫度測(cè)量以及數(shù)據(jù)采集。但在溫度測(cè)量點(diǎn)數(shù)目較多、被測(cè)溫度變化較快的場(chǎng)合,如大量熱電阻、熱電偶的自動(dòng)計(jì)量檢定系統(tǒng)以及高溫滅菌箱自動(dòng)驗(yàn)證系統(tǒng)中,傳統(tǒng)的掃描式多路溫度測(cè)量系統(tǒng)就無(wú)法滿足要求了。近年來(lái),隨著高精度A/D轉(zhuǎn)換器件價(jià)格的不斷下降以及A/D轉(zhuǎn)換器件功能的不斷完善,研制廉價(jià)的多路、快速、高精度溫度采集系統(tǒng)成為可能。
美國(guó)德州儀器公司(TEXAS INSTRUMENTS)新近推出了一種功能很強(qiáng)的帶24位A/D轉(zhuǎn)換器的微處理器MSC1210。MSC1210具有一些增強(qiáng)特性,特別適合測(cè)量高精度溫度、壓力傳感器等輸出的微弱信號(hào)。
本文介紹以MSC1210作為測(cè)量、信號(hào)處理以及通訊核心的多路高精度溫度采集系統(tǒng)模塊。該系統(tǒng)測(cè)量通道易于擴(kuò)充,溫度測(cè)量精度高,可以快速地進(jìn)行多路高精度溫度測(cè)量。
1、 多路高精度測(cè)溫系統(tǒng)框架
系統(tǒng)由主機(jī)與多個(gè)智能測(cè)溫模塊組成。模塊與主機(jī)之間通過(guò)光電隔離的SPI接口進(jìn)行通訊,使用帶有CRC糾錯(cuò)的自定義指令集控制數(shù)據(jù)傳輸,主機(jī)帶有計(jì)算機(jī)接口(RS232串口以及USB接口)。系統(tǒng)框架參見(jiàn)圖1。
智能測(cè)溫模塊由MSC1210微轉(zhuǎn)換器構(gòu)成,模塊本身具有完整的信號(hào)調(diào)理、A/D轉(zhuǎn)換、數(shù)據(jù)修正計(jì)算及變換、內(nèi)部校準(zhǔn)等功能。為了避免外部干擾對(duì)A/D轉(zhuǎn)換的影響,SPI接口使用高速光電耦合電路,并采用模塊自帶的穩(wěn)壓電路供電。由于一個(gè)模塊只能處理1~4路溫度,因此可以同步進(jìn)行多組模塊的溫度測(cè)量,大大加快了多點(diǎn)溫度測(cè)量的速度。主機(jī)用來(lái)控制測(cè)溫模塊,從測(cè)溫模塊中讀取溫度數(shù)據(jù)并處理,同時(shí)完成人機(jī)接口以及其它功能。視應(yīng)用場(chǎng)合的不同,主機(jī)可以使用多種類型的單片機(jī),這里選用ATMEL公司的ATmega128。該款CPU采用Harvard流水線結(jié)構(gòu)以及RISC指令,并具有較大程序容量(128KB)的FLASH,在16MHz主頻下可以達(dá)到16MIPS的處理速度。
2、 MSC1210的增強(qiáng)功能及使用注意事項(xiàng)
作為智能高精度測(cè)溫模塊的核心,MSC1210完成了微弱信號(hào)的多路切換、信號(hào)緩沖、PGA編程放大、24位Σ-ΔA/D轉(zhuǎn)換、數(shù)字濾波、數(shù)據(jù)處理、信號(hào)校準(zhǔn)以及SPI通訊等功能。
MSC1210集成了一個(gè)8通道24位Σ-ΔA/D轉(zhuǎn)換器,采用8051兼容內(nèi)核。與筆者之前使用的ADuC824相比,其有如下增強(qiáng)的功能:
(1)CPU工作頻率可達(dá)33MHz,每條指令只需4個(gè)時(shí)鐘周期,運(yùn)算速度較快。
(2)采用非常靈活的FLASH與SRAM存儲(chǔ)器配置,可以對(duì)片上FLASH進(jìn)行分區(qū),根據(jù)需要設(shè)定程序FLASH與數(shù)據(jù)SRAM所占的比例。讀寫(xiě)次數(shù)可達(dá)一百萬(wàn)次,數(shù)據(jù)可保存100年。
(3)片上RAM為1280B,有34個(gè)高電流驅(qū)動(dòng)I/O,可以設(shè)定外部存儲(chǔ)器的存取時(shí)間,使用雙數(shù)據(jù)指針提高存取速度,具有完善的節(jié)電功能,還有電壓監(jiān)視器、21個(gè)中斷源、3個(gè)16位定時(shí)計(jì)數(shù)器以及內(nèi)部時(shí)間間隔計(jì)數(shù)器(TIC)。
(4)自帶BOOT ROM,可以調(diào)試使用或在程序中調(diào)用內(nèi)置固化程序,完成在線調(diào)試、數(shù)據(jù)采集、UART通訊以及讀寫(xiě)FALSH等工作,方便了編程以及調(diào)試。
(5)片上24位Σ-ΔADC具有一些增強(qiáng)特性:8路輸入通道可以任意配置為單端或差分輸入;有快速、Sinc2、Sinc3 三種數(shù)字濾波,同時(shí)有自動(dòng)數(shù)字濾波功能,可以加快A/D轉(zhuǎn)換輸出;帶PGA偏置DAC,可以不引入額外誤差而擴(kuò)大測(cè)量范圍;自帶一個(gè)32位累加器,可以對(duì)ADC輸出數(shù)據(jù)作快速平均處理。
(6)自帶高精度電壓標(biāo)準(zhǔn),精度為0.2%,漂移為
5ppm/°C,可以節(jié)省空間以及器件成本,也可輸出該電壓標(biāo)準(zhǔn)或外接電壓標(biāo)準(zhǔn)。
(7)片上16位PWM,可以作為DAC輸出來(lái)源。
(8)增強(qiáng)的SPI接口可以使用DMA方式傳輸數(shù)據(jù),在DMA方式下,可以間接尋址RAM,設(shè)定多達(dá)128B的發(fā)送接收FIFO;具有完整的端口驅(qū)動(dòng)以及發(fā)送接收中斷設(shè)定,適合大批量的數(shù)據(jù)傳輸,同時(shí)占用CPU資源較少。
MSC1210功能較強(qiáng)且易于使用,但因?yàn)槭切缕骷?a href="http://hljzzgx.com/soft/" target="_blank">參考資料較少。筆者在使用過(guò)程中發(fā)現(xiàn)需要注意如下問(wèn)題:
(1)MSC1210片內(nèi)FLASH分區(qū)只能通過(guò)對(duì)HCR0以及HCR1這兩個(gè)硬件配置寄存器事先編程來(lái)進(jìn)行,在程序運(yùn)行過(guò)程中無(wú)法設(shè)定或更改分區(qū)比例。在程序運(yùn)行中讀寫(xiě)FLASH時(shí),要注意讀寫(xiě)地址與調(diào)試時(shí)的地址不同,具體應(yīng)參考存儲(chǔ)器分配表;用戶程序無(wú)法直接讀寫(xiě)FLASH,需要調(diào)用BOOT ROM中的讀寫(xiě)函數(shù)來(lái)進(jìn)行;與AVR等芯片的EEPROM不同,寫(xiě)入FLASH之前必須先進(jìn)行擦除操作,BOOT ROM中有可調(diào)用的塊擦除子程序,可以在匯編或C程序中調(diào)用。
(2)在做A/D轉(zhuǎn)換時(shí),每次更改PGA放大倍數(shù)需要重新校準(zhǔn),在需要頻繁切換輸入通道的場(chǎng)合,建議設(shè)定特殊寄存器ADCON1的SM1~0位為00,即進(jìn)入自動(dòng)模式數(shù)字濾波。這樣當(dāng)通道切換后,隨著A/D采樣次數(shù)的增加,數(shù)字濾波依次為快速轉(zhuǎn)換、Sinc2、Sinc3數(shù)字濾波,可以最大限度地提高轉(zhuǎn)換速度和轉(zhuǎn)換精度。
(3)BOOT ROM中固化的程序?qū)τ贛SC1210的編程和調(diào)試非常關(guān)鍵,其中部分程序可以在用戶程序中直接調(diào)用,完成數(shù)據(jù)采集、UART輸入輸出等重要功能??梢酝ㄟ^(guò)串口或并口進(jìn)行編程。
(4)使用TI提供的下載工具及調(diào)試終端,可以對(duì)MSC1210實(shí)現(xiàn)在線調(diào)試。這種調(diào)試會(huì)占用UART0資源,同時(shí)輔助中斷的入口地址也有變化,這在編程時(shí)需要注意。也可以利用Windows自帶的超級(jí)終端進(jìn)行調(diào)試。與TI終端不同,Windows超級(jí)終端不能自動(dòng)初始化MSC1210使之進(jìn)入調(diào)試狀態(tài),需要人工進(jìn)行調(diào)試復(fù)位。
3、高精度測(cè)溫模塊的硬件描述
MSC1210最多可以配置4組差分輸入通道:對(duì)于標(biāo)準(zhǔn)四線熱電阻的測(cè)量,需要兩組通道來(lái)分別測(cè)量驅(qū)動(dòng)電流及電壓;對(duì)于標(biāo)準(zhǔn)熱電偶的測(cè)量,如果采用冰點(diǎn)作為冷端補(bǔ)償,需要一組差分通道;如果采用自帶冷端測(cè)量,則往往需要另外兩組通道測(cè)量冷端熱電阻的溫度。因此,對(duì)于標(biāo)準(zhǔn)熱電阻測(cè)量,同一個(gè)模塊最多有兩路測(cè)溫通道;對(duì)于標(biāo)準(zhǔn)熱電偶測(cè)量,如果采用統(tǒng)一的冷端補(bǔ)償,最多可以有4路測(cè)溫通道。同一模塊的不同測(cè)溫通道的切換需要時(shí)間穩(wěn)定信號(hào)以及重新建立ADC測(cè)量輸出,在有速度要求或需要進(jìn)行多值平均的情況下,為了得到較快的測(cè)溫速度,每個(gè)模塊的測(cè)溫路數(shù)會(huì)相應(yīng)減少。這里介紹單通道標(biāo)準(zhǔn)熱電阻測(cè)溫模塊,其硬件框圖如圖2所示。
模塊采用獨(dú)立的模擬供電(5V)和數(shù)字供電(3V)。在印制板設(shè)計(jì)上,數(shù)字地與模擬地分離,在MSC1210芯片下相連。同樣,為了進(jìn)一步減少外界和數(shù)字電路對(duì)模擬電路部分的干擾,SPI接口與外部之間采用高速光電耦合連接。所有的電源以及信號(hào)接口采用統(tǒng)一的兩邊插針形式,便于直接插入主機(jī)母板。這里將比較有特色的標(biāo)準(zhǔn)熱電阻測(cè)量以及信號(hào)調(diào)理電路繪出,如圖3所示。
在圖3中,分壓電阻R12與R13為運(yùn)算放大器U2提供一個(gè)參考電壓,在R10上產(chǎn)生一個(gè)恒定的電流,經(jīng)Q1輸出。為了減少高精度低溫漂電阻的使用數(shù)量,R10、R12、R13均采用普通電阻。使用高精度低溫漂電阻Rr作為電流檢測(cè)電阻,將輸出電壓信號(hào)經(jīng)R2、R3送往MSC1210的一組差分輸入端,恒定電流通過(guò)四線標(biāo)準(zhǔn)鉑電阻Rs,將產(chǎn)生電壓經(jīng)R4、R5送入MSC1210的另一組差分輸入端,經(jīng)MSC1210進(jìn)行四線法測(cè)量電阻的計(jì)算,以消除鉑電阻溫度計(jì)引線的影響。R2、R3、R4、R5是限流電阻,防止輸入電壓過(guò)高損壞MSC1210;D1、R6、C12提供一個(gè)參考電壓,使MSC1210有合適的差分電壓輸入。由于使用MSC1210的內(nèi)置電壓標(biāo)準(zhǔn)輸出,電容C9、C10、C11是不可缺少的。MSC1210具有內(nèi)置PGA(1~128),因此無(wú)需放大電路即可直接測(cè)量微弱信號(hào)。
4 、高精度測(cè)溫模塊軟件的描述
在多路高精度測(cè)溫系統(tǒng)中,測(cè)溫模塊能獨(dú)立進(jìn)行數(shù)據(jù)采集、擬合修正、分度轉(zhuǎn)換、與下位機(jī)的數(shù)據(jù)通訊,并通過(guò)SPI接口向上位機(jī)(主機(jī))發(fā)送測(cè)量到的溫度數(shù)據(jù),接收上位機(jī)發(fā)來(lái)的控制指令,進(jìn)行參數(shù)設(shè)置及校準(zhǔn)操作。與上位機(jī)通訊的指令采用不定長(zhǎng)的ASC代碼指令,用不同的信令頭(SOT)代表不同的控制,并有CRC糾錯(cuò)以保證數(shù)據(jù)正確傳輸,信令有統(tǒng)一的結(jié)束碼(EOT)。
在測(cè)溫模塊的MSC1210的程序功能中,分度轉(zhuǎn)換是重要的組成部分,也是耗時(shí)較多的計(jì)算過(guò)程,這里簡(jiǎn)要說(shuō)明一下。
對(duì)于高精度溫度測(cè)量,需要考慮的一個(gè)重要問(wèn)題是溫度傳感器的選擇。對(duì)于熱電阻與熱電偶,有標(biāo)準(zhǔn)傳感器與工業(yè)傳感器之分,這里選擇精度較高的標(biāo)準(zhǔn)傳感器,并根據(jù)ITS-90國(guó)際溫標(biāo)以及中國(guó)相關(guān)計(jì)量檢定規(guī)程進(jìn)行分度轉(zhuǎn)換。
與工業(yè)熱電阻、熱電偶不同,標(biāo)準(zhǔn)熱電阻或熱電偶的分度計(jì)算是一個(gè)比較復(fù)雜的問(wèn)題,簡(jiǎn)單的查表計(jì)算或曲線擬合一般很難達(dá)到分度轉(zhuǎn)換的精度要求。以標(biāo)準(zhǔn)鉑電阻溫度計(jì)為例,它使用一組規(guī)定的定義固定點(diǎn)和參考函數(shù)以及相應(yīng)的差值函數(shù)內(nèi)插,在0~419.527°C溫區(qū)內(nèi),溫度t由下列公式確定:
其中,Wr(t)為參考函數(shù),Ci與Di為系數(shù),ΔW8(t)為差值函數(shù),W(t)為電阻比,a8與b8為具體標(biāo)準(zhǔn)鉑電阻溫度計(jì)的分度系數(shù),可以通過(guò)具體溫度計(jì)校準(zhǔn)結(jié)果WZn、WSn、W100等參數(shù)計(jì)算得到。在選擇了相應(yīng)的熱電阻之后,將該參數(shù)通過(guò)SPI接口的通訊控制指令輸入測(cè)溫模塊。
可以看到,MCU只有具有較快的運(yùn)算速度,才能在每次ADC輸出數(shù)據(jù)后及時(shí)將電阻值轉(zhuǎn)換為溫度值,分度計(jì)算、誤差修正、數(shù)值處理以及通訊控制等均由MSC1210完成。輸出到上位機(jī)的是測(cè)量得到的溫度值,這樣上位機(jī)即使在配置多個(gè)測(cè)溫模塊的情況下也能從容完成處理工作。
MSC1210是較有特色、功能較強(qiáng)的一種新器件,特別適合于智能變送器、高精度測(cè)量儀器儀表等應(yīng)用領(lǐng)域。這套多路高精度溫度采集系統(tǒng)充分利用了MSC1210的新功能、新特性,采用智能測(cè)溫模塊與主機(jī)通訊的設(shè)計(jì)方式,以較少的成本完成了多點(diǎn)快速溫度測(cè)量。筆者使用這套多路高精度溫度采集系統(tǒng)作為基礎(chǔ)硬件,配以PC機(jī)的控制軟件,完成了多套應(yīng)用于不同場(chǎng)合的自動(dòng)溫度測(cè)量及控制系統(tǒng),實(shí)際應(yīng)用情況良好。
責(zé)任編輯:gt
評(píng)論
查看更多