Professional Documents
Culture Documents
1 of 11
file:///F:/glava01/glava01.html
Sadraj
Zadatak 1
Reenje a)
Reenje b)
Reenje c)
Zadatak 2
Reenje a)
Reenje b)
Reenje c)
Reenje d)
Zadatak 3
Reenje
Zadatak 4
Reenje a)
Reenje b)
Reenje c)
Zadatak 5
Reenje
Zadatak 1
a) U programskom jeziku MATLAB generisati po trideset odbiraka diskretnih signala x(n) i h(n), definisanih izrazima,
x(n)=0.9nu(n),
h(n)=0.8nu(n),
Reenje b)
figure,
subplot(1,2,1),stem(n,x),xlabel('\itn'),ylabel('{\itx}({\itn})');
subplot(1,2,2),stem(n,h),xlabel('\itn'),ylabel('{\ith}({\itn})');
09-Dec-15 2:43 PM
2 of 11
file:///F:/glava01/glava01.html
Reenje c)
y1=conv(x,h);
y2=conv(h,x);
ny=[0:2*N-2]';
figure,
subplot(1,2,1),stem(ny,y1),xlabel('\itn'),ylabel('{\ity}_1({\itn})');
subplot(1,2,2),stem(ny,y2),xlabel('\itn'),ylabel('{\ity}_2({\itn})');
Zadatak 2
09-Dec-15 2:43 PM
3 of 11
file:///F:/glava01/glava01.html
n=0, 1, ..., 63
n=0, 1, ..., 63
n=0, 1, ..., 63
Da li su svi dati nizovi periodini? Da li se odbirci nizova x1(n) i x3(n) razlikuju meu sobom?
b) Formirati i grafiki predstaviti na istom dijagramu eksponencijalne nizove:
h1(n)=0.9n, n=0, 1, ..., 63
h2(n)=0.8n, n=0, 1, ..., 63
h3(n)=0.7n, n=0, 1, ..., 63
c) Formirati i grafiki predstaviti na istom dijagramu eksponencijalne nizove:
g1(n)=(-0.9)n, n=0, 1, ..., 63
g2(n)=(-0.8)n, n=0, 1, ..., 63
g3(n)=(-0.7)n, n=0, 1, ..., 63
d) Odrediti i grafiki predstaviti niz {x(n)} koji je proizvod nizova {x1(n)} i {h1(n)}.
Reenje a)
clear all, close all;
n=[0:63]';
x1=sin(2*pi*n/16);
x2=sin(2*pi*1.3*n/16);
x3=sin(2*pi*17*n/16);
x4=sin(2*pi*n/32);
x5=sin(2*pi*n/64);
figure,
subplot(5,1,1),stem(n,x1),ylabel('{\itx}_1({\itn})');
subplot(5,1,2),stem(n,x2),ylabel('{\itx}_2({\itn})');
subplot(5,1,3),stem(n,x3),ylabel('{\itx}_3({\itn})');
subplot(5,1,4),stem(n,x4),ylabel('{\itx}_4({\itn})');
subplot(5,1,5),stem(n,x5),ylabel('{\itx}_5({\itn})'),xlabel('\itn');
09-Dec-15 2:43 PM
4 of 11
file:///F:/glava01/glava01.html
Reenje b)
h1=0.9.^n;
h2=0.8.^n;
h3=0.7.^n;
figure,
stem(n,[h1 h2 h3]),
ylabel('{\ith}_1({\itn}), {\ith}_2({\itn}), {\ith}_3({\itn})'),
xlabel('\itn'),
legend('{\ith}_1({\itn})','{\ith}_2({\itn})','{\ith}_3({\itn})');
09-Dec-15 2:43 PM
5 of 11
file:///F:/glava01/glava01.html
Reenje c)
g1=(-0.9).^n;
g2=(-0.8).^n;
g3=(-0.7).^n;
figure,
stem(n,[g1 g2 g3]),
ylabel('{\itg}_1({\itn}), {\itg}_2({\itn}), {\itg}_3({\itn})'),
xlabel('\itn'),
legend('{\itg}_1({\itn})','{\itg}_2({\itn})','{\itg}_3({\itn})');
Reenje d)
y=x1.*h1;
figure,stem(n,y),ylabel('{\ity}({\itn})'),xlabel('\itn');
09-Dec-15 2:43 PM
6 of 11
file:///F:/glava01/glava01.html
Zadatak 3
Formirati i grafiki predstaviti diskretne kosinusne nizove: x(n)=cos(n), n=0, 1, ..., 31 za razliite vrednosti . Frekvencija
uzima sledee vrednosti:
k=2k/16, k=0, 1, ...,17.
09-Dec-15 2:43 PM
7 of 11
file:///F:/glava01/glava01.html
Zadatak 4
Za date parove diskretnih nizova izraunati i grafki predstaviti njihove konvolucije. Kolike su duine nizova dobijenih
konvolucijom?
a)
b)
c)
09-Dec-15 2:43 PM
8 of 11
file:///F:/glava01/glava01.html
Reenje a)
clear all, close all;
lx1=30; lh1=10; ly1=lx1+lh1-1;
nx1=[0:lx1-1]';
x1=ones(size(nx1));
nh1=[0:lh1-1]';
h1=ones(size(nh1));
ny1=[0:ly1-1]';
y1=conv(x1,h1);
figure,
subplot(3,1,1),stem(nx1,x1),xlim([0 ly1-1]),ylabel('{\itx}_1({\itn})');
subplot(3,1,2),stem(nh1,h1),xlim([0 ly1-1]),ylabel('{\ith}_1({\itn})');
subplot(3,1,3),stem(ny1,y1),xlim([0 ly1-1]),ylabel('{\ity}_1({\itn})'),xlabel('{\itn}');
Reenje b)
lx2=30; lh2=20; ly2=lx2+lh2-1;
nx2=[0:lx2-1]';
x2=0.9.^nx2;
nh2=[0:lh2-1]';
h2=ones(size(nh2));
ny2=[0:ly2-1]';
y2=conv(x2,h2);
figure,
subplot(3,1,1),stem(nx2,x2),xlim([0 ly2-1]),ylabel('{\itx}_2({\itn})');
subplot(3,1,2),stem(nh2,h2),xlim([0 ly2-1]),ylabel('{\ith}_2({\itn})');
subplot(3,1,3),stem(ny2,y2),xlim([0 ly2-1]),ylabel('{\ity}_2({\itn})'),xlabel('{\itn}');
09-Dec-15 2:43 PM
9 of 11
file:///F:/glava01/glava01.html
Reenje c)
lx3=15; lh3=10; ly3=lx3+lh3-1;
nx3=[0:lx3-1]';
x3=0.5*ones(size(nx3));
nh3=[0:lh3-1]';
h3=sin(0.2*pi*nh3);
ny3=[0:ly3-1]';
y3=conv(x3,h3);
figure,
subplot(3,1,1),stem(nx3,x3),xlim([0 ly3-1]),ylabel('{\itx}_3({\itn})');
subplot(3,1,2),stem(nh3,h3),xlim([0 ly3-1]),ylabel('{\ith}_3({\itn})');
subplot(3,1,3),stem(ny3,y3),xlim([0 ly3-1]),ylabel('{\ity}_3({\itn})'),xlabel('{\itn}');
09-Dec-15 2:43 PM
10 of 11
file:///F:/glava01/glava01.html
Zadatak 5
Odrediti i grafiki predstaviti prvih 40 odbiraka izlaznog signala ako je sistem pobuen nizom {x3(n)} iz zadatka 4.
Reenje
clear all, close all;
lx=15;
n=[0:lx-1]';
x=0.5*ones(size(n));
ly=40;
n=[0:ly-1]';
x(ly)=0;
y(1)=x(1);
for br=2:ly
y(:,br)=x(br)+0.8*y(:,br-1);
end;
figure,
subplot(2,1,1),stem(n,x),ylabel('{\itx}({\itn})');
subplot(2,1,2),stem(n,y),ylabel('{\ity}({\itn})'),xlabel('{\itn}');
09-Dec-15 2:43 PM
11 of 11
file:///F:/glava01/glava01.html
09-Dec-15 2:43 PM
Furijeova transformacija
1 of 8
file:///F:/glava02/glava02.html
Furijeova transformacija
Sadraj
Zadatak 1
Reenje
Zadatak 2
Reenje
Zadatak 3
Reenje
Zadatak 4
Reenje
Zadatak 5
Reenje
Zadatak 6
Reenje
Zadatak 7
Reenje
Zadatak 8
Reenje a)
Reenje b)
Reenje c)
Zadatak 9
Reenje a)
Reenje b)
Reenje c)
Zadatak 10
Reenje a)
Reenje b)
Zadatak 1
U programskom jeziku MATLAB generisati i prikazati u opsegu 02 amplitudski i fazni spektar signala {x1(n)} i
{x2(n)}, definisanih izrazima,
x1(n)=0.9nu(n), x2(n)=(-0.9)nu(n),
Zadatak 2
Generisati nizove {x1(n)}, {x2(n)} i {x3(n)} a zatim izraunati i grafiki prikazati njihove amplitudske i fazne spektre u
opsegu 0.
Reenje
clear all, close all;
09-Dec-15 2:44 PM
Furijeova transformacija
2 of 8
file:///F:/glava02/glava02.html
nx1=[0:15]';
x1=ones(size(nx1));
nx2=[0:31]';
x2=ones(size(nx2));
nx3=[0:63]';
x3=ones(size(nx3));
Nw=100;
[X1,w]=freqz(x1,1,Nw);
[X2,w]=freqz(x2,1,Nw);
[X3,w]=freqz(x3,1,Nw);
figure,
plot(w/pi,abs(X1),w/pi,abs(X2),w/pi,abs(X3)),
xlabel('{\it\omega}/{\it\pi}'),ylabel('|{\itX}_{1,2,3}({\ite^{j\omega}})|'),
legend('{\itX}_1({\ite^{j\omega}})','{\itX}_2({\ite^{j\omega}})','{\itX}_3({\ite^{j\omega}})'),xlim([0 1]);
figure,
plot(w/pi,angle(X1),w/pi,angle(X2),w/pi,angle(X3)),
xlabel('{\it\omega}/{\it\pi}'),ylabel('arg[{\itX}_{1,2,3}({\ite^{j\omega}})]'),
legend('{\itX}_1({\ite^{j\omega}})','{\itX}_2({\ite^{j\omega}})','{\itX}_3({\ite^{j\omega}})'),xlim([0 1]);
Zadatak 3
Generisati trougaoni niz {w(n)} duine N=9. Izraunati i grafiki prilkazati amplitudski i fazni spektar ovoga niza u opsegu
0.
Reenje
clear all, close all;
N=9;
n=[0:N-1]';
w(1+(0:(N-1)/2),1)=n(1+(0:(N-1)/2));
w(1+((N+1)/2:(N-1)),1)=N-1-n(1+((N+1)/2:(N-1)));
Nw=100;
[W,omega]=freqz(w,1,Nw);
figure,
subplot(3,1,1),stem(n,w),
xlabel('\itn'),ylabel('{\itw}({\itn})'),xlim([0 N-1]);
subplot(3,1,2),plot(omega/pi,abs(W)),
xlabel('{\it\omega}/{\it\pi}'),ylabel('|{\itW}({\ite^{j\omega}})|'),xlim([0 1]);
subplot(3,1,3),plot(omega/pi,angle(W)),
xlabel('{\it\omega}/{\it\pi}'),ylabel('arg[{\itW}({\ite^{j\omega}})]'),xlim([0 1]);
09-Dec-15 2:44 PM
Furijeova transformacija
3 of 8
file:///F:/glava02/glava02.html
Zadatak 4
Generisati niz {h(n)}. Izraunati i grafiki prikazati njegov amplitudski i fazni spektar u opsegu 0.
Reenje
clear all, close all;
N=9;
n=[0:N-1]';
h=sin(2*pi*n/16).^2;
Nw=100;
[H,w]=freqz(h,1,Nw);
figure,
subplot(3,1,1),stem(n,h),xlabel('\itn'),ylabel('{\ith}({\itn})'),xlim([0 N-1]);
subplot(3,1,2),plot(w/pi,abs(H)),
xlabel('{\it\omega}/{\it\pi}'),ylabel('|{\itH}({\ite^{j\omega}})|'),xlim([0 1]);
subplot(3,1,3),plot(w/pi,angle(H)),
xlabel('{\it\omega}/{\it\pi}'),ylabel('arg[{\itH}({\ite^{j\omega}})]'),xlim([0 1]);
Zadatak 5
Dat je neparno simetrian niz {h(n)} iji su lanovi: h(0)=-1/2, h(1)=1, h(2)=-1, h(3)=1/2 i h(n)=0 za svako drugo n.
Grafiki predstaviti niz {h(n)}. Izraunati i grafiki predstaviti njegov amplitudski i fazni spektar u opsegu 0.
Reenje
Zadatak 6
Formirati niz {v(n)} definisan kao proizvod nizova {w(n)} i {h(n)} koji su dati u zadacima 3 i 4. Grafiki predstaviti niz
{v(n)}. Izraunati i grafiki predstaviti amplitudski i fazni spektar niza {v(n)} u opsegu 0.
09-Dec-15 2:44 PM
Furijeova transformacija
4 of 8
file:///F:/glava02/glava02.html
Reenje
clear all, close all;
N=9;
n=[0:N-1]';
w(1+(0:(N-1)/2),1)=n(1+(0:(N-1)/2));
w(1+((N+1)/2:(N-1)),1)=N-1-n(1+((N+1)/2:(N-1)));
h=sin(2*pi*n/16).^2;
v=w.*h;
Nw=100;
[V,omega]=freqz(v,1,Nw);
figure,
subplot(3,1,1),stem(n,[w h v]),xlabel('\itn'),ylabel('{\itv}({\itn})'),xlim([0 N-1]),
legend('{\itw}({\itn})','{\ith}({\itn})','{\itv}({\itn})','Location','NorthEastOutside');
subplot(3,1,2),plot(omega/pi,abs(V)),
xlabel('{\it\omega}/{\it\pi}'),ylabel('|{\itV}({\ite^{j\omega}})|'),xlim([0 1]);
subplot(3,1,3),plot(omega/pi,angle(V)),
xlabel('{\it\omega}/{\it\pi}'),ylabel('arg[{\itV}({\ite^{j\omega}})]'),xlim([0 1]);
Zadatak 7
a) Formirati i grafiki predstaviti signal {x(n)} koji predstavlja konvoluciju signala {x1(n)} i {x2(n)}.
b) Izraunati i grafiki predstaviti amplitudski spektar signala {x(n)} u opsegu 0.
c) Rezultat uporediti sa reenjem zadatka br. 3.
Reenje
09-Dec-15 2:44 PM
Furijeova transformacija
5 of 8
file:///F:/glava02/glava02.html
Zadatak 8
x1(n)=cos(2n32/256), 0n255,
x2(n)=cos(2n100/256), 0n255.
Reenje a)
Reenje b)
y1=0.4*x1+0.9*x2;
[Y1,omega]=freqz(y1,1,Nomega);
figure,
subplot(3,1,1),plot(omega/pi,abs(X1)),ylabel('|{\itX}_1({\ite^{j\omega}})|'),xlim([0 1]);
subplot(3,1,2),plot(omega/pi,abs(X2)),ylabel('|{\itX}_2({\ite^{j\omega}})|'),xlim([0 1]);
subplot(3,1,3),plot(omega/pi,abs(Y1)),xlabel('{\it\omega}/{\it\pi}'),ylabel('|{\itY}_1({\ite^{j\omega}})|'),xlim([0 1]);
09-Dec-15 2:44 PM
Furijeova transformacija
6 of 8
file:///F:/glava02/glava02.html
Reenje c)
y2=x1.*x2;
[Y2,omega]=freqz(y2,1,Nomega);
figure,
subplot(3,1,1),plot(omega/pi,abs(X1)),ylabel('|{\itX}_1({\ite^{j\omega}})|'),xlim([0 1]);
subplot(3,1,2),plot(omega/pi,abs(X2)),ylabel('|{\itX}_2({\ite^{j\omega}})|'),xlim([0 1]);
subplot(3,1,3),plot(omega/pi,abs(Y2)),xlabel('{\it\omega}/{\it\pi}'),ylabel('|{\itY}_2({\ite^{j\omega}})|'),xlim([0 1]);
Zadatak 9
Reenje b)
figure,stem(n,[x1 x2 x3]),,xlabel('\itn'),ylabel('{\itx}_{1,2,3}({\itn})'),xlim([0 49]),
legend('{\itx}_1({\itn})','{\itx}_2({\itn})','{\itx}_3({\itn})','Location','NorthEastOutside');
09-Dec-15 2:44 PM
Furijeova transformacija
7 of 8
file:///F:/glava02/glava02.html
Reenje c)
Nomega=1000;
[X1,omega]=freqz(x1,1,Nomega);
[X2,omega]=freqz(x2,1,Nomega);
[X3,omega]=freqz(x3,1,Nomega);
figure,plot(omega/pi,abs([X1 X2 X3])),xlabel('{\it\omega}/{\it\pi}'),ylabel('|{\itX}_{1,2,3}({\ite^{j\omega}})|'),xlim([0 1]),
legend('{\itX}_1({\ite^{j\omega}})','{\itX}_2({\ite^{j\omega}})','{\itX}_3({\ite^{j\omega}})','Location','NorthEastOutside');
Zadatak 10
Reenje a)
Reenje b)
Nomega=1000;
[X,omega]=freqz(x,1,Nomega,'whole');
[Y,omega]=freqz(y,1,Nomega,'whole');
figure,plot(omega/pi,abs([X Y])),ylabel('|{\itX}({\ite^{j\omega}})|, |{\itY}({\ite^{j\omega}})|'),xlim([0 2]),
legend('{\itX}({\ite^{j\omega}})','{\itY}({\ite^{j\omega}})','Location','NorthEastOutside');
figure,plot(omega/pi,angle([X Y])),ylabel('arg[{\itX}({\ite^{j\omega}})], arg[{\itY}({\ite^{j\omega}})]'),xlim([0 2]),
legend('{\itX}({\ite^{j\omega}})','{\itY}({\ite^{j\omega}})','Location','NorthEastOutside');
figure,plot(omega/pi,[real([X Y]) imag([X Y])]),xlabel('{\it\omega}/{\it\pi}'),
ylabel('Re/Im({\itX}({\ite^{j\omega}})), Re/Im({\itY}({\ite^{j\omega}}))'),xlim([0 2]),
legend('Re({\itX}({\ite^{j\omega}}))','Re({\itY}({\ite^{j\omega}}))','Im({\itX}({\ite^{j\omega}}))','Im({\itY}({\ite^{j\omega}}))','Location','NorthEastOutside');
09-Dec-15 2:44 PM
Furijeova transformacija
8 of 8
file:///F:/glava02/glava02.html
09-Dec-15 2:44 PM
Z transformacija
1 of 8
file:///F:/glava03/glava03.html
Z transformacija
Sadraj
Zadatak 1
Reenje a)
Reenje b)
Reenje c)
Zadatak 2
Reenje
Zadatak 3
Reenje a)
Reenje b)
Reenje c)
Reenje d)
Zadatak 4
Reenje a)
Reenje b)
Zadatak 5
Reenje a)
Reenje b)
Zadatak 1
Signal u(n) predstavlja jedinini odskoni niz, dok vrednost konstante a iznosi 0.9.
a) Prikazati grafiki prvih etrdeset odbiraka dobijenog diskretnog signala.
b) Odrediti izraz za njegovu z transformaciju i odrediti oblast konvergencije z transformacije.
c) Prikazati raspored nula i polova ove transformacije u z ravni.
d) Prikazati amplitudski spektar ovog signala.
Reenje a)
Reenje b)
disp('Sabiranjem konvergentnog niza {x(n)} dobija se X(z)=z/(z-a).');
Sabiranjem konvergentnog niza {x(n)} dobija se X(z)=z/(z-a).
Reenje c)
09-Dec-15 2:45 PM
Z transformacija
2 of 8
file:///F:/glava03/glava03.html
figure,
subplot(2,1,1),zplane(1,[1 -a]); % funkcija zplane kada su ulazni nizovi vrste podrazumeva da su to koef. polinoma pa prvo srauna nule i polove
subplot(2,1,2),zplane(0,a); % funkcija zplane kada su ulazni nizovi kolone podrazumeva da su to nule i polovi
Nomega=1000;
[X,omega]=freqz(1,[1 -a],Nomega);
figure,
plot(omega/pi,abs(X)),xlabel('{\it\omega}/{\it\pi}'),ylabel('|{\itX}({\ite^{j\omega}})|');
Zadatak 2
Dati su diskretni signali {x(n)} i {h(n)}, definisani izrazima,
Izraunati konvoluciju ova dva signala i pokazati da je z transformacija njihove konvolucije proizvod z transformacija
pojedinanih signala.
Reenje
09-Dec-15 2:45 PM
Z transformacija
3 of 8
file:///F:/glava03/glava03.html
for br=2:length(y)
Y_str=[Y_str '+' num2str(y(br)) 'z^(-' num2str(br-1) ')'];
end;
disp(['Y(z)=' Y_str]);
disp('Proizvod Z transformacija signala x(n) i h(n) je:');
XxH_str=num2str(Y(1));
for br=2:length(Y)
XxH_str=[XxH_str '+' num2str(Y(br)) 'z^(-' num2str(br-1) ')'];
end;
disp(['X(z)H(z)=' XxH_str]);
dobijena konvolucija y(n):
1.0000
1.5000
0.5000
Z transformacija signala x(n) je:
X(z)=1+z^(-1)
Z transformacija signala h(n) je:
H(z)=1+0.5z^(-1)
Z transformacija signala y(n) je:
Y(z)=1+1.5z^(-1)+0.5z^(-2)
Proizvod Z transformacija signala x(n) i h(n) je:
X(z)H(z)=1+1.5z^(-1)+0.5z^(-2)
Zadatak 3
Za sisteme opisane datim diferencnim jednainama izraunati z transformaciju njihovog impulsnog odziva, {h(n)}, i nacrtati
raspored nula i polova u z ravni:
a) y(n)=x(n)-x(n-5);
b) y(n)=x(n)+x(n-5);
c) y(n)=2rcos(q)y(n-1)+r2y(n-2)+x(n), q=/4, r=0.9.
d) y(n)=2rcos(q)y(n-1)-r2y(n-2)+x(n), q=/4, r=0.9.
Reenje a)
Reenje b)
h2=[1 0 0 0 0 1];
figure,
zplane(h2,1);
09-Dec-15 2:45 PM
Z transformacija
4 of 8
file:///F:/glava03/glava03.html
Reenje c)
b3=1;
r=0.9; q=pi/4;
a3=[1 -2*r*cos(q) -r^2];
figure,
zplane(b3,a3);
[h3,nh3]=impz(b3,a3);
figure,
stem(nh3,h3),xlabel('\itn'),ylabel('{\ith}_3({\itn})');
Reenje d)
09-Dec-15 2:45 PM
Z transformacija
5 of 8
file:///F:/glava03/glava03.html
b4=1;
r=0.9; q=pi/4;
a4=[1 -2*r*cos(q) r^2];
figure,
zplane(b4,a4);
[h4,nh4]=impz(b4,a4);
figure,
stem(nh4,h4),xlabel('\itn'),ylabel('{\ith}_4({\itn})');
Zadatak 4
Izraunati z transformaciju datih nizova. Nacrtati raspored nula i polova izraunatih z transformacija i na osnovu crtea
odrediti da li su posmatrani sistemi stabilni.
a)
b)
Reenje a)
clear all; close all;
Nh1=20;
n1=(0:Nh1-1);
h1=(-1).^n1;
figure,
stem(n1,h1),xlabel('\itn'),ylabel('{\ith}_1({\itn})');
figure,
zplane(h1,1),text(.2,.2,'sistem je stabilan.');
09-Dec-15 2:45 PM
Z transformacija
6 of 8
file:///F:/glava03/glava03.html
Reenje b)
disp('H(z)=z/(z+1)');
b2=1;
a2=[1 1];
[h2,n2]=impz(b2,a2);
figure,
stem(n2,h2),xlabel('\itn'),ylabel('{\ith}_2({\itn})');
figure,
zplane(b2,a2),text(.2,.2,'sistem je nestabilan.');
H(z)=z/(z+1)
09-Dec-15 2:45 PM
Z transformacija
7 of 8
file:///F:/glava03/glava03.html
Zadatak 5
Data je funkcija prenosa:
a) Za razliite vrednosti parametra (npr. =0.5, 0.9 i 0.99) nacrtati raspored nula i polova date z transformacije.
b) Izraunati |H(ej)| korienjem funkcije freqz, rezultat predstaviti grafiki i na osnovu crtea proveriti da li ova
amplitudska karakteristika ima konstantnu vrednost za svako .
Reenje a)
09-Dec-15 2:45 PM
Z transformacija
8 of 8
file:///F:/glava03/glava03.html
Reenje b)
for br=1:length(ro)
[H(:,br),w]=freqz(b(br,:),a(br,:));
end;
figure,plot(w/pi,abs(H)),xlabel('{\it\omega}/{\it\pi}'),ylabel('|{\itH}({\ite^{j\omega}})|'),
xlim([0 1]),ylim([.5 2.1]),
legend('{\it\rho}=.5','{\it\rho}=.9','{\it\rho}=.99');
09-Dec-15 2:45 PM
1 of 9
file:///F:/glava05/glava05.html
Sadraj
Zadatak 1
Reenje a)
Reenje b)
Zadatak 2
Reenje a)
Reenje b)
Zadatak 3
Reenje
Zadatak 4
Reenje a)
Reenje b)
Reenje c)
Reenje d)
Zadatak 5
Reenje
Zadatak 6
Reenje
Zadatak 1
b) Signal {xp(n)}, je dobijen periodinim produavanjem signala {x(n)}, sa periodom N=7. Izraunati i grafiki prikazati
DFT signala {xp(n)}.
Reenje a)
clear all, close all;
N=7;
x=ones(N,1);
xc=x;
xc(2*N)=0;
n=(0:2*N-1)';
figure,stem(n,xc),xlabel('\itn'),ylabel('{\itx({\itn})}');
[X,w]=freqz(x,1,'whole');
figure,plot(w/pi,abs(X)),xlabel('{\it\omega}/{\it\pi}'),ylabel('|{\itX}({\ite^{j\omega}})|'),
xlim([0 2]);
09-Dec-15 2:45 PM
2 of 9
file:///F:/glava05/glava05.html
Reenje b)
xp=[x;x];
Xp=fft(xp);
k=(0:length(Xp)-1)';
figure,stem(k,abs(Xp)),xlabel('\itk'),ylabel('|{\itX}({\itk})|'),
xlim([-0.5 (max(k)+0.5)]);
09-Dec-15 2:45 PM
3 of 9
file:///F:/glava05/glava05.html
Zadatak 2
Diskretni signal {x(n)} sadri sto odbiraka signala x(t), dobijenih sa frekvencijom odabiranja fs=1 kHz. Primenom DFT
izraunati amplitudski spektar signala i prikazati ga u opsegu frekvencija od 0 Hz do 500 Hz za,
a) f1=200 Hz, f2=240 Hz;
09-Dec-15 2:45 PM
4 of 9
file:///F:/glava05/glava05.html
Reenje b)
f1=207; f2=213;
xb=cos(2*pi*f1*t)+cos(2*pi*f2*t);
Xb=fft(xb);
fb=[0:length(Xb)-1]/length(Xb)*fs;
figure,stem(fb(1:N/2),abs(Xb(1:N/2))),xlabel('{\itf} [Hz]'),ylabel('DFT({\itx_b})'),
xlim([0 500]),legend(['\Delta{\itf}=' num2str(fs/N)]);
Zadatak 3
Izraunati i grafiki prikazati linearnu i ciklinu konvoluciju ova dva signala. Krunu konvoluciju izraunati direktno i
preko DFT.
Reenje
09-Dec-15 2:45 PM
5 of 9
file:///F:/glava05/glava05.html
Zadatak 4
b)
c)
d)
Reenje a)
clear all, close all;
09-Dec-15 2:45 PM
6 of 9
file:///F:/glava05/glava05.html
xa=ones(8,1);
Xa=fft(xa);
figure,stem([0:length(Xa)-1],abs(Xa)),xlabel('\itk'),ylabel('|{\itX_a}({\itk})|');
Reenje b)
xb=ones(5,1);
Xb=fft(xb,8);
figure,stem([0:length(Xb)-1],abs(Xb)),xlabel('\itk'),ylabel('|{\itX_b}({\itk})|');
Reenje c)
xc=zeros(8,1);
xc(0+1)=1;
xc(7+1)=-1;
Xc=fft(xc);
figure,stem([0:length(Xc)-1],abs(Xc)),xlabel('\itk'),ylabel('|{\itX_c}({\itk})|');
09-Dec-15 2:45 PM
7 of 9
file:///F:/glava05/glava05.html
Reenje d)
xd=zeros(8,1);
xd(0+1)=1;
xd(5+1)=-1;
Xd=fft(xd);
figure,stem([0:length(Xd)-1],abs(Xd)),xlabel('\itk'),ylabel('|{\itX_d}({\itk})|');
Zadatak 5
Generisati N=16 odbiraka diskretnog niza x(n)=cos(0.1n). Izraunati DFT ovog niza. Posmatranjem pojedinih lanova niza,
pokazati da DFT zadovoljava relaciju, X(k)=X*(N-k), gde znak * oznaava konjugovano kompleksnu vrednost.
Reenje
09-Dec-15 2:45 PM
8 of 9
file:///F:/glava05/glava05.html
for br=1:length(X)-1
uporedi(br,1:2)=[X(br+1) conj(X(N-br+1))];
end;
disp(uporedi);
-0.1869
0.3413
0.4331
0.4645
0.4784
0.4853
0.4886
0.4896
0.4886
0.4853
0.4784
0.4645
0.4331
0.3413
-0.1869
2.7688i
1.2639i
0.7764i
0.5172i
0.3451i
0.2138i
0.1026i
+
+
+
+
+
+
+
0.1026i
0.2138i
0.3451i
0.5172i
0.7764i
1.2639i
2.7688i
-0.1869
0.3413
0.4331
0.4645
0.4784
0.4853
0.4886
0.4896
0.4886
0.4853
0.4784
0.4645
0.4331
0.3413
-0.1869
2.7688i
1.2639i
0.7764i
0.5172i
0.3451i
0.2138i
0.1026i
+
+
+
+
+
+
+
0.1026i
0.2138i
0.3451i
0.5172i
0.7764i
1.2639i
2.7688i
Zadatak 6
Izvriti odabiranje kontinualnog signala x(t)=cos(2100t)+cos(2&pi105t) sa frekvencijom odabiranja fs=500 Hz. Generisati
20, 50 i 100 odbiraka. Za sva tri sluaja izraunati amplitudski spektar korienjem DFT i videti kako broj odbiraka utie na
oblik dobijenog spektra.
Reenje
09-Dec-15 2:45 PM
9 of 9
file:///F:/glava05/glava05.html
09-Dec-15 2:45 PM
1 of 14
file:///F:/glava07/glava07.html
Zadatak 1
Reenje
Zadatak 2
Reenje
Zadatak 3
Reenje
Zadatak 4
Reenje a)
Reenje b)
Reenje c)
Zadatak 5
Reenje a)
Reenje b)
Zadatak 1
Odrediti poloaj nula i polova sistema u z ravni. Izraunati i prikazati amplitudsku i faznu karakteristiku
sistema kao i karakteristiku grupnog kanjenja. Prikazati prvih 50 vrednosti odbiraka impulsnog odziva
sistema.
Reenje
09-Dec-15 2:46 PM
2 of 14
file:///F:/glava07/glava07.html
09-Dec-15 2:46 PM
3 of 14
file:///F:/glava07/glava07.html
09-Dec-15 2:46 PM
4 of 14
file:///F:/glava07/glava07.html
Zadatak 2
Odrediti poloaj nula i polova sistema u z ravni. Prikazati impulsni odziv sistema. Izraunati i prikazati
amplitudsku i faznu karakteristiku sistema kao i karakteristiku grupnog kanjenja.
Reenje
09-Dec-15 2:46 PM
5 of 14
file:///F:/glava07/glava07.html
09-Dec-15 2:46 PM
6 of 14
file:///F:/glava07/glava07.html
09-Dec-15 2:46 PM
7 of 14
file:///F:/glava07/glava07.html
Zadatak 3
Data je funkcija prenosa H(z)=Q(z)/P(z), gde su Q(z) i P(z) polinomi po z-1,
Q(z)=0.2031+0.2588z-1+0.2588z-2+0.2031z-3
P(z)=1.0000-0.6804z-1+0.7865z-2-0.1821z-3.
a) Odrediti poloaj nula i polova sistema u z ravni. Izraunati i prikazati amplitudsku i faznu karakteristiku
sistema kao i karakteristiku grupnog kanjenja. Prikazati prvih 50 vrednosti odbiraka impulsnog odziva
sistema.
b) Ponoviti proceduru iz take a) za H1(z)=H(z2).
c) Ponoviti proceduru iz take a) za H2(z)=[H(z)2].
Reenje
09-Dec-15 2:46 PM
8 of 14
file:///F:/glava07/glava07.html
figure(4),subplot(3,1,1),plot(w/pi,gd);
ylabel('{\itgd}({\it\omega}) [br. odbiraka]');
[h,n]=impz(Q,P,N);
figure(5),subplot(3,1,1),stem(n,h);
ylabel('{\ith}({\itn})');
Q1(1:2:2*length(Q))=Q;
P1(1:2:2*length(P))=P;
figure(1),subplot(3,1,2),zplane(Q1,P1);
[H1,w]=freqz(Q1,P1);
figure(2),subplot(3,1,2),plot(w/pi,abs(H1));
ylabel('{\it\fontname{Monotype Corsiva}M}_1({\it\omega})');
figure(3),subplot(3,1,2),plot(w/pi,unwrap(angle(H1)));
ylabel('{\it\fontname{symbol}j}_1({\it\omega}) [rad]');
[gd1,w]=grpdelay(Q1,P1);
figure(4),subplot(3,1,2),plot(w/pi,gd1);
ylabel('{\itgd}_1({\it\omega}) [br. odbiraka]');
[h1,n]=impz(Q1,P1,N);
figure(5),subplot(3,1,2),stem(n,h1);
ylabel('{\ith}_1({\itn})');
Q2=conv(Q,Q);
P2=conv(P,P);
figure(1),subplot(3,1,3),zplane(Q2,P2);
[H2,w]=freqz(Q2,P2);
figure(2),subplot(3,1,3),plot(w/pi,abs(H2));
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\it\fontname{Monotype Corsiva}M}_2({\it\omega})');
figure(3),subplot(3,1,3),plot(w/pi,unwrap(angle(H2)));
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\it\fontname{symbol}j}_2({\it\omega}) [rad]');
[gd2,w]=grpdelay(Q2,P2);
figure(4),subplot(3,1,3),plot(w/pi,gd2);
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\itgd}_2({\it\omega}) [br. odbiraka]');
[h2,n]=impz(Q2,P2,N);
figure(5),subplot(3,1,3),stem(n,h2);
xlabel('{\itn}'),ylabel('{\ith}_2({\itn})');
09-Dec-15 2:46 PM
9 of 14
file:///F:/glava07/glava07.html
09-Dec-15 2:46 PM
10 of 14
file:///F:/glava07/glava07.html
Zadatak 4
11 of 14
file:///F:/glava07/glava07.html
Reenje b)
ReX=fft(real(x));
ImX=fft(imag(x));
X=fft(x);
Reenje c)
figure,subplot(3,1,1),stem(n,real(ReX)),
09-Dec-15 2:46 PM
12 of 14
file:///F:/glava07/glava07.html
hold on
stem(n,real(ImX),'marker','*','color',[0 0.5 0]),
stem(n,real(X),'marker','d','color',[1 0 0]),
xlim([0 N-1]),
ylabel('Relani deo DFT-a'),xlim([0 N+10]),
legend('real(x)','imag(x)','x','location','northeastoutside');
subplot(3,1,2),stem(n,imag(ReX)),
hold on
stem(n,imag(ImX),'marker','*','color',[0 0.5 0]),
stem(n,imag(X),'marker','d','color',[1 0 0]),
xlim([0 N-1]),
ylabel('Imag. deo DFT-a'),xlim([0 N+10]),
legend('real(x)','imag(x)','x','location','northeastoutside');
subplot(3,1,3),stem(n,abs(ReX)),
hold on
stem(n,abs(ImX),'marker','*','color',[0 0.5 0]),
stem(n,abs(X),'marker','d','color',[1 0 0]),
xlim([0 N-1]),
ylabel('moduo DFT-a'),xlim([0 N+10]),xlabel('{\itk}'),
legend('real(x)','imag(x)','x','location','northeastoutside');
Zadatak 5
13 of 14
file:///F:/glava07/glava07.html
Reenje b)
[Hap,w]=freqz(b,a);
figure,subplot(3,1,1),plot(w/pi,abs(Hap)),
ylabel('|{\itH_{ap}}({\ite^{j\omega}})|'),
xlim([0 1]),ylabel('{\it\fontname{Monotype Corsiva}M}({\it\omega})');
subplot(3,1,2),plot(w/pi,unwrap(angle(Hap))),
xlim([0 1]),ylabel('{\it\fontname{symbol}j}({\it\omega}) [rad]');
[gd,w]=grpdelay(b,a);
subplot(3,1,3),plot(w/pi,gd),
xlim([0 1]),
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\itgd}({\it\omega}) [br. odbiraka]');
09-Dec-15 2:46 PM
14 of 14
file:///F:/glava07/glava07.html
09-Dec-15 2:46 PM
1 of 21
file:///F:/glava08/glava08.html
Sadraj
Zadatak 1
Reenje a)
Reenje b)
Reenje c)
Reenje d)
Reenje e)
Reenje f)
Zadatak 2
Reenje
Zadatak 3
Reenje
Zadatak 4
Reenje
Zadatak 5
Reenje a)
Reenje b)
Reenje c)
Reenje d)
Zadatak 6
Reenje a)
Reenje b)
Reenje c)
Reenje d)
Zadatak 7
Reenje a)
Reenje b)
Reenje c)
Zadatak 8
Reenje a)
Reenje b)
Reenje c)
Zadatak 1
a) Generisati diskretni signal {x(n)} koji sadri prvih 256 odbiraka signala x(t). Frekvencija odabiranja iznosi fs=1000
Hz.
b) Projektovati Batervortov IIR filtar propusnik niskih frekvencija koji e prvu komponentu signala x(t) oslabiti najvie 1
dB, a drugu komponentu e oslabiti barem 30 dB.
c) Izraunati i grafiki prikazati eljenu i realizovanu amplitudsku karakteristiku u linearnoj razmeri.
d) Izraunati i prikazati grupno kanjenje.
2 of 21
file:///F:/glava08/glava08.html
f) Izraunati diskretni signal {y(n)} koji se dobija na izlazu projektovanog IIR filtra kada se ovaj pobudi signalom {x(n)}
i grafiki prikazati amplitudski spektar signala na ulazu i izlazu projektovanog filtra u linearnoj razmeri.
Reenje a)
Reenje b)
wp=f1/(fs/2); ws=f2/(fs/2);
rp=1; rs=30;
[Nf,wn]=buttord(wp,ws,rp,rs);
[b,a]=butter(Nf,wn);
Reenje c)
[H,f]=freqz(b,a,[],fs);
figure,plot(f,abs(H)),
line([0 f1],[1 1],'color',[1 0 0]);
line([f2 fs/2],10.^(-rs/20)*[1 1],'color',[1 0 0]),ylim([0 1.1]),
xlabel('{\itf} [Hz]'),ylabel('{\it\fontname{Monotype Corsiva}M}(2{\it\pif}/{\itf_s})'),
legend('realizovana','zadata');
Reenje d)
[gd,f]=grpdelay(b,a,1000,fs);
figure,plot(f,gd),
xlabel('{\itf} [Hz]'),ylabel('{\itgd}(2{\it\pif}/{\itf_s}) [br. odbiraka]');
09-Dec-15 2:46 PM
3 of 21
file:///F:/glava08/glava08.html
Reenje e)
nule=roots(b);
disp('Nule f-je prenosa projektovanog filtra:');
disp(nule);
polovi=roots(a);
disp('Polovi f-je prenosa projektovanog filtra:');
disp(polovi);
figure,
subplot(2,1,1),zplane(b,a);
% Dobija se isti grafik, na dva nacina, b i a su vektori-vrste,
subplot(2,1,2),zplane(nule,polovi); % nule i polovi su vektori-kolone
Nule f-je prenosa projektovanog filtra:
-1.0000 + 0.0000i
-1.0000 - 0.0000i
-1.0000
Polovi f-je prenosa projektovanog filtra:
0.4988 + 0.4640i
0.4988 - 0.4640i
0.3934
09-Dec-15 2:46 PM
4 of 21
file:///F:/glava08/glava08.html
Reenje f)
y=filter(b,a,x);
X=fft(x);
Y=fft(y);
f_crt=(0:length(X)-1)/length(X)*fs;
figure,plot(f_crt(1:N/2),abs(X(1:N/2)),f_crt(1:N/2),abs(Y(1:N/2))),
xlabel('{\itf} [Hz]'),ylabel('DFT({\itx}), DFT({\ity})'),
legend('signal na ulazu filtra','signal na izlazu filtra','location','northeastoutside');
09-Dec-15 2:46 PM
5 of 21
file:///F:/glava08/glava08.html
Zadatak 2
Projektovati Batervortov, ebievljev filtar I i II vrste i eliptiki IIR filtar propusnik niskih frekvencija koji e za
frekvencije nie od 100 Hz imati slabljenje od najvie 1 dB, a za frekvencije vie od 300 Hz imati slabljenje od bar 30
dB. Filtre treba projektovati za frekvenciu odabiranja od 1 kHz.
Izraunati i grafiki prikazati amplitudske karakteristike projektovanih filtara u logaritamskoj razmeri, njihove fazne
karakteristike, kao i grupno kanjenje.
Reenje
09-Dec-15 2:46 PM
6 of 21
file:///F:/glava08/glava08.html
09-Dec-15 2:46 PM
7 of 21
file:///F:/glava08/glava08.html
Zadatak 3
Napisati program u MATLAB-u kojim se generie diskretni niz {x(n)} koji sadri 20 odbiraka signala
x(t)=cos(2100t).
Generisati signal {y(n)} proputanjem signala {x(n)} kroz filtar ija je funkcija prenosa
Nacrtati prvih pedeset odbiraka impulsnog odziva filtra i amplitudski spektar odziva {y(n)} na izlazu iz filtra.
Reenje
09-Dec-15 2:46 PM
8 of 21
file:///F:/glava08/glava08.html
f_crt=(0:length(X)-1)/length(X)*fs;
figure,plot(f_crt(1:N/2),abs(X(1:N/2)),f_crt(1:N/2),abs(Y(1:N/2))),
xlabel('{\itf} [Hz]'),ylabel('DFT({\itx}), DFT({\ity})'),
legend('signal na ulazu filtra','signal na izlazu filtra','location','northeastoutside');
09-Dec-15 2:46 PM
9 of 21
file:///F:/glava08/glava08.html
Zadatak 4
09-Dec-15 2:46 PM
10 of 21
file:///F:/glava08/glava08.html
X=fft(x);
Y=fft(y);
f_crt=(0:length(X)-1)/length(X)*fs;
figure,plot(f_crt(1:N/2),abs(X(1:N/2)),f_crt(1:N/2),abs(Y(1:N/2))),
xlabel('{\itf} [Hz]'),ylabel('DFT({\itx}), DFT({\ity})'),
legend('signal na ulazu filtra','signal na izlazu filtra','location','northeastoutside');
09-Dec-15 2:46 PM
11 of 21
file:///F:/glava08/glava08.html
Zadatak 5
09-Dec-15 2:46 PM
12 of 21
file:///F:/glava08/glava08.html
b) Projektovati IIR ebievljev filtar I vrste, propusnik visokih frekvencija etvrtog reda granine frekvencije fp=100 Hz
sa varijacijom slabljenja u propusnom opsegu od 1 dB. Nacrtati raspored nula i polova ovog filtra, amplitudsku
karakteristiku i impulsni odziv.
c) Kako su rasporeene nule i polovi projektovanog IIR filtra u odnosu na jedinini krug i ta se moe zakljuiti iz
njihovog rasporeda?
d) Propustiti signal {x(n)} kroz projektovani filtar i tako dobijeni signal nazvati {y(n)}. Nacrtati signale {x(n)} i {y(n)}.
Reenje a)
Reenje b)
[b,a]=cheby1(4,rp,100/(fs/2),'high');
figure,zplane(b,a);
[H,f]=freqz(b,a,[],fs);
figure,plot(f,20*log10(abs(H)),100,-3,'o'),
text(100,-10,'{\itf}_g'),
xlabel('{\itf} [Hz]'),ylabel('{\itg}(2{\it\pif}/{\itf_s}) [dB]'),
ylim([-100 5]);
[h,n]=impz(b,a);
figure,stem(n,h),
xlabel('{\itn}'),ylabel('{\ith}({\itn})');
09-Dec-15 2:46 PM
13 of 21
file:///F:/glava08/glava08.html
Reenje c)
disp('Filtar je stabilan, minimalne faze.')
Filtar je stabilan, minimalne faze.
Reenje d)
09-Dec-15 2:46 PM
14 of 21
file:///F:/glava08/glava08.html
y=filter(b,a,x);
figure,plot(t,x,t,y);
xlabel('{\itt} [s]'),ylabel('{\itx}({\itt}), {\ity}({\itt})'),
legend('signal na ulazu filtra','signal na izlazu filtra','Location','NorthEastOutside');
X=fft(x);
Y=fft(y);
f_crt=(0:length(X)-1)/length(X)*fs;
figure,plot(f_crt(1:N/2),abs(X(1:N/2)),f_crt(1:N/2),abs(Y(1:N/2))),
xlabel('{\itf} [Hz]'),ylabel('DFT({\itx}), DFT({\ity})'),
legend('signal na ulazu filtra','signal na izlazu filtra','Location','NorthEastOutside');
09-Dec-15 2:46 PM
15 of 21
file:///F:/glava08/glava08.html
Zadatak 6
d) Uporediti karakteristike grupnog kanjenja filtara (i), (ii) i (iii) u propusnom opsegu.
Reenje a)
Reenje b)
[Hc1,w]=freqz(bc1,ac1);
[Hc2,w]=freqz(bc2,ac2);
[He,w]=freqz(be,ae);
figure,plot(w/pi,-20*log10(abs([Hc1 Hc2 He])));
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\ita}({\it\omega}) [dB]'),
legend('Cebisevljev I vrste','Cebisevljev II vrste','elipticki');
ylim([-10 100]);
09-Dec-15 2:46 PM
16 of 21
file:///F:/glava08/glava08.html
Reenje c)
figure,plot(w/pi,unwrap(angle([Hc1 Hc2 He]))),
xlim([0 wp/pi]);
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\it\fontname{symbol}j}({\it\omega}) [rad]'),
legend('Cebisevljev I vrste','Cebisevljev II vrste','elipticki');
Reenje d)
09-Dec-15 2:46 PM
17 of 21
file:///F:/glava08/glava08.html
[gdc1,w]=grpdelay(bc1,ac1);
[gdc2,w]=grpdelay(bc2,ac2);
[gde,w]=grpdelay(be,ae);
figure,plot(w/pi,[gdc1 gdc2 gde]),
xlim([0 wp/pi]);
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\itgd}({\it\omega}) [br. odbiraka]');
legend('Cebisevljev I vrste','Cebisevljev II vrste','elipticki');
Zadatak 7
09-Dec-15 2:46 PM
18 of 21
file:///F:/glava08/glava08.html
Reenje b)
figure,zplane(b,a);
Reenje c)
[H,w]=freqz(b,a);
figure,plot(w/pi,-20*log10(abs(H)));
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\ita}({\it\omega}) [dB]');
ylim([-10 100]);
figure,plot(w/pi,unwrap(angle(H))),
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\it\fontname{symbol}j}({\it\omega}) [rad]');
09-Dec-15 2:46 PM
19 of 21
file:///F:/glava08/glava08.html
Zadatak 8
09-Dec-15 2:46 PM
20 of 21
file:///F:/glava08/glava08.html
Reenje b)
figure,zplane(b,a);
Reenje c)
[H,w]=freqz(b,a);
figure,plot(w/pi,-20*log10(abs(H)));
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\ita}({\it\omega}) [dB]');
ylim([-10 100]);
figure,plot(w/pi,unwrap(angle(H))),
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\it\fontname{symbol}j}({\it\omega}) [rad]');
09-Dec-15 2:46 PM
21 of 21
file:///F:/glava08/glava08.html
09-Dec-15 2:46 PM
1 of 19
file:///F:/glava09/glava09.html
Zadatak 1
Reenje a)
Reenje b)
Reenje c)
Reenje d)
Reenje e)
Zadatak 2
Reenje a)
Reenje b)
Reenje c)
Reenje d)
Zadatak 3
Reenje a)
Reenje b)
Reenje c)
Reenje d)
Zadatak 4
Reenje a)
Reenje b)
Reenje c)
Reenje d)
Zadatak 5
Reenje a)
Reenje b)
Reenje c)
Reenje d)
Zadatak 1
a) Generisati diskretni signal {x(n)} koji sadri prvih 512 odbiraka signala x(t). Frekvencija odabiranja iznosi
fs=1000 Hz.
b) Projektovati FIR filtar propusnik opsega frekvencija 32. reda graninih frekvencija fc1=100 Hz i fc2=300 Hz
primenom Hamingovog prozora. Izraunati i grafiki prikazati impulsni odziv projektovanog filtra.
c) Izraunati i grafiki prikazati raspored nula i polova projektovanog filtra u z ravni, njegovu amplitudsku
karakteristiku i slabljenje, faznu karakteristiku, kao i njegovo grupno kanjenje.
d) Izraunati diskretni signal {y(n)} koji se dobija na izlazu iz projektovanog filtra kada se ovaj pobudi
09-Dec-15 2:47 PM
2 of 19
file:///F:/glava09/glava09.html
signalom {x(n)}.
Reenje b)
N_FIR=32;
h=fir1(N_FIR,[100 300]/(fs/2)); % Hammingov prozor je podrazumevani (default) izbor
n=0:N_FIR;
figure,stem(n,h),
xlabel('{\itn}'),ylabel('{\ith}({\itn})');
Reenje c)
nule=roots(h);
polovi=zeros(size(nule));
figure,zplane(nule,polovi);
[H,f]=freqz(h,1,[],fs);
figure,subplot(2,1,1),plot(f,abs(H)),
ylabel('{\it\fontname{Monotype Corsiva}M}(2{\it\pif}/{\itf_s})'),
09-Dec-15 2:47 PM
3 of 19
file:///F:/glava09/glava09.html
subplot(2,1,2),plot(f,-20*log10(abs(H))),
xlabel('{\itf} [Hz]'),ylabel('{\ita}(2{\it\pif}/{\itf_s}) [dB]'),
ylim([-5 100]);
figure,subplot(2,1,1),plot(f,unwrap(angle(H))),
ylabel('{\it\fontname{symbol}j}(2{\it\pif}/{\itf_s}) [rad]');
[gd,f]=grpdelay(h,1,1000,fs);
subplot(2,1,2),plot(f,gd),
xlabel('{\itf} [Hz]'),ylabel('{\itgd}(2{\it\pif}/{\itf_s}) [br. odbiraka]');
09-Dec-15 2:47 PM
4 of 19
file:///F:/glava09/glava09.html
Reenje d)
y=filter(h,1,x);
figure,plot(t,x,t,y),
xlim([0 t(N)]),
09-Dec-15 2:47 PM
5 of 19
file:///F:/glava09/glava09.html
Reenje e)
X=fft(x);
Y=fft(y);
f_crt=(0:length(X)-1)/length(X)*fs;
figure,plot(f_crt(1:N/2),abs(X(1:N/2)),f_crt(1:N/2),abs(Y(1:N/2))),
xlabel('{\itf} [Hz]'),ylabel('DFT({\itx}), DFT({\ity})'),
legend('signal na ulazu filtra','signal na izlazu filtra','Location','NorthEastOutside');
09-Dec-15 2:47 PM
6 of 19
file:///F:/glava09/glava09.html
Zadatak 2
a) Generisati diskretni signal {x(n)} koji sadri prvih 512 odbiraka signala x(t). Frekvencija odabiranja iznosi
fs=1000 Hz.
b) Projektovati FIR filtar propusnik niskih frekvencija 32. reda granine frekvencije fg=50 Hz primenom
pravougaonog prozora i primenom trougaonog prozora.
c) Izraunati i grafiki prikazati amplitudsku karakteristiku i karakteristiku slabljenja oba filtra.
d) Izraunati diskretni signal {y(n)} koji se dobija na izlazu FIR filtra projektovanog primenom pravougaonog
prozora kada se ovaj pobudi signalom {x(n)} i grafiki prikazati signal na ulazu i izlazu projektovanog filtra.
Reenje a)
09-Dec-15 2:47 PM
7 of 19
file:///F:/glava09/glava09.html
Reenje b)
N_FIR=32;
h_p=fir1(N_FIR,50/(fs/2),rectwin(N_FIR+1));
h_t=fir1(N_FIR,50/(fs/2),triang(N_FIR+1));
n=0:N_FIR;
figure,stem(n,[h_p;h_t]'),
xlabel('{\itn}'),ylabel('{\ith}({\itn})'),
legend('pravougaoni','trugaoni');
Reenje c)
[H_p,f]=freqz(h_p,1,[],fs);
[H_t,f]=freqz(h_t,1,[],fs);
figure,subplot(2,1,1),plot(f,abs([H_p H_t])),
ylabel('{\it\fontname{Monotype Corsiva}M}(2{\it\pif}/{\itf_s})'),
legend('pravougaoni','trugaoni');
subplot(2,1,2),plot(f,-20*log10(abs([H_p H_t]))),
xlabel('{\itf} [Hz]'),ylabel('{\ita}(2{\it\pif}/{\itf_s}) [dB]'),
ylim([-5 100]);
09-Dec-15 2:47 PM
8 of 19
file:///F:/glava09/glava09.html
Reenje d)
y=filter(h_p,1,x);
figure,plot(t,x,t,y),
xlim([0 t(N)]),
xlabel('{\itt} [s]'),ylabel('{\itx}({\itt}), {\ity}({\itt})'),
legend('signal na ulazu filtra','signal na izlazu filtra','Location','NorthEastOutside');
X=fft(x);
Y=fft(y);
f_crt=(0:length(X)-1)/length(X)*fs;
figure,plot(f_crt(1:N/2),abs(X(1:N/2)),f_crt(1:N/2),abs(Y(1:N/2))),
xlabel('{\itf} [Hz]'),ylabel('DFT({\itx}), DFT({\ity})'),
legend('signal na ulazu filtra','signal na izlazu filtra','Location','NorthEastOutside');
09-Dec-15 2:47 PM
9 of 19
file:///F:/glava09/glava09.html
Zadatak 3
09-Dec-15 2:47 PM
10 of 19
file:///F:/glava09/glava09.html
a) Generisati diskretni signal {x(n)} koji sadri prvih 256 odbiraka signala x(t). Frekvencija odabiranja iznosi
fs=1000 Hz.
b) Projektovati optimalni FIR filtar propusnik opsega 29. reda graninih frekvencija propusnog opsega fp1=100
Hz i fp2=200 Hz, kao i graninih frekvencija nepropusnog opsega fa1=50 Hz i fa2=250 Hz.
c) Izraunati i grafiki prikazati eljenu i realizovanu amplitudsku karakteristiku.
d) Izraunati i prikazati grupno kanjenje.
e) Izraunati diskretni signal {y(n)} koji se dobija na izlazu projektovanog FIR filtra kada se ovaj pobudi
signalom {x(n)} i grafiki prikazati amplitudski spektar signala na ulazu i izlazu projektovanog filtra.
Reenje a)
Reenje b)
N_FIR=29;
h=firpm(N_FIR,[0 50 100 200 250 fs/2]/(fs/2),[0 0 1 1 0 0]);
n=0:N_FIR;
figure,stem(n,h),
xlabel('{\itn}'),ylabel('{\ith}({\itn})');
[H,f]=freqz(h,1,[],fs);
figure,plot(f,abs(H)),
line([0 50],[0 0],'color',[1 0 0]),
line([100 200],[1 1],'color',[1 0 0]),
line([250 fs/2],[0 0],'color',[1 0 0]),
ylim([0 1.1]),
xlabel('{\itf} [Hz]'),ylabel('{\it\fontname{Monotype Corsiva}M}(2{\it\pif}/{\itf_s})'),
legend('realizovana','zadata');
09-Dec-15 2:47 PM
11 of 19
file:///F:/glava09/glava09.html
Reenje c)
[gd,f]=grpdelay(h,1,1000,fs);
figure,plot(f,gd);
xlabel('{\itf} [Hz]'),ylabel('{\itgd}(2{\it\pif}/{\itf_s}) [br. odbiraka]');
09-Dec-15 2:47 PM
12 of 19
file:///F:/glava09/glava09.html
Reenje d)
y=filter(h,1,x);
figure,plot(t,x,t,y),
xlim([0 t(N)]),
xlabel('{\itt} [s]'),ylabel('{\itx}({\itt}), {\ity}({\itt})'),
legend('signal na ulazu filtra','signal na izlazu filtra','Location','NorthEastOutside');
X=fft(x);
Y=fft(y);
f_crt=(0:length(X)-1)/length(X)*fs;
figure,plot(f_crt(1:N/2),abs(X(1:N/2)),f_crt(1:N/2),abs(Y(1:N/2))),
xlabel('{\itf} [Hz]'),ylabel('DFT({\itx}), DFT({\ity})'),
legend('signal na ulazu filtra','signal na izlazu filtra','Location','NorthEastOutside');
09-Dec-15 2:47 PM
13 of 19
file:///F:/glava09/glava09.html
Zadatak 4
x(t)=cos(2100t)+n(t)+cos(2300t).
09-Dec-15 2:47 PM
14 of 19
file:///F:/glava09/glava09.html
a) Generisati diskretni signal {x(n)} koji sadri prvih 512 odbiraka signala x(t). Frekvencija odabiranja iznosi
fs=1000 Hz.
b) Projektovati FIR filtar propusnik niskih frekvencija 32. reda granine frekvencije fg=200 Hz primenom
Hamingovog prozora. Grafiki prikazati impulsni odziv projektovanog filtra.
c) Izraunati prvih 50 odbiraka diskretnog signala {y(n)} koji se dobija na izlazu projektovanog filtra kada se
ovaj pobudi signalom {x(n)}.
d) Grafiki prikazati prvih 50 odbirak signala na ulazu i izlazu projektovanog filtra.
Reenje a)
Reenje b)
N_FIR=32;
fg=200;
h=fir1(N_FIR,fg/(fs/2));
n=0:N_FIR;
figure,stem(n,h),
xlabel('{\itn}'),ylabel('{\ith}({\itn})');
09-Dec-15 2:47 PM
15 of 19
file:///F:/glava09/glava09.html
Reenje c)
y=filter(h,1,x);
Reenje d)
figure,plot(t,x,t,y),
xlim([0 t(N)]),
xlabel('{\itt} [s]'),ylabel('{\itx}({\itt}), {\ity}({\itt})'),
legend('signal na ulazu filtra','signal na izlazu filtra','Location','NorthEastOutside');
X=fft(x);
Y=fft(y);
f_crt=(0:length(X)-1)/length(X)*fs;
figure,plot(f_crt(1:N/2),abs(X(1:N/2)),f_crt(1:N/2),abs(Y(1:N/2))),
xlabel('{\itf} [Hz]'),ylabel('DFT({\itx}), DFT({\ity})'),
legend('signal na ulazu filtra','signal na izlazu filtra','Location','NorthEastOutside');
09-Dec-15 2:47 PM
16 of 19
file:///F:/glava09/glava09.html
Zadatak 5
a) Prema postavljenim zahtevima projektovati optimalan FIR filtar linearne fazne karakteristike.
b) Izraunati i prikazati amplitudsku karakteristiku i karakteristiku slabljenja filtra.
c) Izraunati i prikazati faznu karakteristiku filtra.
d) Prikazati impulsni odziv filtra.
Reenje a)
Reenje b)
09-Dec-15 2:47 PM
17 of 19
file:///F:/glava09/glava09.html
[H,w]=freqz(h,1);
figure,subplot(2,1,1),plot(w/pi,abs(H)),
ylabel('{\it\fontname{Monotype Corsiva}M}({\it\omega})'),
subplot(2,1,2),plot(w/pi,-20*log10(abs(H))),
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\ita}({\it\omega}) [dB]');
Reenje c)
figure,plot(w/pi,unwrap(angle(H))),
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\it\fontname{symbol}j}({\it\omega}) [rad]');
09-Dec-15 2:47 PM
18 of 19
file:///F:/glava09/glava09.html
Reenje d)
n=0:N_FIR;
figure,stem(n,h),
xlabel('{\itn}'),ylabel('{\ith}({\itn})');
09-Dec-15 2:47 PM
19 of 19
file:///F:/glava09/glava09.html
09-Dec-15 2:47 PM
1 of 15
file:///F:/glava10/glava10.html
Zadatak 1
Reenje a)
Reenje b)
Reenje c)
Reenje d)
Reenje e)
Zadatak 2
Reenje a)
Reenje b)
Reenje c)
Reenje d)
Reenje e)
Zadatak 3
Reenje a)
Reenje b)
Reenje c)
Reenje d)
Zadatak 4
Reenje a)
Reenje b)
Reenje c)
Reenje d)
Reenje e)
Zadatak 5
Reenje a)
Reenje b)
Reenje c)
Reenje d)
Zadatak 1
a) Projektovati IIR eliptiki filtar propusnik niskih frekvencija 4. reda prema sledeim specifikacijama:
granina frekvencija propusnog opsega p=0.4,
maksimalno dozvoljeno slabljenje u propusnom opsegu ap=0.5 dB,
minimalno slabljenje u nepropusnom opsegu aa=30 dB.
Reenje b)
b=k*poly(z);
a=poly(p);
[H,w]=freqz(b,a);
figure,subplot(2,1,1),plot(w/pi,-20*log10(abs(H)));
ylabel('{\it\fontname{Monotype Corsiva}M}({\it\omega})'),
subplot(2,1,2),plot(w/pi,unwrap(angle(H))),
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\it\fontname{symbol}j}({\it\omega}) [rad]');
09-Dec-15 2:47 PM
2 of 15
file:///F:/glava10/glava10.html
Reenje c)
disp('Keoficiejnti direktne realizacione strukture:');
disp(' -brojilac:');
disp(b);
disp(' -imenilac:');
disp(a);
Keoficiejnti direktne realizacione strukture:
-brojilac:
0.1048
0.1366
0.2134
0.1366
0.1048
-imenilac:
1.0000
-1.2475
1.4920
-0.7518
0.2449
Reenje d)
[basos_c,g_c]=zp2sos(z,p,k);
[br_sec_c,ni]=size(basos_c);
disp('Keoficiejnti kaskadne realizacione strukture:');
disp('konstanta pojacanja:');
disp(g_c);
for brojac=1:br_sec_c
disp([num2str(brojac) '. sekcija']);
disp(' -brojilac:');
disp(basos_c(brojac,1:3));
disp(' -imenilac:');
disp(basos_c(brojac,4:6));
end;
Keoficiejnti kaskadne realizacione strukture:
konstanta pojacanja:
0.1048
1. sekcija
-brojilac:
1.0000
1.2754
1.0000
-imenilac:
1.0000
-0.7335
0.3008
2. sekcija
-brojilac:
1.0000
0.0281
1.0000
-imenilac:
1.0000
-0.5140
0.8141
09-Dec-15 2:47 PM
3 of 15
file:///F:/glava10/glava10.html
Reenje e)
[rb,ra,g_p]=residuez(b,a);
br_sec_p=ceil(length(ra)/2);
tr_ind=1;
sec_ind=1;
while tr_ind<=length(ra)
if tr_ind==length(ra) | ra(tr_ind)~=conj(ra(tr_ind+1))
basos_p(sec_ind,1:6)=[rb(tr_ind),0,0,1 -ra(tr_ind),0];
tr_ind=tr_ind+1;
sec_ind=sec_ind+1;
else
[basos_p(sec_ind,1:3),basos_p(sec_ind,4:6)]=residuez([rb(tr_ind),rb(tr_ind+1)],[ra(tr_ind),ra(tr_ind+1)],0);
tr_ind=tr_ind+2;
sec_ind=sec_ind+1;
end;
end;
disp('Keoficiejnti paralelne realizacione strukture:');
disp('konstanta pojacanja:');
disp(g_p);
for brojac=1:br_sec_p
disp([num2str(brojac) '. sekcija']);
disp(' -brojilac:');
disp(basos_p(brojac,1:3));
disp(' -imenilac:');
disp(basos_p(brojac,4:6));
end;
H_c_uk=g_c*ones(size(H));
for brojac=1:br_sec_c
H_c_uk=H_c_uk.*freqz(basos_c(brojac,1:3),basos_c(brojac,4:6));
end;
H_p_uk=g_p*ones(size(H));
for brojac=1:br_sec_p
H_p_uk=H_p_uk+freqz(basos_p(brojac,1:3),basos_p(brojac,4:6));
end;
figure,subplot(3,1,1),plot(w/pi,-20*log10(abs(H)));
ylim([-5 100]),
ylabel('{\ita}_d({\it\omega}) [dB]');
subplot(3,1,2),plot(w/pi,-20*log10(abs(H_c_uk)));
ylim([-5 100]),
ylabel('{\ita}_c({\it\omega}) [dB]');
subplot(3,1,3),plot(w/pi,-20*log10(abs(H_p_uk)));
ylim([-5 100]),
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\ita}_p({\it\omega}) [dB]');
Keoficiejnti paralelne realizacione strukture:
konstanta pojacanja:
0.4280
1. sekcija
-brojilac:
-0.1094 + 0.0000i
-imenilac:
1.0000
-0.5140
2. sekcija
-brojilac:
-0.2138
-0.1311
0.8141
0.6115
-imenilac:
1.0000
-0.7335
0.3008
09-Dec-15 2:47 PM
4 of 15
file:///F:/glava10/glava10.html
Zadatak 2
Zadatak 2
a) Projektovaati IIR Batervortov filtar propusnik visokih frekvencija 7. reda za graninu frekvenciju p=0.4.
b) Izraunati i prikazati karakteristiku slabljenja i faznu karakteristiku ovog filtra.
c) Odrediti konstante direktne realizacione strukture.
d) Odrediti konstante kaskadne strukture.
e) Odrediti konstante paralelne strukture.
Reenje a)
Reenje b)
b=k*poly(z);
a=poly(p);
[H,w]=freqz(b,a);
figure,subplot(2,1,1),plot(w/pi,-20*log10(abs(H)));
ylabel('{\it\fontname{Monotype Corsiva}M}({\it\omega})'),
subplot(2,1,2),plot(w/pi,unwrap(angle(H))),
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\it\fontname{symbol}j}({\it\omega}) [rad]');
09-Dec-15 2:47 PM
5 of 15
file:///F:/glava10/glava10.html
Reenje c)
disp('Keoficiejnti direktne realizacione strukture:');
disp(' -brojilac:');
disp(b);
disp(' -imenilac:');
disp(a);
Keoficiejnti direktne realizacione strukture:
-brojilac:
0.1084
-0.5419
1.0837
-1.0837
0.5419
-imenilac:
1.0000
-0.9853
0.9738
-0.3864
0.1112
-0.1084
-0.0113
Reenje d)
[basos_c,g_c]=zp2sos(z,p,k);
[br_sec_c,ni]=size(basos_c);
disp('Keoficiejnti kaskadne realizacione strukture:');
disp('konstanta pojacanja:');
disp(g_c);
for brojac=1:br_sec_c
disp([num2str(brojac) '. sekcija']);
disp(' -brojilac:');
disp(basos_c(brojac,1:3));
disp(' -imenilac:');
disp(basos_c(brojac,4:6));
end;
Keoficiejnti kaskadne realizacione strukture:
konstanta pojacanja:
0.1084
1. sekcija
-brojilac:
1
-1
-imenilac:
1.0000
-0.1584
2. sekcija
-brojilac:
1
-2
-imenilac:
1.0000
-0.3493
0.1303
3. sekcija
-brojilac:
09-Dec-15 2:47 PM
6 of 15
-2
file:///F:/glava10/glava10.html
1
-imenilac:
1.0000
-0.4777
0.5457
Reenje e)
[rb,ra,g_p]=residuez(b,a);
br_sec_p=ceil(length(ra)/2);
tr_ind=1;
sec_ind=1;
while tr_ind<=length(ra)
if tr_ind==length(ra) || ra(tr_ind)~=conj(ra(tr_ind+1))
basos_p(sec_ind,1:6)=[rb(tr_ind),0,0,1 -ra(tr_ind),0];
tr_ind=tr_ind+1;
sec_ind=sec_ind+1;
else
[basos_p(sec_ind,1:3),basos_p(sec_ind,4:6)]=residuez([rb(tr_ind),rb(tr_ind+1)],[ra(tr_ind),ra(tr_ind+1)],0);
tr_ind=tr_ind+2;
sec_ind=sec_ind+1;
end;
end;
disp('Keoficiejnti paralelne realizacione strukture:');
disp('konstanta pojacanja:');
disp(g_p);
for brojac=1:br_sec_p
disp([num2str(brojac) '. sekcija']);
disp(' -brojilac:');
disp(basos_p(brojac,1:3));
disp(' -imenilac:');
disp(basos_p(brojac,4:6));
end;
H_c_uk=g_c*ones(size(H));
for brojac=1:br_sec_c
H_c_uk=H_c_uk.*freqz(basos_c(brojac,1:3),basos_c(brojac,4:6));
end;
H_p_uk=g_p*ones(size(H));
for brojac=1:br_sec_p
H_p_uk=H_p_uk+freqz(basos_p(brojac,1:3),basos_p(brojac,4:6));
end;
figure,subplot(3,1,1),plot(w/pi,-20*log10(abs(H)));
ylim([-5 100]),
ylabel('{\ita}_d({\it\omega}) [dB]');
subplot(3,1,2),plot(w/pi,-20*log10(abs(H_c_uk)));
ylim([-5 100]),
ylabel('{\ita}_c({\it\omega}) [dB]');
subplot(3,1,3),plot(w/pi,-20*log10(abs(H_p_uk)));
ylim([-5 100]),
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\ita}_p({\it\omega}) [dB]');
Keoficiejnti paralelne realizacione strukture:
konstanta pojacanja:
9.6217
1. sekcija
-brojilac:
0.0889
0.5978
-imenilac:
1.0000
-0.4777
0.5457
2. sekcija
-brojilac:
-3.7717
1.1655
-imenilac:
1.0000
-0.3493
0.1303
3. sekcija
-brojilac:
-5.8304
-imenilac:
1.0000
-0.1584
09-Dec-15 2:47 PM
7 of 15
file:///F:/glava10/glava10.html
Zadatak 3
a) Projektovati FIR filtar linearne faze propusnik niskih frekvencija duine N=31 sa graninom frekvencijom c=0.4.
Primeniti Hanov prozor.
b) Izraunati i prikazati karakteristiku slabljenja i faznu karakteristiku ovog filtra.
c) Odrediti konstante direktne realizacione strukture.
d) Odrediti konstante kaskadne strukture.
Reenje a)
Reenje b)
[H,w]=freqz(h,1);
figure,subplot(2,1,1),plot(w/pi,-20*log10(abs(H)));
ylabel('{\it\fontname{Monotype Corsiva}M}({\it\omega})'),
subplot(2,1,2),plot(w/pi,unwrap(angle(H))),
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\it\fontname{symbol}j}({\it\omega}) [rad]');
09-Dec-15 2:47 PM
8 of 15
file:///F:/glava10/glava10.html
Reenje c)
disp('Keoficiejnti direktne realizacione strukture:');
disp(h);
Keoficiejnti direktne realizacione strukture:
Columns 1 through 8
0
-0.0002
-0.0006
0.0015
0.0046
-0.0000
-0.0116
-0.0105
-0.0000
-0.0631
-0.0564
0.0895
0.2993
0.3998
-0.0631
-0.0000
0.0330
0.0148
-0.0105
0.0015
-0.0006
-0.0002
Columns 9 through 16
0.0148
0.0330
Columns 17 through 24
0.2993
0.0895
-0.0564
Columns 25 through 31
-0.0116
-0.0000
0.0046
Reenje d)
z=roots(h);
tr_ind=1;
sec_ind=1;
while tr_ind<=length(z)
if tr_ind==length(z) || z(tr_ind)~=conj(z(tr_ind+1))
h_c(sec_ind,1:2)=poly(z(tr_ind));
tr_ind=tr_ind+1;
sec_ind=sec_ind+1;
else
h_c(sec_ind,1:3)=poly([z(tr_ind) z(tr_ind+1)]);
tr_ind=tr_ind+2;
sec_ind=sec_ind+1;
end;
end;
[br_sec_c,ni]=size(h_c);
disp('Keoficiejnti kaskadne realizacione strukture:');
for brojac=1:br_sec_c
disp([num2str(brojac) '. sekcija']);
disp(h_c(brojac,:));
end;
H_c_uk=ones(size(H));
for brojac=1:br_sec_c
h_c(brojac,:)=h_c(brojac,:)./abs(sum(h_c(brojac,:)));
H_c_uk=H_c_uk.*freqz(h_c(brojac,:),1);
end;
figure,subplot(2,1,1),plot(w/pi,-20*log10(abs(H)));
09-Dec-15 2:47 PM
9 of 15
file:///F:/glava10/glava10.html
ylim([-5 100]),
ylabel('{\ita}_d({\it\omega}) [dB]');
subplot(2,1,2),plot(w/pi,-20*log10(abs(H_c_uk)));
ylim([-5 100]),
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\ita}_c({\it\omega}) [dB]');
Keoficiejnti kaskadne realizacione strukture:
1. sekcija
1
0
0
2. sekcija
1.0000
2.9817
3. sekcija
1.0000
-2.2289
4. sekcija
1.0000
-3.4593
3.2706
5. sekcija
1.0000
-2.2997
2.5556
6. sekcija
1.0000
1.9894
1.0000
7. sekcija
1.0000
1.9050
1.0000
8. sekcija
1.0000
1.7396
1.0000
9. sekcija
1.0000
1.5000
1.0000
10. sekcija
1.0000
1.1970
1.0000
11. sekcija
1.0000
0.8448
1.0000
12. sekcija
1.0000
0.4616
1.0000
13. sekcija
1.0000
0.0727
1.0000
14. sekcija
1.0000
-0.8999
0.3913
15. sekcija
1.0000
-1.0577
0.3058
16. sekcija
1.0000
-0.4487
17. sekcija
1.0000
0.3354
09-Dec-15 2:47 PM
10 of 15
file:///F:/glava10/glava10.html
Zadatak 4
a) Projektovaati IIR ebievljev filtar propusnik opsega 6. reda graninih frekvencija fp1=2000 Hz i fp2=3000 Hz.
Frekvencija odabiranja je 10000 Hz. Maksimalno dozvoljeno slabljenje u propusnom opsegu je ap=0.5 dB.
b) Izraunati i prikazati karakteristiku slabljenja i faznu karakteristiku ovog filtra.
d) Odrediti konstante kaskadne strukture.
e) Odrediti konstante paralelne strukture.
Reenje a)
Reenje b)
b=k*poly(z);
a=poly(p);
[H,f]=freqz(b,a,[],fs);
figure,subplot(2,1,1),plot(f,-20*log10(abs(H)));
ylabel('{\it\fontname{Monotype Corsiva}M}(2{\it\pif}/{\itf_s})'),
subplot(2,1,2),plot(f,unwrap(angle(H))),
xlabel('{\itf} [Hz]'),ylabel('{\it\fontname{symbol}j}(2{\it\pif}/{\itf_s}) [rad]');
09-Dec-15 2:47 PM
11 of 15
file:///F:/glava10/glava10.html
Reenje c)
disp('Keoficiejnti direktne realizacione strukture:');
disp(' -brojilac:');
disp(b);
disp(' -imenilac:');
disp(a);
Keoficiejnti direktne realizacione strukture:
-brojilac:
0.0154
0
-0.0462
0
0.0462
-imenilac:
1.0000
-0.0000
1.9900
-0.0000
1.5715
-0.0154
0.0000
0.4583
Reenje d)
[basos_c,g_c]=zp2sos(z,p,k);
[br_sec_c,ni]=size(basos_c);
disp('Keoficiejnti kaskadne realizacione strukture:');
disp('konstanta pojacanja:');
disp(g_c);
for brojac=1:br_sec_c
disp([num2str(brojac) '. sekcija']);
disp(' -brojilac:');
disp(basos_c(brojac,1:3));
disp(' -imenilac:');
disp(basos_c(brojac,4:6));
end;
Keoficiejnti kaskadne realizacione strukture:
konstanta pojacanja:
0.0154
1. sekcija
-brojilac:
1
0
-imenilac:
1.0000
2. sekcija
-brojilac:
1
2
-imenilac:
1.0000
-1
0.0000
0.6618
1
0.5798
0.8322
3. sekcija
09-Dec-15 2:47 PM
12 of 15
-brojilac:
1
-2
file:///F:/glava10/glava10.html
-imenilac:
1.0000
-0.5798
0.8322
Reenje e)
[rb,ra,g_p]=residuez(b,a);
br_sec_p=ceil(length(ra)/2);
tr_ind=1;
sec_ind=1;
while tr_ind<=length(ra)
if tr_ind==length(ra) || ra(tr_ind)~=conj(ra(tr_ind+1))
basos_p(sec_ind,1:6)=[rb(tr_ind),0,0,1 -ra(tr_ind),0];
tr_ind=tr_ind+1;
sec_ind=sec_ind+1;
else
[basos_p(sec_ind,1:3),basos_p(sec_ind,4:6)]=residuez([rb(tr_ind),rb(tr_ind+1)],[ra(tr_ind),ra(tr_ind+1)],0);
tr_ind=tr_ind+2;
sec_ind=sec_ind+1;
end;
end;
disp('Keoficiejnti paralelne realizacione strukture:');
disp('konstanta pojacanja:');
disp(g_p);
for brojac=1:br_sec_p
disp([num2str(brojac) '. sekcija']);
disp(' -brojilac:');
disp(basos_p(brojac,1:3));
disp(' -imenilac:');
disp(basos_p(brojac,4:6));
end;
H_c_uk=g_c*ones(size(H));
for brojac=1:br_sec_c
H_c_uk=H_c_uk.*freqz(basos_c(brojac,1:3),basos_c(brojac,4:6));
end;
H_p_uk=g_p*ones(size(H));
for brojac=1:br_sec_p
H_p_uk=H_p_uk+freqz(basos_p(brojac,1:3),basos_p(brojac,4:6));
end;
figure,subplot(3,1,1),plot(f,-20*log10(abs(H)));
ylim([-5 100]),
ylabel('{\ita}_d(2{\it\pif}/{\itf_s}) [dB]');
subplot(3,1,2),plot(f,-20*log10(abs(H_c_uk)));
ylim([-5 100]),
ylabel('{\ita}_c(2{\it\pif}/{\itf_s}) [dB]');
subplot(3,1,3),plot(f,-20*log10(abs(H_p_uk)));
ylim([-5 100]),
xlabel('{\itf} [Hz]'),ylabel('{\ita}_p(2{\it\pif}/{\itf_s}) [dB]');
Keoficiejnti paralelne realizacione strukture:
konstanta pojacanja:
-0.0336
1. sekcija
-brojilac:
-0.1878 - 0.0000i
0.0154 - 0.0000i
-imenilac:
1.0000
-0.5798
0.8322
2. sekcija
-brojilac:
-0.1878
-0.0154
-imenilac:
1.0000
0.5798
3. sekcija
-brojilac:
0.4247 - 0.0000i
-imenilac:
1.0000
0.0000
0.8322
0.0000
0.6618
09-Dec-15 2:47 PM
13 of 15
file:///F:/glava10/glava10.html
Zadatak 5
a) Projektovati IIR eliptiki filtar propusnik opsega 6. reda sa sledeim specifikacijama: granine frekvencije propusnog
opsega p1=0.3 i p2=0.3, maksimalno dozvoljeno slabljenje u propusnom opsegu ap=1 dB, minimalno slabljenje u
nepropusnom opsegu aa=50 dB.
b) Formirati kaskadnu realizacionu strukturu ovog filtra.
Reenje b)
[basos_c,g_c]=zp2sos(z,p,k);
[br_sec_c,ni]=size(basos_c);
disp('Keoficiejnti kaskadne realizacione strukture:');
disp('konstanta pojacanja:');
disp(g_c);
for brojac=1:br_sec_c
disp([num2str(brojac) '. sekcija']);
disp(' -brojilac:');
disp(basos_c(brojac,1:3));
disp(' -imenilac:');
disp(basos_c(brojac,4:6));
end;
Keoficiejnti kaskadne realizacione strukture:
konstanta pojacanja:
0.0060
1. sekcija
-brojilac:
1.0000
0.0000
-1.0000
-imenilac:
1.0000
-0.8509
0.8511
2. sekcija
-brojilac:
09-Dec-15 2:47 PM
14 of 15
1.0000
file:///F:/glava10/glava10.html
0.3232
1.0000
-imenilac:
1.0000
-0.6030
0.9237
3. sekcija
-brojilac:
1.0000
-1.6400
1.0000
-imenilac:
1.0000
-1.1308
0.9344
Reenje c)
za_legendu='';
for brojac=1:br_sec_c
[H_c(:,brojac),w]=freqz(basos_c(brojac,1:3),basos_c(brojac,4:6));
za_legendu=[za_legendu; num2str(brojac) '. sekcija'];
end;
figure,plot(w,abs(H_c)),
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\it\fontname{Monotype Corsiva}M}_{sos}({\it\omega})'),
legend(za_legendu);
Reenje d)
[H,w]=freqz(k*poly(z),poly(p));
H_c_uk=g_c*ones(size(H));
for brojac=1:br_sec_c
H_c_uk=H_c_uk.*freqz(basos_c(brojac,1:3),basos_c(brojac,4:6));
end;
figure,subplot(2,1,1),plot(w/pi,-20*log10(abs(H)));
ylim([-5 100]),
ylabel('{\ita}_d({\it\omega}) [dB]');
subplot(2,1,2),plot(w/pi,-20*log10(abs(H_c_uk)));
ylim([-5 100]),
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\ita}_c({\it\omega}) [dB]');
09-Dec-15 2:47 PM
15 of 15
file:///F:/glava10/glava10.html
09-Dec-15 2:47 PM
1 of 14
file:///F:/glava11/glava11.html
Zadatak 1
Reenje a)
Reenje b)
Reenje c)
Zadatak 2
Reenje a)
Reenje b)
Zadatak 3
Reenje a)
Reenje b)
Zadatak 4
Reenje
Zadatak 5
Reenje a)
Reenje b)
Zadatak 1
Izraunati amplitudski spektar signala {y(n)} koji se dobija na izlazu filtra iz take b) i
rezultat uporediti sa amplitudskom karakteristikom filtra izraunatom u taki a).
Reenje a)
09-Dec-15 2:48 PM
2 of 14
file:///F:/glava11/glava11.html
Reenje b)
z=roots(h);
p=zeros(size(z));
figure,zplane(z,p);
tr_ind=1;
sec_ind=1;
while tr_ind<=length(z)
if tr_ind==length(z) || z(tr_ind)~=conj(z(tr_ind+1))
h_c(sec_ind,1:2)=poly(z(tr_ind));
tr_ind=tr_ind+1;
sec_ind=sec_ind+1;
else
h_c(sec_ind,1:3)=poly([z(tr_ind) z(tr_ind+1)]);
tr_ind=tr_ind+2;
sec_ind=sec_ind+1;
end;
end;
[br_sec_c,ni]=size(h_c);
disp('Keoficiejnti kaskadne realizacione strukture:');
for brojac=1:br_sec_c
disp([num2str(brojac) '. sekcija']);
disp(h_c(brojac,:));
end;
Keoficiejnti kaskadne realizacione strukture:
1. sekcija
1.0000
-2.2100
7.6744
2. sekcija
1.0000
-1.9781
1.0000
3. sekcija
1.0000
-1.8971
1.0000
4. sekcija
1.0000
-1.7807
1.0000
5. sekcija
1.0000
2.4373
1.6417
6. sekcija
1.0000
1.2831
1.0000
7. sekcija
1.0000
1.7044
1.0000
8. sekcija
1.0000
1.9756
1.0000
9. sekcija
1.0000
1.4846
0.6091
10. sekcija
09-Dec-15 2:48 PM
3 of 14
1.0000
-0.2880
file:///F:/glava11/glava11.html
0.1303
Reenje c)
H_c_uk=ones(size(H));
x=zeros(256,1);
x(1)=1;
y=x;
for brojac=1:br_sec_c
H_c_uk=H_c_uk.*freqz(h_c(brojac,:),1);
y=filter(h_c(brojac,:),1,y);
end;
g_c=1/max(abs(H_c_uk));
y=g_c*y;
H_c_uk=g_c*H_c_uk;
figure,subplot(3,1,1),plot(w/pi,-20*log10(abs(H)));
xlim([0 1]),ylim([-5 100]),
ylabel('{\ita}_d({\it\omega}) [dB]');
subplot(3,1,2),plot(w/pi,-20*log10(abs(H_c_uk)));
xlim([0 1]),ylim([-5 100]),
ylabel('{\ita}_c({\it\omega}) [dB]');
Y=freqz(y,1);
subplot(3,1,3),plot(w/pi,-20*log10(abs(Y)));
xlim([0 1]),ylim([-5 100]),
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\itY}({\it\omega}) [dB]');
09-Dec-15 2:48 PM
4 of 14
file:///F:/glava11/glava11.html
Zadatak 2
Reenje b)
figure,zplane(z,p);
[basos_c,g_c]=zp2sos(z,p,k);
[br_sec_c,ni]=size(basos_c);
disp('Keoficiejnti kaskadne realizacione strukture:');
disp('konstanta pojacanja:');
disp(g_c);
for brojac=1:br_sec_c
disp([num2str(brojac) '. sekcija']);
disp(' -brojilac:');
disp(basos_c(brojac,1:3));
disp(' -imenilac:');
disp(basos_c(brojac,4:6));
end;
H_c_uk=g_c*ones(size(H));
x=zeros(256,1);
x(1)=1;
y=g_c*x;
for brojac=1:br_sec_c
H_c_uk=H_c_uk.*freqz(basos_c(brojac,1:3),basos_c(brojac,4:6));
y=prog11_5(basos_c(brojac,:),y);
end;
09-Dec-15 2:48 PM
5 of 14
file:///F:/glava11/glava11.html
figure,subplot(3,1,1),plot(w/pi,-20*log10(abs(H)));
xlim([0 1]),ylim([-5 100]),
ylabel('{\ita}_d({\it\omega}) [dB]');
subplot(3,1,2),plot(w/pi,-20*log10(abs(H_c_uk)));
xlim([0 1]),ylim([-5 100]),
ylabel('{\ita}_c({\it\omega}) [dB]');
Y=freqz(y,1);
subplot(3,1,3),plot(w/pi,-20*log10(abs(Y)));
xlim([0 1]),ylim([-5 100]),
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\itY}({\it\omega}) [dB]');
Keoficiejnti kaskadne realizacione strukture:
konstanta pojacanja:
0.0223
1. sekcija
-brojilac:
1
0
-1
-imenilac:
1.0000
-0.3506
2. sekcija
-brojilac:
1
2
-imenilac:
1.0000
3. sekcija
-brojilac:
1
-2
0.6172
1
0.2996
0.8001
-imenilac:
1.0000
-0.9923
0.8272
09-Dec-15 2:48 PM
6 of 14
file:///F:/glava11/glava11.html
Zadatak 3
Reenje b)
09-Dec-15 2:48 PM
7 of 14
file:///F:/glava11/glava11.html
figure,zplane(z,p);
[rb,ra,g_p]=residuez(b,a);
br_sec_p=ceil(length(ra)/2);
tr_ind=1;
sec_ind=1;
while tr_ind<=length(ra)
if tr_ind==length(ra) || ra(tr_ind)~=conj(ra(tr_ind+1))
basos_p(sec_ind,1:6)=[rb(tr_ind),0,0,1 -ra(tr_ind),0];
tr_ind=tr_ind+1;
sec_ind=sec_ind+1;
else
[basos_p(sec_ind,1:3),basos_p(sec_ind,4:6)]=residuez([rb(tr_ind),rb(tr_ind+1)],[ra(tr_ind),ra(tr_ind+1)],0);
tr_ind=tr_ind+2;
sec_ind=sec_ind+1;
end;
end;
disp('Keoficiejnti paralelne realizacione strukture:');
disp('konstanta pojacanja:');
disp(g_p);
for brojac=1:br_sec_p
disp([num2str(brojac) '. sekcija']);
disp(' -brojilac:');
disp(basos_p(brojac,1:3));
disp(' -imenilac:');
disp(basos_p(brojac,4:6));
end;
H_p_uk=g_p*ones(size(H));
x=zeros(256,1);
x(1)=1;
y=g_p*x;
for brojac=1:br_sec_p
H_p_uk=H_p_uk+freqz(basos_p(brojac,1:3),basos_p(brojac,4:6));
y=y+prog11_5(basos_p(brojac,:),x);
end;
figure,subplot(3,1,1),plot(w/pi,-20*log10(abs(H)));
xlim([0 1]),ylim([-5 100]),
ylabel('{\ita}_d({\it\omega}) [dB]');
subplot(3,1,2),plot(w/pi,-20*log10(abs(H_p_uk)));
xlim([0 1]),ylim([-5 100]),
ylabel('{\ita}_p({\it\omega}) [dB]');
Y=freqz(y,1);
subplot(3,1,3),plot(w/pi,-20*log10(abs(Y)));
xlim([0 1]),ylim([-5 100]),
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\itY}({\it\omega}) [dB]');
Keoficiejnti paralelne realizacione strukture:
konstanta pojacanja:
-0.0546
1. sekcija
-brojilac:
-0.1961
0.0679
-imenilac:
1.0000
-0.9923
0.8272
2. sekcija
-brojilac:
-0.2285 + 0.0000i
-imenilac:
1.0000
0.0144 - 0.0000i
0.2996
0.8001
3. sekcija
-brojilac:
0.5015
-0.1087
-imenilac:
1.0000
-0.3506
0.6172
09-Dec-15 2:48 PM
8 of 14
file:///F:/glava11/glava11.html
Zadatak 4
a) Formirati signal,
x(n)=cos(2nf1/fs)+1.5cos(2nf2/fs) +1.8cos(2nf3/fs)
gde je frekvencija odabiranja fs=8000 Hz, i f1=1530 Hz, f2=1800 Hz, f3=2050 Hz. Signalu je
dodat um varijanse 2.
b) Izraunati spektralnu gustinu snage ovog signala za sledee duine signala {x(n)}:
N=32, 64, 128, 256, 512, 1024, 2048, 4096.
Rezultate predstaviti grafiki.
Reenje
09-Dec-15 2:48 PM
9 of 14
file:///F:/glava11/glava11.html
09-Dec-15 2:48 PM
10 of 14
file:///F:/glava11/glava11.html
09-Dec-15 2:48 PM
11 of 14
file:///F:/glava11/glava11.html
Zadatak 5
09-Dec-15 2:48 PM
12 of 14
file:///F:/glava11/glava11.html
Analizirati efekte konane duine rei na karakteristiku slabljenja IIR filtra projektovanog u
zadatku br.2, taka a).
a) Analiza kaskadne realizacione strukture. Konstante filtra izraunate u zadatku br.2, taka
b), predstaviti sa duinom rei od 10 bita. Primeniti zaokruavanje. Izraunati karakteristiku
slabljenja filtra i uporediti sa karakteristikom koja se dobija sa tanim vrednostima konstanti.
b) Analiza paralelne realizacione strukture. Postupak iz prethodne take ponoviti i za
paralelnu realizacionu strukturu.
c) Postupak iz taaka a) i b) ponoviti za duine rei od 8 i 12 bita.
Reenje a)
09-Dec-15 2:48 PM
13 of 14
file:///F:/glava11/glava11.html
Reenje b)
[rb,ra,g_p_full]=residuez(b,a);
br_sec_p=ceil(length(ra)/2);
tr_ind=1;
sec_ind=1;
while tr_ind<=length(ra)
if tr_ind==length(ra) || ra(tr_ind)~=conj(ra(tr_ind+1))
basos_p_full(sec_ind,1:6)=[rb(tr_ind),0,0,1 -ra(tr_ind),0];
tr_ind=tr_ind+1;
sec_ind=sec_ind+1;
else
[basos_p_full(sec_ind,1:3),basos_p_full(sec_ind,4:6)]=residuez([rb(tr_ind),rb(tr_ind+1)],[ra(tr_ind),ra(tr_ind+1)],0);
tr_ind=tr_ind+2;
sec_ind=sec_ind+1;
end;
end;
for br=1:length(duz_kod_rec)
basos_p=round(basos_p_full*2^(duz_kod_rec(br)-1))/2^(duz_kod_rec(br)-1);
g_p=round(g_p_full*2^(duz_kod_rec(br)-1))/2^(duz_kod_rec(br)-1);
H_p_uk(:,br)=g_p*ones(size(H));
for br_sec=1:br_sec_p
H_p_uk(:,br)=H_p_uk(:,br)+freqz(basos_p(br_sec,1:3),basos_p(br_sec,4:6));
end;
end;
figure,plot(w/pi,-20*log10(abs(H)),w/pi,-20*log10(abs(H_p_uk)));
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\ita}_p({\it\omega}) [dB]');
legend('MATLAB','8 bita','10 bita','12 bita');
figure,plot(w/pi,(abs(H)),w/pi,(abs(H_p_uk)));
xlabel('{\it\omega}/{\it\pi}'),ylabel('{\it\fontname{Monotype Corsiva}M}_p({\it\omega})');
legend('MATLAB','8 bita','10 bita','12 bita');
09-Dec-15 2:48 PM
14 of 14
file:///F:/glava11/glava11.html
09-Dec-15 2:48 PM