You are on page 1of 8

DENEY 1: Matlabde Temel Haberleme Sistemleri Uygulamalar

AMA: MATLAB programnn temel zelliklerinin renilmesi, analog iaretler ve sistemlerin saysal bir ortamda benzetiminin yaplmas ve incelenmesi. DENEYN YAPILII 1. ARET RETM MATLABte saysal ortamda alldndan, herhangi bir sinyalin srekli zaman gibi grlebilmesi iin rnekleme zaman aral yeterince kk seilmelidir. rnekleme frekans ile rnekleme zaman aral arasndaki bant f s = 1 / Ts dir. rnek 1 lk olarak 10 Hzlik sinsoidal iaretin elde edilmesi incelenecektir.
%-------------------------------------------------------------------------%program deney4_1.m close all % Ekranda daha nce izilmi ekil varsa bu ekilleri kapatr. clear all % Daha nceden yaplm bir ilem varsa hafzay temizler. clc % Komut penceresi ekrann temizler. fm=10; % aretin frekans 10 Hz A=100 % rnekleme frekans katsays fs=A*fm %Sinyalin rnekleme frekans Hz; ts=1/fs; n=[0:(1/fs):1]; % Sinyal 0'dan 1 saniyeye kadar faz=0; %30 tsy=cos(2*pi*n*fm+faz); % aretimiz plot(n,tsy, 'k' ); %iaretin zaman izgesinde izimi title('Cosinus dalgasi') xlabel('saniye'); ylabel('genlik'); % axis([xmin xmax ymin ymax]) %--------------------------------------------------------------------------

k gzlemleyip iziniz. rnekleme frekansnn deiiminin (A=1, 2, 10 ve 100 deerleri iin) etkilerini inceleyiniz. plot yerine stem komutunu kullanarak fark gzlemleyiniz.
Yukardaki cosinus tekrarlaynz. dalgasn sinus dalgasna eviriniz. Ayn ilemleri

2. FOURER DNM Fourier dnm, herhangi bir iaretin frekans domeninde incelenmesini salar. MATLAB ortamnda oluturulan tm iaretler ayrk olduundan Fourier dnm ifti olarak DFT ve IDFT kullanlr. fft(x) komutu ile x vektrnn DFTsi FFT algoritmas kullanlarak hzl bir ekilde hesaplanr. fft(x,N)komutu ile N noktal DFT hesaplanr. Eer xin uzunluu Nden kk ise xe

sfrlar eklenerek N boyuna getirilir. N deeri, x(n)in rnek saysndan az olamaz. Eer N deeri girilmezse N deeri iaretin boyutuna eit olarak kabul edilir. rnek 2 Bu rnekte Fourier dnm kullanlarak grltl bir iaret incelenecek ve asl iaretin frekans bileenlerini bulunacaktr. Bu amala deney4_2 balkl programda, 50 Hzlik 0.7 genlikli bir sins iaret ile 120 Hzlik birim genlikli sins iaret toplanarak, elde edilen iarete sfr-ortalamal rasgele grlt eklenmitir. rnekleme frekans 1000 Hzdir. Frekans blgesinde inceleme yapmak iin Hzl Frekans Dnm (FFT) kullanlarak grlt iaretin ayrk frekans dnm elde edilmitir.
%-------------------------------------------------------------------------%program deney4_2.m close all clear all clc Fs = 1000; % rnekleme frekans T = 1/Fs; % Sembol periyodu L = 1000; % aretin uzunluu t = (0:L-1)*T; % Zaman vektr % 50 Hz lik ve 120 Hz lik sinusozoidal iaretin toplam x = 0.7*sin(2*pi*50*t) + sin(2*pi*120*t); y = x + 2*randn(size(t)); % Grltl iaret plot(Fs*t(1:50),y(1:50)) title('gurultu ile bozulmus isaret') xlabel('zaman (ms)') NFFT = 2^nextpow2(L); % FFT uzunluunun hesaplan Y = fft(y,NFFT)/L; % normalize edilmi FFT f = Fs/2*linspace(0,1,NFFT/2); figure % Plot tek-yanl genlik spektrumu plot(f,2*abs(Y(1:NFFT/2))) title('Tek-yanli genlik spektrumu') xlabel('Frekans(Hz)') ylabel('|Y(f)|') %--------------------------------------------------------------------------

k grafiklerini iziniz. aretin uzunluunun (L) arttrlmasnn etkilerini gzlemleyiniz.( r. L=10000)

