MATLAB/Simulink Experimente


Exposé (Elaboration), 2004

36 Pages


Extrait


Page 3


Kapitel 1

Aliasing oder Verschiebung der

zeitdiskreten Signale im

Frequenzbereich

Die Abtastwerte eines gleichmäßig abgetasteten Signals kann man nicht direkt mit einem kontinuierlichen Signal assoziieren [1], [2], weil unendlich viele Signale die gleichen Abtastwerte ergeben können [3]. Nur wenn die Bandbreite des kontinuierlichen Signals bis f max = f s /2 begrenzt ist, gibt es eine eindeutige Zuordnung zwischen dem kontinuierlichen Signal und den Abtastwerten. Mit f s wurde die Abtastfrequenz bezeichnet.

Mit anderen Worten ausgedrückt, gibt es bei diskreten, gleichmässig abgetasteten Signalen eine Mehrdeutigkeit, die im nächsten Abschnitt untersucht wird.

1.1 Mehrdeutigkeit der zeitdiskreten Signale

Ein sinusförmiges Signal der Frequenz f 0 und Amplitude A x der Form

(1.1) x(t) = A x sin(2πf 0 t)

wird mit einer Abtastfrequenz f s = 1/T s abgetastet, was zu einer Zeitdiskretisierung führt:

t = kT s mit k = −∞, . . . , −2, −1, 0, 1, 2, . . . ,

Die zeitdiskreten Abtastwerte werden dann:

(1.2) x[kT s ] = A x sin(2πf 0 kT s ) = A x sin(2πf 0 kT s + m2π)

Gerade die Periodizität der stationären, sinusförmigen (oder cosinusförmigen) Komponenten, in dieser Gleichung mit dem Term m2π, m Z dargestellt, zusammen mit der gleichmässigen Abtastung führt zu einer Mehrdeutigkeit. Die obige Gleichung kann auch in folgender Form

m

(1.3) x[kT s ] = A x sin(2π(f 0 + f s )kT s ) = A x sin(2π(f 0 + nf s )kT s )

k

Page 6


1.2 MATLAB/Simulink-Experimente zum Aliasing-Effekt 4

In dem gezeigten Zahlenbeispiel, wird die aus den Abtastwerten rekonstruierte, kontinuierliche Komponente der Frequenz 25 kHz nicht mehr die ursprüngliche Komponente der Frequenz 125 kHz darstellen, sondern sie bildet die verschobene Komponente.

image 174437a6aa605145b0218d26a23a0719

Auch im alltäglichen Leben kommen solche Sachverhalte vor. Bei einem Formel-1-Rennen sieht man plötzlich, dass die Räder stehen bleiben oder sich in umgekehrter Richtung drehen, obwohl sich der Wagen richtig bewegt. Abb. 1.4 zeigt wie das zustande kommt.

Die Bildsequenzen stellen Abtastbilder bei t, t + T s , t + 2T s , t + 3T s , t + 4T s dar, und in einer Sequenz wird das Rad mit den Speichern an einer Stelle und in der nächsten Sequenz an einer anderen Stelle erfasst.

Die Stellen können langsam vorrücken, obwohl sich die Räder vielmals gedreht haben. Es entsteht der Eindruck, dass die Räder zu langsam drehen (Abb. 1.4a). Wenn die Speicher in derselben Lage in jeder Sequenz erfasst werden, hat man den Eindruck die Räder drehen sich nicht (Abb. 1.4b). Kleine Abweichungen nach hinten führen zum Eindruck, dass die Räder umgekehrt drehen (Abb. 1.4c).

Es gibt auch andere ähnliche Beispiele, alle verbunden mit Abtastereignissen. So z.B. funktioniert das Stroboskop, das man für die Einstellung der Vorzündung eines Fahrzeugs einsetzt. Das pulsierende Licht des Stroboskops wird mit der Zündung synchronisiert, so dass die Stelle am Schwungrad, bei der die Zündung stattfindet, als stehend erscheint.

1.2 MATLAB/Simulink-Experimente zum

Aliasing-Effekt

