亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于LabWindows/CVI的實(shí)時(shí)頻譜分析儀

        2014-03-22 01:50:39張?bào)@雷
        儀表技術(shù)與傳感器 2014年9期
        關(guān)鍵詞:沃斯虛擬儀器分析儀

        王 鑫,張?bào)@雷

        (天津市復(fù)雜控制理論及應(yīng)用重點(diǎn)實(shí)驗(yàn)室,天津理工大學(xué)自動(dòng)化學(xué)院 天津 300384)

        0 引言

        虛擬儀器技術(shù)開創(chuàng)了測(cè)控領(lǐng)域的新時(shí)代,它是在以計(jì)算機(jī)為核心的平臺(tái)上,利用其強(qiáng)大的資源設(shè)計(jì)開發(fā)具有虛擬面板,測(cè)試任務(wù)由軟件算法實(shí)現(xiàn)的一種計(jì)算機(jī)儀器系統(tǒng)。

        LabWindows/CVI是一種基于ANSI C的虛擬儀器開發(fā)環(huán)境,它將C語言的強(qiáng)大功能與靈活的使用方法帶入到測(cè)試、測(cè)量和智能儀器等工程領(lǐng)域[1]。由于LabWindows/CVI擁有功能強(qiáng)大的圖形顯示控件、豐富的信號(hào)分析函數(shù)庫和良好的開發(fā)環(huán)境,因此非常適合開發(fā)信號(hào)分析相關(guān)的應(yīng)用系統(tǒng)。設(shè)計(jì)采用LabWindows/CVI多線程技術(shù),主線程用于顯示面板和響應(yīng)用戶各種初始化操作,其他各線程用于數(shù)據(jù)采集、顯示、濾波、幅頻分析、數(shù)據(jù)管理等模塊的操作。實(shí)驗(yàn)證明系統(tǒng)波形刷新速度快、參數(shù)準(zhǔn)確,滿足了對(duì)實(shí)時(shí)性和準(zhǔn)確性要求。

        1 硬件結(jié)構(gòu)

        實(shí)時(shí)頻譜分析儀包括傳感器、信號(hào)調(diào)理、PCI-6221數(shù)據(jù)采集卡及裝有LabWindows/CVI的計(jì)算機(jī)。系統(tǒng)方框圖,如圖1所示。傳感器將測(cè)量對(duì)象的非電信號(hào)轉(zhuǎn)換為電信號(hào),經(jīng)過信號(hào)調(diào)理模塊達(dá)到合適的量程以滿足PCI-6221數(shù)據(jù)采集卡的模擬輸入要求。PCI-6221將輸入的模擬電壓經(jīng)多通道A/D采集轉(zhuǎn)換為離散的數(shù)字信號(hào)進(jìn)入計(jì)算機(jī)開始運(yùn)算處理。PCI-6221擁有16路16位AI通道,最高采樣率250 kS/s,2路16位模擬輸出 (833 kS/s),24路數(shù)字I/O線,32位計(jì)數(shù)器,關(guān)聯(lián) (Correlated)DIO (8條時(shí)鐘線,1 MHz)。它是一款低價(jià)位多功能M系列數(shù)據(jù)采集(DAQ)板卡,經(jīng)優(yōu)化適用于該系統(tǒng)的應(yīng)用。

        圖1 系統(tǒng)結(jié)構(gòu)圖

        2 軟件設(shè)計(jì)

        2.1多線程機(jī)制采集任務(wù)的實(shí)現(xiàn)

        多線程機(jī)制數(shù)據(jù)采集任務(wù)分為用戶界面控制、通道選擇、數(shù)據(jù)采集和實(shí)時(shí)顯示等。任務(wù)線程由基于LabWindows/CVI異步定時(shí)機(jī)制的多線程技術(shù)來實(shí)現(xiàn),能夠精確控制執(zhí)行次線程回調(diào)函數(shù)的執(zhí)行周期。以下將對(duì)其在LabWindows/CVI 2010版平臺(tái)下的關(guān)鍵代碼進(jìn)行說明。

        數(shù)據(jù)采集方案流程圖如圖2所示。

        圖2 數(shù)據(jù)采集方案流程圖

        程序開始之前首先要聲明全局變量和宏定義。

        static int timerid;//異步定時(shí)器句柄

        static TaskHandlegTaskHandle=0;//采集任務(wù)句柄

        static uInt32gNumChannels;//采集通道數(shù)

        float64 *gData=NULL;//開辟數(shù)據(jù)存儲(chǔ)空間

        ……//其他定義

        然后開始執(zhí)行通道設(shè)置程序。

        NIDAQmx_NewPhysChanAICtrl(panelHandle,ChannelNum[i],1//獲取通道信息

        利用DAQmx提供的驅(qū)動(dòng)庫函數(shù),創(chuàng)建模擬量采集任務(wù)。

        DAQmxCreateTask("",&gTaskHandle);

        DAQmxCreateAIVoltageChan(gTaskHandle,ChanV-alue[i],"",DAQmx_Val_Cfg_Default,-ampvalue,ampvalu-e,DAQmx_Val_Volts,NULL);

        }//輸入設(shè)置

        DAQmxCfgSampClkTiming(gTaskHandle,"",rata,DAQmx_Val_Rising,DAQmx_Val_ContSamps,sampsPe-rChan);//采樣率rata=10k Hz

        DAQmxGetTaskAttribute(gTaskHandle,DAQmx_T-ask_NumChans,&gNumChannels);//獲取通道數(shù)

        DAQmxStartTask(gTaskHandle);//開始采集任務(wù)

        DAQmxReadAnalogF64(gTaskHandle,sampsPerCh-an,1.0,DAQmx_Val_GroupByChannel,gData,sampsPerC-han,&numRead,0);//讀取數(shù)據(jù)儲(chǔ)存到數(shù)組gData.

        2.2三步法巴特沃斯濾波器的軟件實(shí)現(xiàn)

        采用軟件實(shí)現(xiàn)的數(shù)字濾波器主要有兩種,無限沖擊響應(yīng)濾波器(IIR濾波器)和有限沖擊響應(yīng)濾波器(FIR濾波器)。IIR濾波器能更好的保留幅頻特性,而FIR濾波器可以實(shí)現(xiàn)相位的不失真。根據(jù)以上特點(diǎn)比較,設(shè)計(jì)采用屬于IIR濾波器的三步法巴特沃斯濾波器[2]。

        在LabWindows/CVI中實(shí)現(xiàn)三步法巴特沃斯濾波器的代碼如下:

        IIRFilterPtr filterinformation;//定義濾波器系數(shù)結(jié)構(gòu)體指針

        filterinformation =AllocIIRFilterPtr (BANDPASS,order);//定義帶通濾波器結(jié)構(gòu)

        然后在界面里通過設(shè)置濾波相關(guān)項(xiàng)目來定義濾波器具體參數(shù),如圖3左半部分中間位置所示。

        圖3 實(shí)時(shí)頻譜分析儀界面

        lowercutoff用于設(shè)置下限截止頻率,highercutoff用于設(shè)置上限截止頻率。filterinformation用于設(shè)置四種濾波器類型:

        filterinformation =AllocIIRFilterPtr (Type,order);

        Type里可以選擇:LOWPASS低通濾波、HIGHPASS高通濾波、BANDPASS帶通濾波、 BANDSTOP帶阻濾波。濾波器階數(shù)通過設(shè)置order來獲得:

        GetCtrlVal(panelHandle,PANEL_NUMERIC_ORDER,&order);

        然后產(chǎn)生巴特沃斯濾波器系數(shù):

        Bw_CascadeCoef(wavepoint,lowercutoff,highercutoff,filterinformation);

        然后對(duì)采集的gData數(shù)據(jù)進(jìn)行濾波:

        IIRCascadeFiltering(gData,wavepoint,filterinformation,gData);

        最后釋放濾波器結(jié)構(gòu),任務(wù)結(jié)束:

        FreeIIRFilterPtr (filterinformation);

        2.3基于離散傅里葉變換的頻譜分析方法

        信號(hào)的幅頻分析[3]是用FFT將信號(hào)從時(shí)域波形轉(zhuǎn)化到以頻率f或ω頻域波形為橫坐標(biāo)變量來描述信號(hào)的幅值、相位變化規(guī)律[4-5]。離散傅里葉變換(Discrete Fourier Transform,DFT)計(jì)算公式是

        獲得時(shí)域信號(hào)后,在LabWindows/CVI的信號(hào)分析庫中可以用AutoPowerSpectrum函數(shù)獲得信號(hào)的頻譜圖。計(jì)算公式是

        頻譜顯示代碼如下:

        AutoPowerSpectrum(gData,wavepoint,(1/samprate),magnitude,&freqspace);

        DeleteGraphPlot(panelHandle,PANEL_GRAPH,-1,VAL_IMMEDIATE_DRAW);

        SetAxisRange(panelHandle,PANEL_GRAPH,VAL_NO_CHANGE,0.0,1.0,VAL_AUTOSCALE,0,5);//設(shè)置圖譜顯示類型

        PlotWaveform (panelHandle,PANEL_GRAPH,magnitude,wavepoint/2,VAL_DOUBLE,1.0,0.0,0.0,freqspace,VAL_THIN_LINE,VAL_EMPTY_SQUARE,VAL_SOLID,1,VAL_RED);//顯示圖譜

        圖3為頻譜分析儀實(shí)時(shí)工作時(shí)的用戶界面,左側(cè)為參數(shù)設(shè)置,右側(cè)對(duì)應(yīng)實(shí)時(shí)顯示在參數(shù)設(shè)定后的信號(hào)波形。

        2.4數(shù)據(jù)儲(chǔ)存與回放

        在對(duì)原始信號(hào)進(jìn)行實(shí)時(shí)分析時(shí),為了將來完整、詳盡的分析,需要對(duì)數(shù)據(jù)進(jìn)行儲(chǔ)存與回放,代碼如下。

        數(shù)據(jù)存儲(chǔ)程序:

        ArrayToFile("data.xls",wavesignal,VAL_DOUBLE,numRead*gNumChannels,gNumChannels,VAL_GROUPS_TOGETHER,VAL_GROUPS_AS_COLUMNS,VAL_SEP_BY_TAB,10,VAL_ASCII,VAL_APPEND);

        ProcessSystemEvents();

        free (wavesignal);

        MessagePopup ("保存"," OK");

        數(shù)據(jù)回放:

        FileToArray("data.xls",savesignal,VAL_DOUBLE,numRead*gNumChannels,gNumChannels,VAL_GROUPS_TOGETHER,VAL_GROUPS_AS_COLUMNS,VAL_ASCII);

        DeleteGraphPlot(panelHandle,PANEL_GRAPH,-1,VAL_IMMEDIATE_DRAW);//刷新

        PlotY(panelHandle,PANEL_GRAPH,savesignal,wavepoint,VAL_DOUBLE,VAL_THIN_LINE,VAL_EMPTY_SQUARE,VAL_SOLID,1,VAL_BLUE);//顯示

        free (savesignal);//釋放內(nèi)存,任務(wù)結(jié)束

        4 結(jié)束語

        文中在LabWindows/CVI 2010虛擬儀器軟件平臺(tái)下,利用專用信號(hào)分析函數(shù)庫,開發(fā)了一種基于虛擬儀器的實(shí)時(shí)頻譜分析儀。由于涉及硬件底層驅(qū)動(dòng)開發(fā),運(yùn)用基于C語言的LabWindows/CVI要比其他開發(fā)平臺(tái)執(zhí)行效率更高、功能開發(fā)更靈活。該設(shè)計(jì)經(jīng)過實(shí)驗(yàn)驗(yàn)證,數(shù)據(jù)更新速度快,頻譜數(shù)據(jù)顯示穩(wěn)定準(zhǔn)確,在測(cè)控領(lǐng)域具有顯著的實(shí)際意義。

        參考文獻(xiàn):

        [1]譚秀萍,吳曉輝,范蟠果,等.LabWindows/CVI多線程技術(shù)在電負(fù)載系統(tǒng)中的應(yīng)用.測(cè)控技術(shù),2011(8):79-82.

        [2]程乃平,席有猷,趙陽.基于Labwindows/CVI的虛擬頻譜分析儀設(shè)計(jì).電子測(cè)量技術(shù),2009(7):109-111.

        [3]邢志彩,王靈莉,王旭柱.基于LabWindows/CVI的傅里葉變換光譜測(cè)量的數(shù)據(jù)采集系統(tǒng).微型機(jī)與應(yīng)用,2011(10):1-4.

        [4]馬青亮,周倫彬,李振娜.基于LabWindows/CVI的信號(hào)分析儀的設(shè)計(jì).中國測(cè)試,2009(6):50-53.

        [5]胡寧,徐兵.基于LabVIEW的頻譜分析儀的設(shè)計(jì).計(jì)算機(jī)測(cè)量與控制,2013(5):1404-1407.

        猜你喜歡
        沃斯虛擬儀器分析儀
        Sievers分析儀(蘇伊士)
        一種用于深空探測(cè)的Chirp變換頻譜分析儀設(shè)計(jì)與實(shí)現(xiàn)
        自己的歌
        安迪·高茲沃斯——塑造自然的藝術(shù)家
        PCB 刻制機(jī)功能開發(fā)及在虛擬儀器實(shí)驗(yàn)室建設(shè)中的應(yīng)用
        電子制作(2017年13期)2017-12-15 09:00:26
        量一量你的熱愛
        虛擬儀器及其在電工電子實(shí)驗(yàn)中的應(yīng)用
        電子制作(2017年1期)2017-05-17 03:54:33
        虛擬儀器技術(shù)在農(nóng)業(yè)裝備測(cè)控中的應(yīng)用
        基于虛擬儀器的DMFC實(shí)時(shí)監(jiān)控系統(tǒng)
        雨天
        在线观看国产自拍视频| 又爽又黄无遮挡高潮视频网站| 国产一级在线现免费观看| 免费看男女啪啪的视频网站| 日韩精品熟女中文字幕| 亚洲熟妇av日韩熟妇在线| 在线免费毛片| 精品国产一品二品三品| 人妻久久一区二区三区蜜桃| 性大毛片视频| 成年女人A级毛片免| 亚洲中文字幕亚洲中文| 欧美拍拍视频免费大全| 成人在线观看av毛片| 亚洲av网一区二区三区| 久久久久无码国产精品不卡| 中文字幕日韩精品美一区二区三区 | 国产剧情一区二区三区在线 | 国产高清在线视频一区二区三区| 粗大的内捧猛烈进出视频| 国产成人精品午夜福利在线| 亚洲一区二区三区av色婷婷| 桃红色精品国产亚洲av| 人妻av无码系列一区二区三区 | 综合久久青青草免费观看视频| 日韩有码中文字幕在线观看| 中文字幕精品久久久久人妻红杏ⅰ | 亚洲性无码一区二区三区| 香蕉视频在线观看国产| 91亚洲国产成人久久精品网站 | 99久久人妻无码精品系列| 国产一级大片免费看| 丰满少妇又爽又紧又丰满动态视频| 亚洲在线视频免费视频| 亚洲国产长腿丝袜av天堂| 国内精品视频成人一区二区| 精品人妻69一区二区三区蜜桃| 日韩av东京社区男人的天堂| 久久久久中文字幕精品无码免费| 日韩女优在线一区二区| 国产成人精品一区二区三区|