rnek 3 Bu rnekte FFT uzunluu N deerinin deiimi incelenecektir. deney4_3 programnda bir periyodunda 10 rnek olan ve toplamda 30 rnekten oluan bir kosins iareti oluturulmutur. N iin 3 farkl deer tanmlanp, her bir N deeri iin x(n) iaretinin dnmn hesaplanmtr. N-noktal FFT iin frekans ekseni 0dan N-1e kadardr. Normalize ederek 0dan 1-(1/N)e kadar olmas salanr. Sonu erileri plot komutu ile elde edilir.
%-------------------------------------------------------------------------%program deney4_3.m n = [0:29]; x = cos(2*pi*n/10);

N1 = 15; N2 = 30; N3 = 64; N4 = 256; X1 = fft(x,N1); X2 = fft(x,N2); X3 = fft(x,N3); X4 = fft(x,N4); F1 = [0 : N1 - 1]/N1; F2 = [0 : N2 - 1]/N2; F3 = [0 : N3 - 1]/N3; F4 = [0 : N4 - 1]/N4; subplot(4,1,1) plot(F1,abs(X1),'-x'),title('N = 15'),axis([0 1 0 20]) subplot(4,1,2) plot(F2,abs(X2),'-x'),title('N = 30'),axis([0 1 0 20]) subplot(4,1,3) plot(F3,abs(X3),'-x'),title('N = 64'),axis([0 1 0 20]) subplot(4,1,4) plot(F4,abs(X4),'-x'),title('N = 256'),axis([0 1 0 20]) Inv_X1 = ifft(X1,N1); Inv_X2 = ifft(X2,N2); Inv_X3 = ifft(X3,N3); Inv_X4 = ifft(X4,N4); figure, subplot(4,1,1) plot(Inv_X1,'-x'),title('N = 15') subplot(4,1,2) plot(Inv_X2,'-x'),title('N = 30') subplot(4,1,3) plot(Inv_X3,'-x'),title('N = 64') subplot(4,1,4) plot(Inv_X3,'-x'),title('N = 256') %--------------------------------------------------------------------------

Elde edilen ekilleri inceleyiniz ve iziniz. FFT uzunluunun (N) iaretin uzunluundan kk, eit ya da byk olmas durumlarn yorumlaynz Figure 1 de X1, X2, X3, X4 iaretlerinin neden mutlak deerleri alnarak izilmitir? N deeri iaretin uzunluundan kk olduunda FFT-IFFT sonucunda iaretin elde edilemediini gsteriniz.

rnek 4 Bir nceki rnekte x(n) iaretinin uzunluu 3 periyot ile snrlanmt. Bu blmde byk bir N deeri seilecek ve temel periyodun tekrarlama saysnn deiimi incelecektir.
%-------------------------------------------------------------------------%program deney4_4.m n = [0:29]; x1 = cos(2*pi*n/10); % 3 periyot x2 = [x1 x1]; % 6 periyot x3 = [x1 x1 x1]; % 9 periyot N = 2048; X1 = abs(fft(x1,N)); X2 = abs(fft(x2,N)); X3 = abs(fft(x3,N));

F = [0:N-1]/N; subplot(3,1,1) plot(F,X1),title('3 periyot'),axis([0 1 0 50]) subplot(3,1,2) plot(F,X2),title('6 periyot'),axis([0 1 0 50]) subplot(3,1,3) plot(F,X3),title('9 periyot'),axis([0 1 0 50]) %--------------------------------------------------------------------------

Programdan elde edilen grafikleri iziniz. aretin zaman blgesindeki sresinin artmasnn frekans blgesinde oluturduu etkilerini yorumlaynz. 3. KONVOLSYON Ayrk zamanl, dorusal zamanla deimeyen sistemlerde (LTI), sistemin x(n) giriine verdii cevab bulmak iin, x(n) dizisi ve sistemin birim drt cevab h(n) dizisinin konvolsyonu hesaplanr.
y ( n) = x ( n) h( n)

(1) (2)

y ( n) =

n =

x ( k ) h( n k )

Matlabde bu ilem conv komutu ile gerekletirilir. rnek 5 Ayrk zamanl


n1 5

x1 ( n1 ) = 1 1.3e

2 n1 1 0 n2 4

x 2 ( n 2 ) = e ( 0 . 7 n2 )

iaretleri iin x1 ve x2 iaretlerini iziniz. conv komutu ile dizilerinin izdiriniz. 4. SZGE YAPILARI

konvolsyonunu hesaplaynz ve yeni bir ekilde