Mit MATLAB- bzw. Simulink-Simulationen kann der Aliasing-Effekt einfach reproduziert werden [4]. Abb. 1.5 zeigt das Modell abtast_12.mdl das über das Programm abtast12.m initialisiert und Aufgerufen wird. Die Blöcke Sine Wave aus der Sources- Bibliothekakzeptieren keine negativen Frequenzen und um das zu umgehen, werden die sinusförmigen Signale mit Hilfe von Fcn-Blöcken (Function-Blöcken), die als Eingang die Zeit haben, erzeugt.

Page 10


Kapitel 2

Aliasing-Experiment mit dem

Digitalen-Oszilloskop TDS 220

Das Tektronix TDS 220 Oszilloskop ist ein so genanntes digitales Speicher-Oszilloskop, das die Verläufe in Echtzeit aufnimmt. Wenn Einkanal-Betrieb verwendet wird, werden 2500 Abtastwerte des Eingangssignals aufgenommen, und die Hälfte davon, wenn beide Kanäle eingesetzt werden. Nachdem diese Werte im Speicher hinterlegt sind, werden sie bearbeitet und am Display angezeigt.

image 3d8b5e22a16d2bcd43bcbcdf65967c8a

Abb. 2.1 zeigt diesen Sachverhalt für den Einkanal-Betrieb. Die neue Erfassung muss mit dem Signal synchronisiert sein, um ein stabiles Bild der Anzeige zu erhalten.

2.1 Durchführung des Experiments

Das Oszilloskop hat eine Bandbreite von 100 MHz und eine Abtastfrequenz bis 1 GS/s 1 oder 1 GHz. Die höchste Abtastfrequenz von 1 GHz ist zehn mal größer als die Bandbreite von 100 MHz und somit gibt es 10 Abtastwerte in einer Periode für das Signal der höchsten Frequenz.

Mit Hilfe der Abtastfrequenz wird die Zeitablenkung bei diesen Oszilloskopen eingestellt. Der Bereich für diesen Parameter liegt zwischen 5 ns/Div bis 5 s/Div. Bei 10

1 Giga-Samples/Sekunde

Page 16


Anhang A

Spektrum der zeitdiskreten

Signalen

Es wird das Spektrum der zeitdiskreten Signalen über die Fourier-Transformation ermittelt. Der partikuläre Fall der periodisch, stationären, sinusförmigen Komponenten wurde im ersten Kapitel mit einfachen mathematischen Mitteln abgeleitet. Die Fourier-Transformation [5], [6] erweitert die Betrachtungen im Frequenzbereich auch für zeitdiskrete aperiodische Signale. Wenn man die Werkzeuge, die man bei kontinuierlichen Signalen einsetzt, auch für die zeitdiskreten Signale anwenden möchte, dann müssen die Abtastwerte als Dirac-Funktionen [5] angenommen werden. Nur so kann man alle Integralfunktionen (wie z.B. die Fourier-Transformation oder das Faltungsintegral) auch für die zeitdiskreten Signale benutzen.

A.1 Die Dirac oder Delta-Funktion

Ingenieurmäßig wird die Dirac- oder Delta-Funktion als Grenzfunktion eines Rechteckimpulses der Form (Abb. A.1a)

image cc656bdbd8b1a08932aebaa54d7b091b

eingeführt. Er ist ein Impuls der Dauer τ und Höhe 1/τ und somit besitzt er eine Fläche gleich eins. Die Grenzfunktion (A.2) δ(t) = lim ∆(t)

τ →0

bildet die so genannte Dirac- oder Delta-Funktion δ(t). Die Delta-Funktion hat also für alle t = 0 den Wert 0 und trotzdem gilt:

(A.3) δ(t)dt = 1 −∞

Im Sinne der klassischen Funktionen und des Riemann-Integralls ist das nicht möglich. Mathematisch korrekt wird die Delta-Funktion als Distribution [1] eingeführt. Die- ser Aspekt wird hier nicht mehr weiter verfolgt.

Page 19


A.2 Die Abtastung als Multiplikation mit einer periodischen Delta-Folge 17

Für die graphische Darstellung der Delta-Funktion als Limes des Rechteckimpulses oder der gezeigten Integralen, wird ein vertikaler Pfeil der Länge eins benutzt (Abb. A.1b). Dementsprechend wird die Funktion aδ(t) durch einen Pfeil der Länge a dargestellt.

Die Delta-Funktion besitzt die Extraktionseigenschaft

image df90cb0b66780595298ac3f34fa65aba

