国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

MATLAB在信號(hào)頻譜分析中的應(yīng)用

2016-08-18 20:23楊晉霞汪東芳
電腦知識(shí)與技術(shù) 2016年19期
關(guān)鍵詞:頻譜分析仿真

楊晉霞 汪東芳

摘要:利用MATLAB對(duì)信號(hào)頻譜進(jìn)行分析,通過(guò)兩種方法將頻譜橫軸的快速傅里葉變換點(diǎn)數(shù)轉(zhuǎn)換成頻率。以常見信號(hào)頻譜分析為例,將結(jié)果以圖形化的方式顯示出來(lái)。通過(guò)MATLAB仿真,使以往抽象的內(nèi)容具體化。

關(guān)鍵詞:頻譜分析;MATLAB;快速傅里葉變換;仿真

中圖分類號(hào):TN911.6 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)19-0240-01

1 背景

信號(hào)的頻域分析在信號(hào)處理中非常重要。MATLAB 軟件作為一種科學(xué)計(jì)算工具,因其功能強(qiáng)大,被越來(lái)越多的科研和工程技術(shù)人員用來(lái)進(jìn)行科學(xué)研究與計(jì)算。MATLAB提供的豐富的計(jì)算函數(shù)和繪圖命令,很方便實(shí)現(xiàn)信號(hào)頻域分析這一抽象理論的可視化,為信號(hào)分析提供了方便。

2 傅里葉變換

信號(hào)的分析方法包括時(shí)域分析方法和頻率域分析方法兩種。傅里葉變換可以用于連續(xù)時(shí)間信號(hào)系統(tǒng)和離散時(shí)間系統(tǒng)的頻率分析中,其中常用的是離散傅里葉變換( DFT)和快速傅里葉變換(FFT)。

設(shè) x (n) 為 N 點(diǎn)的有限長(zhǎng)序列,其離散傅里葉變換為F(k),從公式中可以看出,離散信號(hào)的傅里葉變換需要N2-N次復(fù)數(shù)加法和N2次復(fù)數(shù)乘法運(yùn)算。當(dāng)N很大時(shí),運(yùn)算時(shí)間會(huì)很長(zhǎng),要求設(shè)備較復(fù)雜,影響了離散傅里葉變換的使用。

Cooley- Tukey于1965年發(fā)表的快速傅立葉變換算法 , 使得信號(hào)處理中傅立葉變換和卷積的計(jì)算量從 N2量級(jí)降到了 Nlog2N量級(jí), 為數(shù)字信號(hào)處理的發(fā)展史揭開了新的一頁(yè)。 它利用了傅里葉變換式中旋轉(zhuǎn)因子W的對(duì)稱性和周期性,使長(zhǎng)序列的 DFT分解為更小點(diǎn)數(shù)的 DFT,從而大大減少了運(yùn)算工作量,計(jì)算量銳減使FFT得到了極大地推廣。

3 仿真分析

文中采用MATLAB7.0仿真平臺(tái),產(chǎn)生一個(gè)連續(xù)時(shí)間信號(hào)并生成其頻譜。以頻率為1Hz和2Hz的余弦信號(hào)x(t)和y(t)為例,采樣間隔取ts=1/100s,利用matlab中函數(shù)fft對(duì)其進(jìn)行4096點(diǎn)的快速傅立葉變換。得到的頻譜橫軸為采樣點(diǎn)數(shù),縱軸為頻譜幅值,從圖中無(wú)法確定頻譜幅值非零位置對(duì)應(yīng)的頻率,即不能確定信號(hào)的頻譜范圍。

于是采用兩種方法對(duì)橫坐標(biāo)的采樣點(diǎn)數(shù)進(jìn)行改進(jìn),將采樣點(diǎn)轉(zhuǎn)換為頻率值。第一種方法仍然是對(duì)頻率為1Hz和2Hz的余弦信號(hào)x(t)和y(t)信號(hào)進(jìn)行4096點(diǎn)的FFT變換,進(jìn)行變換后,將頻譜中心搬到零頻,再求幅頻值,最后對(duì)橫軸進(jìn)行了處理,實(shí)現(xiàn)了指定點(diǎn)傅里葉變換圖。代碼如下:

