MATLAB實驗

(一)

1.離散傅里葉變換

1.計算x=[1 0 2 3]的離散傅里葉變換值X。
程序:

clc;close;clear
x=[1 0 2 3];
X=fft(x)
save X

結果:
X= 6.0000 + 0.0000i -1.0000 + 3.0000i 0.0000 + 0.0000i -1.0000 - 3.0000i

2.矩陣相關

1.在區間[0,1]s上生成均勻分佈的長度爲20的向量A。
程序:

A=linspace(0,1,20)

結果:
列 1 至 11
0 0.0526 0.1053 0.1579 0.2105 0.2632 0.3158 0.3684 0.4211 0.4737 0.5263
列 12 至 20
0.5789 0.6316 0.6842 0.7368 0.7895 0.8421 0.8947 0.9474 1.0000

2.請生成均值爲0.5、方差爲0.04的5階正態分佈隨機矩陣B。
程序:

B=0.5+sqrt(0.04)*randn(5)

結果
B =
0.6075 0.2385 0.2300 0.4590 0.6343
0.8668 0.4133 1.1070 0.4752 0.2585
0.0482 0.5685 0.6451 0.7979 0.6434
0.6724 1.2157 0.4874 0.7818 0.8260
0.5638 1.0539 0.6429 0.7834 0.5978

  1. 生成長度爲100的單位階躍序列,階躍點n0=25。用離散信號圖表示。
    程序:
N=100;n=25
u=ones(1,N);
u(1,1:n)=0;
stem(0:N-1,u)

在這裏插入圖片描述

3.信號疊加

1.幅度爲1V,頻率爲5Hz的正弦信號和(0,0.01)的白噪聲信號的疊加。信號長1秒。設採樣頻率爲100Hz。將正弦信號和白噪聲信號表示在一張圖形框,不同座標系內。另起一個圖形框對疊加信號作圖。
程序:

ts=0;te=1;
fs=100;f1=5;
t=ts:1/fs:te;
y1=sin(2*pi*f1*t);
y2=sqrt(0.01)*randn(size(t));
subplot(1,2,1);plot(t,y1,'c')
subplot(1,2,2);plot(t,y2,'m')
figure(2)
plot(t,y1+y2,'k')

在這裏插入圖片描述
在這裏插入圖片描述

4.卷積和

已知y=conv(x,h)能夠完成輸入信號x(n)與系統單位樣值響應h(n)的卷積操作,得到輸出信號y(n)
請通過調用子函數y=conv(x,h),編制一個程序 [y ny ]=conv1(x,h,nx,nh),其中ny是y(n)第一個樣值的n值, nx是x(n)第一個樣值的n值, nh是h(n)第一個樣值的n值.
完成: (1) 若 x(n)=[3 1 21 5 3.7 ] ,nx =-1; h(n)=[1 1 3 ] ,nh=-2 ,則y(n)和ny爲多少?請用你編制的函數conv1完成。
程序:

x=[3 1 21 5 3.7]
h=[1 1 3]
nx=-1;
h=[1 1 3];
nh=-2;
y=conv(x,h)
ny=nx+nh
[y,ny]=conv1(x,h,nx,nh)

y =
3.0000 4.0000 31.0000 29.0000 71.7000 18.7000 11.1000
ny =
-3

2) 給出conv1的程序內容

  function [y,ny]=conv1(x,h,nx,nh) 
ny=nx+nh
wa = length(x);
wb = length(h);
y = zeros(1,wa+wb-1);
for k = 1:wa
    c = x(k)*h;
    d = y(1,k:k+wb-1);
    d = d+c;
    y(1,k:k+wb-1) = d;
end

(二)

1.差分方程的零極點,衝激響應,頻響特性曲線,Simulink系統結構圖。

1.已知系統的差分方程爲: 在這裏插入圖片描述

(1)給出該系統的零點向量q和極點向量p值,並在z平面上繪製零極點圖
(給出命令語句);
程序:

clc;clear;close;
a=[0.2 0.1 0];
b=[1 -0.4 -0.5]; 
[q,p,k]=tf2zp(a,b)
zplane(q,p)

q = 0
-0.5000
p = 0.9348
-0.5348
k = 0.2000
q =0

在這裏插入圖片描述
2.給出求該系統的單位衝激響應,並作出衝激響應的時域圖(給出命令語句);
程序:

clc;clear;close;
a=[0.2 0.1 0];b=[1 -0.4 -0.5]; 
[h,t]=impz(a,b,7,1000)
subplot(1,2,1);stem(t,h)
subplot(1,2,2);impz(a,b)

h =
0.2000
0.1800
0.1720
0.1588
0.1495
0.1392
0.1304
t =
0
0.0010
0.0020
0.0030
0.0040
0.0050
0.0060
在這裏插入圖片描述
3.繪製該系統的頻響特性圖(給出命令語句);
程序:

clc;clear;close;
a=[0.2 0.1 0];b=[1 -0.4 -0.5];
freqz(a,b)

在這裏插入圖片描述
4.試在Simulink下繪製系統的結構圖,並給出該系統的單位階躍響應波形圖。
在這裏插入圖片描述

在這裏插入圖片描述

2.設計不同類型的濾波器

