<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 電源與新能源 > 設計應用 > 基于VC++的動(dòng)態(tài)信號分析系統的設計方案

基于VC++的動(dòng)態(tài)信號分析系統的設計方案

作者: 時(shí)間:2016-12-09 來(lái)源:網(wǎng)絡(luò ) 收藏

隨著(zhù)科技水平的不斷提高,機械工程振動(dòng)測試技術(shù)也隨之進(jìn)入了一個(gè)嶄新的階段。動(dòng)態(tài)信號分析作為一門(mén)以捕捉和處理各種動(dòng)態(tài)信息為目的的綜合技術(shù)在當代科學(xué)技術(shù)中占有相當重要的地位。近年來(lái),多通道、高性能動(dòng)態(tài)信號分析系統推出并已廣泛應用于各個(gè)領(lǐng)域。并且隨著(zhù)使用者對動(dòng)態(tài)信號的分析需求越來(lái)越多樣化,使得柔性化設計成為動(dòng)態(tài)信號分析系統研制的主流方向。國外的動(dòng)態(tài)信號儀器采樣精度高、功能強大,但產(chǎn)品的價(jià)格相對很高。而目前國內的測試分析系統與國外的相比,還有一定的差距。因此,研制擁有自主知識產(chǎn)權的實(shí)時(shí)的動(dòng)態(tài)信號分析系統有著(zhù)非?,F實(shí)的科學(xué)意義和工程實(shí)用價(jià)值。

基于此,本文以Windows XP系統為開(kāi)發(fā)平臺,采用面向對象的編程技術(shù)和VC++為開(kāi)發(fā)工具,研制一套基于VC++的動(dòng)態(tài)信號分析系統。軟件開(kāi)發(fā)采用模塊化的設計細想,把各種功能對象化并進(jìn)行封裝,提高了各模塊的可移植性和重復使用性。系統可實(shí)現對單個(gè)和多個(gè)信號的實(shí)時(shí)同步采集,并能對信號進(jìn)行分析處理,還能實(shí)現數據分段存儲和波形回放查看。

1 系統總體設計

系統總體設計的好壞直接關(guān)系到整個(gè)測試分析任務(wù)的成敗以及完成質(zhì)量的好壞。從硬件上看,系統總體上由計算機、USB 接口、數據采集硬件、傳感器等組成。

從軟件上看,該系統包括固件程序、驅動(dòng)程序及應用軟件。

固件程序是采集卡商家以寫(xiě)好燒進(jìn)采集卡硬件的程序,負責采集卡的采集工作。

驅動(dòng)程序和應用軟件則裝在計算機中,驅動(dòng)程序是遵循USB協(xié)議編寫(xiě)的負責應用軟件與采集卡正常通信的程序。

應用軟件是人機交互接口,是實(shí)現信號分析處理各項功能的關(guān)鍵部分。

軟件系統設計與開(kāi)發(fā)是本項目開(kāi)發(fā)的重點(diǎn)和難點(diǎn)。利用VC++為開(kāi)發(fā)平臺,進(jìn)行系統軟件設計。本項目的軟件系統設計主要包括:軟件系統總體框架設計、數據采集模塊設計、信號分析與處理模塊設計、數據存儲模塊設計等。

動(dòng)態(tài)信號分析系統總體設計框圖如圖1所示。

2 系統統一架構

軟件設計以Windows XP 系統為開(kāi)發(fā)平臺,采用面向對象的編程技術(shù)和VC++ 6.0為開(kāi)發(fā)工具實(shí)現。軟件開(kāi)發(fā)采用模塊化的設計細想,把各種功能對象化并進(jìn)行封裝,提高了各模塊的可移植性和重復使用性。采用統一的軟件體系和總體模塊組成結構,即每個(gè)模塊都包含程序控制、參數設置、數據分析和數據顯示四個(gè)子模塊。

其中參數設置模塊、數據分析模塊和數據顯示模塊為功能模塊,程序控制模塊是系統的中樞部分,它負責協(xié)調各個(gè)模塊有效的配合和工作,接受操作者給出的各種指令,調用相應的分析模塊算法,并把分析結果通過(guò)數據可視化接口顯示給用戶(hù)。子模塊的菜單、工具條及快捷鍵是程序控制模塊的外在表現,并通過(guò)這些外在的表現與操作者交互,轉化為各個(gè)功能模塊能夠理解的內部指令,統一調用功能模塊,實(shí)現用戶(hù)預期的指令目標。

