基于LabVIEW7 Express技術的煙田遠程監(jiān)測系統(tǒng)設計
目前,自動化、智能化、網絡化和數(shù)字化已經成為農業(yè)發(fā)展的主要方向之一,虛擬儀器技術正是適應這種現(xiàn)代化農業(yè)的發(fā)展要求而出現(xiàn)的。農業(yè)的生態(tài)環(huán)境對煙葉的生長發(fā)育、栽培技術的實施、病蟲害的預防等,有著極其重要的影響。而煙葉的生長發(fā)育狀況又同光照度、溫度、濕度等因素息息相關,因此在農業(yè)經濟突顯“多樣化”、“優(yōu)質化”、“高效化”的今天,簡單的依靠人的經驗力量來監(jiān)測環(huán)境,尤其顯得杯水車薪。而且傳統(tǒng)的數(shù)據(jù)采集方法耗時耗力,容易受到外界的干擾,準確性不高。本設計試圖利用基于LabVIEW(Laboratory Virtual Instrument Engineering Workbench,實驗室虛擬儀器集成環(huán)境)開發(fā)平臺的虛擬儀器技術來對果樹園區(qū)的生態(tài)環(huán)境進行實時數(shù)據(jù)采集和存儲。
1系統(tǒng)整體設計
煙田生態(tài)環(huán)境系統(tǒng)的構建方案采用PC-DAQ(基于計算機的數(shù)據(jù)采集卡)系統(tǒng),由傳感器、信號調理裝置、數(shù)據(jù)采集卡和執(zhí)行機構等設備組成。
本監(jiān)測系統(tǒng)利用數(shù)據(jù)采集卡的多路選通開關來完成各硬件數(shù)據(jù)通道之間的切換,從而實現(xiàn)計算機和一臺數(shù)據(jù)采集卡對煙葉生長的溫濕度、光照等氣候因子進行實時采集和測量的目的。將采集來的煙田生態(tài)環(huán)境數(shù)據(jù)經分析、處理后,在前面板實時顯示和靜態(tài)顯示(日平均數(shù)歷史數(shù)據(jù)),之后將它們存儲起來以便日后查詢和使用。另外,本系統(tǒng)中還增加了網絡傳輸功能,可以實現(xiàn)用戶在本地計算機上開啟并操作遠程服務器端計算機上VI的前面板。
2系統(tǒng)硬件構成
圖1為煙田生態(tài)環(huán)境監(jiān)測系統(tǒng)的硬件整體框圖。該系統(tǒng)主要完成對生態(tài)環(huán)境的數(shù)據(jù)采集。數(shù)據(jù)采集系統(tǒng)一般由數(shù)據(jù)采集硬件、硬件驅動程序和數(shù)據(jù)采集函數(shù)及應用程序幾個部分組成,其基本任務就是用于物理信號的產生和測量。
本監(jiān)測系統(tǒng)的硬件設備主要有溫度傳感器,濕度傳感器,光照傳感器,數(shù)據(jù)采集卡和計算機等組成。首先溫濕度傳感器及光照傳感器把溫濕度信號及光照信號轉換為電信號,然后經數(shù)據(jù)采集卡的AD轉換后傳遞給計算機,最后計算機在對采集的數(shù)據(jù)進行分析處理后對其進行存儲顯示。
對于硬件的選用,應遵循實用、標準和耐用的原則。在傳感器選擇方面,可以采用LT/W/S室外溫濕度傳感器,其溫度量程是-20~80℃,濕度量程是0~100%;LT/G光照度傳感器,光強測量范圍是0~20萬lux。
本系統(tǒng)中使用NI公司的數(shù)據(jù)采集卡的PCI-6024,此卡基于PCI總線,支持單極性和雙極性模擬信號輸入,信號輸入范圍分別為-5~+5 V和0~10 V。可提供16路單端/8路差動模擬輸入通道,2路獨立的D/A輸出通道,24線的TTL型數(shù)字I/O通道,3個16位定時計數(shù)器等多種功能。采用NI公司提供的Measurement Automation軟件進行簡單的設置便可完成系統(tǒng)軟件與數(shù)據(jù)采集卡之間的通訊。
3煙田監(jiān)測系統(tǒng)軟件設計
本系統(tǒng)的軟件部分是基于LabVIEW7 Express.應用平臺設計的。按照模塊化的思想,該系統(tǒng)共設計為數(shù)據(jù)采集、數(shù)據(jù)實時顯示、數(shù)據(jù)存儲和網絡傳輸四個模塊。每個模塊可按功能編寫成一個VI,并可通過主控模塊來分別調用。其軟件系統(tǒng)結構框圖如圖2所示。
3.1 主控模塊
主控模塊可以使各模塊之間按照系統(tǒng)的框架協(xié)議來協(xié)調工作和相互通信,并可實現(xiàn)人機交互。同時主控模塊還提供用戶接口,用戶可以通過該接口發(fā)出指令,主控模塊根據(jù)指令來調度各功能模塊。本系統(tǒng)提供的形象逼真的儀器軟面板可使用戶使用起來極為方便。
3.2數(shù)據(jù)采集模塊
數(shù)據(jù)采集模塊主要完成溫度信號及光照信號的數(shù)字信號的轉化,并將其傳遞到計算機。NI公司的數(shù)據(jù)采集卡的數(shù)據(jù)采集功能可以由LabVIEW提供的模入模塊中的中級模入函數(shù)組合起來實現(xiàn)。
圖3是使用中級模入設計的數(shù)據(jù)采集程序框圖。先用Device Open.vi模塊打開數(shù)據(jù)采集設備;然后用AI Config.vi模塊配置數(shù)據(jù)采集卡,選擇模擬量輸入通道,并指定輸入信號的范圍來調節(jié)硬件增益,同時設置采集數(shù)據(jù)所占用計算機緩沖區(qū)的大小及設置掃描間隔;再通過AI Start.vi啟動模入操作,主要用于控制數(shù)據(jù)采集速率和要獲得的掃描數(shù),這里將Number of scans to acquire (獲得的掃描數(shù))輸入端口值設置為“0”,即選擇連續(xù)采集模式,直到清除模入操作為止(如果設置為“-1,’則只要緩沖區(qū)滿就停止掃描);然后通過AI Read.vi從AI Config分配的緩沖中讀取數(shù)據(jù),它能控制每次讀取的點數(shù)、讀取數(shù)據(jù)在緩沖中的位置等,輸出是一個二維數(shù)組,每一列數(shù)據(jù)對應于通道列表中的一個通道;最后通過AI Clear.vi模塊清除模人操作、清除計算機中分配的緩沖及釋放所有數(shù)據(jù)采集的資源。
3.3 實時顯示模塊
在數(shù)據(jù)實時顯示模塊中,采集卡采集來的三組數(shù)據(jù)經分離處理后,分別和三個WaveformChart連接,并在前面板的Chart圖形顯示中以三種不同的顏色來顯示溫度、濕度、光照度三條曲線。刷新模式為默認的Scroll,并設置Show DigitalDisplays,三個布爾指示器顯示三個通道是否正在運行,指示器亮,表示數(shù)據(jù)采集正在進行。同時,當前的數(shù)據(jù)采集時間也被顯示在前面板上。
數(shù)據(jù)存儲中有三個子VI:讀取并計算平均數(shù)子VI、文本表頭子VI和表格表頭子VI,系統(tǒng)采用平鋪順序結構來執(zhí)行整個數(shù)據(jù)存儲過程。首先在程序中設置一定的觸發(fā)時間(在前面板由用戶輸入,格式為H:M,如19:00表示晚上7點),然后對一天采集的煙田生態(tài)環(huán)境數(shù)據(jù)進行平均數(shù)計算,并保存這個平均數(shù)。同時,在前面板顯示最近天數(shù)的平均值曲線。在觸發(fā)時間運行中,先對采集保存的文本文件進行處理,讀取并計算出平均值,然后把這個平均值以兩種開式保存:保存成電子表格文件(.xls)時,得到的表格類似報表;保存成文本文件(.txt)時,得到的是包括對應的時間信息和數(shù)據(jù)的文件。
3.4 數(shù)據(jù)存取模塊
數(shù)據(jù)存取模塊主要通過調用LabVIEW中WriteCharacters To File.VI將經過處理的溫濕度值存人指定的文件中,主要用到獲取系統(tǒng)日期和時間函數(shù)、向文件中寫數(shù)據(jù)的函數(shù)數(shù)據(jù)存儲模塊的框圖程序。
文件的讀取必須按照數(shù)據(jù)保存時的格式去讀它,因為原來數(shù)據(jù)保存為ASCII碼格式,用的是字符串數(shù)據(jù)類型,在讀取數(shù)據(jù)時必須用一個文件I/O函數(shù)把數(shù)據(jù)作為字符串來讀出。其中主要用到了Read Characters From File.vi (從文件中讀取字符串數(shù)據(jù))函數(shù)和Extract Numbers.vi (提取非數(shù)值符號轉換成數(shù)值)函數(shù)。
3.5 網絡傳輸模塊
本系統(tǒng)利用了LabVIEW的遠程面板(RemotePanel)技術,用戶可以用極為簡單的方式直接在本地(Client端)計算機上打開并操作位于遠程(Web Server端)計算機上的VI的前面板,甚至可以將LabVIEW的前面板窗口嵌入到一個網頁中并在網頁中直接操作它。
在LabVIEW中使用Remote Panel需要完成在LabVIEW Web Server端的計算機上開啟LabVIEWWeb Server服務和在Client端計算機上連接并運行Remote Panel兩個步驟。
本系統(tǒng)利用在LabVIEW環(huán)境中直接操作Remote Panel的方法來完成此模塊工作,在Client端使用Remote Panel之前,首先在Server計算機上運行LabVIEW,并且配置Web Server,來完成文件路徑和網絡的設置、客戶機訪問權限的設置及VIs訪問權限的設置。之后就可以在Client端的LabVIEW環(huán)境中運行一個Remote Panel了。具體步驟如下:
(1)在Web Server端打開要進行遠程運行的VI的前面板;
(2)在Client端的LabVIEW環(huán)境中的菜單欄中選擇Operate→Connect to Remote Panel,彈出Connect to Remote Panel對話框,輸入IP地址和所打開的VI的名字以及端口號。
(3)點擊Connect按鈕進行連接,當其連接成功后,Remote Panel就會出現(xiàn)在屏幕之上,此后,在Client端的前面板上就可以進行操作控制了。但是應當注意,Client端的前面板和Web Server端的前面板是不同的。
4結束語
本系統(tǒng)基于LabVIEW7 Express功能軟件,實現(xiàn)了用一臺計算機和一個數(shù)據(jù)采集卡對煙田的生態(tài)環(huán)境進行監(jiān)測。該系統(tǒng)的開發(fā)與應用大大克服了傳統(tǒng)基于單片機監(jiān)測系統(tǒng)的硬件結構復雜、軟件編程麻煩等缺點,提高了測量精度,實現(xiàn)了遠程數(shù)據(jù)的傳輸和監(jiān)測。