設計一個切比雪夫2型低通濾波器,通帶截止頻率爲500Hz,阻帶截止頻率爲750Hz,通帶衰減rp小於5dB,阻帶衰減rs大於50 dB,取樣頻率爲fs=2000Hz。
1.請用衝激響應不變法設計
程序:

clc;clear;close
fp=500;fss=750;fs=2000;rp=5;rs=1;
wp1=2*pi*fp/fs;
wss1=2*pi*fss/fs;
[N,wc]=cheb2ord(2*pi*fp,2*pi*fss,rp,rs,'s')
[z,p,k]=cheb2ap(N,rs);
[ba,aa]=zp2tf(z,p,k)
[b,a]=lp2lp(ba,aa,wc)
[bz,az]=impinvar(b,a,fs)
[H,f]=freqz(bz,az);
ma=20*log10(abs(H));mp=angle(H)*180/pi;
subplot(2,1,1);plot(f/pi,ma)
subplot(2,1,2);plot(f/pi,mp)

N =
7
wc =
4.3960e+03
ba =
0 0.0221 0 0.1771 0 0.3542 0 0.2024
aa =
1.0000 3.3942 5.7602 6.3172 4.8481 2.6391 0.9617 0.2024
b =
1.0e+24 *
0.0000 -0.0000 0.0000 -0.0000 0.0000 -0.0000 6.4207

a =
1.0e+24 *
0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0069 6.4207
bz =
0.0487 0.1109 0.3499 0.3793 0.2713 0.0821 0.0068
az =
1.0000 -0.5268 0.9353 -0.3602 0.1937 -0.0460 0.0078 -0.0006
在這裏插入圖片描述
H(z):

printsys(bz,az,‘z’)

num/den =

0.048655 z^6 + 0.11087 z^5 + 0.34993 z^4 + 0.37929 z^3 + 0.27128 z^2

  • 0.082133 z + 0.00683

z^7 - 0.52681 z^6 + 0.93531 z^5 - 0.36023 z^4 + 0.19368 z^3 - 0.045952 z^2

  • 0.0078053 z - 0.00057534

2.請用雙線性法設計

clc;clear;close
fp=500;fss=750;fs=2000;rp=5;rs=50;
wp1=2*pi*fp/fs;
wss1=2*pi*fss/fs;
op1=2*fs*tan(wp1/2);
os1=2*fs*tan(wss1/2);
[N,wc]=cheb2ord(op1,os1,rp,rs,'s')
[z,p,k]=cheb2ap(N,50);
[ba,aa]=zp2tf(z,p,k)
[b,a]=lp2lp(ba,aa,wc)
[bz,az]=bilinear(b,a,fs)
[H,f]=freqz(bz,az);
ma=20*log10(abs(H));
mp=angle(H)*180/pi;
subplot(2,1,1);
plot(f/pi,ma)
subplot(2,1,2);
plot(f/pi,mp)

在這裏插入圖片描述
N =
4
wc =

9.5472e+03

ba =
0.0032 0 0.0253 0 0.0253

aa =

1.0000    1.0256    0.5260    0.1592    0.0253

b =
1.0e+14 *
0.0000 0 0.0000 0 2.1018

a =
1.0e+14 *
0.0000 0.0000 0.0000 0.0014 2.1018

bz =
0.1027 0.3469 0.4938 0.3469 0.1027
az =
1.0000 -0.1361 0.5231 -0.0158 0.0218

printsys(bz,az,‘z’)

num/den =
0.10268 z^4 + 0.34692 z^3 + 0.49384 z^2 + 0.34692 z + 0.10268

   z^4 - 0.1361 z^3 + 0.52312 z^2 - 0.015755 z + 0.02179
  1. 請指出兩種方法設計的濾波器有何不同,說明原因。
    脈衝響應不變法的優點:
    1,模擬頻率到數字頻率的轉換時線性的。 2,數字濾波器單位脈衝響應的數字表示近似原型的模擬濾波器單位脈衝響應,因此時域特性逼近好。
    缺點:會產生頻譜混疊現象,只適合帶限濾波器
    雙線性變換法優點:克服多值映射得關係,可以消除頻率的混疊
    缺點:是非線性的,在高頻處有較大的失真。
3.窗函數設計

用窗函數法設計一個線性相位的FIR低通濾波器,指標爲:上下邊帶截止頻率爲w1=0.3pi,w2=0.5pi,階數爲N=15,採用海明窗設計。

clc;clear;close
wp=0.3*pi;ws=0.5*pi;
detaw=ws-wp;
wc=(wp+ws)/2;
b=fir1(15,wc/pi,hamming(16))
freqz(b,1,512) 
   

在這裏插入圖片描述
n =
33
b =
列 1 至 11

0.0015   -0.0000   -0.0025   -0.0023    0.0033    0.0078   -0.0000   -0.0151   -0.0126    0.0168    0.0361

列 12 至 22

-0.0000 -0.0654 -0.0575 0.0902 0.2998 0.3997 0.2998 0.0902 -0.0575 -0.0654 -0.0000

列 23 至 33

0.0361    0.0168   -0.0126   -0.0151   -0.0000    0.0078    0.0033   -0.0023   -0.0025   -0.0000    0.0015

n =

16
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章