siemens x
I/O 設(shè)備

基于LabVIEW的虛擬信號分析儀軟件設(shè)計

2025China.cn   2009年03月19日

1 引言

  虛擬儀器(VI)概念的提出是測控技術(shù)領(lǐng)域的一次革命。由于虛擬儀器可借助PC機強大的計算及處理能力,可由用戶定義和擴展功能,且價格低廉,深受廣大用戶青睞。目前,虛擬儀器已經(jīng)逐漸走進大學(xué)實驗室,開始為實驗教學(xué)和科研服務(wù)。本文介紹一種虛擬信號分析儀的軟件設(shè)計方法,以美國NI公司的LabVIEW6.1為開發(fā)平臺,配合NI公司的6024E采集卡,實現(xiàn)虛擬信號分析儀設(shè)計。

2 分析儀功能介紹

  信號分析儀是用來對電信號進行測量、顯示、波形存儲、時域和頻域分析的儀器。虛擬信號分析儀主要由參數(shù)設(shè)置、功能選擇、信號一、信號二和互相關(guān)分析五個模塊構(gòu)成:

 ?。?) 參數(shù)設(shè)置模塊。完成通道配置,設(shè)置掃描率、掃描數(shù)和緩沖區(qū)大小。

 ?。?) 功能選擇模塊。實現(xiàn)波形顯示、波形存儲、讀取波形數(shù)據(jù)、更新信號和退出。

 ?。?) 信號一。對應(yīng)采集通道一,可實現(xiàn)濾波及加窗、自相關(guān)分析、自功率譜分析、統(tǒng)計分析和幅值分析。

 ?。?) 信號二。對應(yīng)采集通道二,功能與信號一類似。

 ?。?) 互相關(guān)分析。對信號一和信號二進行互相關(guān)分析和功率譜分析。

  程序運行時,首先通過往通道控件中輸入

通道號,來控制數(shù)據(jù)采集時的通道數(shù),同時對掃描數(shù)、掃描率和緩沖大小進行配置。配置完成以后,可以點擊波形采集,先觀察信號的具體波形,如果不滿足要求,則可以重新進行參數(shù)配置。當所要采集的波形滿足要求后,可以點擊波形存儲,把波形數(shù)據(jù)保存到指定的文件當中。點擊讀取波形數(shù)據(jù),把以前存儲到文件中的數(shù)據(jù)讀出來,并把相應(yīng)的信號輸送到信號一和信號二。此時通過點擊濾波及加窗,對信號進行濾波及加窗函數(shù)處理,同時把處理之后的數(shù)據(jù)輸出到相關(guān)分析單元,對輸出信號進行相關(guān)分析。

3 波形采集

  波形采集的框圖程序如圖1所示??驁D程序中用到的子函數(shù)功能如下。

圖1 波形采集框圖程序

  AI Config VI:設(shè)置采樣前的各種參數(shù)。

  DAQ Occurrence Config VI:設(shè)置一個數(shù)據(jù)采集事件。

  AI Start VI:指定程序中用于開始采集的參數(shù),如設(shè)置掃描次數(shù)、采樣率等。

  AI Read VI:設(shè)定從采樣緩存區(qū)讀取數(shù)據(jù)的那些參數(shù),如設(shè)定每次讀取的數(shù)量。

  Clear VI:把task ID廢除,從而將采樣所用的內(nèi)存緩存區(qū)和其它資源釋放。

  Simple Error Handler VI:將出錯信息通知用戶。

  Wait On Occurrence VI:處理事件等待。

  在波形采集程序中,用上述函數(shù),根據(jù)數(shù)據(jù)流將它們組合起來,再對其進行一些必要的處理。第一個DAQ Occurrence Config VI設(shè)置一個數(shù)據(jù)采集事件。在While循環(huán)中,Wait On Occurrence函數(shù)在后臺休眠,也就有效地把While循環(huán)設(shè)置于休眠狀態(tài)。在設(shè)定的數(shù)據(jù)采集事件發(fā)生后,即采集到事先指定數(shù)量的數(shù)據(jù),LabVIEW通知Wait On Occurrence函數(shù)停止等待。由于Wait On Occurrence函數(shù)的time out(超時)輸出參數(shù)連接到包含有AI Read VI的選擇結(jié)構(gòu)的選擇端口上,就一定在 Wait On Occurrence函數(shù)停止等待后,才會用AI Read VI。

4 波形存儲

圖2波形存儲框圖程序

  波形存儲的框圖程序如圖2所示。框圖程序中用到的子函數(shù)功能如下。

  Open/Creat/Replace File VI:提示數(shù)據(jù)是以BIN(二進制)為后綴的形式存儲在文件中。

  AI Config VI:設(shè)置采樣前的各種參數(shù)。

  AI Start VI:指定程序中用于開始采集的參數(shù),如設(shè)置掃描次數(shù)、采樣率等。

  AI Read VI:設(shè)定從采樣緩存區(qū)讀取數(shù)據(jù)的那些參數(shù),如設(shè)定每次讀取的數(shù)據(jù)點數(shù)。

  AI Clear VI:把task ID作廢,從而將采樣所用的內(nèi)存緩存區(qū)和其它資源釋放。

  Simple Error Handler VI:將出錯信息告訴用戶。

  時間日期子VI:顯示數(shù)據(jù)存儲時的具體時間和日期。

  Match Pattern VI:把輸入的字符串分成3段來表示,如年、月、日。

  Scan Form String VI:把輸入的字符串轉(zhuǎn)換為相關(guān)格式的字符串。

  Concatenate String VI:把輸入的字符串放在一個數(shù)組中輸出。

  Format Date/Time String:把輸入的時間、日期字符串以規(guī)定的格式輸出。

  Replace Array Subset VI:用其它的數(shù)據(jù)代替索引所指數(shù)組中的數(shù)據(jù)。

  Search 1D Array VI:從一維數(shù)組的第一個數(shù)開始尋找指定的元素。

  Seconds To Da