數據分析模塊采用動(dòng)態(tài)鏈接庫技術(shù),集成和封裝了系統所需的算法,并提供接口供程序控制模塊調用,是每個(gè)子模塊的核心部分。

數據顯示模塊負責將數據處理的結果以豐富的方式呈現給用戶(hù),供用戶(hù)對處理結果進(jìn)行評判或進(jìn)一步的處理。

四個(gè)子模塊的組成關(guān)系如圖2所示。

3 系統的軟件設計

軟件系統設計與開(kāi)發(fā)是整個(gè)分析系統開(kāi)發(fā)的重點(diǎn)和難點(diǎn)。采用VC++為開(kāi)發(fā)平臺,進(jìn)行系統軟件設計。

軟件系統設計主要包括:軟件系統總體架構設計、數據采集模塊設計、信號分析與處理模塊設計、數據存儲模塊設計等。

軟件系統總體架構設計見(jiàn)第2部分,不再贅述。數據采集模塊、數據分析與處理模塊和數據存儲模塊。三個(gè)模塊之間,相互聯(lián)系,其功能分別如下:

數據采集模塊:采集卡參數設置、采集設備的啟??刂坪蛷臀?,實(shí)現數據采集功能(連續采集或單次采集);數據分析和處理模塊:通過(guò)從數據采集模塊或存儲模塊的獲得數據,結合分析參數的設置,實(shí)現信號實(shí)時(shí)波形顯示、頻譜分析、相關(guān)分析、包絡(luò )譜分析、統計特征分析等;數據存儲模塊:實(shí)現數據的存儲和讀取,并回放顯示、分析處理的功能。

3.1 系統界面設計

程序設計中,選用單文檔結構來(lái)編制應用程序。

基本布局設計如下:窗口頂部為菜單工具條區域,左下部分為數據顯示區域,右下部為數據信息瀏覽和控制區域。系統主界面如圖3所示。

首先將客戶(hù)區分割為1行2列兩個(gè)部分:左側為電壓值數字顯示窗口,關(guān)聯(lián)的類(lèi)為CADDigitView(派生自CScrollView);右側為圖形顯示窗口,關(guān)聯(lián)的類(lèi)為CAD-WaveView(派生自CScrollView)。參數設置及分析控制采用2個(gè)對話(huà)欄,派生自CDialogBar,用戶(hù)可以通過(guò)其進(jìn)行采集卡參數設置和信號采集、分析控制。由于程序功能較為簡(jiǎn)單,故在界面上幾乎就可以進(jìn)行全部的操作,使用上極其方便。

3.2 主要處理算法

3.2.1 FFT

頻譜分析是數字信號處理技術(shù)的一個(gè)非常重要的手段,以便能清楚的看到某波形的頻譜分布情況.而要對一個(gè)輸入信號源作頻譜分析,將其由時(shí)域信號轉變?yōu)轭l域信號,就必然要用到傅里葉分析??焖俑道锶~變換(Fast Fourier Transform,FFT)的迅速發(fā)展,使數字頻譜分析取得了突破性的進(jìn)展。FFT的算法種類(lèi)較多,而且選擇使用的方式也各不一樣,本文選用時(shí)間抽選奇偶分解快速離散傅里葉變換。

基2型FFT算法的步驟如下:

(1)將原始序列按下標的奇、偶性質(zhì)不斷分解,一直由一個(gè)N 項序列分解為N 個(gè)單項重排序列;

(2)計算N 個(gè)單項序列的DFT.此時(shí),N = 1,而0  n  N - 1,所以,n = k = 0,于是:

即單項序列的DFT就是其自身,這樣就求得了N 個(gè)單項重排序列的DFT;

(3)對N 個(gè)單項重排子序列的DFT兩兩合成,最終得到一個(gè)N 項序列的DFT,這就是原始序列的DFT.

根據上面的指導思想,就可編制FFT計算程序。

在進(jìn)行FFT時(shí),按照“蝴蝶圖”所描述的計算方法對輸入的時(shí)域序列按奇偶分解后的序列排序而輸出的頻域序列仍是按自然順序排列的。此方法無(wú)須中間存儲單元,但需要倒一次序.