Saysal bir sistemin transfer fonksiyonu H(z) olarak gsterilmektedir. Bu transfer fonksiyonu sistemin bir giri iaretine olan etkisini ve ayn zamanda sistemin szge etkisini tanmlar. Szgeler verdikleri frekans cevabna gre Alak geiren (Lowpass, LP) Yksek geiren (High pass, HP) Bant geiren (Bandpass, BP) Bant durduran geirmeyen (Band reject, BR) Tm geiren (All pass, AP)

eklinde ayrlmaktadr. Transfer fonksiyonu H(z)nin genel biimi H ( z) = B( z ) b0 + b1 z 1 + b2 z 2 + ... + bn z n = A( z ) a0 + a1 z 1 + a2 z 2 + ... + an z n (3)

olarak verilmekte ve n.derece saysal szge yapsn belirtmektedir. Saysal szgeler, standart fark denklemleri ile de tanmlanr. Genel olarak fark denklemi;

y ( n) =

k = N1

b x(n k ) a
k k =1

N2

N3

y (n k )

(4)

biimindedir. (4) eitliinde N1=0 deeri iin, a0=1 olacak ekilde transfer fonksiyonu elde edilir. rnek olarak; H1 ( z) = 0.2066 + 0.4131z 1 + 0.2066 z 2 1 0.3695 z 1 + 0.1958 z 2

transfer fonksiyonuna karlk gelen fark denklemi

y (n) = 0.2066 x(n) + 0.4131x(n 1) + 0.2066 x(n 2) + 0.3695 y (n 1) 0.1958 y (n 2) biimindedir. Transfer fonksiyonu verilen bir sistemi incelemek iin, transfer fonksiyonun genlik ve faz erilerinin izilmesi gerekir. Matlabdeki freqz komutu ile H(z) deerleri elde edilir.
[H,W] = FREQZ(B,A,N) H(z)=B(z)/A(z) biimindeki transfer fonksiyonunun deerleri elde edilir. Burada B, B(z)nin katsay vektr, A ise A(z)nin katsay vektrdr. N ise H(z)nin hesapland nokta saysn belirtir.

Fark denklemi, giri iaretinden kn elde edilme admlarn gsterir. rnek olarak
y (n) = 0.04 x(n 1) + 0.17 x(n 2) + 0.25 x(n 3) + 0.17 x(n 4) + 0.04 x(n 5) y (n) = 0.42 x(n) 0.42 x(n 2) + 0.44 y (n 1) 0.16 y (n 2) y (n) = 0.33 x(n + 1) + 0.33 x(n) + 0.33 x(n 1)

eitliklerini inceleyelim. Bu fark denklemi farkl karakteristiklere sahip filtreleri temsil etmektedir. lk filtrenin k sadece giri iaretinin gemi deerlerine baldr. rnein y(10)u hesaplamak iin x(9), x(8), x(7), x(6) ve x(5) gereklidir. Bu tr bir szge Sonlu Drt Yantl (FIR, Finite Impulse Response ) szge olarak adlandrlr. FIR szgelerin, transfer fonksiyonlarnn (H(z)nin) paydas 1dir.

kinci szge ise giri iaretinin gemi deerlerinin yan sra k iaretinin de gemi deerlerini kullanarak yeni k iaretini elde eder. Bu tip szgeler ise Sonsuz Drt Yantl (IIR, Infinite Impulse Response) szge olarak adlandrlrlar. IIR szgelerin transfer fonksiyonun paydas sabit bir deer deildir. nc szge de FIR yapdadr, nk k deeri sadece giri iaretine baldr. Fakat burada giri iaretinin gelecek deerleri de gereklidir. Bu durum giri iaretinin gerek zamanl retildii durumlarda sorun olabilmektedir. MATLABde herhangi bir giri iaretine saysal szge uygulamann en kolay yolu filter fonksiyonunu kullanmaktr.
filter(B,A,x) H(z)=B(z)/A(z) biimindeki saysal filtreyi giri iareti xe uygular. B, B(z)nin katsay vektr, A ise A(z)nin katsay vektrdr.

IIR Szge Tasarm

