DSP Tutorial 6
DSP Tutorial 6
Oleh:
Tri Budi Santoso
Lab Sinyal,
EEPIS-ITS
11/23/2006
Konsep Dasar
z
y[n] = a l y[n l ] + bk x[ n k ]
l =1
k =0
(1)
11/23/2006
Contoh 1:
Suatu sistem IIR memiliki nilai M=N=1 dengan fungsi output sebagai berikut
y[n] = a1y[n-1] + b0x[n] + b0y[n-1]
(2)
Maka bentuk diagram bloknay didapatkan sebagai:
b0
y[n]
x[n]
z-1
z-1
b1
11/23/2006
a1
y[n-1]
4
(3)
x[ n] = 2 [ n] 3 [ n 1] + 2 [ n 3]
(4)
Matlab Code
y(1)=0;
x(2)=2; x(3)=-3; x(4)=0; x(5)=2;
for n=2:5
y(n) = 0.8*y(n-1) + 5*x(n);
end
for n=6:10
y(n) = 0.8*y(n-1);
end
nn=0:9;
stem(nn-1,y)
grid
11/23/2006
y[ n] = y[3](0,8)
11/23/2006
n 3
untuk n>3
y[ n] = h[ n] x[ n] Y [ z ] = H [ z ] X [ z ]
juga berlaku pada sistem IIR
(5)
Y ( z ) = a1 z 1Y ( z ) + b0 X ( z ) + b1 z 1 X ( z )
Coba
cari formulasi H(z)=Y(z)/X(z)
11/23/2006
Y ( z ) a1 z 1Y ( z ) = b0 X ( z ) + b1 z 1 X ( z )
(1 a z )Y ( z) = (b
1
+ b1 z
(
(
)X ( z)
)
)
b0 + b1 z
Y ( z)
B( z )
H ( z) =
=
=
1
X ( z)
1 a1 z
A( z )
(6)
Contoh 2:
Suatu feedback filter dinyatakan dalam domain-n sebagai:
y[n] = 0,5y[n-1] - 3x[n] + 2x[n-1]
Buat program Matlab untuk filter ini.
Penyelesaian:
Dari kasus ini didapatkan:
aa = 1; -0,5
bb = -3; 2
Dengan Matlab bentuk ini akan dituliskan sebagai:
yy=filter([-3,2], [1,-0.5],xx)
11/23/2006
10
Contoh 3:
Pada kasus yang sama coba anda cari bentuk system function dalam domain-z
Penyelesaian:
Dengan cara yang sudah standar kita rubah persamaan diatas menjadi domain-z
Y ( z ) = 0,5 z Y ( z ) 3 X ( z ) + 2 z X ( z )
1
Y ( z ) 0,5 z Y ( z ) = 3 X ( z ) + 2 z X ( z )
(1 0,5z )Y ( z ) = ( 3 + 2 z )X ( z )
Y ( z ) ( 3 + 2 z )
H ( z) =
=
X ( z ) (1 0,5 z )
1
11/23/2006
11
Contoh 4:
Suatu syntax Matlab dinyatakan sebagai berikut:
yy=filter(5,[1,0.8],xx)
Cari system function dan respon impulsenya (respon dalam domain-n)
Penyelesaian:
Dalam hal ini didapatkan nilai bb=5 dan aa=1; 0,8
Maka kita dapat menyususn system function dalam domain-z sebagai berikut:
Y ( z)
5
=
X ( z ) 1 + 0,8 z 1
Y ( z )(1 + 0,8) = X ( z )
H ( z) =
Y ( z ) = 0,8 z 1Y ( z ) + 5 X ( z )
Dalam domain-n akan didapatkan bentuk:
y[n] = -0,8y[n-1] + 5x[n]
11/23/2006
12
Direct Form II
Structure
Transpose Form
Structure
11/23/2006
13
b0
v[n]
y[n]
x[n]
z-1
z-1
b1
11/23/2006
a1
y[n-1]
Feed back part = 1/A(z)
14
b0 + b1 z 1 1
1
1
b + b1 z =
B( z )
H ( z) =
=
1
1 0
A( z )
1 az
1 az
11/23/2006
15
1
1
B ( z ) = B ( z )
H ( z ) =
A( z )
A( z )
b0
w[n]
y[n]
x[n]
z-1
a1
w[n-1]
Feed back part = 1/A(z)
11/23/2006
z-1
w[n-1]
b1
b0 + b1 z
H ( z) =
1
1 az
17
w[n]
b0
y[n]
x[n]
z-1
a1
w[n-1]
11/23/2006
b1
18
b0
y[n]
x[n]
v[n-1]
z-1
b1
11/23/2006
v[n]
a1
19
Y ( z ) = b0 X ( z ) + z 1V ( z )
V ( z ) = b1 X ( z ) + a1 z 1Y ( z )
Eliminasi terhadap V(z) memberikan
Y ( z ) = b0 X ( z ) + z 1 b1 X ( z ) + a1 z 1Y ( z )
(1 a z )Y ( z ) = (b
1
+ b1 z 1 X ( z )
1
Y ( z ) b0 + b1 z
H ( z) =
=
X ( z ) 1 a1 z 1
11/23/2006
20
H ( z) = a z
n
n =0
= az
n =0
1 n
1
=
1 az 1
1
a u[n]
1 az n
n
11/23/2006
21
Contoh:
Sistem IIR memiliki respon impulse:
y[n] = a1y[n-1] + b0x[n] + b1x[n-1]
System functionnya adalah:
h[ n] = b0 ( a1 ) n u[ n] + b1 ( a1 ) n 1 u[ n 1]
Gunakan sifat linearitas dan delay pada transformasiz:
H ( z)
11/23/2006
1
1
1
+ b1 z
= b0
1
1
1 a1 z
1 a1 z
b0 + b1 z 1
=
1 a1 z 1
22
x[n] = e jn
y[n] = H ( )e jn
H ( ) = H (e j ) = H ( z ) z =e j
b0 + b1 z 1
H ( z) =
1 a1 z 1
H ( e j ) = H ( z ) z = e j
11/23/2006
b0 + b1e j
=
1 a1e j
23
H (e )
( )
= H ( e j ) H * e j
j
1 a1e
1 a1* e j
b0 + b1 + b0 b1* e + j + b0*b0 e + j
2
1 + a1 a1* e + j a1e j
2
{
}
2 Re{a e }
b0 + b1 + 2 Re b0*b0 e + j
2
1 + a1
11/23/2006
Dalam hal ini tidak ada asumsi bahwa koefisien filter adalah real
24
H (e
b0
+ b1
1 + a1
2
2
+ 2 b b 0 cos ( )
*
0
2 a 1 cos ( )
b1 sin ( )
a1 sin ( )
1
tan
( ) = tan
1 a1 cos( )
b0 + b1 cos( )
1
25
Maltab Code:
aa=[1,-0.8];
bb=[2,2];
w=-6:0.03:6;
HH=freqz(bb,aa,w);
subplot(2,1,1)
plot(w,abs(HH),'linewidth',2)
grid
ylabel('Magnitudo')
subplot(2,1,2)
plot(w,phase(HH),'linewidth',2)
grid
ylabel('Fase')
11/23/2006
26
11/23/2006
27