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