熱電偶作為一種主要的測溫元件,具有結構簡單、制造容易、使用方便、測溫范圍寬、測溫精度高等特點。但是將熱電偶應用在基于單片機的嵌入式系統領域時,卻存在著以下幾方面的問題。①非線性:熱電偶輸出熱電勢與溫度之間的關系為非線性關系,因此在應用時必須進行線性化處理。②冷補償:熱電偶輸出的熱電勢為冷端保持為0℃時與測量端的電勢差值,而在實際應用中冷端的溫度是隨著環境溫度而變化的,故需進行冷端補償。③數字化輸出:與嵌入式系統接口必然要采用數字化輸出及數字化接口,而作為模擬小信號測溫元件的熱電偶顯然法直接滿足這個要求。因此,若將熱電偶應用于嵌入式系統時,須進行復雜的信號放大、 A/D轉換、查表線性線、溫度補償及數字化輸出接口等軟硬件設計。如果能將上述的功能集成到一個集成電路芯片中,即采用單芯片來完成信號放大、冷端補償、線性化及數字化輸出功能,則將大大簡化熱電偶在嵌入式領域的應用設計。 Maxim公司新近推出的MAX6675即是一個集成了熱電偶放大器、冷端補償、A/D轉換器及SPI串口的熱電偶放大器與數字轉換器。 1 性能特點 MAX6675的主要特性如下: ①簡單的SPI串行口溫度值輸出; ②0℃~+1024℃的測溫范圍; ③12位0.25℃的分辨率; ④片內冷端補償; ⑤高阻抗差動輸入; ⑥熱電偶斷線檢測; ⑦單一+5V的電源電壓; ⑧低功耗特性; ⑨工作溫度范圍-20℃~+85℃; ⑩2000V的ESD信號。 該器件采用8引腳SO帖片封裝。引腳排列如圖1所示,引腳功能如表1所列。 ![]() 表1 MAX6675引腳功能
2 工作原理 MAX6675的內部結構如圖2所示。該器件是一復雜的單片熱電偶數字轉換器,內部具有信號調節放大器、12位的模擬/數字化熱電偶轉換器、冷端補償傳感和校正、數字控制器、1個SPI兼容接口和1個相關的邏輯控制。 ![]() 2.1 溫度變換 MAX6675內部具有將熱電偶信號轉換為與ADC輸入通道兼容電壓的信號調節放大器,T+和T-輸入端連接到低噪聲放大器A1,以保證檢測輸入的高精度,同時使熱電偶連接導線與干擾源隔離。熱電偶輸出的熱電勢經低噪聲放大器A1放大,再經過A2電壓跟隨器緩沖后,被送至ADC的輸入端。在將溫度電壓值轉換為相等價的溫度值之前,它需要對熱電偶的冷端溫度進行補償,冷端溫度即是MAX6675周圍溫度與0℃實際參考值之間的差值。對于K型熱電偶,電壓變化率為41μV/℃,電壓可由線性公式Vout=(41μV/℃)×(tR-tAMB)來近似熱電偶的特性。上式中,Vout為熱電偶輸出電壓(mV),tR是測量點溫度;tAMB是周圍溫度。 2.2 冷端補償 熱電偶的功能是檢測熱、冷兩端溫度的差值,熱電偶熱節點溫度可在0℃~+1023.75℃范圍變化。冷端即安裝MAX6675的電路板周圍溫度,比溫度在-20℃~+85℃范圍內變化。當冷端溫度波動時,MAX6675仍能精確檢測熱端的溫度變化。 MAX6675是通過冷端補償檢測和校正周圍溫度變化的。該器件可將周圍溫度通過內部的溫度檢測二極管轉換為溫度補償電壓,為了產生實際熱電偶溫度測量值,MAX6675從熱電偶的輸出和檢測二極管的輸出測量電壓。該器件內部電路將二極管電壓和熱電偶電壓送到ADC中轉換,以計算熱電偶的熱端溫度。當熱電偶的冷端與芯片溫度相等時,MAX6675可獲得最佳的測量精度。因此在實際測溫應用時,應盡量避免在MAX6675附近放置發熱器件或元件,因為這樣會造成冷端誤差。 2.3 熱補償 在測溫應用中,芯片自熱將降低MAX6675溫度測量精度,誤大小依賴于MAX6675封裝的熱傳導性、安裝技術和通風效果。為降低芯片自熱引起的測量誤差,可在布線時使用大面積接地技術提高MAX6675溫度測量精度。 2.4 噪聲補償 MAX6675的測量精度對電源耦合噪聲較敏感。為降低電源噪聲影響,可在MAX6675的電源引腳附近接入1只0.1μF陶瓷旁路電容。 2.5 測量精度的提高 熱電偶系統的測量精度可通過以下預防措施來提高:①盡量采用不能從測量區域散熱的大截面導線;②如必須用小截面導線,則只能應用在測量區域,并且在無溫度變化率區域用擴展導線;③避免受能拉緊導線的機械擠壓和振動;④當熱電偶距離較遠時,應采用雙絞線作熱電偶連線;⑤在溫度額定值范圍內使用熱電偶導線;⑥避免急劇溫度變化;⑦在嚴劣環境中,使用合適的保護套以保證熱電偶導線;⑧僅在低溫和小變化率區域使用擴展導線;⑨保持熱電偶電阻的事件記錄和連續記錄。 2.6 SPI串行接口 MAX6675采用標準的SPI串行外設總線與MCU接口,且MAX6675只能作為從設備。MAX6675 SO端輸出溫度數據的格式如圖3所示,MAX6675 SPI接口時序如圖4所示。MAX6675從SPI串行接口輸出數據的過程如下:MCU使CS變低并提供時鐘信號給SCK,由SO讀取測量結果。CS變低將停止任何轉換過程;CS變高將啟動一個新的轉換過程。一個完整串行接口讀操作需16個時鐘周期,在時鐘的下降沿讀16個輸出位,第1位和第15位是一偽標志位,并總為0;第14位到第3位為以MSB到LSB順序排列的轉換溫度值;第2位平時為低,當熱電偶輸入開放時為高,開放熱電偶檢測電路完全由 MAX6675實現,為開放熱電偶檢測器操作,T-必須接地,并使能地點盡可能接近GND腳;第1位為低以提供MAX6675器件身份碼,第0位為三態。 ![]() ![]() 3 測溫應用 下面給出MAX6675應用于嵌入式系統的具體方法。這里以AT89C2051單片機為例,給出MAX6675與單片機接口構成的測溫電路及相應的溫度值讀取、轉換程序。 MAX6675為單片數字式熱電偶放大器,其工作時無需外接任何的外圍元件,這里為降低電源耦合噪聲,在其電源引腳和接地端之前接入了1只容量為0.1μF的電容。 MAX6675與AT89C2051單片機的接口電路如圖5所示。 ![]() 由于AT89C2051不具備SPI總線接口,故這里采用模擬SPI總線的方法來實現與MAX6675的接口。其中P1.0模擬SPI的數據輸入端(MISO),P1.1模擬SPI的串行時鐘輸出端SCK,P1.2模擬SPI的從機選擇端SSB。下面給出相應的溫度值讀取程序及數據轉換程序。 ;溫度值讀取程序 ;位定義 SO BIT T1.0 ;數據輸入 CS BIT P1.1 ;從機選擇 SCK BIT P1.2 ;時鐘 ;數據字節定義 DATAH DATA 30H ;讀取數據高位 DATAL DATA 31H ;讀取數據低位 TDATAH DATA 32H ;溫度高位 TDATAL DATA 33H ;溫度低位 ;讀溫度值子程序 READY:CLR CS ;停止轉換并輸出數據 CLR CLK ;時鐘變低 MOV R2,#08H READH:MOV C,SO RLC A ;讀D15~D8高8位數據 SETB CLK NOP CLR CLK DJNZ R2,READH MOV DATAH,A;將讀取的高8位數據保存 MOV R2,#08H READL:MOV C,SO ;讀D7~D0低8位數據 RLC A SETB CLK NOP CLR CLK DJNZ R2,READL MOV DATAL,A;將讀取的低8位數據保存 SETB CS ;啟動另一次轉換過程 RET ;數據轉換子程序,將讀得的16位數據轉換為12位溫度值,去掉無用的位。 D16T12:MOV A,DATAL CLR C RLC A MOV DATAL,A ;數據整體右移1位, MOV A,DATAH;以去掉D15偽志位 RLC A SWAP A ;將DATAH中的數據高低4位互換 MOV B,A ;數據暫存于B中 MOV A,#0FH ;得到溫度值的D11~D8位,并將D15~D12位置0 MOV TDATAH,A;轉換后的數據送溫度高位 MOV A,B;取出溫度值的D7~D4位 ANL A,#0F0H MOV B,A;暫存B中 MOV A,DATAL ANL A,#0F0H ;取出溫度值的D3~D0 SWAP,A ORL A,B ;合并成低位字節 MOV TDATAL,A ;轉換后的數據送溫度高位 RET 結語 MAX6675將熱電偶測溫應用時復雜的線性化、冷端補償及數字化輸出等問題集中在一個芯片上解決,簡化了將熱電偶測溫方案應用于嵌入式系統領域時復雜的軟硬件設計,因而該器件是將熱電偶測溫方案應用于嵌入式系統領域的理想選擇。 參考文獻 1. 方建淳 帶基準點補償功能的熱偶放大器AD594/595及其應用 [期刊論文] -電子技術應用1994(5) 2. 李希勝.王紹純 熱電偶特性.數字線性化新方案 2000(3) 作 者:黑龍江八一農墾大學 李敏 孟臣 來 源:單片機與嵌入式系統應用 2003(9) |