MATLABde saysal szge tasarmnda kullanlan fonksiyonlar analog szge yaplarna dayanmaktadr. Bunlar, Butterworth, Chebyshev Type 1, Chebyshev Type 2 ve Elliptic szgelerdir. Butterworth szge iin kullanlan komut butterdr. zayflamaya sahip filtre derecesi belirlenmektedir.
[B,A] = BUTTER(N,Wn) N. dereceden alak geiren szge tasarlar ve N+1 uzunluunda B (pay) ve A(payda) szge katsaylarn verir. Kesim frekans Wn , 0.0 < Wn < 1.0 arasndadr. Burada 1.0 rnekleme hznn yarsn gstermektedir. Eer Wn iki bileenden oluuyorsa Wn = [W1 W2] , 2N dereceli gei band W1 < W < W2 eklinde olan szge elde edilir. Ayrca st geiren szge [B,A] = BUTTER(N,Wn,'high') ile band durduran szge ise [B,A] = BUTTER(N,Wn,'stop') ile tasarlanabilir. [N, Wn] = BUTTORD(Wp, Ws, Rp, Rs) Gei bandnda en fazla Rp (dB) kadar ve durdurma bandnda en az Rs (dB) deeri kadar kayp veren en dk dereceli saysal Butterworth szgein derecesini verir. Wp ve Ws gei ve durdurma bandnn 0 ile 1 arasnda normalize edilmi ke frekanslarn gstermektedir. Fonksiyonun k olan Wn ise istenen zellikte szge iin gerekli olan frekans vermektedir. Wp ve Ws iin rnek deerler Altgeiren: Wp=0.1 Ws=0.2 stgeiren: Wp=0.2 Ws=0.1 Bandgeiren: Wp=[0.2 0.7], Ws=[0.1,0.8] Band Durduran: Wp=[0.1 0.8], Ws=[0.2 0.7];

buttord komutu ile istenilen

Benzer ekilde dier szge yaplar iin kullanlan komutlarn listesi ;


cheb1ord cheby1 cheb2ord cheby2 ellipord Birinci eit Chebyshev szge derecesi bulma Chebyshev 1. eit saysal ve analog szge tasarm kinci eit Chebyshev szge derecesi bulma Chebyshev 2. eit saysal ve analog szge tasarm Elliptic szge derecesi bulma

ellip

Elliptic veya Cauer saysal ve analog szge tasarm

rnek 6

Bu blmde Butterworth Szge tasarm program verilmektedir. rnekte verilen alt geiren szge tasarmdr ancak %li ksmlar kaldrlarak dier tasarmlarnda nasl yaplabilecei grlebilir.
%-------------------------------------------------------------------------%program deney4_6.m clear all;close all;clc close all wg=[0.25]; % Alt geiren wd=[0.5]; % wg=[0.2] % st geiren % wd=[0.1] %wg=[0.25 0.5]; % Band geiren %wd=[0.1 0.7]; %wg=[0.25 0.5]; % Band Durduran %wd=[0.1 0.7]; gddb=1; sddb=40; [N,Wn]=buttord(wg,wd,gddb,sddb); [B,A] = BUTTER(N,Wn); % LPF fs=2000; [H,W] = FREQZ(B,A,fs/2+1); Hg=20*log10(abs(H)); plot(W/pi,Hg),title('Filtrenin genlik yaniti'),ylabel('Genlik'),xlabel('Frekans') fm1=100; fm2=1000; ts=1/fs; n=[0:(1/fs):1]; x1=cos(2*pi*fm1.*n); x2=cos(2*pi*fm2.*n); s=x1+x2; % figure(1),plot(x1),title('fm=100'),axis([0 200 -1 1]) % figure(2),plot(x2),title('fm=1000'),axis([0 200 -1 1]) H=filter(B,A,s); figure subplot(411),plot(x1),axis([0 200 -2 2]),title('x1') subplot(412),plot(x2),axis([0 200 -2 2]),title('x2') subplot(413),plot(s),axis([0 200 -2 2]),title('x1 ve x2 nin toplami') subplot(414),plot(H),axis([0 200 -2 2]),title('Filtre cikisi') %-------------------------------------------------------------------------% aretin frekans % Sinyal 0'dan 1 saniyeye kadar % aretimiz % aretimiz

Program inceleyip, altrnz. Alak geiren filtre iin k iaretini elde edip iziniz. Programda gerekli deiiklikleri yaparak yksek geiren filtre iin klar iziniz.

ALIMA SORULARI 1) FT (Fourier Transform), DTFT (Discrete-Time Fourier Transform), DFT (Discrete Fourier Transform) ve FFT (Fast Fourier Transform) kavramlarn alnz. 2) Konvolsyon nedir?

x(n) = x(k ) (n k )

Yukardaki arplm ve telenmi birim drt dizilerinin toplam eklinde yazlan ayrk zamanl iaretin sistemden kn gzlemleyerek cevaplaynz. Sonuca, giri iareti ile sistemin birim drt yantnn konvolsyonu eklinde ulanz.

3) FFT algoritmalarn aratrnz. 8 rnekli Radix-2 Kelebek algoritmasn ematik olarak oluturmaya alnz.

You might also like