電路功能與優(yōu)勢
本電路在精密熱電偶溫度監(jiān)控應用中使用 ADuCM360精密模擬微控制器,,并相應地控制4 mA至20 mA的輸出電流,。 ADuCM360 集成雙通道24位∑-△型模數(shù)轉(zhuǎn)換器(ADC)、雙通 道可編程電流源,、12位數(shù)模轉(zhuǎn)換器(DAC),、1.2 V內(nèi)置基準電壓源以及ARM Cortex-M3內(nèi)核,、126 KB閃存、8 KB SRAM和各種數(shù)字外設,,例如UART,、定時器、SPI和I2C接口,。
在該電路中,, ADuCM360連接到一個T型熱電偶和一個100鉑電阻溫度檢測器(RTD)。RTD用于冷結(jié)補償,。低功耗Cortex-M3內(nèi)核將ADC讀數(shù)轉(zhuǎn)換為實際溫度值,。支持的T型溫度范圍是−200°C至+350°C,而此溫度范圍所對應的輸出電流范圍是4 mA至20 mA,。
該電路為熱電偶測量提供了完整的解決方案,,所需外部元件極少,并且可針對高達28 V的環(huán)路電壓采用環(huán)路供電,。
|
圖1. 具有熱電偶接口,、用作溫度監(jiān)控器控制器的ADuCM360(原理示意圖,未顯示所有連接)
|
電路描述
本應用中用到ADuCM360的下列特性:
- 12位DAC輸出及其靈活的片內(nèi)輸出緩沖器用于控制外部NPN晶體管BC548,。通過控制此晶體管的VBE電壓,,可將經(jīng)過47Ω負載電阻的電流設置為所需的值。
- DAC為12位單調(diào)式,,但其輸出精度通常在3 LSB左右,。此外,雙極性晶體管引入了線性誤差,。為提高DAC輸出的精度并消除失調(diào)和增益端點誤差,,ADC0會測量反饋電壓,從而反映負載電阻(RLOAD)兩端的電壓,。根據(jù)此ADC0讀數(shù),,DAC輸出將通過源代碼糾正。這樣就針對4 mA至20 mA的輸出提供了±0.5°C的精度,。
- 24位Σ-Δ 型ADC內(nèi)置PGA,,在軟件中為熱電偶和RTD設置32的增益。ADC1在熱電偶與RTD電壓采樣之間連續(xù)切換,。
- 可編程激勵電流源驅(qū)動受控電流流過RTD,。雙通道電流源可在0μA至2 mA范圍內(nèi)以一定的階躍進行配置。本例使用200μA設置,,以便將RTD自熱效應引起的誤差降至 最小,。
- ADuCM360中的ADC內(nèi)置了1.2 V基準電壓源。內(nèi)部基準 電壓源精度高,適合測量熱電偶電壓,。
- ADuCM360中ADC的外部基準電壓源,。測量RTD電阻 時,我們采用比率式設置,,將一個外部基準電阻(RREF)連接在外部VREF+和VREF−引腳上,。由于該電路中的基準電壓源為高阻抗,,因此需要使能片內(nèi)基準電壓輸入緩沖器,。片內(nèi)基準電壓緩沖器意味著無需外部緩沖器即可將輸入泄漏影響降至最低。
- 偏置電壓發(fā)生器(VBIAS),。VBIAS功能用于將熱電偶共 模電壓設置為AVDD/2 (900 mV),。同樣,,這樣便無需外部電阻,便可以設置熱電偶共模電壓,。
- ARM Cortex-M3內(nèi)核,。功能強大的32位ARM內(nèi)核集成了126 KB閃存和8 KBSRAM存儲器,用來運行用戶代碼,,可配置和控制ADC,,并利用ADC將熱電偶和RTD輸入轉(zhuǎn) 換為最終的溫度值。它還可以利用來自AIN9電壓電平 的閉環(huán)反饋控制并持續(xù)監(jiān)控DAC輸出,。出于額外調(diào)試目 的,,它還可以控制UART/USB接口上的通信。
- UART用作與PC主機的通信接口,。這用于對片內(nèi)閃存進 行編程,。它還可作為調(diào)試端口,用于校準DAC和ADC,。
- 兩個外部開關用來強制該器件進入閃存引導模式,。使 SD處于低電平,同時切換RESET按鈕,, ADuCM360將進 入引導模式,,而不是正常的用戶模式。在引導模式下,, 通過UART接口可以對內(nèi)部閃存重新編程,。
- J1連接器是一個8引腳雙列直插式連接器,與CN0300支 持硬件隨附的USB-SWD/UART板相連,。配合J-Link-Lite 板可對此應用電路板進行編程和調(diào)試,。參見圖3。
熱電偶和RTD產(chǎn)生的信號均非常小,,因此需要使用可編程增益放大器(PGA)來放大這些信號,。
本應用使用的熱電偶為T型(銅-康銅),,其溫度范圍為−200°C至+350°C,,靈敏度約為40ΩV/°C,,這意味著ADC在雙極性模式和32倍PGA增益設置下可以覆蓋熱電偶的整個溫度范圍。
RTD用于冷結(jié)補償,。本電路使用的RTD為100Ω鉑RTD,,型號為Enercorp PCS 1.1503.1。它采用0805表貼封裝,,溫度變化率為0.385 Ω/°C,。
注意,基準電阻RREF必須為精密5.6 kΩ (±0.1%)電阻,。
本電路必須構(gòu)建在具有較大面積接地層的多層電路板(PCB)上,。為實現(xiàn)最佳性能,必須采用適當?shù)牟季?、接地和去耦技術(請參考 指南MT-031——“實現(xiàn)數(shù)據(jù)轉(zhuǎn)換器的接 地并解開AGND和DGND的謎團”,、 指南MT-101——“去耦 技術”以及 ADuCM360TCZ評估板布局)。
評估本電路所用的PCB如圖2所示,。
|
圖2. 本電路所用的EVAL-CN0300-EB1Z板
|
|
圖3. 連接至USB-SWD/UART板和SEGGER J-Link-Lite板的EVAL-CN0300-EB1Z板
|
圖3顯示了USB-SWD/UART板,。此板用作PC USB端口的接口 板。該USB端口可用于通過基于UART的下載器對器件進行 編程,。它也可用于連接PC上的COM端口(虛擬串行端口),。 這是運行校準程序所需要的條件。
J-Link-Lite插入USB-SWD/UART板的20引腳連接器中,。 J-Link-Lite提供代碼調(diào)試和編程支持,。它通過另一個USB連 接器連接至PC。
代碼說明
用于測試本電路的源代碼可從 ADuCM360 產(chǎn)品頁面下載 (zip壓縮文件),。源代碼使用示例代碼隨附的函數(shù)庫,。圖4 顯示了利用KeilμVision4工具查看時項目中所用的源文件列 表。
|
圖4. Vision4中查看的源文件
|
代碼的校準部分
可調(diào)整編譯器#define值(calibrateADC1和calibrateDAC),,以 使能或禁用ADC和DAC的校準程序,。
要校準ADC或DAC,接口板(USB-SWD/UART)必須連接至 J1和PC上的USB端口,??墒褂?ldquo;超級終端”等COM端口查看 程序來查看校準菜單并逐步執(zhí)行校準程序。
校準ADC時,,源代碼會提示用戶將零電平和滿量程電壓連 接至AIN2和AIN3,。注意,AIN2是正輸入端,。完成校準程 序后,,ADC1INTGN和ADC1OF寄存器的新校準值就會存 儲到內(nèi)部閃存中,。
校準DAC時,應通過精確的電流表連接VLOOP+輸出端,。 DAC校準程序的第一部分校準DAC以設置4 mA輸出,,第二 部分則校準DAC以設置20 mA輸出。用于設置4 mA和20 mA 輸出的DAC代碼會存儲到閃存中,。針對最終的4 mA和20 mA 設置在AIN9處測得的電壓也會記錄下來并存儲到閃存中,。 由于在AIN9處的電壓與流經(jīng)RLOOP的電流線性相關,因 此這些值會用于計算DAC的調(diào)整因子,。這種閉環(huán)方案意味 著,,可以使用片內(nèi)24位∑-△型型ADC進行微調(diào)而消除DAC和 基于晶體管的電路上的所有線性誤差。
UART配置為波特率9600,、8數(shù)據(jù)位,、無極性、無流量控 制,。如果本電路直接與PC相連,,則可使用“超級終端”等通 信端口查看程序來查看該程序發(fā)送給UART的結(jié)果,如圖5 所示,。
要輸入校準程序所需的字符,,請在查看終端中鍵入所需字 符,然后ADuCM360 UART端口就會收到該字符,。
|
圖5. 校準DAC時的“超級終端”輸出
|
代碼的溫度測量部分
要獲得溫度讀數(shù),,應測量熱電偶和RTD的溫度。RTD溫度 通過一個查找表轉(zhuǎn)換為其等效熱電偶電壓(T型熱電偶請參 見ISE, Inc.的ITS-90表),。將這兩個電壓相加,,便可得到熱電 偶電壓的絕對值。
首先,,測量熱電偶兩條線之間的電壓(V1),。測量RTD電壓 并通過查找表轉(zhuǎn)換為溫度,然后再將此溫度轉(zhuǎn)換為其等效 熱電偶電壓(V2),。然后,,將V1和V2相加,以得出整體熱電 偶電壓,,接著將此值轉(zhuǎn)換為最終的溫度測量結(jié)果,。
對熱電偶而言,固定數(shù)量的電壓所對應的溫度會存儲在一 個數(shù)組中,。其間的溫度值利用相鄰點的線性插值法計算,。
圖6顯示了使用 ADuCM360上的ADC1測量整個熱電偶工作 范圍內(nèi)的52個熱電偶電壓時獲得的誤差。最差情況的總誤 差小于1°C,。
|
圖6. 通過分段線性逼近法利用ADuCM360/ADuCM361所測52個校準點時的誤差
|
RTD溫度是運用查找表計算出來的,,并且對RTD的運用方 式與對熱電偶一樣,。注意,描述RTD溫度與電阻關系的多 項式與描述熱電偶的多項式不同,。
有關線性化和實現(xiàn)RTD最佳性能的詳細信息,,請參考 應用 筆記AN-0970“利用ADuC706x微控制器實現(xiàn)RTD接口和線 性化”。
代碼的溫度至電流輸出部分測得最終溫度后,,將DAC輸出電壓設置為適當?shù)闹?,以?在RLOOP上產(chǎn)生所需的電流,。輸入溫度范圍應該是−200°C 至+350°C,。代碼針對−200°C和+350°C設置的輸出電流分別 是4 mA和20 mA。代碼實施的是閉環(huán)方案,,如圖7所示,,其 中AIN9上的反饋電壓通過ADC0測量,然后此值用于補償 DAC輸出設置,。FineTuneDAC(void)函數(shù)執(zhí)行此項校正,。
為獲得最佳結(jié)果,應在開始該電路的性能測試前校準 DAC,。
|
圖7. 閉環(huán)控制4 mA至20 mA的DAC輸出
|
出于調(diào)試目的,,以下字符串會在正常工作期間發(fā)送至 UART(見圖8)。
|
圖8. 用于調(diào)試的UART字符串
|
對于標準UART至RS-232接口,,可以用 ADM3202等器件代 替FT232R收發(fā)器,,前者需采用3 V電源供電。對于更寬的溫 度范圍,,可以使用不同的熱電偶,,例如J型熱電偶。為使冷 結(jié)補償誤差最小,,可以讓一個熱敏電阻與實際的冷結(jié)接 觸,,而不是將其放在PCB上。
針對冷結(jié)溫度測量,,可以用一個外部數(shù)字溫度傳感器來代 替RTD和外部基準電阻,。例如, ADT7410 可以通過I2C接口 連接到ADuCM360,。
有關冷結(jié)補償?shù)母嘣斍?,請參考ADI公司的《傳感器信號調(diào)理》第7章“溫度傳感器”。
如果USB連接器與本電路之間需要隔離,,則必須增加 ADuM3160/ ADuM4160 隔離器件,。
電路評估與測試
電流輸出測量
DAC和外部電壓電流轉(zhuǎn)換器電路性能測試全都一起完成。
一個電流表與VLOOP+連接串聯(lián),,如圖1所示,。所用的電流 表為HP 34401A,。執(zhí)行初始校準和使用VDAC輸出的閉環(huán)控 制時的電路性能導致DAC輸出電路報告的溫度值為0.5°C。 借助24位ADC,,DAC和外部晶體管電路的非線性誤差可以 調(diào)零,。因為溫度是一個變化較慢的輸入?yún)?shù),所以此閉環(huán) 方案非常適合這種應用,。圖9顯示了未采用閉環(huán)控制 (ADC0沒有用于補償DAC輸出)時的理想DAC輸出(藍色)和 實際DAC輸出,。未采用閉環(huán)控制時的誤差可能會大于 10°C。
|
圖9. 溫度(°C)與輸出電流(mA)的關系(藍色 = 理想值,,開環(huán)操作:未補償DAC輸出)
|
圖10顯示了按推薦方式采用閉環(huán)控制時的相同信息,。誤差 非常微小,與理想值相差不到0.5°C,。
|
圖10. 溫度(°C)與輸出電流(mA)的關系(藍色 = 理想值,,閉環(huán)操作:通過ADC0測量補償DAC輸出)
|
基本測試設置如圖11所示。熱電偶連接至J2,。
使用兩種方法來評估本電路的性能,。首先使用連接到電路 板的熱電偶來測量冰桶的溫度,然后測量沸水的溫度,。
使用Wavetek 4808多功能校準儀來充分評估誤差,,如圖11所 示。這種模式下,,校準儀代替熱電偶作為電壓源,。為了評 估T型熱電偶的整個范圍,利用校準儀設置T型熱電偶− 200°C至+350°C的正負溫度范圍之間52個點的等效熱電偶 電壓(T型熱電偶請參見ISE, Inc.的ITS-90表),。圖6顯示了測 試結(jié)果,。
|
圖11. 用于在整個熱電偶輸出電壓范圍內(nèi)校準和測試電路的設置
|
RTD測量測試
為了評估RTD電路和線性化源代碼,以精確的可調(diào)電阻源 代替了電路板上的RTD,。所用的儀器是1433-Z十進制電 阻,。RTD值的范圍是90Ω 至140Ω ,代表−25°C至+114°C的 RTD溫度范圍,。
圖12顯示了RTD測量的測試設置電路,,圖13則顯示了RTD 測試的誤差結(jié)果。
|
圖12. RTD誤差測量的測試設置
|
|
圖13. 使用分段線性代碼和ADC0測量結(jié)果進行RTD測量時的°C誤差
|
電流測量測試
正常工作時,,整個電路的功耗通常為2.25 mA,。保持在復位 狀態(tài)時,整個電路的功耗不到600μA,。