mit deren Hilfe viele Beziehungen aus der kontinuierlichen Welt auch für die zeitdiskreten Signale verwendet werden können. Hier ist ϕ(t) eine beliebige bei t 0 stetige Funktion.

image 37bda87567e0610c4a19367cfc3ea02c

So z.B. ergibt die Faltung eines Signals ϕ(t) mit der Delta-Funktion δ(t t 0 ) eine Verschiebung des Signals an Stelle der Delta-Funktion (Abb. A.3):

image 713d9ceb4b05abc88d61261c79b33f7c

A.2 Die Abtastung als Multiplikation mit einer periodi-

schen Delta-Folge

Man kann jetzt die Abtastung durch eine Multiplikation einer periodischen Folge von Delta-Funktionen p(t) mit dem kontinuierlichen Signal x(t) als Modell annehmen, Abb. A.4. Das Spektrum des kontinuierlichen Signals wird mit X(jω) bezeichnet und die periodische Folge von Delta-Funktionen wird durch die komplexe Fourier-Reihe ausgedrückt:

image 1ee16aae6399ad54f15d38d16d5d45df

Page 27


Kapitel 1

Ermittlung der Frequenzgänge

von FIR- und IIR-Filtern

Es wird gezeigt, wie man mit Hilfe der FFT die Frequenzgänge von digitalen FIR- und IIR-Filtern effizient ermitteln kann. Diese Methode ist auch in der MATLAB-Funktion freqz implementiert.

1.1 Frequenzgang von FIR-Filtern

Ein FIR-Filter realisiert folgende zeitdiskrete Eingang-Ausgangsbeziehung:

y[kT s ] = b 0 x[kT s ] + b 1 x[(k 1)T s ] + · · · + b m x[(k m)T s ] (1.1)

Wobei durch T s die Abtastperiode und durch f s = 1/T s die Abtastfrequenz der diskreten Sequenzen bezeichnet wird. Die dazugehörige Übertragungsfunktion ist:

Y (z)

= b 0 + b 1 z −1 + · · · + b m z −m (1.2) H(z) =

X(z)

Den Frequenzgang erhält man, wenn z durch z = e jωTs in H(z) ersetzt wird [1], [2]:

m

H(e jωTs ) = b 0 + b 1 e −jωTs + · · · + b m e −jωTsm = b n e −jωTsn (1.3) n=0

Es ist bekannt [3], dass der Frequenzgang eine periodische Funktion in ω der Periode ω s = 2π/T s ist. Somit muss man den Frequenzgang nur für den Bereich 0 ω < 2π/T s ermitteln. Dafür wird dieser Bereich in N Intervalle unterteilt und der Frequenzgang wird nur für diese Werte ermittelt:

i

, mit i = 0, 1, 2, . . . , N 1 (1.4) ω i = ∆ω i = (2π/T s )

N

Der Frequenzgang H(e jωTs ) für ω = ω i wird:

image 5113541b8e3c24aa9df9d76d6ab5d25e

Page 30


1.2 Frequenzgang von IIR-Filtern 4

wird der Phasengang ohne die typischen Sprünge von dargestellt. Diese Sprünge werden eingesetzt, um die Auflösung der Darstellung der Phase zu verbessern. In der Darstellung rechts unten sieht man diese Sprünge, weil hier die Phase ohne die Funktion unwrap dargestellt wird:

subplot(224), plot((0:N-1)/N, (angle(Hi)));

1.2 Frequenzgang von IIR-Filtern

Ein IIR-Filter realisiert folgende zeitdiskrete Eingang-Ausgangsbeziehung:

image 9299d61fe9cff4705635c1d767dd5cae

Die entsprechende Übertragungsfunktion ist jetzt:

image 08c4278189061d4ce49ac81db8df4098

Den Frequenzgang erhält man auch hier, wenn z durch z = e jωTs in H(z) ersetzt wird:

image 90f543e5652f741315ff82640c19ae4f

Statt der Summe aus Gl. (1.3), mit der man den Frequenzgang eines FIR-Filters berechnen kann, ist jetzt noch eine ähnliche Summe für den Nenner in Gl. (1.10) hinzugekommen. Sie kann in der selben Art für N Punkte entlang des Einheitskreises berechnet werden.

