利用精密模擬微控制器ADuCM360和外部熱電偶構建基于USB的溫度監(jiān)控器
電路功能與優(yōu)勢
本文引用地址:http://www.ex-cimer.com/article/170809.htm本電路顯示如何在精密熱電偶溫度監(jiān)控應用中使用精密模擬微控制器ADuCM360/ADuCM361。ADuCM360/ADuCM361集成雙通道24位-型模數(shù)轉換器(ADC)、雙通道可編程電流源、12位數(shù)模轉換器(DAC)、1.2 V內部基準電壓源、ARM Cortex-M3內核、126 kB閃存、8 kB SRAM以及各種數(shù)字外設,例如UART、定時器、SPI和I2C接口等。
在本電路中,ADuCM360/ADuCM361連接到一個熱電偶和一個100 鉑電阻溫度檢測器(RTD)。RTD用于執(zhí)行冷結補償。
在源代碼中,ADC采樣速率選擇4 Hz。當ADC輸入可編程增益放大器(PGA)的增益配置為32時,ADuCM360/ADuCM361的無噪聲代碼分辨率大于18位。
圖1. ADuCM360/ADuCM361用作溫度監(jiān)控控制器與熱電偶接口(原理示意圖,未顯示所有連接)
電路描述
本應用中用到ADuCM360/ADuCM361的下列特性:
- 在軟件中,為熱電偶和RTD配置了32倍PGA增益的24位∑-△型ADC。ADC1在熱電偶信號采樣與RTD電壓信號采樣之間連續(xù)切換。
- 可編程激勵電流源,用來驅動受控電流流經(jīng)RTD。雙通道電流源可在0A至2mA范圍內配置。本例使用200A設置,以便將RTD自熱效應引起的誤差降至最小。
- ADuCM360/ADuCM361中的ADC內置1.2V基準電壓源。它的內部基準電壓源精度高,適合測量熱電偶電壓。
- ADuCM360/ADuCM361中的ADC內置外部電壓基準電壓源。它可測量RTD電阻;采用比率式設置,將一個外部基準電阻(RREF)連接在外部VREF+和VREF引腳上。
- 偏置電壓發(fā)生器(VBIAS)。VBIAS用于將熱電偶共模電壓設置為AVDD/2。
- ARMCortex-M3內核。功能強大的32位ARM內核集成了126kB閃存和8kBSRAM存儲器,用來運行用戶代碼,可配置并控制ADC,通過RTD處理ADC轉換,以及控制UART/USB接口的通信。
- UART用作與PC主機的通信接口。
- 兩個外部開關用來強制該器件進入閃存引導模式。使SD處于低電平,同時切換RESET按鈕,ADuCM360/ADuCM361便進入引導模式,而不是正常的用戶模式。在引導模式下,通過UART接口可以對內部閃存重新編程。
熱電偶和RTD產(chǎn)生的信號均非常小,因此需要使用PGA來放大這些信號。
本應用使用的熱電偶為T(銅-康銅)型,其溫度范圍為−200°C至+350°C。靈敏度約為40V/°C,這意味著ADC在雙極性模式和32倍PGA增益設置下可以覆蓋熱電偶的整個溫度范圍。
RTD用于執(zhí)行冷結補償。本電路使用鉑100ΩRTD,型號為Enercorp PCS 1.1503.1。它采用0805表貼封裝。溫度變化率為0.385Ω/°C。
注意,基準電阻RREF應為精密5.6kΩ (±0.1%)電阻。
ADuCM360/ADuCM361的USB接口通過FT232R UART轉USB收發(fā)器實現(xiàn),它將USB信號直接轉換為UART。
除圖1所示的去耦外,USB電纜本身還須采用鐵氧體磁珠來增強EMI/RFI保護功能。本電路所用鐵氧體磁珠為Taiyo Yuden #BK2125HS102-T,它在100 MHz時的阻抗為1000Ω。
本電路必須構建在具有較大面積接地層的多層印刷電路板(PCB)上。為實現(xiàn)最佳性能,應采用適當?shù)牟季?、接地和去耦技術。
評估該電路所用的PCB如圖2所示。
圖2. 本電路所用的EVAL-ADuCM360TCZ板
代碼說明
用于測試本電路的源代碼可從ADuCM360產(chǎn)品頁面下載(zip壓縮文件)。
UART配置為波特率9600、8數(shù)據(jù)位、無極性、無流量控制。如果本電路直接與PC相連,則可以使用“超級終端” (HyperTerminal)等通信端口查看程序來查看該程序發(fā)送給UART的結果,如圖3所示。
圖3.“超級終端”通信端口查看程序的輸出
測量熱電偶和RTD的溫度,以獲得溫度讀數(shù)。通過查找表,將RTD溫度轉換為它的等效熱電偶電壓(可查看ISE公司的ITS-90 T型熱電偶表)。這兩個電壓相加以得出熱電偶的絕對溫度值。
首先,V1是熱電偶兩條線之間測得的電壓。通過查找表,測量RTD電壓并轉換為溫度值;然后,該溫度值再轉換為它的等效熱電偶電壓(V2)。隨后,V1和V2相加得出總熱電偶電壓值,此數(shù)值經(jīng)轉換后作為最終的溫度測量值。
圖4. 使用簡單線性逼近法時的誤差
最初,這一轉換是基于一個簡單的線性假設:熱電偶的溫度為40V/°C。從圖4可以看出,只有針對0°C左右的小范圍溫度,如此轉換所產(chǎn)生的誤差才是可以接受的。計算熱電偶溫度的更好方法是對正溫度使用6階多項式,對負溫度使用7階多項式。這需要進行數(shù)學運算,導致計算時間和碼字大小增加。適當?shù)恼壑允轻槍潭〝?shù)量的電壓計算相應的溫度,然后將這些溫度存儲在一個數(shù)組中,其間的值利用相鄰點的線性插值法計算。從圖5可以看出,使用這種方法時誤差顯著降低。圖5表示使用理想熱電偶電壓的算法誤差。
圖5. 使用分段線性逼近法時的誤差
圖6表示在ADuCM360上采用ADC1測量全熱電偶工作范圍內的52個熱電偶電壓,所產(chǎn)生的誤差。整體最大的誤差為1°C。
評論