基于LabVIEW的發(fā)酵過程實時數(shù)據(jù)采集系統(tǒng)設(shè)計
1 引 言
本文引用地址:http://www.ex-cimer.com/article/88703.htmLabVIEW(Laboratory Virtual Instrument Engineering Workbench)是美國國家儀器公司(National Instrument)開發(fā)的一種虛擬儀器平臺,他是一種用圖標(biāo)代替文本行創(chuàng)建應(yīng)用程序的圖形化編程語言。LabVIEW功能強大,提供豐富的數(shù)據(jù)采集、分析和存儲庫函數(shù)以及包括DAQ,GPIB,PXI,VXI,RS 232/485在內(nèi)的各種儀器通信總線標(biāo)準(zhǔn)的所有功能函數(shù)。利用LabVIEW設(shè)計的數(shù)據(jù)采集系統(tǒng),可模擬采集各種信號,但是配備NI公司的數(shù)據(jù)采集板卡比較貴,在實際開發(fā)中可選用單片機系統(tǒng)對數(shù)據(jù)進行采集。
發(fā)酵是生物技術(shù)的一項最基本的工程,發(fā)酵的產(chǎn)量和質(zhì)量是發(fā)酵工程的2個重要的技術(shù)指標(biāo)。要提高發(fā)酵工程的產(chǎn)量和質(zhì)量必須控制發(fā)酵過程的一些主要參數(shù)和影響反應(yīng)過程的物質(zhì)的含量,即發(fā)酵過程優(yōu)化及控制。
利用計算機對復(fù)雜的發(fā)酵過程進行數(shù)據(jù)檢測、分析和實施過程的最優(yōu)化控制越來越受到人們的極大關(guān)注。由于發(fā)酵過程變量檢測的復(fù)雜性,有些至關(guān)重要的變量,例如菌體的濃度、比生長率、產(chǎn)物生成率等難以在線直接測量,然而可以在已建立的數(shù)學(xué)模型基礎(chǔ)上,通過測量與這些變量相關(guān)的一些可在線直接測量的變量,例如,尾氣中的氧氣、二氣化氮等濃度變化,從而得到這些變量的最優(yōu)估計,為實施生化過程的在線最優(yōu)控制提供先決條件。
因此,本文設(shè)計一種基于LabVIEW的發(fā)酵過程尾氣中的氧氣、二氣化氮的濃度變化實時數(shù)據(jù)采集系統(tǒng)。并對其系統(tǒng)的組成、原理、實現(xiàn)做出詳細描述。
2 系統(tǒng)的組成及工作原理
本系統(tǒng)的數(shù)據(jù)采集系統(tǒng)由氧氣傳感器、二氧化碳傳感器和C8051F206單片機以及MAX 232組成。由單片機組成的小系統(tǒng)對溫度信號進行采集、調(diào)理和轉(zhuǎn)換,然后通過RS 232串口通訊將數(shù)據(jù)送給計算機,在LabVIEW開發(fā)平臺下,對數(shù)據(jù)進行各種處理、分析,并對信號進行存儲、顯示和打印,最后由PC機顯示實時測量的尾氣中氧氣、二氧化碳的含量和經(jīng)過數(shù)據(jù)處理得到的RQ值,從而實現(xiàn)對發(fā)酵的整個過程進行在線檢測的實時測試系統(tǒng)。
2.1 硬件組成及設(shè)計原理
系統(tǒng)的硬件電路如圖1所示,采用C8051F206作為主芯片,氧氣傳感器選用電化學(xué)傳感器二氧化碳采用紅外傳感器。這兩種傳感器具有精度高、線性度好、重現(xiàn)性好,在一定條件下具有長期穩(wěn)定性等優(yōu)點。這種溫度傳感器特別容易和微電腦配合,組成自動測試系統(tǒng)。在此系統(tǒng)中,我們利用C8051F206提供的片內(nèi)12位SAR ADC的強大功能,以標(biāo)準(zhǔn)的模擬信號(電流,電壓)轉(zhuǎn)換為數(shù)字信號。
由于單片機串口TTL電平與標(biāo)準(zhǔn)的RS 232C信號電平范圍不一致,所以在與之進行通訊的時候,首先要將TTL電平信號進行一定的轉(zhuǎn)換,使之符合RS 232C的信號規(guī)范。本系統(tǒng)中,選擇MAX公司的MAX 232進行電平信號轉(zhuǎn)換。
2.2 軟件設(shè)計
系統(tǒng)軟件設(shè)計主要包括主程序、中斷服務(wù)子程序等。軟件流程圖如圖2所示。
3 LabVIEW下的程序設(shè)計
LabVIEW是基于圖形化的程序設(shè)計語言,程序的核心代碼是類似于流程圖的方框圖和線條的連接。屬于數(shù)據(jù)流編程,交互性不好。每個方框圖代表一個功能模塊即子Ⅵ,程序執(zhí)行過程是條件滿足方式,當(dāng)一個功能模塊的所有輸入都齊備后,此功能模塊產(chǎn)生輸出,傳送給下一個模塊。
3.1 串行通訊程序設(shè)計
首先是對串口的初始化設(shè)置:波特率為默認值9600,8位數(shù)據(jù)位,1位停止位,無校驗位,串口號為3。當(dāng)系統(tǒng)開啟時,通過VISA Write.vi向單片機發(fā)送“發(fā)送請求命令”由于LabVIEW的串行通信子VI只允許對字符串的讀寫,因此在數(shù)據(jù)處理時,必須進行字符串與數(shù)字之間的正確轉(zhuǎn)換,在這里通過調(diào)用1個“組串”子VI實現(xiàn)此轉(zhuǎn)換。在收到上位機的發(fā)送請求命令后,單片機則進入中斷發(fā)送所采集的數(shù)據(jù),上位機通過 VISA Read.vi節(jié)點讀取單片機送來的數(shù)據(jù),并且判斷是否收到4位來控制Case結(jié)構(gòu)中的是執(zhí)行False還是執(zhí)行True。這里使用Case結(jié)構(gòu)是為了避免單片機的丟位現(xiàn)象發(fā)生。如果有丟位現(xiàn)象發(fā)生,則執(zhí)行True讀取前面所讀到的數(shù)據(jù)。如果沒有丟位現(xiàn)象發(fā)生,則執(zhí)行False讀取數(shù)據(jù)。由于采用12位的SARADC將標(biāo)準(zhǔn)的模擬信號(電流,電壓)轉(zhuǎn)換為數(shù)字信號,因此需要用2個字節(jié)來表示1個數(shù)據(jù)。這里采用1個子vi來進行轉(zhuǎn)換。讀完1個數(shù)據(jù),用實時趨勢圖控件Wave-form Chart顯示完后執(zhí)行下一個循環(huán)。圖3給出了上位機對單片機進行讀、寫操作的框圖程序。
3.2 前面板設(shè)計
LabVIEW中的前面板就是圖形化用戶界面,用于設(shè)置輸入數(shù)值和觀察輸出量。在這個采集系統(tǒng)中由于任務(wù)繁多,不能采用1個用戶界面來實現(xiàn)時,可將1個完整的測試系統(tǒng)按完成的具體任務(wù)不同分成幾個功能模塊,每個功能模塊分別設(shè)計成為不同的子VI,并且每個子VI都有自己的用戶界面。將這些個子VI放入一個事件結(jié)構(gòu)中,用不同的按鈕來調(diào)用不同的子VI實現(xiàn)不同的功能。本系統(tǒng)在前面板中不但設(shè)置波特率、串口號為控件,用實時趨勢圖控件Waveform Chart顯示下位機實時采集到的數(shù)據(jù)。同時對采出數(shù)據(jù)進行處理后得到生物發(fā)酵過程優(yōu)化所必需的CET,OUT,RQ曲線并將其實時顯示出來。而且還放置了許多功能按鈕來實現(xiàn)不同的功能。如圖4所示,給出本系統(tǒng)的前面板設(shè)計。
4 結(jié) 語
這個設(shè)計已經(jīng)通過實驗驗證,最后達到了預(yù)期的目的,能對發(fā)酵的整個過程進行在線檢測和分析,為以后實施發(fā)酵過程的在線最優(yōu)控制提供了先決條件。具有很強的工程實用性,可廣泛應(yīng)用于測試控制領(lǐng)域。
評論