z1=fft(x,4096);%使信號(hào)x(t)產(chǎn)生4096點(diǎn)的傅里葉變換

z=fftshift(z1);%移動(dòng)頻譜中心到零頻

z=abs(z);%求幅頻值

u1=fft(y,4096);% 使信號(hào)y(t)產(chǎn)生4096點(diǎn)的傅里葉變換

u=fftshift(u1); %移動(dòng)頻譜中心到零頻

u=abs(u); %求幅頻值

a=[-2048:2047]*fs/4096;%將橫坐標(biāo)點(diǎn)數(shù)轉(zhuǎn)換為頻率

第二種方法是對(duì)頻率為1Hz和2Hz的余弦信號(hào)x(t)和y(t)信號(hào)進(jìn)行FFT變換,然后移動(dòng)頻譜中心到零頻,求幅頻值,最后將橫軸采樣點(diǎn)和頻率進(jìn)行轉(zhuǎn)換,得到了橫軸為頻率的頻譜圖。其代碼為:

z1=fft(x);%對(duì)信號(hào)x(t)進(jìn)行傅里葉變換

z=fftshift(z1);%移動(dòng)頻譜中心到零頻

z=abs(z);%求幅頻值

u1=fft(y);% 對(duì)信號(hào)y(t)進(jìn)行傅里葉變換

u=fftshift(u1); %移動(dòng)頻譜中心到零頻

u=abs(u); %求幅頻值

l=length(t);%計(jì)算信號(hào)的長(zhǎng)度

a=0:fs/(l-1):fs;

a=a-fs/2;%將橫軸轉(zhuǎn)換為頻率

圖1為橫軸轉(zhuǎn)換成頻率的1Hz和2Hz余弦信號(hào)頻譜,其中1(a)和1(b)為采用第一種方法轉(zhuǎn)換得到的頻譜圖,2(a)和2(b)為采用第二種方法轉(zhuǎn)換得到的頻譜圖。從圖中可以看出,通過(guò)這兩種方法都可以確定頻率在哪個(gè)位置幅頻值不為零,和理論分析結(jié)果一致,將抽象的概念和復(fù)雜的公式計(jì)算通過(guò)圖形表示出來(lái),使我們對(duì)信號(hào)的頻譜分析更容易。

4 結(jié)束語(yǔ)

MATLAB是通信、電子專業(yè)的實(shí)驗(yàn)仿真工具。MATLAB的通信工具箱是一個(gè)運(yùn)算函數(shù)和仿真模塊的集合體, 可以用來(lái)進(jìn)行通信領(lǐng)域的研發(fā)、系統(tǒng)設(shè)計(jì)和仿真分析。將MATLAB引入信號(hào)頻譜分析中,通過(guò)觀察MATLAB生成的信號(hào)時(shí)域波形和頻譜圖,方便直觀地給出信號(hào)頻譜分布情況,文中采用兩種方法將橫軸的FFT點(diǎn)數(shù)轉(zhuǎn)換成頻率,仿真得到的結(jié)果與理論分析一致。

參考文獻(xiàn):

[1] 程鈴, 徐冬冬. Matlab仿真在通信原理教學(xué)中的應(yīng)用[J]. 實(shí)驗(yàn)室研究與探索, 2010, 29(2): 117-119.

[2] 胡麗瑩, 肖蓬. 快速傅里葉變換在頻譜分析中的應(yīng)用[J]. 福建師范大學(xué)學(xué)報(bào), 2011, 27(4):27-30.

[3] 徐巖, 張曉明. 基于離散傅里葉變換的頻譜分析新方法[J]. 電力系統(tǒng)保護(hù)與控制, 2011,39(11):38-43.

猜你喜歡
頻譜分析仿真
一種幫助幼兒車內(nèi)脫險(xiǎn)應(yīng)急裝置的仿真分析