摘要:基于紅外光譜吸收原理,對(duì)一氧化碳的濃度檢測(cè)進(jìn)行研究。為了在不提高成本的條件下提高設(shè)備測(cè)量精度,采用二維拉格朗日插值算法對(duì)測(cè)量alpha表進(jìn)行插值。實(shí)驗(yàn)表明,運(yùn)用拉格朗日算法進(jìn)行插值造成的誤差在設(shè)備誤差允許范圍內(nèi)。該方法在同樣精度條件下,需要更少的采樣點(diǎn)數(shù),從而降低了設(shè)備成本。
關(guān)鍵詞:一氧化碳;檢測(cè)儀;拉格朗目插值算法;紅外光譜吸收
0 引言
一氧化碳(CO)是最為常見的一種有毒有害的可燃可爆性氣體,它給工業(yè)安全生產(chǎn)帶來了巨大的危害。因此研制一種能夠?qū)崟r(shí)準(zhǔn)確地測(cè)量一氧化碳?xì)怏w濃度的氣體檢測(cè)儀是非常必要的。目前應(yīng)用于一氧化碳?xì)怏w的檢測(cè)方式主要有氣相色譜法、光干涉法、半導(dǎo)體氣體傳感器、紅外光譜吸收式等,以上四種一氧化碳?xì)怏w濃度測(cè)量方法各有優(yōu)缺點(diǎn)。然而紅外光譜吸收法表現(xiàn)出更多的優(yōu)點(diǎn),紅外光譜吸收式的基本原理為:將窄帶光源波長(zhǎng)對(duì)準(zhǔn)被測(cè)氣體某一吸收峰,用正弦信號(hào)對(duì)激光波長(zhǎng)進(jìn)行調(diào)制,調(diào)制后的激光通過被測(cè)氣體,由于氣體的吸收效應(yīng),波長(zhǎng)調(diào)制轉(zhuǎn)換為強(qiáng)度調(diào)制,當(dāng)激光中心波長(zhǎng)對(duì)準(zhǔn)氣體吸收峰的中心處,輸出光包含有調(diào)制頻率的二次諧波信號(hào),而且信號(hào)幅度正比于氣體的濃度。通過提取吸收信號(hào)的二次諧波,便可實(shí)現(xiàn)氣體濃度的測(cè)量。與差分吸收法相比,諧波檢測(cè)法具有更高的分辨率。本文采用紅外光譜吸收式來實(shí)現(xiàn)對(duì)一氧化碳?xì)怏w濃度的測(cè)量,在一氧化碳?xì)怏w檢測(cè)儀的設(shè)計(jì)過程中,將拉格朗日插值思想應(yīng)用于數(shù)據(jù)處理。本文主要對(duì)一氧化碳?xì)怏w檢測(cè)儀中算法的設(shè)計(jì)進(jìn)行研究,對(duì)數(shù)據(jù)進(jìn)行最優(yōu)化處理。
1 拉格朗日插值的意義
紅外光譜技術(shù)光譜吸收技術(shù)的基本原理是比爾一朗伯特(Beer Lambert)定律,出射光強(qiáng)I與入射光強(qiáng)Io的關(guān)系為I=Ioexp[-a(v)CL],其中a(v)為氣體在一定頻率v處的吸收系數(shù);C為氣體濃度;L為氣體吸收的路徑長(zhǎng)度。由于a(v)是關(guān)于環(huán)境溫度和壓強(qiáng)的函數(shù),只要測(cè)量出環(huán)境中的溫度和壓強(qiáng)就可以求出a(v)的值,但是該函數(shù)的解析表達(dá)式相當(dāng)復(fù)雜,不便于處理和計(jì)算,無法實(shí)時(shí)準(zhǔn)確地計(jì)算出a(v)的值,也就無法求出被測(cè)氣體的濃度。因此設(shè)計(jì)某種算法比較準(zhǔn)確地求出a(v)的值將成為一氧化碳測(cè)量的關(guān)鍵環(huán)節(jié),當(dāng)求出一氧化碳?xì)怏w吸收系數(shù)后,就可根據(jù)比爾-朗伯特定律用算法實(shí)現(xiàn)一氧化碳?xì)怏w濃度的測(cè)量。
本文采用拉格朗日插值算法思想來實(shí)現(xiàn)對(duì)吸收系數(shù)a(v)的處理,并通過程序來比較準(zhǔn)確的求出吸收系數(shù)a(v)的值。這里我們可以通過實(shí)驗(yàn)得到許多在不同溫度和壓強(qiáng)下一氧化碳?xì)怏w的吸收系數(shù),但它們是一些孤立離散的點(diǎn),是不連續(xù)的。然后運(yùn)用拉格朗日插值的思想對(duì)他進(jìn)行處理,由于一氧化碳的吸收系數(shù)a(v)與溫度和壓強(qiáng)2個(gè)參數(shù)有關(guān),因此本文用二維拉格朗日插值算法來實(shí)現(xiàn)。
在設(shè)計(jì)一氧化碳?xì)怏w濃度測(cè)量算法時(shí),使用拉格朗日插值算法進(jìn)行相關(guān)的處理,可使準(zhǔn)確的求出一氧化碳?xì)怏w的濃度。由此可知,對(duì)一氧化碳?xì)怏w檢測(cè)儀進(jìn)行算法設(shè)計(jì)是非常必要的,這種拉格朗日插值算法思想在氣體檢測(cè)方面將具有較大的應(yīng)用前景。
2 拉格朗日插值原理
2.1 拉格拉朗日插值
拉格朗日插值由線性插值與拋物線插值推廣而來,將n=1及n=2的插值推廣到一般情形,考慮通過(n+1)個(gè)點(diǎn),(xi,f(xi))(i=0,1,2,…,n)的插值多項(xiàng)式Ln(x),使Ln(xi)=f(xi)i=0,1,2,…,n。
用插值基函數(shù)方法可得:
2.2 二維拉格朗日插值
首先說明二維拉格朗日插值的原理,假定在平面xOy的一個(gè)長(zhǎng)方形網(wǎng)格的節(jié)點(diǎn)上,給定f(x,y)的函數(shù)值,即定義在節(jié)點(diǎn)的值為fi,j=f(xi,yj)。一個(gè)雙插值由兩步組成,每一步都利用一個(gè)一維插值。
第一步,做y方向的插值,求出E和F點(diǎn)的插值:
第二步,在fE和fF之間做線性插值:
其中二維區(qū)域的雙線性區(qū)域如圖1所示。
把這兩步寫成一個(gè)公式,可得:
以上部分是通過二維線性插值的方法來實(shí)現(xiàn)對(duì)數(shù)據(jù)的處理的,這種方法對(duì)于數(shù)據(jù)處理來說仍有不足的地方,根據(jù)上述相同的數(shù)據(jù)處理思想,可以利用二維拉格朗日插值算法來實(shí)現(xiàn)其相同的功能,使數(shù)據(jù)處理效果更佳。
3 拉格朗日插值算法設(shè)計(jì)
3.1 拉格朗日插值算法實(shí)現(xiàn)的方法
本算法用拉格朗日插值公式對(duì)二維不等距觀測(cè)數(shù)據(jù)進(jìn)行成組插值,實(shí)現(xiàn)對(duì)吸收系數(shù)的計(jì)算??梢赃x擇不同的節(jié)點(diǎn)數(shù)n來實(shí)現(xiàn)插值。有觀測(cè)數(shù)列(x1,y1),(x2,y2),…,(xn,yn),并且x1
式中:j是移動(dòng)插值時(shí)所取n個(gè)插值節(jié)點(diǎn)中最大的那個(gè)序號(hào)數(shù),做如下取值:
m是觀測(cè)數(shù)列的樣點(diǎn)數(shù)。
通過二維拉格朗日插值算法的處理,就能夠較為精確地求出吸收系數(shù),從而根據(jù)比爾-朗伯特(Beer Lambert)定律I=Ioexp[-a(v)CL]反推出被測(cè)一氧化碳?xì)怏w的濃度,其中a(v)為吸收系數(shù);I(t),Io可通過激光探測(cè)器測(cè)量得到;L為吸收路徑長(zhǎng)度,由設(shè)計(jì)者自行設(shè)定。
3.2 拉格朗日插值算法實(shí)現(xiàn)的步驟
拉格朗日插值算法實(shí)現(xiàn)的步驟為:
(1)給出所需的輸入量給出插值節(jié)點(diǎn)控制數(shù)n,插值點(diǎn)序列(xi,yi),i=0,1,2,…,n,和要計(jì)算的點(diǎn)x。
(2)設(shè)計(jì)拉格朗日插值函數(shù)(偽碼形式)
第三步:輸出ln(x)的計(jì)算結(jié)果fx
4 實(shí)驗(yàn)結(jié)果
使用拉格朗日插值算法修正后,通過實(shí)驗(yàn)測(cè)得幾組在不同溫度和壓強(qiáng)下被測(cè)氣體的濃度,并與實(shí)驗(yàn)給定樣氣濃度值進(jìn)行比較,得出測(cè)量結(jié)果與標(biāo)準(zhǔn)濃度之間的差值,由測(cè)量差值便可知?dú)怏w檢測(cè)儀性能的好壞,數(shù)據(jù)如表1所示:
通過實(shí)驗(yàn)可以知道,被測(cè)氣體的溫度和壓強(qiáng)是未知的,通過傳感器測(cè)量出的溫度和壓強(qiáng)可能在數(shù)據(jù)表中不存在,對(duì)于這些不存在的溫度和壓強(qiáng)點(diǎn),便可以使用拉格朗日插值算法進(jìn)行處理,實(shí)時(shí)準(zhǔn)確地測(cè)量出被測(cè)氣體的濃度。由此可知,對(duì)一氧化碳?xì)怏w檢測(cè)儀進(jìn)行算法設(shè)計(jì)是非常必要的,這種拉格朗日插值算法思想在氣體檢測(cè)方面將具有較大的應(yīng)用前景。
5 結(jié)語
本文基于紅外光譜吸收原理應(yīng)用拉格朗日插值思想實(shí)現(xiàn)對(duì)一氧化碳?xì)怏w檢測(cè)儀的數(shù)據(jù)處理,詳細(xì)地說明了拉格朗日插值的思想、使用拉格朗日插值算法的實(shí)際意義,并用拉格朗日插值算法實(shí)現(xiàn)了對(duì)被測(cè)氣體濃度的測(cè)量。用Freescale單片機(jī)作為處理器,以Code Warrior為開發(fā)平臺(tái),運(yùn)用C語言實(shí)現(xiàn)拉格朗日插值算法。實(shí)驗(yàn)表明,該系統(tǒng)基于紅外光譜吸收原理,用拉格朗日插值算法實(shí)現(xiàn)了對(duì)環(huán)境中一氧化碳濃度的測(cè)量,與以往氣體檢測(cè)儀相比,本設(shè)計(jì)方法降低了硬件結(jié)構(gòu),優(yōu)化了系統(tǒng)性能,節(jié)約了成本,縮短了開發(fā)周期,使得檢測(cè)結(jié)果更加準(zhǔn)確。