久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2590|回復: 0
收起左側

Matlab傅里葉算法及數字濾波

[復制鏈接]
ID:411901 發表于 2018-10-18 19:45 | 顯示全部樓層 |閱讀模式

實驗一
用Matlab進行信號的一維快速傅立葉變換
一、 實驗目的
1、了解傅立葉變換的物理意義:序列的離散傅立葉變換就是序列的離散頻譜; 2、了解FFT,掌握FFT的函數調用格式;
3、應用FFT計算信號的頻譜。
二、 實驗原理:?
1、離散傅立葉變換(DFT)及其主要性質
DFT表示離散信號的離散頻譜,DFT的主要性質中有奇偶對稱特性,虛實特性等。通過實驗可以加深理解。
對于單一頻率的三角序列來說他的DFT譜線也是單一的。
2、利用DFT對信號進行頻譜分析
DFT的重要應用之一是對時域連續信號的頻譜進行分析,稱為傅立葉分析,時域連續信號離散傅立葉分析的基本步驟如圖2。1所示。
Sc(t)?LPF?A/D?X?DFT?y(k)
?
W(n)
其中混疊低通濾波LPF的引入,是為了消除或減少時域連續信號轉換成序列時可能出現的頻譜混疊的影響。實際工作中,時域離散信號x(n)的時寬是很長的甚至是無限長的。由于DFT之前,用一個時域有限的窗函數W(n)加到X(n)上是非常重要的。
3、 快速傅立葉變換
快速傅立葉變換是計算離散傅立葉變換的一種快速算法,為了提高運算速度,FFT將DFT的計算逐次分解成較小點數的DFT。按時間抽取的FFT算法把輸入序列x(n)按其n值為偶數或奇次分解成越來越短的序列。按頻率抽取的FFT算法把輸入序列x(n)按其k為偶數或奇次分解成越來越短的序列。
三、 實驗用MATLAB語言工具函數簡介
MATLAB中計算序列的離散傅立葉變換和逆變換是采用快速算法,利用fft 和ifft函數實現。調用格式分別為[Xk]=fft(Xn,N)和[XN]=ifft(X,N)。
四、 實驗要求與實驗內容

1、 clear all
>> fs=1000;N=200;
>> n=0:N-1;t=n/fs;
>> x=sin(2*pi*50*t)+sin(2*pi*120*t); >> x=x+randn(1,length(t));
>> y=fft(x,N);
>> f=n*fs/N;
>> mag=abs(y);
>> subplot(2,2,1),plot(f,mag); >> xlabel('t');ylabel('x(t)'); >> title('x(t) N=200');
實驗3。(1)

N=100;
n=0:N-1;
xn=3*(0.9+0.3*j).^n; XK=fft(xn,N);
magXK=abs(XK);
phaXK=angle(XK); subplot(3,2,1)
plot(n,xn)
xlabel('n');ylabel('x(n)');
title('x(n) N=100'); subplot(2,2,2)
k=0:length(magXK)-1; stem(k,magXK,'.'); xlabel('k');ylabel('|X(k)|');
title('X(k) N=100'); 實驗3。(2)

clear all
close all
N=100;
FS=1;
n=0:1/FS:N-1; x=cos((2*pi/N)*n); subplot(3,1,1) plot(x);
title('x=cos((2*pi/N)*n)');
xlabel('序列x(n)')
grid on
number=512;
y=fft(x,number); z=0:length(y)-1; f=FS*z/length(y); subplot(3,1,3) plot(f,abs(y)); title('信號的FFT');
xlabel('頻率Hz')
grid on
實驗3。(3)

