Beispiel einfacher Filter: Rechteckfilter I

Beispiel einfacher Filter: Rechteckfilter I
Ein Rechteckfilter hat die Struktur
H(z) =
1
2
+ 12 z −1
1
ℑ
ℜ
mit dem Frequenzgang
1
+ 1 e iω
H(ω) = H(e iω ) = 2 2
1
Es ergibt sich der Betragsfrequenz und Phasengang eines Tiefpasses.
Das Filter hat eine Polstelle bei z = 0 und eine Nullstelle bei z = −1.
Mario Hlawitschka
Digitale Signalverarbeitung
260
Beispiel einfacher Filter: Rechteckfilter II
1
|H(ω)|
0.8
0.6
0.4
0.2
−3
−2
−1
ω
1
2
3
φ (H(ω))
2
ω
−3
Mario Hlawitschka
−2
−1
1
2
3
−2
Digitale Signalverarbeitung
261
Beispiel einfacher Filter: Diskreter Ableitungsfilter I
Ein diskreter Ableitungsfilter hat die
Struktur
ℑ
1 − z −1 z − 1
=
H(z) =
1
z
ℜ
∗
mit dem Frequenzgang
1 − e −iω
H(ω) = H(e iω ) =
1
Es ergibt sich der Betragsfrequenzgang und Phasengang eines
Hochpasses.
Mario Hlawitschka
Digitale Signalverarbeitung
262
Beispiel einfacher Filter: Diskreter Ableitungsfilter II
2
|H(ω)|
1.5
1
0.5
−3
−2
−1
ω
1
2
3
φ (H(ω))
2
ω
−3
Mario Hlawitschka
−2
−1
1
2
3
−2
Digitale Signalverarbeitung
263
Beispiel einfacher Filter: Tiefpass 1. Ordnung I
Ein analoger Tiefpass wird im einfachsten Fall durch ein RC-Glied
aufgebaut.
R
C
Ua
V
Ue
Es gilt die Gleichung
Ua = Ue ·
und somit mit Ω =
Ha (ω) =
Mario Hlawitschka
ω
ωc
und ωc =
ZC
ZR + ZC
1
τ
=
1
RC
1
Ua
ZC
1
1
=
= iωC 1 =
=
Ue
ZR + ZC
1 + iωRC
1 + iΩ
R + iωC
Digitale Signalverarbeitung
264
Das Beispiel ist für R = 1Ω, C = 1F.
1
0.8
0.6
0.4
0.2
−3
−2
−1
|Ha (ω)|
ω
1
2
3
φ (Ha (ω))
2
ω
−3
Mario Hlawitschka
−2
−1
1
2
3
−2
Digitale Signalverarbeitung
265
Für die digitale Modellierung benötigt man die Differenzengleichung.
Es gilt
Ua = UC =
QC (t)
,
C
I=
dQC (t)
dUC
=C
dt
dt
Ue − Ua = UR = R · IR = R · IC = RC
dUa
dUC
= RC
dt
dt
und mit der Diskretisierung der Ableitung
dUa (t) y [n] − y [n − 1]
≈
dt
∆t
x[n] − y [n] = RC
Mario Hlawitschka
y [n] − y [n − 1]
∆t
Digitale Signalverarbeitung
266
Somit folgt die Differenzengleichung
y [n] =
∆t
x[n]
RC + ∆t
|
{z
}
+
Beitrag des Eingangs
t
Mit α = RC∆+∆
und somit 1 − α =
t
Differenzengleichung
RC
y [n − 1]
RC + ∆t
|
{z
}
RC
RC +∆t
Trägheit
folgt die
y [n] = αx[n] + (1 − α)y [n − 1].
Mario Hlawitschka
Digitale Signalverarbeitung
267
Der digitale Tiefpass 1. Ordnung hat also
die Struktur
α
H(z) =
1 − (1 − α)z −1
mit dem Frequenzgang
ℑ
|Ri |
∗
ℜ
α
(1 − α)e iω
Das Filter hat keine Nullstellen und eine Polstelle bei z = 1 − α →
Das Filter ist BIBO stabil für 0 ≤ α ≤ 1.
H(ω) = H(e iω ) =
Mario Hlawitschka
Digitale Signalverarbeitung
268
Es ergibt sich der Betragsfrequenz und Phasengang (am Beispiel
α = 0.5)
1
|H(ω)|
0.8
0.6
0.4
0.2
−3
−2
−1
ω
1
2
3
φ (H(ω))
2
ω
−3
Mario Hlawitschka
−2
−1
1
2
3
−2
Digitale Signalverarbeitung
269
1
2
3
4
5
6
7
8
9
10
11
12
13
f r e q u e n c y s p a c e = [ −500:500]/500∗ p i ; % −p i
...
pi
z1 = e xp (− j ∗ f r e q u e n c y s p a c e ) ;
alpha = 0.5
Homega = ( a l p h a ∗ z1 ) . / (1− (1− a l p h a )∗ z1 ) ;
figure ;
subplot (2 ,1 ,1);
p l o t ( f r e q u e n c y s p a c e , a b s ( Homega ) ) ;
t i t l e ( ' |H( omega ) | ' )
subplot (2 ,1 ,2);
p l o t ( f r e q u e n c y s p a c e , a n g l e ( Homega ) ) ;
t i t l e ( ' p h i (H( omega ) ) ' )
Mario Hlawitschka
Digitale Signalverarbeitung
270
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
%%
% compute d e l t a r e s p o n s e f o r l o w p a s s
ypulse (1) = alpha
f o r i =2:100
y p u l s e ( i ) = (1− a l p h a ) ∗ y p u l s e ( i − 1 ) ;
end
f i g u r e ( ) ; plot ( 0:99 , ypulse ) ;
%%
% compute s t e p r e s p o n s e l o w p a s s
x = 1:100;
x = (x < 50)∗1.0;
y s t e p (1)= a l p h a ;
f o r i =2:100
y s t e p ( i ) = (1− a l p h a )∗ y s t e p ( i −1) + a l p h a ∗x ( i ) ;
end
figure ( ) ; plot (0:99 , ystep );
Mario Hlawitschka
Digitale Signalverarbeitung
271
Es gibt eine ebenfalls verwendete alternative Implementierung wenn
man z.B.
dUa
1
1
= IC =
(Ue − Ua )
dt
C
RC
ansetzt und entsprechend diskretisiert
y [n] − y [n − 1]
1
=
(x[n − 1] − y [n − 1]).
∆t
RC
Daraus folgt das Filter
y [n] − (1 −
∆t
∆t
)y [n − 1] =
x[n − 1]
RC
RC
und somit der Übertragungsfunktion
H(z) =
∆t −1
RC z
∆t
1 − (1 − RC
)z −1
Aufgrund der Rechenregeln der z-Transformation ist dies das um
einen Abtastzeitpunkt verschobene Filter.
Mario Hlawitschka
Digitale Signalverarbeitung
272
Beispiel einfacher Filter: Tiefpass 2. Ordnung I
Ein analoger Tiefpass 2. Ordnung wird im einfachsten Fall durch ein
LRC-Glied aufgebaut.
L
R
C Ua
V
Ue
Es gilt die Gleichung
Ua = Ue ·
1
ZC
iωC
= Ue
1
R + ZL + ZC
R + (iωL + iωC
)
und somit mit
Ha (ω) =
Mario Hlawitschka
1
Ua
ZC
iωC
=
=
1
Ue
ZR + ZL + ZC
R + iωL + iωC
Digitale Signalverarbeitung
273
Beispiel einfacher Filter: Tiefpass 2. Ordnung II
Das Beispiel ist für R1 = 1Ω, R2 =
√
2Ω, L = 1H, C = 1F.
|Ha (ω)|
1
0.5
ω
−3
−2
−1
1
2
3
φ (Ha (ω))
2
ω
−3
Mario Hlawitschka
−2
−1
1
2
3
−2
Digitale Signalverarbeitung
274
Beispiel einfacher Filter: Tiefpass 2. Ordnung III
Alternativ erhält man ein Filter 2. Ordnung durch Kaskadierung.
Dafür müssen die Filter entkoppelt werden.
+
R1
R2
−
Rb
C1
C2
Ua
V
Ue
Ra
6
Mario Hlawitschka
Digitale Signalverarbeitung
275
Beispiel einfacher Filter: Tiefpass 2. Ordnung IV
Ein digitales Filter 2. Ordnung erhält man durch Kaskadierung
zweier Filter erster Ordnung
Ha (z) = H1 (z) · H1 (z) =
=
Mario Hlawitschka
α
1 − (1 − α)z −1
α2
1 − 2(1 − α)z −1 + (1 − α)2 z −2
Digitale Signalverarbeitung
2
276
Beispiel einfacher Filter: Tiefpass 2. Ordnung V
1
|H0.6 (ω)|
|H0.55 (ω)|
|H0.5 (ω)|
|H0.25 (ω)|
0.8
0.6
0.4
0.2
−3
−2
−1
ω
1
2
3
2
φ (H0.6 (ω))
φ (H0.55 (ω))
φ (H0.5 (ω)) ω
3 φ (H0.25
4 (ω)) 5
2
−3
−2
−1
1
4
5
−2
6 OP Schaltung nach: National Semiconductor, Application Note 31, Sep.
2002: http://www.ti.com/ww/en/bobpease/assets/AN-31.pdf
Mario Hlawitschka
Digitale Signalverarbeitung
277
Beispiel einfacher Filter: Hochpass 1. Ordnung I
Ein Hochpass 1. Ordnung hat die Struktur
H(z) =
α − αz −1
1 − αz −1
mit dem Frequenzgang
H(ω) = H(e iω ) =
α − αe iω
(1 − α)e iω
Es ergibt sich der Betragsfrequenz und Phasengang (am Beispiel
α = 0.5)
Mario Hlawitschka
Digitale Signalverarbeitung
278
Beispiel einfacher Filter: Hochpass 1. Ordnung II
1
|H(ω)|
0.8
0.6
0.4
0.2
−3
−2
−1
ω
1
2
3
φ (H(ω))
2
ω
−3
Mario Hlawitschka
−2
−1
1
2
3
−2
Digitale Signalverarbeitung
279
Beispiel einfacher Filter: Hochpass 1. Ordnung III
1
2
3
4
5
6
7
8
9
10
11
12
13
f r e q u e n c y s p a c e = [ −500:500]/500∗ p i ; % −p i
...
pi
z1 = e xp (− j ∗ f r e q u e n c y s p a c e ) ;
alpha = 0.5
Homega = ( a l p h a −a l p h a ∗ z1 ) . / (1− a l p h a ∗ z1 ) ;
figure ;
subplot (2 ,1 ,1);
p l o t ( f r e q u e n c y s p a c e , a b s ( Homega ) ) ;
t i t l e ( ' |H( omega ) | ' )
subplot (2 ,1 ,2);
p l o t ( f r e q u e n c y s p a c e , a n g l e ( Homega ) ) ;
t i t l e ( ' p h i (H( omega ) ) ' )
Mario Hlawitschka
Digitale Signalverarbeitung
280
Beispiel einfacher Filter: Hochpass 1. Ordnung IV
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
%%
% compute d e l t a r e s p o n s e f o r l o w p a s s
ypulse (1) = 0;
f o r i =2:100
y p u l s e ( i ) = a l p h a ∗( y p u l s e ( i −1) + ( ( i ==2)−(( i −1)==2)));
end
f i g u r e ( ) ; plot ( 0:99 , ypulse ) ;
%%
% compute s t e p r e s p o n s e l o w p a s s
x = 1:100;
x = (x < 50)∗1.0;
y s t e p (1)= a l p h a ;
f o r i =2:100
y s t e p ( i ) = a l p h a ∗ y s t e p ( i −1) + a l p h a ∗( x ( i )−x ( i − 1 ) ) ;
end
figure ( ) ; plot (0:99 , ystep );
Mario Hlawitschka
Digitale Signalverarbeitung
281
Anwendung von Filtern auf Signale
Mario Hlawitschka
Digitale Signalverarbeitung
282