太陽(yáng)能熱水器溫度采集系統(tǒng)與實(shí)驗(yàn)研究
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:介紹了太陽(yáng)能熱水器溫度采集系統(tǒng)的硬件、軟件設(shè)計(jì)和實(shí)驗(yàn)研究。鉑電阻的阻值隨溫度的變化轉(zhuǎn)換成電壓的變化,調(diào)理電路對(duì)電壓信號(hào)進(jìn)行放大、變換,輸出0~5 V的標(biāo)準(zhǔn)信號(hào),送下位機(jī)后進(jìn)行A/D轉(zhuǎn)換,再通過(guò)串行通信上傳給上位機(jī)進(jìn)行存儲(chǔ)、顯示。系統(tǒng)采用對(duì)分查找的算法,得到不同溫度區(qū)間上的標(biāo)度變換算法。鉑電阻溫度的對(duì)比實(shí)驗(yàn)結(jié)果表明該系統(tǒng)的測(cè)量精度優(yōu)于±1℃,系統(tǒng)工作穩(wěn)定、可靠。
關(guān)鍵詞:太陽(yáng)能熱水器;PT1000;溫度采集;最小二乘法
太陽(yáng)能熱水器以其安全、經(jīng)濟(jì)、適用、無(wú)污染等特點(diǎn)逐漸被城鄉(xiāng)居民所接受,而其溫度采集系統(tǒng)又是設(shè)計(jì)的關(guān)鍵。常用的溫度傳感器包括:熱電偶、熱敏電阻、集成式溫度傳感器,熱電阻等。由于鉑電阻在氧化介質(zhì)和高溫下的物理化學(xué)性能極其穩(wěn)定,而且太陽(yáng)能熱水器置于室外,工作環(huán)境惡劣,所以本設(shè)計(jì)采用鉑電阻作為太陽(yáng)能熱水器的溫度傳感器。
1 系統(tǒng)工作原理
由于太陽(yáng)能熱水器的工作環(huán)境限制,將下位機(jī)(PIC16F877)置于集熱現(xiàn)場(chǎng),主要實(shí)現(xiàn)溫度采集功能,溫差循環(huán)控制功能,即控制循環(huán)泵、上水閥、輔助電加熱器、伴熱帶的啟停,并與上位機(jī)(PIC16F877)進(jìn)行485通信,將采集的溫度水位信息送到上位機(jī)去顯示。
系統(tǒng)的整體框圖如圖1所示。
2 硬件電路設(shè)計(jì)
溫度采集處理電路的主要功能是將鉑電阻傳感器采集的溫度信號(hào),經(jīng)橋式信號(hào)檢測(cè)電路轉(zhuǎn)換為電壓信號(hào),再經(jīng)弱信號(hào)儀表放大器MCP602進(jìn)行兩級(jí)放大,及非線性A/D轉(zhuǎn)換,轉(zhuǎn)換成能夠識(shí)別的數(shù)字量,暫存在單片機(jī)的存儲(chǔ)器中。
2.1 溫度采集電路設(shè)計(jì)
溫度采集電路是將單片機(jī)的RA2、RA3、RA4連接多路選擇芯片CD4051的地址位A、B、C端口,由單片機(jī)設(shè)定采集哪一路溫度信息,將RA0設(shè)定為模擬通道。
2.2 放大倍數(shù)的計(jì)算
本設(shè)計(jì)放大電路選用MCP602作為放大器,由其構(gòu)成的放大電路圖如圖2所示。其中:VREF=0 V,R1=300 kΩ,R2=10 kΩ,這是一個(gè)簡(jiǎn)單的2級(jí)放大電路,通過(guò)調(diào)節(jié)可變電阻RG可以改變其放大倍數(shù),便于以后的調(diào)試。兩級(jí)放大后的輸出電壓VOUT:
通過(guò)電橋電路采集來(lái)的信號(hào)比較微弱,需要進(jìn)行適當(dāng)?shù)姆糯螅拍苻D(zhuǎn)換成單片機(jī)所能識(shí)別的0 V到5 V的信號(hào)。為此,要合理地設(shè)定可變電阻RG的值來(lái)選擇合適的放大倍數(shù)。選擇過(guò)程如下:
當(dāng)RG=20 kΩ,放大倍數(shù)約為61倍。在溫度T=99℃時(shí),PT1000的阻值為R=1381.26Ω,則得到VOUT=2.806 V。盡管VOUT在界限0~5 V之內(nèi),但靈敏度較小,故將RG調(diào)整到10 kΩ。
當(dāng)RG=10 kΩ,放大倍數(shù)為91倍。在溫度T=99℃時(shí),PT1000的阻值為R=1381.26Ω時(shí):VOUT=4.186 V。此時(shí),在0~99℃溫度范圍內(nèi)電橋的輸出是0~4.186 V,VOUT在0~5 V范圍內(nèi),符合設(shè)計(jì)要求。因此設(shè)計(jì)中選擇尺RG=10 kΩ,放大倍數(shù)為91倍。
2.3 溫度測(cè)量中的誤差分析及解決辦法
當(dāng)用鉑電阻傳感器進(jìn)行溫度測(cè)量時(shí),存在一定的誤差。它的誤差主要有4個(gè)來(lái)源:鉑電阻自身的非線性;鉑電阻電橋輸出的非線性;鉑電阻的引線電阻;測(cè)溫電路本身帶來(lái)的影響。
1)鉑電阻的非線性
對(duì)于鉑電阻PT1000,在0~650℃溫度范圍內(nèi)其阻值與溫度的關(guān)系為:
式中,Rt-溫度為t℃時(shí)的電阻值;R0-溫度為0℃時(shí)的電阻值;A=3.908x10-3℃-1;B=-5.802x10-7℃-2。
由式(1)可知,鉑電阻阻值與溫度并不是線性關(guān)系,而是一個(gè)上凸的曲線,如圖3所示。若只計(jì)線性項(xiàng),上式變?yōu)椋?br />
此時(shí),鉑電阻阻值與溫度是線性關(guān)系。在100℃時(shí),若只記線性值Rt*=1 390.8 Ω,而R1=1 385.0Ω,絕對(duì)值誤差為5.8Ω,相對(duì)誤差為4.2%,回代到式(2)中,溫度誤差超過(guò)1.4℃。顯然鉑電阻的非線性給測(cè)量帶來(lái)了誤差。
2)鉑電阻電橋輸出的非線性
鉑電阻典型應(yīng)用電路如圖4所示。圖中R3為鉑電阻的阻值,(其中為鉑電阻在0℃時(shí)的阻值),R1=R2=39 kΩ。
則輸出電壓△U等于:
3)鉑電阻的引線電阻
因?yàn)闇y(cè)溫電路是不平衡電橋。鉑電阻作為電橋的一個(gè)橋臂電阻,其連接導(dǎo)線(從鉑電阻到控制單元)也作為橋臂電阻的一部分,這一部分電阻是未知的且隨環(huán)境溫度變化,造成測(cè)量誤差。但由于鉑電阻PT1000的阻值較大,所以這個(gè)因素可以忽略。
4)測(cè)溫電路本身的影響
由于電源電壓的抖動(dòng)、外界于擾,AD通道的互相干擾等都會(huì)造成溫度測(cè)量的不確定性,因此必須通過(guò)合理的電路設(shè)計(jì)才能消除這些因素的影響。
考慮到鉑電阻阻值和溫度的非線性以及電橋電路本身的非線性,本文提出兩種方案,下面分別加以介紹。
方案1:查表法
由鉑電阻的電阻-溫度分度表查出每一度對(duì)應(yīng)的電阻值Ri,帶入式(3)中可以得到電橋?qū)?yīng)的輸出電壓△U(i),再根據(jù)式(4)就可以得到對(duì)應(yīng)的A/D轉(zhuǎn)換值A(chǔ)D(i)。
式中,K為MCP602的放大倍數(shù)。本文選擇91。UREF為單片機(jī)內(nèi)部A/D轉(zhuǎn)換的參考電壓,等于5 V。
將計(jì)算得到的A/D轉(zhuǎn)換值是按照溫度大小做成表格存放在單片機(jī)的存儲(chǔ)器中。當(dāng)測(cè)量溫度時(shí),先讀取A/D轉(zhuǎn)換值,然后采用對(duì)分查找的算法用單片機(jī)的A/D轉(zhuǎn)換結(jié)果AD(t)與EEPROM中存放的表格值A(chǔ)D(i)作比較,每次取表格的中間值A(chǔ)D(m),如果AD(t)>AD(m),則下次比較時(shí)取表格的后半部的中間值做比較,如果AD(t)<AD(m),則下次比較時(shí)取表格的前半部的中間值做比較,直到AD(n)≤AD(t)≤AD(n+1)時(shí)停止,得到了溫度的整數(shù)部分M(t)=n。接著采用線性插值法計(jì)算溫度的小數(shù)部分,由AD(t)-N(t)除以AD(n+1)-AD(n)的值得到小數(shù)部分。由于本設(shè)計(jì)對(duì)溫度要求不高,因此不用計(jì)算小數(shù)部分,可以將此方法用于其他應(yīng)用領(lǐng)域中。
方案2:最小二乘法
由于鉑電阻阻值和溫度的非線性以及電橋電路本身的非線性,使得溫度和電橋輸出電壓之間的關(guān)系變得很復(fù)雜,而且也沒有一個(gè)相應(yīng)的函數(shù)來(lái)描述它們之間的關(guān)系,下面就介紹最小二乘法,利用最小二乘參數(shù)估計(jì)理論來(lái)建立溫度傳感器的數(shù)學(xué)模型。
對(duì)太陽(yáng)能熱水器的水箱溫度在標(biāo)定點(diǎn)進(jìn)行溫度實(shí)測(cè)(可用標(biāo)準(zhǔn)電阻箱或電位器來(lái)模擬鉑電阻在各個(gè)標(biāo)定點(diǎn)實(shí)測(cè)),得到幾組數(shù)據(jù),即(V1,T1),…(Vi,Ti),…(Vn,Tn)。其中輸入量為電橋輸出電壓Vi,輸出量為溫度Ti。
設(shè)有一個(gè)m次多項(xiàng)式:
根據(jù)最小二乘法原理,使得在所有給定標(biāo)定點(diǎn),多項(xiàng)式T(Vi)的值與實(shí)測(cè)輸出值Ti的偏差平方和達(dá)到最小值,即
由此可以建立m+1個(gè)方程組,求解出a0,a1,…,am未知量,確定出多項(xiàng)式T(Vi)的表達(dá)式。
求解方程組用矩陣分析方法,得到參數(shù)向量為
求解采用計(jì)算機(jī)遞推法求解,先設(shè)m=1,將測(cè)量值帶入矩陣公式中計(jì)算A。逐點(diǎn)計(jì)算誤差△i=Ti-T(Vi),看是否超差,如果超差則升階,令m=2,重新計(jì)算A,直到不超差為止,此時(shí)多項(xiàng)式模型即為傳感器數(shù)學(xué)模型。
此方法的優(yōu)點(diǎn)是能夠?qū)崿F(xiàn)所建立的數(shù)學(xué)模型整體優(yōu)化,適合非線性較大的傳感器模型的建立。但應(yīng)用于本文時(shí)需要擬合出高階的數(shù)學(xué)模型,其運(yùn)算量較大。另外,在以主頻為4MHz的單片機(jī)上做運(yùn)算,其速度較慢(多次加、乘運(yùn)算),所以本文采用方案1。
3 系統(tǒng)軟件實(shí)現(xiàn)
溫度采集處理的軟件流程如圖5所示,其中包括了啟動(dòng)溫度電路、寄存器的配置、轉(zhuǎn)換數(shù)據(jù)讀出、查找得溫度等部分。首先進(jìn)行A/D初始化設(shè)置,將點(diǎn)電源電壓VCC作為比較電壓,同時(shí)設(shè)定RA0作為模擬輸入通道,開啟入水口溫度采樣通道之后,啟動(dòng)A/D轉(zhuǎn)換。當(dāng)A/D轉(zhuǎn)換允許位GO/DONE=1時(shí),將得到的采樣值送入到折半查找程序中,得出其溫度的整數(shù)部分M(t),從而求出溫度t的數(shù)值。計(jì)算完畢后返回。
4 實(shí)驗(yàn)結(jié)果與討論
使用標(biāo)準(zhǔn)電阻箱模擬鉑電阻溫度傳感器,每一個(gè)電阻值對(duì)應(yīng)著一個(gè)溫度,構(gòu)成測(cè)溫電橋的橋臂,得到差動(dòng)電壓,通過(guò)萬(wàn)用表測(cè)量。經(jīng)過(guò)MCP602放大后,送入單片機(jī)進(jìn)行A/D轉(zhuǎn)換。由于單片機(jī)內(nèi)部的A/D轉(zhuǎn)換是十位的,因此分別存儲(chǔ)在寄存器ADRSEH和ADRSEL中,再通過(guò)對(duì)分查表法,將對(duì)應(yīng)的溫度值事先在觸摸屏上顯示出來(lái)。采集的溫度和實(shí)際的溫度對(duì)照如表1所示。
由表可知,在10~80℃溫度范圍內(nèi),溫度測(cè)量的誤差最大是±1℃。能夠滿足太陽(yáng)能熱水器的采暖和洗浴的要求。
5 結(jié)論
本設(shè)計(jì)采用鉑電阻作為太陽(yáng)能熱水器的溫度傳感器。實(shí)際研究結(jié)果表明,該傳感器和以往的類似傳感器相比溫度控制精度高、使用方便和性能穩(wěn)定等優(yōu)點(diǎn),提高了我國(guó)太陽(yáng)能應(yīng)用領(lǐng)域控制水平。