技術頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術頻道 > 技術百科 > 基于LabVIEW的自動化控制和編程設計

基于LabVIEW的自動化控制和編程設計

時間:2008-07-31 11:03:00來源:ronggang

導語:?該文介紹了在虛擬儀器開發(fā)平臺LabVIEW下,由實驗測量數(shù)據(jù)的要求和儀器本身的條件,分析了在LabVIEW編程環(huán)境下對儀器自動化控制的三種方法
摘 要:該文介紹了在虛擬儀器開發(fā)平臺LabVIEW下,由實驗測量數(shù)據(jù)的要求和儀器本身的條件,分析了在LabVIEW編程環(huán)境下對儀器自動化控制的三種方法。文中著重闡述了兩種方法:緩沖采集和實時采集,并給出實例。用LabVIEW控制儀器的自動化數(shù)據(jù)采集,不僅方便,準確的記錄、顯示和保存數(shù)據(jù),還可以利用LabVIEW強大的數(shù)據(jù)處理功能,對數(shù)據(jù)進行實時處理,擬合曲線或通過計算得到參數(shù)和結果、直觀得到所需物理量。實踐證明,這些方法簡單、實用、高效,是實驗數(shù)據(jù)采集,處理,分析一體化的很好的途徑。 關鍵詞:虛擬儀器; 自動化控制; 數(shù)據(jù)采集 1 引言   虛擬儀器(簡稱為VI)的開發(fā)環(huán)境有很多,但NI公司的LabVIEW最為著名。LabVIEW不同于基于文本的編程語言(如Fortran和C),是一種圖形編程語言——通常稱為G編程語言,其編程過程是通過圖形符號描述程序的行為。LabVIEW使用的是科學家和工程師們所熟悉的術語,還使用了很易于識別的構造G語言的圖形符號,即使具有很少編程經(jīng)驗的人也能學會使用LabVIEW。   在實驗的物理量測量中,對各種參數(shù)的測量都希望能夠做到精確和實時。對于測量一些變化較快的物理量,就必須借助儀器本身的緩沖存儲器或者使用計算機對儀器進行自動化控制。目前大多的實驗儀器都提供了與計算機的接口,所以完全可以用計算機通過各種接口自動地控制儀器數(shù)據(jù)的測量、數(shù)據(jù)存儲以及基本的數(shù)據(jù)處理和分析。在編程中,軟件使用的是功能比較強大的虛擬儀器編程軟件LabVIEW,以及從網(wǎng)上下載的一些基本儀器驅動函數(shù),程序主要實現(xiàn)了數(shù)據(jù)的實時連續(xù)采集顯示和緩沖采集指定數(shù)據(jù)兩種功能。 2 程序設計   2.1 采集方法分類及其特點   根據(jù)測量要求的不同,控制方法分為緩沖采集、實時采集和定時采集三種。這三種方法可以滿足一般實驗數(shù)據(jù)采集的要求。(1)當實驗要求在儀器允許的條件下,盡可能快地獲取測量得到的數(shù)據(jù)時,就要使用儀器本身的緩沖存儲器來采集大量的數(shù)據(jù),并顯示在計算機上,這樣快速采集的數(shù)據(jù),才能反應物理量在短時間內(nèi)的變化。(2)實時采集是指采集、顯示數(shù)據(jù)同時進行,這樣可以直觀地看出測量物理量的變化,它對數(shù)據(jù)速率要求不是很高,程序的主要部分是數(shù)據(jù)處理和顯示,用戶控制參數(shù)有屏幕顯示個數(shù)以及數(shù)據(jù)采集時間間隔等。如果采集物理量的變化頻率太快,一方面接口受傳輸數(shù)據(jù)速率的限制,另一方面計算機受處理能力的限制,使得實時采集不能真正顯示數(shù)據(jù)的變化,實時采集就不能使用。所以當實驗采集的物理量變化不是很大的時候,使用實時采集,得到的結果更加直觀,便于實驗者把握實驗數(shù)據(jù)總趨勢,并且顯示數(shù)據(jù)的動態(tài)曲線圖。(3)數(shù)據(jù)定時采集也是非常常見和重要的,一般希望儀器在規(guī)定時間內(nèi)采集一段數(shù)據(jù)。   2.2 程序流程   三種程序流程為:(1)實時采集是控制儀器進行實時地數(shù)據(jù)采集,每得到一個或一組數(shù)據(jù)后都通過儀器與計算機的接口傳輸?shù)接嬎銠C,并顯示,用戶可以根據(jù)這些實時數(shù)據(jù)觀察當前實驗的一些現(xiàn)象,并保存當前數(shù)據(jù)。(2)緩沖采集應用在實驗儀器本身有存儲器的時候,控制儀器參數(shù)設置,將采集數(shù)據(jù)后放入存儲器,再通過計算機和儀器接口把數(shù)據(jù)傳輸?shù)接嬎銠C,交由計算機控制,儀器暫停采集,進行下一步數(shù)據(jù)處理和分析。如果實驗儀器本身沒有存儲器,為了提高采集速度只有先不考慮數(shù)據(jù)的處理,直接得到原始數(shù)據(jù)放入數(shù)組函數(shù),等到一定量的時候再放入文件進行存儲處理。(3)數(shù)據(jù)定時采集在程序中加入時間判斷語句,當設定的采集時間到了,就調用緩沖采集(或實時采集)數(shù)據(jù)程序,采集數(shù)據(jù)并存儲數(shù)據(jù)。   下面主要介紹緩沖和實時采集。在編程時,可以根據(jù)儀器的編程手冊來設置儀器參數(shù)。   2.2.1數(shù)據(jù)緩沖采集   首先,程序開始時把給定的提示信息(“Please Waiting…”)輸入到面板上顯示表明程序開始運行,請用戶等候;然后設置儀器緩沖的各個參數(shù),如采集量,存儲個數(shù)等,數(shù)據(jù)采集存儲完后再從緩沖中讀出數(shù)據(jù)通過接口(如GPIB)傳輸?shù)接嬎銠C中,顯示數(shù)據(jù)和圖形;最后在儀器面板上顯示采集完畢信息(“Transmission has been done!”),恢復初始顯示采集數(shù)據(jù)狀態(tài),將得到的數(shù)據(jù)放入表格中,數(shù)據(jù)圖形顯示用LabVIEW的WAVEFORM GRAPH 控件。主要程序流程圖如圖1。 [align=center] 圖1:數(shù)據(jù)緩沖采集主要流程[/align]   2.2.2數(shù)據(jù)實時采集   數(shù)據(jù)實時采集與數(shù)據(jù)緩沖采集類似,首先設置儀器基本參數(shù),然后編輯控制顯示兩個子函數(shù)的程序:StrChangeData和ScrDisplay。當設置完儀器采集類型,精度等參數(shù)后,則讀取儀器面板信息,分析得到數(shù)據(jù),通過程序設置參數(shù)來控制動態(tài)顯示數(shù)據(jù)和圖形。主要程序流程如圖2。 [align=center] 圖2:數(shù)據(jù)實時采集主要流程[/align]   子函數(shù)介紹:StrChangeData是將包含測量數(shù)據(jù),測量單位等信息字符串轉換成實際數(shù)據(jù)。ScrDisplay是根據(jù)用戶設置的參數(shù)(屏幕顯示個數(shù)等)實時調整顯示數(shù)據(jù)和圖形。   ⑴、StrChangeData子函數(shù): [align=center] 圖3:StrChangeData子函數(shù)[/align]   根據(jù)儀器編程手冊上命令將面板上測量信息字符串讀取出來,字符串一般包含了數(shù)據(jù)大小,數(shù)據(jù)單位量級和數(shù)據(jù)單位。將字符串連接到一個判斷中,根據(jù)儀器量程,判斷語句中有5種情況分別是“ ”表示基本單位;“m”表示10-3;“µ”表示10-6;“n”表示10-9;“p”表示10-12。然后將它和由數(shù)據(jù)字符串轉換的數(shù)據(jù)相乘,就可以得到實際數(shù)據(jù)了。子函數(shù)如圖3。  ?、啤crDisplay子函數(shù):   數(shù)據(jù)顯示在這里比較重要,要將設置屏幕顯示個數(shù)和數(shù)據(jù)數(shù)組大小做比較,分三種情況:(1)屏幕顯示個數(shù)大于數(shù)據(jù)數(shù)組大小,表明數(shù)據(jù)還沒采集全,直接將采集到的新數(shù)據(jù)放入數(shù)組中。(2)屏幕顯示個數(shù)等于數(shù)據(jù)數(shù)組大小,則要刷新數(shù)據(jù),首先去掉數(shù)組中第一個數(shù)據(jù),所有數(shù)據(jù)前移,再加入新的數(shù)據(jù),最后刷新顯示圖形。(3)屏幕顯示個數(shù)小于數(shù)組大小,表明用戶重新調整了圖形顯示數(shù)據(jù)個數(shù),首先要刪除數(shù)組前多余的數(shù)據(jù)(數(shù)組大小-屏幕顯示個數(shù)+1),剩下數(shù)據(jù)前移,再加入新采集的數(shù)據(jù),最后刷新顯示圖形。 3 測試實例、結果和討論   在實際實驗過程中,往往會涉及到多臺儀器同時采集,每臺儀器的采集流程圖和程序構架都幾乎一樣,只是儀器內(nèi)部指令不同而已,所以可以用上訴方法用一個程序同時控制幾臺儀器采集數(shù)據(jù)。實驗中用keithley的6517和2000實時采集數(shù)據(jù),這兩臺儀器都有GPIB口,可以同時進行采集傳輸數(shù)據(jù)。下面是實驗前期測量得到的電流(6517測量)和電壓(2000測量)背景噪聲。 [align=center] 圖4:實驗測試程序[/align]   實驗中將6517和2000的單個數(shù)據(jù)采集時間都設定為1秒,圖形顯示個數(shù)設為50,這樣同時實時采集兩路數(shù)據(jù)(電流和電壓值),數(shù)據(jù)都動態(tài)的顯示在圖形控件和數(shù)據(jù)列表中,數(shù)據(jù)存放在指定文件中。 4 結束語   對數(shù)據(jù)的實時采集,從具體某種硬件所編寫的應用軟件都很多,從串口到高速的GPIB口數(shù)據(jù)采集也不少,但是它們往往都是針對某個具體的硬件或者測試系統(tǒng)所做的,系統(tǒng)的討論數(shù)據(jù)采集構架的文章很少。現(xiàn)在隨著儀器功能的齊全,計算機處理數(shù)據(jù)速度和接口傳輸數(shù)據(jù)速度的提高,自動化控制實驗儀器不僅減少工作量,減少人為誤差,而且把數(shù)據(jù)采集和數(shù)據(jù)處理一體化,直觀地得到測量的物理量,同時利用LabVIEW軟件的數(shù)據(jù)處理能力,可以靈活地實時分析處理數(shù)據(jù)。   本文創(chuàng)新點為(1)討論了幾種數(shù)據(jù)采集的軟件控制方式,解決了一般數(shù)據(jù)采集的整體設計。(2)軟件都是結構化編寫的,可以做成dll文件和子函數(shù),對于不同的儀器,只要修改前面的儀器驅動參數(shù),其他的都可以調用相同的子函數(shù)或dll文件,這極大的方便了實驗室儀器測控軟件的編寫。(3)數(shù)據(jù)直接存放到數(shù)據(jù)庫里,方便數(shù)據(jù)的管理和使用。明顯優(yōu)于以前傳統(tǒng)的數(shù)據(jù)采集。(4)根據(jù)實驗測量或時間的要求,可以設計緩沖采集、實時采集和定時采集,接口允許還可以控制多臺儀器多通道的同時實時采集。 參考文獻   畢虎,律方成,李燕青,李和明.Labview中訪問數(shù)據(jù)庫的幾種不同方法.微計算機信息,2006,1-1:131-134。   吳苗,許江寧,繆繡華,紀兵.基于Labview的設備驅動程序開發(fā)技術研究.微計算機信息,2006,2-1:153-155。   毛建東.基于Labview的單片機數(shù)據(jù)采集系統(tǒng)的設計.微計算機信息,2006,3-2:41-42。   周偉林,李清峰,楊華勇.基于Labview的AC1077數(shù)據(jù)采集卡的驅動.微計算機信息,2006,1-1:121-123。

標簽:

點贊

分享到:

上一篇:談我國變頻器技術的發(fā)展

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網(wǎng)版權與免責聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(wǎng)(www.surachana.com)獨家所有。如需轉載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責任。

本網(wǎng)轉載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。

網(wǎng)站簡介|會員服務|聯(lián)系方式|幫助信息|版權信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網(wǎng)-工業(yè)自動化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務平臺

網(wǎng)站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2025 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網(wǎng)安備 44030402000946號