介紹了以PIC16F876單片機為核心的智能溫度變送器。主要包括PIC單片機對不同分度號的熱電偶和不同感溫材料熱電阻的數(shù)據(jù)采集,以及對微弱信號mV或mA的信號隔離。重點講述了輸入信號調(diào)理和PWM輸出通道的硬件設(shè)計,也討論了對熱電偶非線性的處理。為工業(yè)溫度測量提供了一種低功耗的經(jīng)濟實用的方案。uC7壓力變送器_差壓變送器_液位變送器_溫度變送器
在工業(yè)過程控制領(lǐng)域中,有大量的溫度信號需要測量。而對溫度的測量,常用的測溫器件有熱電偶(TC)和熱電阻(RTD)兩種,熱電偶又根據(jù)感溫材料的不同,有K,E,S,B,J,T,R不同的分度號;熱電阻根據(jù)感溫材料和0℃時標(biāo)準(zhǔn)電阻不同,有PT100,PT10和CU100,CU50等類型。這些不同型號的熱電偶和熱電阻,它們的測量溫度范圍和輸出范圍迥然不同,這對變送器輸入通道的信號調(diào)理設(shè)計帶來了挑戰(zhàn),給制造廠商帶來了不小的麻煩,傳統(tǒng)模擬電路很難做出通用的
熱電阻溫度變送器。在變送器的設(shè)計中,功耗的問題也是一個不得不注意的問題。出于這些因素的考慮,本文設(shè)計出了基于低功耗PIC單片機的高精度
智能溫度變送器,實現(xiàn)了對熱電偶、熱電阻、微電流mA和微電壓mV的四種輸入類型的測量,隔離輸出4-2OmA和1-5V四種輸出類型的工業(yè)標(biāo)準(zhǔn)信號。
1硬件設(shè)計
硬件電路主要由三個功能模塊組成:輸入通道、輸出通道和數(shù)字信號處理電路。完整的硬件電路原理圖如圖1所示。信號流程是shou先確定輸入信號類型,然后由單片機智能控制信號調(diào)理部分,使調(diào)理輸出信號落在運放的線性放大區(qū),#后信號經(jīng)過AD采樣由單片機進行運算,處理結(jié)果由單片機PWM輸出,PWM再進行光電隔離,由輸出電路完成PWM向電流的轉(zhuǎn)換。
輸入通道模擬多路開關(guān)CD4051負(fù)責(zé)選通模擬輸入,可以選擇輸入熱電偶、熱電阻、本地溫度,mV和mA信號,選擇控制權(quán)由PIC單片機實現(xiàn)。由輸入通道模擬多路開關(guān)輸入的微弱信號經(jīng)過放大電路放大,放大電路采用ICL7650MJD,它是一種低功耗的CMOS芯片,高達至少120d B的CMRR和PSRR增益,#大輸入偏移電流10pA,是微信號的理想放大器。為了讓ICL7650MJD工作在線性區(qū),對ICL7650MJD的放大倍數(shù)采用了模擬多路開關(guān)CD4051進行控制,由單片機對AD采樣信號進行判別,決定放大系數(shù)。
中央處理單元采用Microchip公司的PIC 16F876低功耗微處理器,它是變送器的關(guān)鍵部件之一,由它完成變送器的AD轉(zhuǎn)換、測量類型選擇、輸出類型選擇、對外通訊等功能。它是采用哈佛結(jié)構(gòu)的RSIC單片機,內(nèi)置5路10位AD轉(zhuǎn)換器,8K片內(nèi)14位Flash存儲器、368字節(jié)RAM, 256字節(jié)EEPROM,一路UART接口,兩路PWM輸出。
精密電源由丁L431實現(xiàn),由丁L431提供穩(wěn)定的3.5V的精密電源和1mA精密電流源,這個3.5V電源對輸入通道供電和單片機的AD采樣基準(zhǔn)電壓,當(dāng)測量類型為熱電阻時,1mA電流源對熱電阻供電。RS232接口來實現(xiàn)智能編程接入,由于PIC16F876單片機內(nèi)置256字節(jié)的EEPROM,決定變送器當(dāng)前測量類型、測溫范圍、輸出類型的變量可以通過RS232存入EEPROM,當(dāng)外部PC或手持編程終端對該部分EEPROM進行改寫時,智能溫度變送器可工作在用戶所需的測量類型和輸出類型。
2輸入通道和輸出通道
輸入通道的信號調(diào)理也是變送器的關(guān)鍵部件之一,調(diào)理電路如圖2所示。由4051(U6)決定輸入信號類型,可有三線制或四線制的熱電阻輸入、熱電偶、mV,mA和本地溫度(AD590實現(xiàn))測量輸入。通道的選擇由單片機的IO口(圖中CH 1-CH3)控制。放大倍數(shù)由4051(U 10)決定,由單片機的}0口(圖中M丁L1-MTL3)控制。運放采用Maxim公司的ICL7650MJD,C16和C17為0.15F的聚苯乙烯電容,C18和C19為擔(dān)電容。在布線PCB板時,在4和5腳周圍畫圓,然后接到3和6號腳,這樣做能減小輸入信.號的泄漏電流到#小。所有電阻都采用精密電阻。調(diào)理輸出信號VSample輸出到單片機的AD輸入口。
輸出通道電路如圖3所示,它完成的是PWM向IN的轉(zhuǎn)換。這里摒棄了傳統(tǒng)的DA轉(zhuǎn)換,采用的是PWM向IN的轉(zhuǎn)換,在功能上不僅沒有減弱,更有了進一步的提高,并且在成本上相對DA具有更大的優(yōu)勢。
PWM信號輸出后,經(jīng)過光禍隔離后,再經(jīng)過74AC04的波形整形,74AC04的電源由丁L431提供精密的2.5V電源,整形后的波形幅值是2.5V的標(biāo)準(zhǔn)PWM波形。然后經(jīng)過兩級低通濾波器濾波,作為運放O P07的正輸入信號。"R”電阻是作為電壓信號輸出時才用(對應(yīng)圖1中的PWM2通道),接25051的精密電阻。
PIC單片機的PWM周期和高電平時間可編程調(diào)節(jié),PWM周期#大為1024個丁q仃4為一個基時間,可編程設(shè)置),當(dāng)用4M晶振J。設(shè)置成9605s時,PWM高電平時間((Tq個數(shù))和輸出電流!,大小的對應(yīng)關(guān)系如圖4。由圖4可知,當(dāng)PWM的值大于200而小于1000時,曲線近似為一直線,4~20mA電流在線性范圍內(nèi)。對該曲線進行#小二乘曲線擬合,得出擬合曲線方程為:Y二一0.0249x+27.384,其中,Y為輸出的電流值(mA為單位),x為PWM的值仃q的個數(shù)),#大誤差為0.3%。
3軟件設(shè)計和熱電偶非線性處理
3.1主程序流程
主程序流程如圖5,程序采用模塊化編程方法。程序的主
要功能是完成對輸入信號的測量,計算相應(yīng)的溫度,輸出溫度值線性對應(yīng)的電流或電壓值。具體步驟如下:
1)主程序shou先讀取EEPROM中數(shù)據(jù),決定測量類型和
輸出類型、測溫范圍,根據(jù)測量類型啟動相應(yīng)的輸入通道。。2)測量熱電阻時啟動精密電流源。
3)啟動AD,測量輸入端電壓,測量結(jié)果不在運放的線性
工作區(qū)內(nèi)則調(diào)整放大倍數(shù)。若是熱電偶測量,則再次啟動AD測量本地溫度。根據(jù)二項式擬合公式(以下會敘述)計算熱電阻或熱電偶對應(yīng)的溫度值。
4)根據(jù)輸出類型和當(dāng)前的溫度值,以及溫度測量范圍,由PWM值與輸出電流的擬合公式Y(jié)=一0.0249x+27.3846,得出PWM的輸出值。例如,輸出類型為4--20mA,當(dāng)前所測溫度值為t,溫度測量范圍為Tmin一Tmax,則輸出的PWM為:
3.2熱電偶非線性化處理
由于PIC16F876只有8K的Flash ROM,不可能存儲大量的數(shù)據(jù)。又由于要測熱電偶的分度號比較多,測量溫度范圍比較大,它們輸出的熱電勢與溫度又是非線性關(guān)系,沒有可遵循的公式。如果要得到高精度的熱電勢與溫度的關(guān)系,一般的處理方法是在EEPROM或單片機的Flash中存入每個分度號熱電偶的熱電勢和溫度數(shù)據(jù),對測得的熱電勢進行線性插值計算,得出當(dāng)前的溫度。在保證精度的前提下,這樣做要對各個分度號的熱電偶都要存入大量的數(shù)據(jù),占用大量的存儲空間。而如果采用分段擬合的方法,只在存儲空間中存入分段擬合方程的系數(shù),這樣就將大大減小存儲空間。
計算某分度號熱電偶的二項式擬合公式時,shou先根據(jù)EC584-1標(biāo)準(zhǔn)中的計算函數(shù)計算出熱電偶的分度表,在0-10C內(nèi)用二階多項式擬合,計算出二項式系數(shù)a[0],b[0],c[0],然后,用擬合的多項式t=a[0]+b[0]xE;+c[0]xE{(為熱電偶的熱電勢),計算得到的溫度值t和由1EC584-1標(biāo)準(zhǔn)函數(shù)計算的溫度值t,比較,如果差值ERR在允許的誤差ERRA(0.1℃)范圍內(nèi),則擬合區(qū)間再增加10C,重新計算a[0],b[0],c[0],依此類推,直到精度超出允許誤差ERRA。則a[0],b[0],c[O」即為該區(qū)間的精度為0.1℃的二項式擬合曲線。下一區(qū)間的擬合曲線以前一曲線結(jié)束的點為開始,同理可計算出擬合系數(shù)a[1],b[1],c[1]。依此類推,可以計算出熱電偶測溫范圍內(nèi)的所有二項式擬合系數(shù)a[i],b[i],c[i],i=0,1,2"二。由此法計算出的熱電偶的擬合精度在0.1℃以內(nèi)。對每個分度號的熱電偶分別計算出分段擬合二項式,在PIC單片機的Flash中存入這些二項式的系數(shù)。在測量中根據(jù)測到的熱電勢,用該熱電勢所在分段的擬合二項式求出當(dāng)前溫度值。例如,假設(shè)當(dāng)前所用熱電偶分度號為K型,經(jīng)過零點校正后的熱電偶溫度為18mV,根據(jù)分段區(qū)間知當(dāng)前應(yīng)該用的二項式系數(shù)為a [3] =7.3384, b [3] =24.2483,c [3]=一0.018,則當(dāng)前溫度值為t=7.3384+24.2483 x 18-0.0183 x 182=437.880C。
4結(jié)束語
本文提出基于PIC單片機的智能溫度變送器,充分利用了PIC單片機PWM的功能,設(shè)計出高性價比的輸出通道,對熱電偶的非線性化處理,使少量的存儲空間可以實現(xiàn)復(fù)雜的算法,能夠滿足工業(yè)過程控制中的精度要求。系統(tǒng)硬件設(shè)計簡單、可靠性好、精度高。軟件編程采用模塊化方法,方便在線編程變送器的測量類型和輸出類型。經(jīng)實際應(yīng)用,本產(chǎn)品可穩(wěn)定應(yīng)用到工業(yè)過程控制場合,在全國多家企業(yè)中得到應(yīng)用。
相關(guān)產(chǎn)品tuijian:
熱電偶溫度計注明,三暢儀表文章均為原創(chuàng),轉(zhuǎn)載請標(biāo)明本文地址