Zusammenfassend stellt man fest, dass für IIR-Filter zwei DFTs (oder FFTs) berechnet werden müssen und zwar einmal für den Zähler und einmal für den Nenner des komplexen Frequenzgangs H(e jωTs ). Dazu werden die Koeffizienten des Zählers und des Nenners mit Nullwerten bis zu einer Länge N erweitert und danach die DFT dieser erweiterten Koeffizienten ermittelt. Die elementweise Teilung dieser DFTs ergibt den komplexen Frequenzgang des IIR-Filters für N Punkte entlang des Einheitskreises. Wenn die ursprüngliche Anzahl der Koeffizienten im Zähler und Nenner verschieden sind, müssen sie bis zur gleichen Länge N erweitert werden. Im Programm freqz_iir.m ist ein Beispiel gezeigt:

% Programm freqz_iir.m in dem der Frequenzgang eines

% IIR-Filters über die FFT ermittelt und dargestellt wird

% ------- Entwicklung eines IIR-Tiefpassfilters

% mit der Funktion ellip nord = 8; % Ordnung des Filters

m = nord + 1; % Anzahl der Koeffizienten in Zähler und Nenner

Page 33


Kapitel 2

Frequenzgänge von Filterbänken

Wenn der Frequenzgang einer Filterbank bestehend aus mehreren Bandpassfiltern zu ermitteln ist, dann kann dies mit Hilfe der FFT in MATLAB sehr leicht realisiert werden. Angenommen in der Matrix hbank stellen die Zeilen die Impulsantworten der FIR-Filter der Filterbank dar. Dann wird mit

N = 1024;

Hbank = fft(hbank,N,2);

eine komplexe Matrix Hbank ermittelt, in der die komplexen Frequenzgänge der Filter in den Zeilen enthalten sind. Die Koeffizienten der Filter werden mit Nullwerten bis N erweitert und mit 2 signalisiert man, dass die DFT (oder FFT) entlang der Zeilen zu berechnen ist. Ohne diesen Wert wird defaultmäßig die Berechnung entlang der Spalten durchgeführt.

Danach können die Frequenzgänge der Filterbank direkt dargestellt werden:

subplot(211), plot((0:N-1)/N, abs(Hbank.’));

...

subplot(212), plot((0:N-1)/N, angle(Hbank.’)); ...

Mit Hbank.’ wird wegen des Punktes die Transponierung der komplexen Matrix, ohne dass die Elemente der Matrix durch ihre konjugiert komplexen Werte zu ersetzen, realisiert. Die Transponierung ist notwendig, weil die Funktion plot stellt defaultmäßig die Spalten einer Matrix dar.

2.1 DCT-Filterbänke

Als Beispiel wird im Programm freqz_filterbank.m eine DCT 1 -Filterbank [4] mit 8 Filtern entwickelt:

% Programm freqz_filterbank.m in dem der Frequenzgang einer % FIR-Filterbank über die FFT ermittelt und dargestellt wird

% ------- Entwicklung einer FIR-DCT-Filterbank

% über die Matrix der DCT

1 Discrete-Cosine-Transform

Fin de l'extrait de 36 pages

Résumé des informations

Titre
MATLAB/Simulink Experimente
Auteur
Année
2004
Pages
36
N° de catalogue
V109523
ISBN (ebook)
9783640077045
Taille d'un fichier
926 KB
Langue
allemand
Annotations
Die Referate haben folgende Titel: 1) MATLAB Experimente zur Aliasing oder Verschiebung der zeitdiskreten Signale im Frequenzbereich, 2) Ermittlung der Frequenzgänge von digitalen Filtern mit Hilfe der FFT in MATLAB
Mots clés
MATLAB/Simulink, Experimente
Citation du texte
Josef Hoffmann (Auteur), 2004, MATLAB/Simulink Experimente, Munich, GRIN Verlag, https://www.grin.com/document/109523

Commentaires

  • Pas encore de commentaires.
Lire l'ebook
Titre: MATLAB/Simulink Experimente



Télécharger textes

Votre devoir / mémoire:

- Publication en tant qu'eBook et livre
- Honoraires élevés sur les ventes
- Pour vous complètement gratuit - avec ISBN
- Cela dure que 5 minutes
- Chaque œuvre trouve des lecteurs

Devenir un auteur