clear all
close all
FS=1;
n=100;
w=boxcar(n);
subplot(3,1,1) plot(w)
title('R(n)'); xlabel('序列x(n)')
grid on
number=512;
y=fft(w,number); z=0:length(y)-1; f=FS*z/length(y); subplot(3,1,3) plot(f,abs(y)); title('信號的FFT');
xlabel('頻率Hz')
grid on
實驗二
用Matlab設計IIR數字濾波器
五、 實驗目的
熟悉模擬Batterworth濾波器設計和用雙線性變換法設計數字IIR濾波器的方法。
六、 實驗原理:
利用雙線性變換法設計IIR濾波器。首先要設計出滿足指標要求的模擬濾波器的傳遞函數Ha(s),r然后由Ha(s)通過雙線性變換可得到所要設計的 IIR濾波器的系統函數H(z).如果給定的指標為數字濾波器的指標,則首先要轉換為模擬域的指標。
1、低通數字濾波器的設計
2、高通數字濾波器的設計
3、帶通數字濾波器的設計
4、帶阻數字濾波器的設計
七、 實驗用MATLAB語言工具函數簡介
用雙線性變換法設計IIR濾波器是IIR濾波器設計的經典方法,首先根據模擬濾波器的指標設計出相應的模擬濾波器,然后將設計好的模擬濾波器轉化成滿足給定技術指標的數字濾波器。在MATLAB的數字信號處理語言工具箱中提供了相應的設計函數,常用的有:
1、 Batterworth濾波器階數選擇函數
[N,Wn]=buttord(Wp,Ws,Rs)
2、 零極點增益模型到傳遞函數模型的轉換
[num,den]=zp2tf(Z,P,K);
3、從低通到低通的轉換
[b,a]=lp21p(Bap,Aap,Wn);
4、雙線形變換函數
[bz,az]=bilinear(b,a,Fs);
八、 實驗要求與實驗內容
1、用雙線性變換法設計Batterworth低通數字IIR濾波器,要求通帶內頻率低于0.2rad時,容許的幅度誤差在1dB之內,頻率在0.3rad到pi rad之間的阻帶衰減大于10dB.
>> clear all
>> Wp=0.2*pi;
>> Ws=pi;
>> Rp=1;
>> Rs=10;
>> Fs=0.5;
>> Ts=1/Fs;
>> [N,Wn]=buttord(Wp,Ws,Rp,Rs,'s'); >> [Z,P,K]=buttap(N);
>> [Bap,Aap]=zp2tf(Z,P,K);
>> [b,a]=lp2lp(Bap,Aap,Wn); >> [bz,az]=bilinear(b,a,Fs);
>> [H,W]=freqz(bz,az);
>> plot(W*Fs/(2*pi),abs(H)); >> grid
>> xlabel('頻率/Hz')
>> ylabel('幅度')
>> clear all

實驗三
用窗口法設計FIR數字濾波器
一、 實驗目的
了解一個實際濾波器設計過程,加深掌握窗口法設計FIR數字濾波的原理和窗函數對濾波器的性能的影響。
二、 實驗原理:
設所希望得到的濾波器的理想頻率響應為Hd(e^jw).那么我們要尋找一個傳遞函數去逼近Hd(e^jw)。在這種逼近中最直接的一種方法是從單位取樣的響應序列h(n)著手,使h(n)逼近理想的單位取樣響應Hd(n),我們知道Hd(n)可以從理想頻率響應Hd(e^jw)通過傅立葉反變換來得到。
三、 實驗用MATLAB語言工具函數簡介
1、矩形序列Rn(n)
調用格式:w=boxcar(n)
2、三角窗函數triang
調用格式:W=triang(n)
四、 實驗要求與實驗內容

clear all
close all
n=21;
w=triang(n); b=fir1(20,0.5,w) freqz(b,1)



回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美国产精品一区二区三区 | 高清免费在线 | 久久看精品 | 欧美色视频免费 | 操操操av | 一区二区在线观看免费视频 | 日本一区二区视频 | 久久国产精品免费一区二区三区 | 久久久久久久综合 | 亚洲视频在线观看 | 欧美精品一区二区三区在线播放 | 亚洲一区二区免费视频 | 一区二区三区四区国产 | 91在线看网站 | 黄在线 | 狠狠久| 91久久看片 | 久久丁香| 亚洲精品片 | 国产片网站 | 做a视频| 羞羞视频免费观看 | 亚洲欧洲在线观看视频 | 久久免费福利 | h片在线观看免费 | 一区二区三区国产好 | 日本91av视频 | 久久综合久久久 | 九色网址| 国产精品99久久久久久久久久久久 | 国产精品久久久久久久久久免费 | 中文成人在线 | 一区二区三区小视频 | 91久久久久久久久久久 | 免费中文字幕 | 午夜影院中文字幕 | 亚洲人va欧美va人人爽 | 国产一级黄色网 | 亚洲一一在线 | 成人久久18免费网站麻豆 | 中文在线一区二区 |