王 錚
(泛亞汽車技術(shù)中心有限公司,上海 201201)
工業(yè)熱電阻包括鉑熱電阻和銅熱電阻,兩種傳感器的溫度系數(shù)不同。其中,鉑電阻可以測量-200℃~850℃區(qū)間的準(zhǔn)確溫度值。經(jīng)過校準(zhǔn)之后的鉑熱電阻測溫精度可以達(dá)到正負(fù)0.02℃以內(nèi)。鉑熱電阻RTD 傳感器的電阻值與溫度值之間呈現(xiàn)非線性,兩者之間存在著相對(duì)確定的函數(shù)關(guān)系,需要進(jìn)行數(shù)字化的非線性修正將RTD 電阻轉(zhuǎn)換為數(shù)字量溫度值[1]。
對(duì)于鉑熱電阻RTD 的采集,常見的實(shí)現(xiàn)方式是在恒流源激勵(lì)作用下,鉑電阻和精密基準(zhǔn)電阻同時(shí)產(chǎn)生出對(duì)于ADC 輸入電壓和基準(zhǔn)電壓值,即便是恒流源產(chǎn)生溫飄或其它微小變化也不影響RTD 的測量精度和效果,如圖1 所示。
圖1 RTD接口硬件示意圖Fig.1 RTD interface hardware schematic
電流源在等式中被消掉,即使起激勵(lì)作用的回路恒流源數(shù)值發(fā)生變化或者溫飄,后端ADC 芯片所采集的ADC數(shù)值也始終同步于鉑電阻RTD 和低溫飄精密基準(zhǔn)電阻的比值。因此,選用一個(gè)精度高、溫度系數(shù)好的基準(zhǔn)電阻可以減少測量電阻對(duì)激勵(lì)恒流源的設(shè)計(jì)精度要求,即應(yīng)用精度不是很高的電流源也可以較為準(zhǔn)確地應(yīng)用比值計(jì)算出鉑電阻RTD 的實(shí)時(shí)電阻值。除了測溫功能之外,為了保證現(xiàn)場電路的穩(wěn)定和可靠,還需要施加RC 濾波和電源的過壓保護(hù),以及其它的防護(hù)性外設(shè),再有就是在UART 的基礎(chǔ)之上添加232、485、422、GPRS、NB 等用于數(shù)字通信的通信端口[2]。
鉑電阻RTD 傳感器的計(jì)算函數(shù)由零上和零下兩部分構(gòu)成,兩個(gè)不同的多項(xiàng)式方程分別可以計(jì)算出鉑電阻阻值與溫度的對(duì)應(yīng)關(guān)系。一個(gè)用于低溫區(qū),另一個(gè)用于常溫和高溫區(qū)。
t ≤ 0℃時(shí)計(jì)算方程為:
t ≥ 0℃時(shí)計(jì)算方程為:
對(duì)于上述兩個(gè)計(jì)算方程:
t 為RTD 溫度(℃)。
R 電阻為RTD 溫度(t)的函數(shù)。
R0是0℃時(shí)的RTD 電阻(默認(rèn)為Pt100)。
A = 3.9083×10-3。
B =-5.775×10-7。
C =-4.183×10-12。
針對(duì)上述兩個(gè)鉑電阻RTD 計(jì)算函數(shù)公式,有很多種計(jì)算方法將鉑電阻RTD 電阻值轉(zhuǎn)換為溫度值。如:直接的數(shù)學(xué)方法、單段線性逼近法和分段線性逼近法。3 種方法各有優(yōu)缺點(diǎn)[3],具體來說:
1)直接的數(shù)學(xué)方法
這種方法的優(yōu)點(diǎn)是計(jì)算比較準(zhǔn)確,不需要進(jìn)行查表計(jì)算;缺點(diǎn)是開發(fā)者針對(duì)函數(shù)需要進(jìn)行解析處理,對(duì)模型本身的函數(shù)處理工作量較大。
2)單段線性逼近法
這種方法的優(yōu)點(diǎn)是計(jì)算速度快,如果函數(shù)的對(duì)應(yīng)關(guān)系在準(zhǔn)確度允許的范圍內(nèi)可以簡化為兩點(diǎn)線性化處理。針對(duì)比較小范圍的狹窄溫度區(qū)間,計(jì)算速度快,算法簡單;缺點(diǎn)是針對(duì)這個(gè)-200℃~850℃的溫度區(qū)間不能都保證單段線性化處理滿足精度要求,適用于只有有限代碼空間時(shí)的小溫度范圍測量。
3)分段線性逼近法
這種方法是將整個(gè)溫度范圍進(jìn)行區(qū)域化處理,簡單理解就是多個(gè)單段線性逼近法的組合。算法的優(yōu)點(diǎn)是計(jì)算速度快,代碼占用空間小及計(jì)算準(zhǔn)確度高。
float T_rtd (float r)
{
float t;
int i;
i=(r-RMIN)/RSEG;
if (i<0)
i=0;
else if (i>NSEG-1)
i=NSEG-1;
t =
C_rtd[i]+(r-(RMIN+RSEG*i))*(C_rtd[i+1]-C_rtd[i])/RSEG;
return (t);
}
上述函數(shù)就是分段線性逼近法的實(shí)施細(xì)節(jié),在不同區(qū)間鉑電阻阻值與溫度值之間的換算應(yīng)用不同的區(qū)間系數(shù),這個(gè)對(duì)于后端采集而言,整個(gè)范圍內(nèi)的傳感器的測量準(zhǔn)確度都能達(dá)到預(yù)期的設(shè)置效果[4]。
// definitions 預(yù)定義
#define AA (3.9083E-3)
#define BB (-5.775E-7)
#define CC (-4.183E-12)
float R_rtd (float t)
{
float r;
if (t>=0) r = 100 * (1 + AA*t + BB*pow(t,2));
else r = 100 * (1 + AA*t + BB*pow(t,2) +
CC*(t-100)*pow(t,3));
return (r);
}
圖2 工業(yè)熱電阻計(jì)算軟件界面圖Fig.2 Industrial thermal resistance calculation software interface diagram
在實(shí)際應(yīng)用的過程中分為工業(yè)鉑電阻和工業(yè)銅電阻,其中鉑電阻也具體細(xì)分為很多傳感器型號(hào),如Pt100、Pt1000、Pt300、Pt20、Pt25 等。較為常見的是Pt100 傳感器分為AA 級(jí)、A 級(jí)和B 級(jí)。Pt100 傳感器用于常規(guī)溫度測量,如環(huán)境溫濕度、農(nóng)業(yè)種植溫濕度、計(jì)量領(lǐng)域的溫場測量等;Pt1000 多用于現(xiàn)場不易于布置三線制或者四線制線纜的遠(yuǎn)端測溫,受成本所限,兩線制鉑電阻傳感器無法消除傳感器導(dǎo)線電阻對(duì)測量溫度的影響,最簡單直接的辦法就是加大傳感器自身的阻值,進(jìn)行減小傳感器的引線電阻影響。P300 和Pt20 多用于熱式氣體質(zhì)量流量計(jì)的前端測溫及加熱;Pt25 用于標(biāo)準(zhǔn)鉑電阻,用于溫度的量值傳遞和高精度計(jì)量。由軟件可以看出,已知熱電阻的類型,輸入溫度值就可以計(jì)算出電阻值,已知電阻值就可以計(jì)算出溫度值,而且這兩種計(jì)算都能同時(shí)輸出電阻比和變化率,很明顯地看出工業(yè)鉑電阻和銅電阻溫度系數(shù)不同。
鉑電阻線性擬合函數(shù),溫度和電阻的線性方程形式如下:
其中,系數(shù)A 和系數(shù)B 為常數(shù),鉑電阻RTD 傳遞函數(shù)中的A 和B 系數(shù)都不相同,軟件工具的效果會(huì)在實(shí)驗(yàn)中進(jìn)行驗(yàn)證,但是首先必須確定一個(gè)單段線性逼近是否適合具體的設(shè)計(jì)要求。
用一定數(shù)量的直線段可以更好地逼近非線性RTD 傳遞函數(shù),分段傳遞函數(shù)的系數(shù)可以保存在MCU 的EEPROM或者FALSH 中。MCU 可以實(shí)現(xiàn)簡單線性插值計(jì)算以實(shí)現(xiàn)RTD 鉑電阻的溫度測量[5]。具體進(jìn)行多階擬合的函數(shù)如下:
//5 階函數(shù)
圖3 使用分段線性逼近法生成系數(shù)的界面圖Fig.3 Interface diagram for generating coefficients using piecewise linear approximation
t=-242.0199+2.222812*r+2.585885E-3*pow(r,2)-4.826040E-6*pow(r,3)-2.818340E-8*pow(r,4)+1.524259E-10*pow(r,5);
//4 階函數(shù)
t=-241.9610+2.216253*r+2.854064E-3*pow(r,2)-9.912120E-6*pow(r,3)+1.705183E-8*pow(r,4);
//3 階函數(shù)
t=-242.0906+2.227625*r+2.517790E-3*pow(r,2)-5.861951E-6*pow(r,3);
//2 階函數(shù)
t=-242.9703+2.283841*r+1.472734E-3*pow(r,2);
實(shí)現(xiàn)分段逼近線性化,可以直接應(yīng)用RTD 系數(shù)生成工具軟件,設(shè)置后軟件可以自動(dòng)的為測溫鉑RTD 進(jìn)行分段擬合[6]。具體的軟件應(yīng)用步驟大致如下:
1)明確鉑電阻的測溫范圍和測量精度。
2)預(yù)期MCU 可容納查詢表的空間大小。
3)用C 源代碼生成鉑電阻的RTD 擬合系數(shù)。
4)計(jì)算生成誤差表。
用于曲線擬合的工具軟件有很多,比如matlab、Curve、Orange、Excel 等,曲線擬合的方法一般都選用多項(xiàng)式直接擬合。就擬合效果而言,上述幾個(gè)擬合軟件的擬合公式基本相同,而且軟件都會(huì)給出當(dāng)前擬合系數(shù)下的計(jì)算誤差值。用ADI 公司提供的RTD 擬合工具軟件僅僅需要操作用戶輸入3 個(gè)參數(shù)。程序生成RTDpwl0.c 文件,其是一個(gè)完整的C 源程序文件。T_rtd()函數(shù)可以直接被工程中的應(yīng)用所調(diào)用,與此同時(shí),系數(shù)生成工具軟件也計(jì)算輸出errorRTD.txt(誤差分析文件),它是一個(gè)表格制式的Excel文件來檢驗(yàn)計(jì)算誤差[7]。
本文闡述了精密熱電阻(RTD)的線性化處理過程(TD 硬件采集、軟件線性化、RTD 系數(shù)計(jì)算工具), 對(duì)比了直接數(shù)學(xué)法、單段線性逼近法和多段線性逼近法3 種方法的優(yōu)缺點(diǎn)并使用分段線性逼近法對(duì)精密電阻分別進(jìn)行多階擬合計(jì)算,并詳述了RTD 系數(shù)計(jì)算工具的使用方法,經(jīng)過線性化處理的精密熱電阻系數(shù)表可以準(zhǔn)確地計(jì)算出實(shí)時(shí)溫度值,達(dá)到了預(yù)期的應(yīng)用效果。