• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

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

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

      楊晉霞 汪東芳

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

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

      中圖分類號:TN911.6 文獻標識碼:A 文章編號:1009-3044(2016)19-0240-01

      1 背景

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

      2 傅里葉變換

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

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

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

      3 仿真分析

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

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

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

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

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

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

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

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

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

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

      z1=fft(x);%對信號x(t)進行傅里葉變換

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

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

      u1=fft(y);% 對信號y(t)進行傅里葉變換

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

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

      l=length(t);%計算信號的長度

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

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

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

      4 結(jié)束語

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

      參考文獻:

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

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

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

      猜你喜歡
      頻譜分析仿真
      一種幫助幼兒車內(nèi)脫險應(yīng)急裝置的仿真分析
      田阳县| 镇宁| 五峰| 平南县| 伊宁县| 南乐县| 五台县| 三亚市| 邢台市| 岑溪市| 伊宁县| 塘沽区| 获嘉县| 东海县| 永胜县| 秦皇岛市| 黑河市| 台北县| 汾阳市| 竹山县| 江山市| 石屏县| 黄山市| 台中市| 通河县| 乳山市| 稷山县| 江孜县| 报价| 阿坝县| 洪湖市| 乌什县| 新乡县| 特克斯县| 崇阳县| 西乌珠穆沁旗| 曲阳县| 岚皋县| 天柱县| 当涂县| 聊城市|