te/Time:輸出的格式為年、月、日、小時、秒。

  配置頭文件子VI:把時間日期子VI中所顯示的日期和時間及通道號的配置放在一起,以字符串的形式輸出。

  寫頭文件子VI:把配置頭文件子VI輸出的字符串,以頭文件的形式存入前面指定的文件中。

  Write File位于Functions>>File I/O子模板,通過Open/Creat/Replace File函數(shù)中的dup refnum(文件標識)把配置頭文件子VI輸出的字符竄以頭文件的形式存儲到指定的文件中。

  寫波形數(shù)據(jù)VI的框圖程序如圖3所示。

圖3寫波形數(shù)據(jù)框圖程序

  Write File位于Functions>>File I/O子模板。該函數(shù)通過寫頭文件子VI中的dup refnum,把采集來的數(shù)據(jù)以二進制的形式存儲到前面指定的文件里。同時輸出dup refnum、出錯信息和已寫到文件里的字節(jié)數(shù)。

  關(guān)閉文件用于關(guān)閉文件,并輸出相關(guān)的出錯信息。

  在波形存儲程序中調(diào)用上述函數(shù)和子VI,根據(jù)數(shù)據(jù)流將它們組合起來,再對其進行必要的處理。

5 波形讀取

  波形讀取

框圖程序如圖4所示。

圖4波形讀取框圖程序

  Open/Creat/Replace File VI:用于提示數(shù)據(jù)是以BIN為后綴的形式存儲于文件中的。

  Simple Error Handler VI:將出錯信息告訴用戶。

  讀頭文件子VI:用來讀取文件中的內(nèi)容。程序中通過前面Open/Creat/Replace File VI的dup refnum,把指定文件中的內(nèi)容讀出來,并且把文件中的相關(guān)內(nèi)容,如時間、日期等字符串的形式輸出;mark after read表示為所讀數(shù)據(jù)的字節(jié)數(shù);同時輸出dup refnum和出錯信息。

  顯示頭文件子VI把讀頭文件子VI輸出的相關(guān)信息,如時間、日期、通道等信息在波形讀取的前面板顯示出來。其框圖程序如圖5所示。

圖5顯示頭文件框圖程序

  AI Hardware Config VI:把二進制中的數(shù)據(jù)轉(zhuǎn)換為可讀的電壓數(shù),以便把圖形畫出來。

  Type Cast VI:該函數(shù)將輸出的數(shù)據(jù)轉(zhuǎn)換成指定的數(shù)據(jù)。

  Search/Split String:將輸出的字符串分解成兩個子字符串。

  讀波形數(shù)據(jù)子VI:把文件中的波形數(shù)據(jù)讀出來,輸出到波形讀取的前面板顯示器上。

  Read File:通過前面的dup refnum,把文件中的二進制數(shù)據(jù)讀出來,并把數(shù)據(jù)以16位整形的形式輸出到一個二維數(shù)組中,同時輸出文件的dup refnum、出錯信息和所讀數(shù)據(jù)的字節(jié)數(shù)。

6 結(jié)束語

  本虛擬信號分析儀軟件以LabVIEW6.1為開發(fā)平臺,在配以NI6024E采集卡,實現(xiàn)了信號分析儀的基本功能。所構(gòu)成的信號分析儀成功地用于教學(xué)實驗中,具有造價低、操作方便等特點。

參考文獻:

  [1] 楊樂平等. LabVIEW程序設(shè)計與應(yīng)用.電子工業(yè)出版社,2001.

  [2] LabVIEW高級教程培訓(xùn)教材.北京中科泛華測控技術(shù)有限公司

  [3] 李剛等. LabVIEW—易學(xué)易用的計算機圖形化編程語言.北京航空航天大學(xué)出版社,2001.

  [4] Gary W . Jhonson,Richard,USA:National Instruments corporation,2000.

  [5] 劉君華.基于LabVIEW的虛擬儀器設(shè)計.電子工業(yè)出版社,2003.

  [6] 袁淵、古軍.LabVIEW程序設(shè)計與應(yīng)用.電子科技大學(xué)出版社,2000.

 

(轉(zhuǎn)載)

標簽:基于LabVIEW 的 虛擬信號 分析儀 軟件設(shè)計 我要反饋 
2024世界人工智能大會專題
即刻點擊并下載ABB資料,好禮贏不停~
優(yōu)傲機器人下載中心
西克
2024全景工博會
專題報道