下面代碼用于完成對原始采樣時(shí)域序列的快速傅里葉變換,A,M 分別表示指向原始采樣數據數組的指針和序列長(cháng)度的2的整數次冪:

1 kHz 矩形波頻譜圖,包括實(shí)譜、虛譜、幅值譜、相位譜如圖4所示。

3.2.2 相關(guān)性分析

在信號分析中,相關(guān)性是一個(gè)非常重要的概念,它表達了兩個(gè)信號(或一個(gè)信號不同時(shí)刻)之間的線(xiàn)性相關(guān)程度。

相關(guān)函數及其離散化數據計算公式為:

式中:N 為采樣點(diǎn)數;Δt 為采樣間隔;n 為時(shí)間序列;r為時(shí)延序列(時(shí)間位移數)。

自相關(guān)分析算法:

(1)標準方法

根據式(3)直接計算采樣數據之間的平均乘積,然后以此作為自相關(guān)函數估計。本次即采用該方法設計算法;

(2)間接方法

該方法得到的不是通常的自相關(guān)函數,是“循環(huán)”相關(guān)函數。該方法通過(guò)在原數據補0后經(jīng)FFT,計算其自功率譜后做IFFT,取前半部分而得到其自相關(guān)函數。

互相關(guān)函數及其離散化數據計算公式為:

互相關(guān)分析算法:

(1)標準方法

根據式(5)直接計算采樣數據之間的平均乘積,然后以此作為互相關(guān)函數估計。本次即采用該方法設計算法;

(2)間接方法

該方法同FFT,計算其互功率譜后做IFFT,取前半部分而得到其互相關(guān)函數。

兩個(gè)不同頻率的正弦波信號的相關(guān)信號如圖5 所示,因為頻率不同,所以不相關(guān),其波形接近值恒為零的直線(xiàn)。

3.2.3 包絡(luò )線(xiàn)分析

信號的包絡(luò )通常有3種提取方法:Hilbert幅值解調法、檢波-濾波法和高通絕對值解調法。

Hilbert法解調出的包絡(luò )是對信號絕對值的包絡(luò ),其解調幅值代表真實(shí)包絡(luò ),且在A(yíng)RM系統中,Hilbert變換可以方便地借助FFT來(lái)實(shí)現,所以,本文采用Hilbert變換法提取信號的包絡(luò )。

具體的步驟如下:

(1)對x(t) 做FFT,得X(k),k = 0,1,2,-,N - 1,注意k = N 2,-,N - 1 對應負頻率;

(2)Z(k) 的取值:

(3)對Z(k) 做逆FFT,即得到x(n) 的解析信號z(n) ;

(4)| z(n)|即為 x(n)的包絡(luò )。

通過(guò)以上分析編程實(shí)現了對信號的包絡(luò )解調。

圖6 所示為一調制波波形,對其進(jìn)行包絡(luò )分析,結果如圖7所示。

4 閃屏現象及其解決方案

VC 中基于MFC 編寫(xiě)的程序中,窗口的移動(dòng)縮放、鼠標點(diǎn)擊等操作都會(huì )引起窗口重繪.本應用程序中使用繪圖方式輸出采集數據、信號波形圖、頻譜圖等,繪制比較復雜,也比較消耗CPU時(shí)間,因此頻繁的重繪會(huì )引起畫(huà)面閃爍,影響信號動(dòng)態(tài)顯示分析效果,為此這里采用了雙緩存技術(shù),解決閃屏問(wèn)題。

雙緩存技術(shù)就是先在內存中準備一塊區域,把要顯示的位圖都加載到內存中,然后調用BitBlt函數,把內存設備復制到顯示設備上,這個(gè)過(guò)程比較簡(jiǎn)單,就是將圖面的每個(gè)像素一次復制到輸出設備,不需消耗太多的時(shí)間,這樣就可以防止閃屏,改善顯示效果。

雙緩沖繪圖主要代碼如下:

5 系統測試分析

為驗證系統的正確性和可靠性,產(chǎn)生如下信號:

取分析長(cháng)度(時(shí)間塊)T = 10 s,從式中可以看出有4種頻率


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: VC++動(dòng)態(tài)信

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>