何瑞英
(重慶城市職業(yè)學院,重慶 402160)
基于C#的近紅外光譜儀上位機系統(tǒng)開發(fā)
何瑞英
(重慶城市職業(yè)學院,重慶 402160)
隨著微處理器的發(fā)展和近紅外光譜分析技術(shù)的突飛猛進,近紅外儀器的研制和應(yīng)用都得到了巨大的進步。文章基于傅里葉近紅外光譜儀,利用C#語言編程開發(fā)了一款上位機軟件,完成光譜掃描采集,包括數(shù)據(jù)采集、數(shù)據(jù)傳輸、光譜曲線顯示、局部曲線顯示等功能;完成定量分析經(jīng)過預處理,建立基于偏最小二乘等算法的校正模型,并根據(jù)建立模型進行未知樣本的預測功能。測試結(jié)果表明,系統(tǒng)各項功能運行正常,軟件界面友好,系統(tǒng)運行穩(wěn)定可靠,具有較強的實用性。文中對該系統(tǒng)的設(shè)計與開發(fā)過程進行了簡要闡述。
近紅外光譜儀;C#語言;上位機軟件
近紅外光譜(Near Infrared,NIR)分析技術(shù)具有諸多優(yōu)點,它能在幾分鐘內(nèi),僅通過對被測樣品完成一次近紅外光譜的采集測量,即可完成其多項性能指標的測定(最多可達十余項指標)。光譜測量時不需要對分析樣品進行前處理;分析過程中不消耗其他材料或破壞樣品;分析重現(xiàn)性好、成本低。為了光譜儀系統(tǒng)整體上能夠?qū)崿F(xiàn)準確和穩(wěn)定地進行數(shù)據(jù)采集和成分或濃度的定量分析功能,開發(fā)和完善基于這些已有硬件平臺的上位機軟件是必不可少的環(huán)節(jié)。
另外近紅外光譜具有能量弱的特點,所以需要用特殊的化學計量方法從采集到的數(shù)據(jù)中提取有用的信息?;瘜W計量學應(yīng)用于光譜分析中的方法較多,一般由譜圖的預處理、定性或定量校正模型的建立和未知樣品的預測三大部分組成。本文針對傅里葉變換型光譜儀進行上位機開發(fā)設(shè)計,其主要特點是速度比較快,分辨率較高,是國內(nèi)外實驗室的主導產(chǎn)品。開發(fā)軟件結(jié)合光譜化學計量學算法主要實現(xiàn)了采集數(shù)據(jù)、對光譜數(shù)據(jù)進行預處理、建立定量校正模型、預測未知樣本等功能。
光譜結(jié)合化學計量學方法用于定量分析大都采用同樣一種模式,即基于一組一致樣本建立校正模型。其基本步驟如下:樣本的收集,并測定其光譜和基礎(chǔ)數(shù)據(jù);從收集的樣本中選取有代表性的樣本,將其光譜和對應(yīng)的基礎(chǔ)數(shù)據(jù)組成校正集;對校正集光譜進行預處理;對波長進行選??;通過一組驗證集樣本對模型進行統(tǒng)計驗證,確定最終的模型參數(shù)。
本軟件是課題氣體成分在線分析儀的組成部分,根據(jù)該課題需求以及以上原理,本系統(tǒng)上位機軟件需要實現(xiàn):(1)光譜采集分析界面設(shè)計與編程;(2)光譜數(shù)據(jù)采集與光譜曲線顯示;(3)光譜預處理算法,去掉測量因素、儀器特性影響,提高通用性;(4)選擇波長,建立校正模型;(5)對未知樣品進行預測。
通過設(shè)計將系統(tǒng)劃分為4個主要功能模塊,它們分別是文件處理,光譜采集,光譜預處理,定量分析。各個模塊之間的功能是相對獨立的,同時又要通過各個模塊之間的相互關(guān)聯(lián)來實現(xiàn)整個系統(tǒng)的需求。功能結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)功能框
上位機軟件開始運行后,首先判斷PC機是否通過USB接口連接光譜儀,若未聯(lián)機,只能對已有光譜樣本進行操作,可打開文件顯示圖像,并對顯示圖像進行相關(guān)操作;對已有樣本進行光譜預處理,通過已有樣本建立校正模型;對已有樣本進行預測。若已聯(lián)機,除可以實現(xiàn)以上功能外,可在線采集光譜,顯示光譜圖像,并對顯示圖像進行相關(guān)操作;保存采集光譜數(shù)據(jù);對在線光譜進行預測。系統(tǒng)設(shè)計要求軟件界面友好、操作方便、計算速度快、運行穩(wěn)定可靠。
本系統(tǒng)上位機軟件采用了C#語言在Visual Studio 2010環(huán)境下編程完成,該開發(fā)環(huán)境具有操作方便、類庫資源豐富等特點,是設(shè)計界面的經(jīng)典開發(fā)環(huán)境,使用該環(huán)境使得上位機軟件編程大為輕松,加快了開發(fā)速度。
4.1 界面設(shè)計
界面設(shè)計成菜單樣式,便于普通用戶進行操作,由5個主菜單:文件、光譜采集、光譜預處理、定量分析、幫助組成。工具欄除可實現(xiàn)菜單欄的部分功能外,還可實現(xiàn)對圖像進行局部選擇放大并還原等操作。窗體主區(qū)域顯示當前樣本圖像。狀態(tài)欄顯示當前聯(lián)機狀態(tài),界面如圖2所示。
圖2 主界面及顯示多樣本數(shù)據(jù)圖像
界面設(shè)計完成后,需要對界面上具體的控件進行編程,以實現(xiàn)各自的功能。
4.2 功能實現(xiàn)
文件操作:文件主要負責文件的打開和保存,主要對txt和dat兩種格式的文件進行打開和保存操作,打開主要是為了打開已有的數(shù)據(jù)進行觀測和分析,保存是保存采樣數(shù)據(jù)。用戶想對已有的數(shù)據(jù)進行分析處理,可以點擊“打開”功能按鈕,選擇樣本數(shù)據(jù),顯示圖像,進行預處理。點擊“保存”按鈕保存光譜數(shù)據(jù)的分析處理結(jié)果。如果用戶要自己進行樣品的采集,聯(lián)機顯示圖像,點擊“保存”按鈕保存采集數(shù)據(jù)。
光譜采集:主要負責采集光譜數(shù)據(jù),如圖3所示,吸光度數(shù)據(jù)和干涉數(shù)據(jù),此時要判斷是否聯(lián)機,聯(lián)機的狀態(tài)下可采集數(shù)據(jù),否則采集光譜、采集吸光度、采集干涉數(shù)據(jù)3個按鈕不可用。
實現(xiàn)步驟:(1)判斷是否聯(lián)機,若未聯(lián)機采集光譜、采集吸光度、采集干涉數(shù)據(jù)不可用;(2)若聯(lián)機,輸入增益,以采集光譜為例,判斷光譜數(shù)據(jù)是否為空;(3)若為空,通過接口從光譜儀讀取數(shù)據(jù),轉(zhuǎn)(5)步;(4)若不為空,執(zhí)行(5)步;(5)顯示光譜圖像,保存、局部放大,顯示圖像坐標可用,可轉(zhuǎn)第(2)步;(6)保存,可轉(zhuǎn)第(2)步;(7)結(jié)束。
4.3 數(shù)據(jù)分析處理
數(shù)據(jù)分析處理首先要對樣本進行預處理,減弱以便于消除各種非目標因素對光譜的影響,盡最大可能地去除無關(guān)信息變量,提高分辨率和靈敏度,從而提高校正模型的預測能力和穩(wěn)健性。方法主要有,歸一化、中心化、一階導數(shù)、平滑、多元散射校正和正交信號校正等預處理方式。
然后再對數(shù)據(jù)進行定量分析,功能包括波長選擇、校正模型和預測3個子功能。
(1)波長選擇:在校正模型的建立過程中,選取參與校正的樣本和光譜變量對建立穩(wěn)健的模型是十分必要的。通過特定方法篩選特征波長或波長區(qū)間有可能得到更好的定量校正模型。波長選擇一方面可以簡化模型,更主要的是由于不相關(guān)或非線性變量的剔除,可以得到預測能力強、穩(wěn)健性好的校正模型。波長選擇方法主要有相關(guān)系數(shù)、連續(xù)投影算法、間隔偏最小二乘。
(2)校正模型:校正模型目的是建立用于預測未知樣品性質(zhì)或組成的分析模型。包括多元線性回歸、主成分回歸、偏最小二乘、核偏最小二乘。
(3)預測:選擇建立的分析模型,預測未知樣本的濃度。
圖3 數(shù)據(jù)采集流程
4.4 數(shù)據(jù)分析處理流程
數(shù)據(jù)分析處理流程,如圖4所示。
(1)獲取多個樣本;(2)對樣本進行分類,按照SPXY算法把樣本分為訓練樣本和測試樣本;(3)對訓練樣本進行預處理,得到預處理變量,再對測試樣本進行預處理;(4)對預處理后的訓練樣本進行波長選擇處理,得到波長選擇變量,再對測試樣本進行波長選擇處理;(5)對波長選擇處理之后的訓練樣本通過某一算法建立校正模型,得到模型變量,再對測試樣本通過該模型進行預測,得到一些指示數(shù)據(jù),指示是否建立最終模型并保存;(6)根據(jù)保存的模型(包括預處理變量、波長選擇變量、校正模型變量),對未知樣本進行預測。
幫助:對該軟件進行詳細說明,用戶可以實時進行參考。
經(jīng)過長期測試,本文所涉及的近紅外光譜儀上位機軟件運行良好、性能穩(wěn)定、操作簡便,較好地實現(xiàn)了數(shù)據(jù)采集、曲線顯示、定量分析和預測等功能。
圖4 數(shù)據(jù)分析處理流程
[1]褚小立,王艷斌,許育鵬,等.RIPP化學計量學光譜分析軟件3.0的開發(fā)[J].現(xiàn)代科學儀器,2009(4):6-10.
[2]姜拓,張劍平.基于C#的數(shù)據(jù)采集系統(tǒng)上位機軟件設(shè)計與實現(xiàn)[J].電子測試,2009(9):58-61.
[3]李泰國,郭美如,趙以德,等.小型磁偏轉(zhuǎn)質(zhì)譜計上位機軟件的設(shè)計與實現(xiàn)[J].真空與低溫,2013(1):46-49.
[4]劉永福,何國田,趙健,等.高精度IR定量分析算法研究[J].計算機與應(yīng)用化學,2013(9):995-997.
Development for the upper-computer software of near-infrared spectrometer based on C#
He Ruiying
(Chongqing City Vocational College, Chongqing 402160, China)
With the development of microprocessor and near infrared spectroscopy technology, great improvement has been made on the development and application of near infrared instrument. Based on Fourier transform near infrared spectrometer, this paper develops an upper-computer software to obtain spectrum scanning acquisition by using C# language program, including data acquisition, data transmission, spectrum display, local curve display function; quantitative analysis after pretreatment, a correction model has been built based on partial least square algorithm, which is tested by predicting an unknown sample. The results show that the function of the system runs normally, and the software interface is friendly, the system runs stably and reliably and has strong practicability. The design and development process of the system are briefy described in this paper.
near-infrared spectrometer; C# language; upper-computer software
國家高技術(shù)研究發(fā)展計劃(863計劃);項目名稱:高精度多組分油品在線調(diào)和智能檢測關(guān)鍵技術(shù)研究與產(chǎn)品開發(fā);項目編號:NO. 2012AA040602。
何瑞英(1983— ),女,河南安陽,碩士,講師;研究方向:圖像處理,職業(yè)教育。