5_Schritte zur emotionalen Kundenansprache_SOM2015
Pmcdsp v5
1. Prof. Dr.-Ing. habil. K. Dostert
Praktikum: „Mikrocontroller und digitale
Signalprozessoren“
Versuch 5
Simulation eines Systems zur
Nachrichtenübertragung mit Matlab /
Simulink
2. Versuch 5
Einleitung
Das Ziel dieses Praktikumsversuches ist es, Ihnen die Funktionsweise eines einfachen
digitalen Datenübertragungssystemes, bestehend aus Sender, Kanal und Empfänger, zu
verdeutlichen. Hierzu wird mit einem Softwaretool zur Simulation digitaler Signal-
verarbeitungssysteme ein Datenübertragungssystem aufgebaut und durch Simulation
untersucht. In der Simulation lässt sich der Weg der digitalen Daten verfolgen, die zunächst
im Sender in eine zur Übertragung über den physikalischen Kanal geeignete Form
„moduliert“ werden. Bei der Übermittlung über den Kanal werden die Datenströme durch
Rauschen oder Kanalverzerrungen gestört. Der Empfänger muss nun anhand der gestörten
Eingangsdaten entscheiden, welche Daten gesendet wurden. Im Verlaufe der
Versuchsdurchführung werden Sie verschiedene Modulationsverfahren auf ihre
Leistungsfähigkeit hin untersuchen.
Zuerst erfolgt eine allgemeine Einführung zur Theorie der digitalen Nachrichtenübertragung.
Im zweiten Kapitel wird das Simulationswerkzeug MATLAB / Simulink kurz vorgestellt, mit
dem in diesem Versuch gearbeitet werden soll. Das dritte Kapitel enthält schließlich Aufgaben
zur Vorbereitung des Versuches, sowie Aufgaben, die am Versuchsnachmittag gelöst werden
sollen.
2
3. Simulation eines Datenübertragungssystems
Nachrichtentechnische Grundlagen
Komponenten eines Datenübertragungssystems
Der grundsätzliche Aufbau eines Systems zur Übertragung digitaler Daten über einen
analogen Kanal sieht wie folgt aus:
digitale analoge analoge digitale
Daten Daten Daten Daten
analoger Empfänger
Sender
Kanal
Bild 1: Datenübertragung auf einem analogen Kanal
Durch den Sender und Empfänger wird das physikalische, analoge Übertragungsmedium, z.B.
Fernsprech- oder Funkkanal, zum digitalen Kanal ergänzt. Der Sender soll die Daten in eine
zur Übertragung über einen physikalischen Kanal möglichst geeignete Darstellungsform
bringen. Da die Signalübertragung meist im Bandpaßbereich (ein begrenztes Frequenzband,
welches die Frequenz 0 ausschließt) stattfindet, werden die Signale in einem Modulator oder
Mischer aus dem Tiefpaß-/Basisbandbereich (ein Frequenzband welches die Frequenz 0
einschließt) in den Bandpaßbereich transformiert. Der Empfänger mischt die empfangenen
Signale wieder in den Tiefpaßbereich und rekonstruiert möglichst fehlerfrei die gesendeten
Daten. Der genauere Aufbau eines solchen Systems sieht vereinfacht (ohne Entzerrer, Takt-
und Trägersynchronisation) aus nachrichtentechnischer Sicht wie folgt aus:
Impuls-
Daten Zeichencodierer Former Modulator
∞
∑δ
k =−∞
0 (t − kT )
Kanal
Entscheider /
Daten Matched Filter Demodulator
Zeichendecoder
Bild 2: Aufbau eines Datenübertragungssystems
(Einfache Linien stehen hier für reelle, doppelte Linien für komplexe Signale.
Zeitdiskrete Signale sind gestrichelt dargestellt.)
3
4. Versuch 5
Im Zeichencodierer werden den als Binärzeichen/-symbole vorliegenden Daten Impulspaare
(komplexe Signalvektoren) b(k) zugeordnet. Diese Folge von komplexen Zahlen (zeitdiskret)
wird durch die Multiplikation mit einem Impulskamm in ein zeitkontinuierliches Signal
umgesetzt, welches dann aus den mit den Signalvektoren gewichteten Impulsen im Abstand
T = 1 (mit r als Symbolrate) besteht. Man kann sich das etwa so vorstellen:
r
Im
Re t
Bild 3: Eingangssignal des Impulsformers
Diese Impulse werden im Impulsformfilter/Sendefilter mit der Impulsantwort des
Impulsformers gefaltet, um eine zur Übertragung geeignete Impulsform zu erzeugen. Es folgt
ein Modulator/Mischer zur Anpassung an den Kanal.
Mit dem Demodulator wir das Empfangssignal wieder zurück in das komplexe Basisband
umgesetzt. Das Matched Filter ist ein Empfangsfilter, das an die Signalform des
Basisbandimpulses angepaßt ist und entspricht dem Impulsformer im Sendeteil. Nach der
Abtastung wird dem empfangenen, gestörten Signalvektor im Entscheider der Signalvektor
zugeordnet, von dem er am wahrscheinlichsten ausging. Der gewählte Signalvektor wird im
Zeichendecoder wieder in die zugehörigen Binärzeichenfolge umgesetzt.
Modulationsverfahren
Wie bei analogen Modulationsverfahren unterscheidet man bei den digitalen zwischen
Amplituden-, Phasen-, und Frequenzmodulation. Für das mit dem Träger der Frequenz f C
modulierte Signal gilt grundsätzlich:
z (t ) = Re{A ⋅ m(t ) ⋅ exp( j 2πf C t )}
Je nach Modulationsverfahren ergibt sich ein anderes m(t), welches als modulierendes Signal
eine Funktion des komplexen Basisbandsignals s(t) am Ausgang des Impulsformers hS (t ) ist:
∞
s( t ) = ∑ b( k ) ⋅ h (t − kT )
s
k =−∞
Wir beschränken uns hier auf lineare Modulationsverfahren, die dadurch gekennzeichnet sind,
dass sie nur die Amplitude und die Phasenlage des modulierten Signals z(t) beeinflussen.
Dann gilt m(t)=s(t) (reellwertige Signale) und für das Sendesignal folgt:
z (t ) = s1 (t ) ⋅ cos(2πf C t ) + s 2 (t ) ⋅ sin( 2πf C t ) mit s1 (t ) = Re{s (t )} und s 2 (t ) = Im{s (t )}
Dabei bezeichnet man s1 (t ) als Inphasen- und s 2 (t ) als Quadraturkomponente des Signals.
Die in Bild 2 als Modulator und Demodulator gekennzeichneten Blöcke sind dann sog.
Mischer, welche das Eingangssignal lediglich auf eine andere Frequenz umsetzen.
4
5. Simulation eines Datenübertragungssystems
Der Sender sieht also wie folgt aus:
Seriell/ Signalraum
Parallel Zuordnung Filter Mischer
hS(t)
a(k) z(t)
Bitstrom b(k) b(t) s(t) sin(2pfCt)
hS(t)
Bild 4: Realisierung des Senders
Der Empfänger ist entsprechend aufgebaut:
Signalraum Parallel/
Mischer Filter Abtaster Entscheider Zuordnung Seriell
hE(t)
^
r(t) a(k)
cos(2π fCt) ^
sin(2πfCt)
rE(t) rE(k) b(k) Bitstrom
hE(t)
sE(t)+nE(t)
Bild 5: Realisierung des Empfängers
Die Zuordnung der komplexen Signalvektoren b(k) zu den Binärzeichen/-symbolen a(k) im
Zeichencodierer kann auf verschiedene Weise erfolgen und hat unterschiedliche Vor- und
Nachteile. Veranschaulicht wird die Zuordnung im sog. Signalraumdiagramm.
Grundsätzlich werden die Binärkombinationen im Sinne des Gray-Codes zu den
Signalvektorpunkten zugeordnet:
Gray: 0000 0001 0011 0010 0110 0111 0101 0100
Wert: 0 1 3 2 6 7 5 4
Gray: 1100 1101 1111 1110 1010 1011 1001 1000
Wert: 12 13 15 14 10 11 9 8
Beim Gray-Code unterscheiden sich benachbarte Binärkombinationen nur in einer Binärstelle.
Dadurch wird die Zahl der fehlerhaft empfangenen Bits minimiert, weil davon auszugehen ist,
dass Störungen mit kleiner Amplitude wahrscheinlicher sind als solche mit großer Amplitude
und damit Fehlentscheidungen zuerst auf Nachbarpunkte fallen. Desweiteren versucht man
die Signalpunkte möglichst weit voneinander weg zu legen. Gleichzeitig steigt aber die
Energie pro Signalvektor quadratisch mit der Entfernung zum Nullpunkt an.
5
6. Versuch 5
Puls-Amplituden-Modulation (PAM)
Bei der PAM, im Englischen Amplitude-Shift-Keying (ASK) genannt, werden die binären
Zeichen a(k) unterschiedlichen Amplitudenstufen zugeordnet. Die entstehenden Signalpunkte
liegen mit konstantem Abstand d zum Nachbarn um den Nullpunkt verteilt:
m= 000 001 011 010 110 100 101 111
1 Amplitude
d
Am
0
Bild 6: Signalraumdiagramm eines 8-ASK Systems
Da die Koeffizienten b(k) reell sind, vereinfacht sich die Signalverarbeitung stark, allerdings
ist dadurch die Bandbreiteneffizienz nur halb so groß wie bei den folgenden Verfahren.
Nachteilig ist auch, dass die Spitzenleistung hoch ist im Vergleich zur mittleren
Ausgangsleistung und somit der Sendeverstärker in einem weiten Dynamikbereich betrieben
wird. In Bild 6 wurde die maximale Amplitude von b(k) auf 1 normiert.
Phase-Shift-Keying (PSK)
Bei der Phasenmodulation liegen die Signalvektorpunkte in der komplexen Ebene und
unterscheiden sich nur durch ihre Phasenlage:
Im
1 101
111 100
110 000
0 1 Re
010 001
011
d
Bild 7: Signalraumdiagramm eines 8-PSK Systems
Die mittlere Signalleistung ist hier gleich der Spitzenleistung. Da alle Punkte gleiche
Amplituden haben, können die Sendeverstärker bis an ihre Aussteuerungsgrenze betrieben
werden. Auch beim Empfänger bietet dieses Verfahren Vorteile und ist sehr robust. Für eine
große Anzahl Zeichen rücken die Signalvektoren allerdings immer weiter zusammen, so dass
die Fehlerwahrscheinlichkeit steigt oder die Sendeleistung stark erhöht werden muss.
6
7. Simulation eines Datenübertragungssystems
ASK / PSK
Um diesen Nachteil auszugleichen kann man PSK dahingehend erweitern, daß man zusätzlich
Amplitudenabstufungen einführt. Dabei verteilen sich die Signalvektoren gleichmäßig in den
durch die Signalamplituden bestimmten Kreisen:
Im
010
1
011 000
111 001
0 1 Re
110 101
100
Bild 8: Signalraumdarstellung eines ASK/PSK-Systems
Der Vorteil des Verfahrens liegt hauptsächlich in der Möglichkeit des einfachen
Zurückschaltens auf niederstufigere Modulationsverfahren bei sich verschlechterndem Kanal,
indem man einfach einen Kreis weglässt, die Amplitude nachregelt und somit die
Fehlerwahrscheinlichkeit erniedrigt.
7
8. Versuch 5
Quadratur-Amplituden-Modulation (QAM)
Beim QAM-Verfahren verteilt man die Signalpunkte gleichmäßig orthogonal in der Ebene:
Im M=16
0000 0001 0011 0010
1
d
0100 0101 0111 0110
0 1
Re
1100 1101 1110
1000 1001 1011 1010
Bild 9: Signalraumdarstellung eines 16-QAM Systems
Man erhält so eine hohe Packungsdichte und der Entscheider vereinfacht sich. Allerdings sind
die Anforderungen an das Gesamtsystem hier am höchsten, da es am empfindlichsten gegen
Abweichungen ist.
Kanal
Der physikalische Kanal ist prinzipiell nicht ideal, d.h. er verändert die Signale bei der
Übertragung. Dies geschieht durch nichtlineare Amplituden- und Phasengänge, Verzerrungen,
Störungen durch Rauschen, Übersprechen, etc. Beim Kanal kann es sich dabei um
drahtgebundene Übertragung, terrestrische Funkkanäle, Satellitenstrecken oder auch
Speichern und Lesen handeln. Allen gemeinsam ist, dass in der Regel nur reelle Signale
übertragen werden und nur ein begrenzter Frequenzbereich nutzbar ist.
Kanäle werden durch Modelle beschrieben, die den Sinn haben, wesentliche Eigenschaften
von physikalischen Systemen aufzuzeigen, diese zu simulieren, sowie Voraussagen über deren
Verhalten zu machen. Eines der einfachsten Modelle, das trotzdem die für die
Übertragungsqualität wichtigsten Eigenschaften abdeckt, ist folgendes:
n(t)
HK(f)
Bild 10: Lineares Modell des Übertragungskanals mit additiven Störungen
8
9. Simulation eines Datenübertragungssystems
Die Übertragungsfunktion H K ( f ) beschreibt dabei die linearen Eigenschaften des Kanals,
also die frequenzabhängige Dämpfung und Gruppenlaufzeit. Das Störquellenmodell N
beschreibt die Störungen, welche sich additiv dem Nutzsignal überlagern. Wir betrachten im
folgenden solch einen Kanal, der zusätzlich die Eigenschaft hat, dass das Rauschen durch
einen weißen Prozess mit Gaußscher Wahrscheinlichkeitsdichtefunktion beschrieben wird.
Solange keine sog. ISI (Inter-Symbol-Interferenz, also gegenseitige Beeinflussung der zu
übertragenden Symbole) durch die Gesamtübertragungsfunktion (Gesamtsystem aus Sende-,
Kanal-, und Empfangsfilter) auftritt, folgt aus diesen zwei Voraussetzungen außerdem, dass
die Einzelfehler statistisch unabhängig sind („Kanal ohne Gedächtnis“), was das Rechnen
erleichtert. Man bezeichnet solch einen Kanal als AWGN-Kanal (Additive White Gaussian
Noise). Die Kanalverzerrungen seien im folgenden der Einfachheit halber nicht vorhanden
(HK=1).
Wie schon erwähnt, besitzen reale Kanäle eine begrenzte Bandbreite. Da folglich auch das
Gesamtsystem, bestehend aus Sendefilter, Kanal und Empfangsfilter, bandbegrenzt ist, ist die
Impulsantwort dieses Systems theoretisch unendlich lang. Es ist also nicht zu vermeiden, dass
sich aufeinander folgende Impulse, die jeweils einem Symbol zugeordnet sind, gegenseitig
überlappen. Da man aber wie erwähnt keine gegenseitige Beeinflussung der Symbole (ISI),
wünscht, ergibt sich eine Bedingung für die Impulsantwort des Gesamtsystems, die sog. erste
Nyquistbedingung:
1 k = 0
h(t ) |t =kT = h(kT ) = mit h(t ) = hS (t ) ∗ hK (t ) ∗ hE (t )
0 k ≠ 0
Das bedeutet, daß die Impulsantwort des Gesamtsystems nur zu ihrem zugehörigen
Abtastzeitpunkt (k=0) einen Betrag liefert. Zu allen anderen Abtastzeitpunkten ist sie Null.
Ein System, das dieser Bedingung genügt, nennt man auch ideales Impulssystem. Dadurch
bekommt man beim Abtasten einen Signalvektor, der nur von einem Sendesymbol abhängt.
Transformiert man die obige Formel in den Frequenzbereich, erhält man:
∞
∑H( f − n
n = −∞
1
T )=T
1
Dies bedeutet, dass die Summe der um das Vielfache von T verschobenen Frequenzgänge des
idealen Impulssystems eine Konstante ergibt:
Bild 11: Frequenzgang des idealen Impulssystems
9
10. Versuch 5
Solche Frequenzgänge sind dadurch gekennzeichnet, daß sie Symmetrieeigenschaften zur
Bandgrenze f 1 = 1 ⋅ T = 1 r besitzen. Da h(t) außerdem reell ist, muß der Amplitudengang
2
1
2
gerade sein.
|H(f)| |H(f)|
f1 f f1 f
Bild 12: Beispiele für Amplitudengänge idealer Impulssysteme
Am einfachsten läßt sich diese Bedingung erfüllen, indem man für die Übertragungsfunktion
r
einen idealen Tiefpaß mit der Grenzfrequenz 2 wählt. Dies stellt auch die minimal
erreichbare Bandbreite dar, nämlich B = 2 2 = r = T :
r 1
p(t) P(f)
-1
r
t r f
2
Bild 13: idealer Tiefpaß im Zeit- und Frequenzbereich
Weil der ideale Tiefpaß nicht realisierbar ist (unendliche Flankensteilheit bzw. unendliche
Impulsdauer), stellt er keine in der Praxis einsetzbare Lösung dar. Man approximiert daher bei
der Datenübertragung ein Filter, das einen cosinusförmigen Übergang zwischen Durchlaß-
und Sperrbereich besitzt und deshalb auch nach der englischen Bezeichnung Raised Cosine
Filter heißt. Der Parameter ρ , der sog. Roll-off-Faktor, bestimmt dabei die Steilheit und die
Bandbreite des Filters und damit auch die Länge der Impulsantwort. Dieser geht von ρ = 0
(idealer Tiefpaß) bis zu ρ = 1 , ein im Frequenzbereich cosinusförmiges Filter, das die
doppelte Bandbreite gegenüber dem idealen Tiefpaß benötigt:
Bild 14: Roll-off-Filter bei verschiedenen Roll-off-Faktoren im Zeit- und Frequenzbereich
10
11. Simulation eines Datenübertragungssystems
Neben der einfachen Realisierbarkeit gibt es in der Praxis noch weitere Wünsche bzgl. des
Impulssystems. Hierzu gehören eine möglichst robuste Taktrückgewinnung sowie ein
möglichst weit geöffnetes Augendiagramm:
Bild 15: Augendiagramme von Roll-off-Impulsen für ρ = 0,25 (links) und ρ = 0,95 (rechts)
Das Augendiagramm ist die Darstellung des Signals im Empfänger vor dem Abtasten durch
taktsynchrone Überlagerung des um Vielfache von T verschobenen Signals. Dadurch bildet
sich die typische Augenform des Diagramms. Damit lässt sich beurteilen, wie gut man aus
dem Empfangssignal die übertragenen Daten zurückgewinnen kann. Ein in vertikaler und
horizontaler Richtung möglichst weit geöffnetes Auge bedeutet geringe Empfindlichkeit
bezüglich Abtastzeitfehler und damit Entscheidungsfehler. Bezüglich dieser Eigenschaften
weisen Roll-off-Impulse mit großem Wert von ρ Vorteile auf, die jedoch durch den um den
Faktor 1 + ρ erhöhten Bandbreitenbedarf (und damit auch zusätzlicher Störeinfluss)
gegenüber dem idealen Tiefpass erkauft werden müssen.
Filter
Bis jetzt wurde nur gezeigt, wie die Kettenschaltung aus Sende- und Empfangsfilter aussehen
sollte, aber nicht, wie die Gesamtübertragungsfunktion auf diese aufgeteilt wird. Man kann
zeigen, daß für ein maximales Signal- zu Rauschverhältnis am Entscheidereingang folgende
Bedingung gelten muß:
! !
hS (t ) = c ⋅ hE (−t ) HS ( f )=c⋅ HE ( f )
*
bzw.
Wegen dieser Anpassung der Impulsformen von Sende- und Empfangsfilter spricht man von
angepassten Filtern, was der englischen Bezeichnung Matched Filter entspricht. Zusammen
mit der Bedingung, dass die Kettenschaltung aus Sende- und Empfangsfilter ein ideales
Impulssystem H sein soll, ergibt sich für den Frequenzgang von Sende- und Empfangsfilter:
HS ( f ) = c ⋅ HE ( f ) = c ⋅ H( f )
*
Der Sendefilter ist wie schon erwähnt gleichbedeutend mit dem Impulsformer. Da der
Frequenzgang des Gesamtsystems einem Raised-Cosine-Filter entsprechen soll, ergibt sich
jeweils für das Sende- und das Empfangsfilter ein Wurzel-Cosinus-Roll-Off-Filter (engl.
Root-Raised-Cosine Filter). Das Matched-Filter filtert das Eingangssignal so, dass das Signal
möglichst ungehindert passiert, während Störungen möglichst gut unterdrückt werden.
11
12. Versuch 5
Entscheider
Der Detektor soll sich für das Symbol entscheiden, welches am wahrscheinlichsten gesendet
wurde. Bei Annahme gleicher A-priori-Wahrscheinlichkeit aller Symbole folgt daraus, dass
sich der Empfänger für den Signalvektor entscheidet, welcher bei vorgegebener Störverteilung
der Wahrscheinlichste ist. Man nennt dies auch das ML-Kriterium (Maximum Likelihood).
Die additiven Störungen auf dem Kanal werden, wie erwähnt, als weiß und gaußverteilt
angenommen. Da sich bei der Addition zweier Signale (hier Nutz- und Störsignal) deren
Wahrscheinlichkeitsdichtefunktionen falten, ergibt sich für die Dichtefunktion des
Abtastwerts am Ausgang des Empfangsfilters eine Summe von Gaußverteilungen, die an den
Stellen der Sendesignalpunkte stehen (Bild 16):
Bild 16: Dichteverteilung am Eingang des Entscheiders bei einer 4-PSK
Da alle 4 Gaußglocken gleichartig sind (Störungen unabhängig vom Signal) wird hier sehr
anschaulich, dass die Fehlerwahrscheinlichkeit zum Minimum wird, wenn sich der Empfänger
für den Signalvektor mit dem kleinsten euklidischen Abstand zum Empfangsvektor
entscheidet. Man kann folglich das Signalvektordiagramm in Entscheidungsräume einteilen,
deren Grenzen die Mittelsenkrechten zwischen den Signalpunkten sind.
12
13. Simulation eines Datenübertragungssystems
Beim QAM-Verfahren sehen die Entscheidungsbereiche dann wie folgt aus:
Im
0000 0001 0011 0010
2-1/2
0100 0101 0111 0110
-2
-1/2 0 2
-1/2
Re
1100 1101 1110
A
B
1000 1001 -1/2 1011 1010
-2
Bild 17: optimale Entscheidungsbereiche bei QAM (AWGN / ML)
Eine Fehlentscheidung im Empfänger tritt also dann auf, wenn der Empfangsvektor in einem
anderen Gebiet liegt als der Sendevektor. Die Verhältnisse sollen am Beispiel von 2-ASK
verdeutlicht werden:
Z0 Z1
f(r)
f(r ∩ Z1)
f(r)
P(Z1)
s0 Entscheidungs- s1 s
grenze
Bild 18: Wahrscheinlichkeitsverteilungen bei 2-ASK
Während in Bild 16 nur die Dichteverteilung der Empfangsvektoren f(r) dargestellt wird, kann
man in Bild 18 auch die Einzeldichten f(r und Zi) erkennen. Die Dichte f(r) entsteht aus der
Addition der Einzeldichten f(r und Zi). Betrachtet man nun den Symbolpunkt s1, so tritt ein
Fehler auf, wenn r über die Entscheidungsgrenze fällt. Die markierte Fläche, also das Integral
über die Wahrscheinlichkeitsdichte, entspricht also der Fehlerwahrscheinlichkeit, wenn Z1
gesendet wurde. Um die Gesamtfehlerwahrscheinlichkeit zu erhalten, muß die Summe dieser
Flächen über alle Zeichen gebildet werden.
13
14. Versuch 5
Aspekte der Simulation
Äquivalente Basisbanddarstellung
Bei der an den Rechner gebundenen Simulation nachrichtentechnischer Systeme müssen die
im Modell analogen Signale zeitdiskret darstellt werden. Damit ein zeitkontinuierliches Signal
fehlerfrei als zeitdiskrete Folge dargestellt werden kann, muss bekanntlich das Abtasttheorem
erfüllt sein. Nun wäre es unökonomisch, einen Bandpasskanal direkt abzutasten, da die
höchste vorkommende Frequenz, welche ja die halbe Abtastfrequenz bestimmt, um einiges
größer ist als die Signalbandbreite:
|H(f)| B
0 fC f
Bild 19: reales Betragsspektrum bei der Übertragung
Da der Übertragungsweg aber bandbegrenzt ist, könnte man den gesamten Übertragungsweg
in der Frequenz nach unten legen (auf f C ' = B ) und die Übertragung dort betrachten:
2
|HTP(f)|
0 fC’ f
Bild 20: in den Tiefpassbereich gemischtes Signal
Dazu muss natürlich der Kanal in der Frequenz nach unten transformiert werden, damit sich
die Eigenschaften des Kanals in Bezug auf das Signal nicht ändern. Dann aber lässt sich der
Übertragungskanal mit einer Abtastrate von mind. 2B simulieren. Der Kanal ist nach wie vor
reell. Man kann jedoch noch einen Schritt weiter gehen und den Kanal ganz in die
Frequenznullage bringen.
Ein reelles Bandpasssignal kann immer als äquivalentes (komplexes) Tiefpasssignal darstellt
werden:
|HTP(f)|
0 f
Bild 21: Darstellung als äquivalentes Tiefpaßsignal
14
15. Simulation eines Datenübertragungssystems
Die gesamte Übertragungsstrecke einschließlich Modulation und Demodulation kann also
durch einen komplexen Tiefpasskanal ersetzt werden:
Impuls-
Former Modulator
äqui-
valenter
Tiefpaß Kanal
Kanal
Matched Filter Demodulator
Bild 22: Darstellung der Übertragungsstrecke als äquivalenter Tiefpasskanal
Diese Darstellungsweise werden auch wir in der Simulation verwenden.
Umsetzung
Wie bereits erwähnt, werden in der Rechnersimulation auch analoge Signale digital
dargestellt. Das bedeutet aber, dass die mathematische Umsetzung der zeitdiskreten in
zeitkontinuierliche Signale (durch Multiplikation mit Impulskamm) bzw. umgekehrt (durch
Abtastung) bei einer digitalen Simulation nichts anderes ist als eine Ratenumsetzung von der
Datenrate r in eine Abtastrate fa, die so gewählt sein muss, dass das Signal am Ausgang des
Impulsformfilters überfaltungsfrei dargestellt werden kann. Durch die Verwendung des
Raised-Cosine-Filters ist die Ausgangsbandbreite auf max. 2 ⋅ 2 = r begrenzt, so dass eine
r
Abtastrate größer 2r notwendig ist. Es ergibt sich also ein Umsetzfaktor (Oversamplingfaktor)
von mindestens 2.
15
16. Versuch 5
Berechnungen
Signalleistung
Die Berechnung der mittleren Signalleistung am Ausgang des Senders kann im Zeit- oder
Frequenzbereich erfolgen. Es zeigt sich jedoch, dass letzteres einfacher ist.
Die mittlere Signalleistung kann durch ein Integral über das Leistungsdichtespektrum im
Basisband (Signal s(t) bzw. Prozess S) berechnet werden:
∞
PS = φ SS (0) = E S { }= ∫ Φ2
ss ( f ) df
−∞
Das Signal s(t) am Ausgang des Sendefilters entsteht aber durch Multiplikation des
Signalprozesses B mit dem Impulskamm und Filterung mit dem Sendefilter, was sich wie
bereits beschrieben als Summe der mit den Signalvektoren gewichteten Impulsantworten
darstellen lässt:
∞
s (t ) = ∑ b( k ) ⋅ h
k = −∞
S (t − kT )
Für die zugehörigen Leistungsdichtespektren gilt dann:
∞
Φ SS ( f ) = T Φ BB (e j 2πfT ) ⋅ H S ( f ) Φ BB (e j 2πfT ) = ∑φ (k ) e − j 2πfkT
1 2
mit BB
k = −∞
Nimmt man an, dass die Signalvektoren b(k) mit gleicher Wahrscheinlichkeit auftreten und
einem weißen Zufallsprozess entstammen, so folgt für die Autokorrelationsfunktion:
φ BB (k ) = E{B 2 }⋅ δ 0 (k ) und damit { }
Φ BB (e j 2πfT ) = E B 2
{ }
wobei E B 2 wiederum der Erwartungswert der Leistung der Signalvektoren ist, der aus den
M Signalvektoren des Signalraumdiagramms berechnet wird. Bei Gleichverteilung ergibt sich:
{ }
M
E B2 = ∑b
1 2
M i
i =1
Da es sich hier um einen idealen Kanal handelt, besteht die Übertragungsfunktion des
Gesamtsystems H ( jω ) nur aus Sende- und Empfangsfilter. Diese bilden aber gerade einen
Cos-Roll-Off-Filter, dessen Übertragungsfunktion bzw. Impulsantwort bekannt ist:
1 f < f1 (1 − ρ )
1
H ( f ) = 2 (1 − sin( 2πρ ( ff1 − 1))) f1 (1 − ρ ) ≤ f < f1 (1 + ρ )
0 f1 (1 + ρ ) ≤ f
cos(2πf1t )
h(t ) = 2 f1 si (2πf1t ) mit si ( x) = sin( x )
1 − (4 ρf1t ) 2 x
Das Sendefilter besitzt dabei, wie im Kapitel Filter beschrieben, die Übertragungsfunktion:
HS ( f ) = H( f )
Die Leistungsberechnung sieht also jetzt so aus:
16
17. Simulation eines Datenübertragungssystems
∞
PS = E B1
T { }∫ H 2
S
2
( f ) df
−∞
Das Integral über die quadratische Übertragungsfunktion des Sendefilters entspricht der
Energie der Impulsantwort des Sendefilters und ergibt:
∞ ∞
∫ H S ( f ) df = ∫ hS (t ) dt = E F
2 2
in unserem Fall:
−∞ −∞
∞ ∞
∫ H S ( f ) df = ∫ H ( f ) df =T
2 1
−∞ −∞
Zusammenfassend ergibt sich für die mittlere Sendeleistung somit:
PS = T ⋅ E{B 2 }⋅ E F E {B 2 } =
M
1
∑b und E F =
1 1 2
mit M i
i =1 T
Für die mittlere Symbolenergie ergibt sich mit E C = PS ⋅ T :
{ }
EC = E B 2 ⋅ E F
Fehlerwahrscheinlichkeit
Die Bitfehlerwahrscheinlichkeit bzw. bit error rate (BER) ist gebräuchlichste Maß, um
verschiedene Übertragungsverfahren in ihrer Leistungsfähigkeit zu vergleichen. Im folgenden
soll die BER unter den bisher getroffenen Voraussetzungen berechnet werden. Ein
Symbolfehler (Detektor entscheidet sich für ein falsches Symbol) tritt auf, wenn der
Empfangsvektor r außerhalb des korrekten Entscheidungsgebietes liegt (Bild 17 und 18). Die
Fehlerwahrscheinlichkeit des Systems lässt sich durch die Fehlerwahrscheinlichkeiten der
einzelnen Zeichen ausdrücken:
M M
P( F ) = ∑ P ( F ∩ S i ) = ∑ P( F | S i ) ⋅ P( S i )
i =1 i =1
Wegen Gleichverteilung der Symbole gilt P ( S i ) = M . Außerdem gilt P ( F ) = 1 − P (C ) , wobei
1
P(C) die Wahrscheinlichkeit für eine korrekte Entscheidung ist. Insgesamt also:
M
P( F ) = 1 − 1
M ∑ P(C | S )
i =1
i
Die Wahrscheinlichkeit für eine korrekte Entscheidung bei einem bestimmten Zeichen lässt
sich durch das Integral über die bedingte Wahrscheinlichkeitsdichte in dem Bereich der zur
korrekten Entscheidung führt berechnen:
P(C S i ) = ∫ f R Z i (r si ) dr
ACi
Setzt man ein additives Störmodell voraus (r=s+n) und von dem Signal unabhängige
Störungen, so lässt sich die bedingte Wahrscheinlichkeitsdichte vereinfachen:
f R| S i ( r | s i ) = f N | S i ( r − s i | s i ) = f N ( r − s i )
17
18. Versuch 5
Bei Annahme von weißem Gaußschen Rauschen mit gleicher Störleistung in beiden
Dimensionen ist:
r − si 2
1
f N (r − si ) = exp −
2πσ N ² 2σ N ²
Um die Fehlerwahrscheinlichkeit einfach berechnen zu können, vor allem wenn die Gebiete
geometrisch recht kompliziert ausfallen (z.B. bei ASK/PSK), kann man für eine Abschätzung
der Fehlerwahrscheinlichkeit den Entscheidungsgebieten für korrekte Entscheidungen
Kreisflächen einbeschreiben, die deren Grenze an mindestens einem Punkt berühren. Man
nennt diese Methode Kreisflächenverfahren oder spherical bound:
ρ ²
P(C S i ) ≥ 1 − exp − i
2σ ² mit ρ i als Kreisradius beim Signalvektor i
N
Meist ist der minimale Abstand d zum nächsten Nachbar für jeden Signalpunkt gleich. Die
Kreisradien sind dann gerade ρ i = d . Für die Symbolfehlerwahrscheinlichkeit ergibt sich
2
dann:
M
( d )² d²
P( F ) ≤ 1
M ∑ 2σ ²
exp − 2 = exp − 4 2
2σ
i =1 N N
Die Varianz der Störung ist gleich der Rauschleistung am Entscheidereingang PN E = σ n ²
(Real- und Imaginärteil rauschen jeweils mit σ n ² ). Für die durch das Empfangsfilter
verminderte Störleistung gilt:
∞
PN E = ∫Φ
ω = −∞
ne ne ( f ) df
Φ ne ne ( f ) = Φ nn ( f ) ⋅ H E ( f )
2
mit Φ nn ( f ) = 1 N 0
2 [Hz ]
W
∞ ∞
PN E = 1 N 0 ⋅ ∫ H E ( f ) df = 1 N 0 ∫H ( f ) df = 1 N 0 E F
2 2
2 2 S 2
ω = −∞ f = −∞
Somit folgt:
2
d
P ( F ) ≤ exp − 4
N 0 EF
Um die Fehlerwahrscheinlichkeit in Abhängigkeit vom Signal- zu Rauschverhältnis angeben
zu können, muss der Zusammenhang zwischen den Abständen der Signalpunkte d und der
mittleren Leistung des Signals ermittelt werden. Sind Ai die Beträge der einzelnen
Signalpunkte, so gilt bei Gleichverteilung der Symbole:
M
PS E = ∑A Ai = f (d ²) aus Signalraumdiagramm
1 2 2
M i mit
i =1
18
19. Simulation eines Datenübertragungssystems
Bei PSK gelten z.B. folgende Verhältnisse:
A q
π
M
d
Bild 23: Abstände bei M-PSK
Man liest ab:
d = 2 A ⋅ sin M
π
und damit PS E = A 2 = d²
4
(sin M )−2
π
Es ergibt sich also:
PS E
P( F ) ≤ exp − sin ² M
π
N 0 EF
Da das ideale Impulssystem H die Symbole b(k) mit h(0) = E F = T verstärkt, ist Ai = E F bi .
1
Für die mittlere Leistung der Symbole am Entscheidereingang ergibt sich somit:
{ }
PSE = E A2 = E F E B 2
2
{ }
Wie wir bereits aus dem letzten Kapitel wissen, gilt aber:
E F E {B 2 } = E C und damit { }
PS E = E A 2 = E F EC
Für die Fehlerabschätzung bei PSK ergibt sich also:
E
P( F ) ≤ exp − sin ² M C
π
N0
Auf Grund der Gray-Codierung der Signalvektoranordnung entspricht die berechnete
Symbolfehlerwahrscheinlichkeit zumindest bei kleinen Fehlerraten in etwa der
Bitfehlerwahrscheinlichkeit ⋅ log 2 M , wenn man davon ausgeht, daß die Störungen so klein
sind, dass meistens auf einen Nachbarpunkt entschieden wird und somit nur ein Bit des
Zeichens verfälscht wird. Die Bitfehlerwahrscheinlichkeit ist also etwa:
1 E
Pb ( F ) = exp − sin ² M ⋅ C
π
log 2 M N0
19
20. Versuch 5
MATLAB / Simulink
MATLAB wurde in den 70er Jahren an der University of New Mexico und der Stanford
University entwickelt um Kurse aus Lineare Algebra und Numerische Analysis zu
unterstützen. Der Name ("Matrix Laboratory") erinnert noch daran. Heute ist MATLAB ein
universelles Werkzeug, das in weiten Bereichen der angewandten Mathematik eingesetzt
wird. Für spezielle Anwendungen gibt es verschiedene Toolboxes. Das sind Bibliotheken mit
m-Files zu bestimmten Aufgabenbereichen. Es existieren hier unter anderem auch spezielle
Communication – Toolboxes, welche eine effiziente Bearbeitung von nachrichtenüber-
tragungstechnischen Problemen und Berechnungen erlauben.
Um Matlab – Befehle sequentiell, also aufeinander folgend ablaufen zu lassen, wird ein sog.
m-file erstellt. Man unterscheidet dabei prinzipiell zwei Arten von m-Files: Script-Files und
Function-Files. Beide werden mit der Endung *.m abgespeichert. Ein Script-File (auch: Script
m-File oder kurz Script) ist eine Aneinanderreihung von MATLAB-Anweisungen, die in
einen Texteditor eingegeben und abgespeichert werden. Wird der Filename im
Commandfenster nach dem Prompt eingegeben, so werden die Befehle im Script-File der
Reihe nach ausgeführt, in der Art, als ob sie einzeln nach dem Prompt eingegeben wurden.
Bei einem Aufruf stehen dem Script-File alle im Workspace gespeicherten Variablen zur
Verfügung. Umgekehrt sind alle Variablen, die im Script-File definiert werden, nach dessen
Ablauf noch im Workspace definiert (dh., die Variablen des Script-Files sind global). Im
Workspace werden die Variablen verwaltet und angezeigt. Über Function-Files (auch:
Function m-Files) kann man in MATLAB neue Funktionen definieren. Ein Function-File
wird, wie auch ein Script-File, mit der Endung *.m abgespeichert. Der Unterschied zu einem
Script-File besteht darin, dass die im Function-File definierten Variablen lokal sind. Beim
Aufruf eines Function-Files wird ihm ein Wert (oder mehrere) als Argument übergeben (wie
bei sin(x), hier wird der Wert von x übergeben). Nach Auswertung der Befehle im Function-
File wird ein Wert (oder auch mehrere Werte), der zuvor im Funktionsaufruf spezifiziert
werden muss (y = sin(x)) zurückgegeben. Die während einer Funktion benutzten lokalen
Variablen stehen nach dem Rücksprung (Ende der Funktion und Übergabe des Ergebnisses)
nicht mehr zur Verfügung. Der Funktionsname (Name in der ersten Zeile des Function-Files)
muss immer gleich sein, wie der Name, unter dem das File abgespeichert wurde. Zur
Dokumentation der Befehle und Unterstützung bei der Programmierung bietet MATLAB eine
sehr gut ausgearbeitete Hilfe – Funktion an, welche sich als Referenz sehr gut eignet.
Simulink ist ein Software-Paket zur Simulation dynamischer Systeme, wobei sowohl
kontinuierliche als auch zeitdiskrete Systeme sowie Mischformen modelliert werden können.
Die Erstellung eines Modells geschieht grafisch, indem man mit der Maus Funktionsblöcke
aus einer Block-Bibliothek holt und verbindende Signalleitungen dazwischen legt. Zusätzlich
zu einer großen Anzahl vordefinierter Blöcke kann man auch eigene Blöcke definieren.
Simulink bietet dabei auch eine große Anzahl vordefinierter Blöcke aus dem Bereich der
Nachrichtentechnik und der digitalen Signalverarbeitung an, weshalb sich dieses Tool sehr gut
für die in diesem Praktikumsversuch durchzuführenden Simulationen eignet. Simulink ist ein
Zusatzpaket zu dem Programm Matlab. Es basiert intern auf Matlab-Funktionen und erlaubt,
zusätzlich zur grafisch orientierten Bedienung, Modelle von Matlab aus zu steuern und zu
analysieren. Simulink kann ohne Matlab-Kenntnisse verwendet werden, allerdings bieten
Matlab-Funktionen zum Teil erweiterte Möglichkeiten.
20
21. Simulation eines Datenübertragungssystems
Versuchsdurchführung
Vorbereitende Aufgaben
Die folgenden Aufgaben sollten Sie schon vor dem Versuchsnachmittag erledigt haben. Sie
beziehen sich vor allem auf das Verständnis der nachrichtentechnischen Grundlagen.
V1 Skizzieren Sie folgende Signale aus Bild 4 und 5 im Zeitbereich sowie das zugehörige
Leistungsdichtespektrum: b(t), s(t), z(t), r(t), rE(t). Nehmen Sie an, dass die Filter hs(t)
und hE(t) Wurzel-Kosinus-Roll-Off-Filter sind.
V2 Warum wird ein äquivalentes Tiefpassmodell eingeführt?
V3 Warum sind die Signale des äquivalenten Tiefpassmodells komplex?
V4 Wie werden analoge Signale in der Rechnersimulation digital dargestellt?
V5 Berechnen Sie die Signalvektoren für 16-QAM und 16-PAM in Abhängigkeit vom
Parameter d. Versuchen Sie die Gray-Codierung zu beachten (nebeneinander liegende
Signalpunkte sollten sich nur in einem Bit unterscheiden).
V6 Berechnen Sie den Erwartungswert der Leistung der Signalvektoren der eben
betrachteten Modulationsverfahren in Abhängigkeit von d. Wie groß muss d sein, damit
die mittlere Leistung gleich 1 wird?
V7 Berechnen Sie die Bitfehlerrate des QAM Modulationsverfahrens in Abhängigkeit von
der Signal- zu Rauschleistung. Benutzen Sie dabei das Kreisflächenverfahren und Ihre
Ergebnisse aus V6.
V8 Welches Modulationsverfahren würden Sie für einen Kanal mit stark schwankender
Empfangsleistung vorziehen, PSK oder QAM? Warum?
V9 Welche Folge hat eine Zunahme der Stufenzahl des Übertragungsverfahrens auf die
Übertragungsqualität?
V10 Welche Eigenschaften sollte das Pulsformfilter aufweisen?
V11 Was ist ein Matched-Filter?
V12 Wie würde sich eine nicht gleichmäßige Auftrittswahrscheinlichkeit der Symbole in
Bild 16 bemerkbar machen? Ändern sich dadurch die Entscheidungsbereiche? Was folgt
daraus für den oben beschriebenen ML-Empfänger bei nicht gleichverteilten Daten?
V13 Wie erscheint eine Phasenverschiebung und wie ein Frequenzoffset am Empfänger im
Signalraumdiagramm?
V14 Tritt beim Abtasten des Ausgangssignals eines Cos-Roll-Off-Filters ( ρ = 0.5 ) mit
T = 1 Aliasing (also Überfaltung aufgrund Nicht-Einhaltung des Abtasttheorems) auf?
r
Wenn ja, ist das nicht schlecht für die Übertragung?
Sie sollten sich auch die folgenden Abschnitte schon zu Hause durchlesen, um eine
Vorstellung und einen Überblick davon zu bekommen, was Sie am Versuchsnachmittag
bearbeiten werden. Es wird Ihnen helfen, mit der knappen Zeit besser zurecht zu kommen.
21
22. Versuch 5
Versuchsaufgaben
Simulink anhand eines Beispiels
Dieses Kapitel beschreibt im Wesentlichen einige, für diesen Praktikumsversuch wichtige
Funktionen der Simulink-Arbeitsumgebung. Der Umgang mit Simulink soll einleitend mit
einem einfachen Beispiel erläutert werden. Das zu erstellende System verzögert ein
sinusförmiges Signal und zeigt anschließend beide Signale (Originalsignal und verzögertes
Signal) grafisch an. Das Blockdiagramm des Systems sieht wie folgt aus:
Abbildung 1: Ein einfaches Simulink-Modell
Im Folgenden wird nun Schritt für Schritt erklärt, wie man dieses Modell aufbaut und
anschließend eine Simulation durchführt. Da Simulink auf MATLAB basiert, beginnt man mit
dem Start des Programms MATLAB. Um ein Simulink-Modell zu erstellen, gibt man den
Befehl simulink im Matlab Befehlfenster (command window) ein. Nach einer kurzen
Startzeit erscheint folgendes Fenster (Simulink Library Browser):
Abbildung 2: Simulink Library Browser
Auf der linken Seite des Browsers sind die Haupt- bzw. Unterbibliotheken zu sehen. Auf der
rechten Seite findet man einzelne Funktionen in einer hierarchischen Struktur angeordnet.
Um nun ein neues Modell zu erstellen, klicken Sie auf File>New>Model. Simulink erstellt
anschließend ein neues Fenster, wo Modellkomponenten hinzugefügt und eine Simulation
durchgeführt werden kann. Für das obige einfache Beispiel müssen folgende
Systemkomponenten ausgewählt, platziert und konfiguriert werden:
22
23. Simulation eines Datenübertragungssystems
Modul Ort
Sine Wave Simulink>Sources Bibliothek
Integer Delay Simulink>Discrete Bibliothek
Bus Creator Simulink>Signal Routing Bibliothek
Scope Simulink>Sinks Bibliothek
Die einzelnen Module befinden sich in dem unter „Ort“ beschriebenen Bereich im Simulink
Library Browser. Klickt man nun z.B. die Simulink>Sources Bibliothek an, so findet man im
rechten Feld des Library Browsers den Block Sine Wave. Die Blöcke lassen sich nun mittels
„drag and drop“ in das Modellfenster kopieren. Um das Beispiel nun umzusetzen, fügen Sie
die notwendigen Blöcke aus obiger Tabelle in das Modellfenster gemäß Abbildung 1 ein. Um
die platzierten Module zu verknüpfen, müssen Sie mit Hilfe der Maus die Ein- und Ausgänge
der Module verbinden. Bei erfolgreich verbundenem Ein- und Ausgangsport verschwinden
die dreieckförmigen Symbole der Ports und die Verbindungslinien färben sich durchgängig
schwarz. Um Abzweige zu erstellen und die Module mit Leitungen zu verbinden, führen Sie
einfach eine neue Leitung vom Eingangsport des Moduls zur gewünschten Leitung hin. Eine
markierte Leitung läst sich durch Betätigen der Entf Taste auf der Tastatur löschen.
Nachdem das Simulink-Modell nun erstellt wurde, müssen die einzelnen Blöcke konfiguriert
werden. Durch Doppelklicken der jeweiligen Blöcke lassen sich deren individuelle Parameter
festlegen. Dies soll anhand des Sine Wave Moduls exemplarisch dargestellt werden
(Abbildung 3).
Abbildung 3: Properties von Sine Wave
Unter Parameters lassen sich die Eigenschaften des zu erzeugenden Signals einstellen. In
diesem Fall soll ein zeitdiskretes Sinussignal ausgegeben werden, weshalb die Option Sine
type auf Sample based zu stellen ist. Die Amplitude soll zu 5 Einheiten, der Bias zu Null
gewählt werden. Samples per period gibt die Anzahl der Abtastschritte pro Periode an und
wird hier zu 100 gewählt. Die Abtastzeit Sample Time wird auf eine Zeiteinheit festgelegt.
Nach Bestätigung der eingegebenen Parameter mittels der Taste OK werden die eingegebenen
Werte übernommen. Gemäß untenstehender Tabelle sind nun alle Blöcke des Modells zu
konfigurieren.
23
24. Versuch 5
Modul Parameter Wert
Sine Wave Sine Type Sample based
Time (t) Use simulation time
Amplitude 5
Bias 0
Samples per period 100
Number of offset samples 0
Sample time 1
Integer Delay Number of delays 5
Initial Condition 0
Sample Time -1
Bus Creator Parameters Inherit bus signal names from input ports
Number of inputs 2
Tabelle 1:Blockparameter
Anstatt die Werte der Parameter direkt als Konstanten einzutragen, können auch Variablen als
Parameterwerte eingetragen werden. Diese Variablen müssen bei der Simulation des Modells
im Workspace definiert sein.
Bevor die Simulation gestartet werden kann, müssen noch die Simulationsparameter
eingestellt werden.
Abbildung 4: Festlegung der Simulationsparameter
Um die Laufzeit der Simulation (Simulation Time) zu definieren, klicken Sie in der
Menüleiste von Simulink auf Simulation>Configuration parameters. Setzen Sie den
Parameter 'Stop Time' auf 300. Es handelt sich dabei nicht um die Zeit, die Matlab für die
Simulation des Systems benötigt, sondern um das zu modellierende Zeitintervall, in welchem
die Simulation stattfinden soll.
Nachdem nun das Modell generiert und die Blöcke konfiguriert wurden, kann die Simulation
gestartet werden. Um die Simulation zu starten, ist einfach das ISO Start-Icon „►“ in der
Menüleiste zu wählen.
24
25. Simulation eines Datenübertragungssystems
Die Simulation dieses einfachen Beispiels verläuft sehr schnell. Nach wenigen Millisekunden
kann mittels eines Doppelklicks auf den entsprechenden Block „Scope“ das Ergebnis grafisch
betrachtet und ausgegeben werden:
Abbildung 5: Simulationsergebnis
Selbstverständlich spiegelt diese Einführung nur einen sehr kleinen Bereich der Möglichkeiten
von MATLAB / Simulink wieder. Um eine umfangreiche Einführung zu erhalten sei an dieser
Stelle auf die gängige Fachliteratur sowie den etlichen in diesem Zusammenhang ent-
standenen Tutorials verwiesen.
Im Folgenden soll nun ein Nachrichtenübertragungssystem mit MATLAB / Simulink
aufgebaut und simuliert werden. Es wurden dazu bereits im Vorfeld Vorlagen erstellt, die
lediglich noch, entsprechend der jeweiligen Aufgabe, um individuelle Blöcke zu erweitern
sind.
Simulation eines Datenübertragungssystems
In diesem Kapitel soll nun das anfangs vorgestellte Datenübertragungssystem modelliert und
mit verschiedenen Modulationsverfahren simuliert werden. Man „baut“ dazu das Modell aus
Sender, Kanal und Empfänger im Simulator nach und schickt dann zufällig generierte Daten
über das simulierte Datenübertragungssystem. Anschließend vergleicht man die empfangenen
Daten Bit für Bit mit den Ursprungsdaten und berechnet daraus die Bit-Fehlerrate (BER) bei
einem bestimmten Verhältnis von Signalleistung zu Rauschleistung auf dem Kanal. Um
herauszufinden, wie gut sich das System bei unterschiedlicher Störumgebung und
Empfangsqualität verhält, erhöht man die Rauschleistung und berechnet damit die neue
Fehlerrate. Des Weiteren kann man diese Untersuchung für verschiedene Modu-
lationsverfahren durchführen, um sie bezüglich ihrer Leistungsfähigkeit miteinander
vergleichen zu können.
Öffnen Sie zunächst das Model 'praktikum.mdl' in Simulink.
25
26. Versuch 5
Abbildung 6: Simulationsvorlage
Im ersten Aufgabenabschnitt sollen die im ersten Kapitel vorgestellten Modulationsverfahren
PAM (ASK), PSK und QAM durch Simulation bezüglich ihrer Übertragungsqualität
untersucht und verglichen werden.
Um die Simulation möglichst einfach zu gestalten wird im Folgenden stets die
Programmvorlage 'praktikum.mdl' verwendet. Es unterscheiden sich dabei entsprechend des
zu untersuchenden Modulationsverfahrens lediglich die einzufügenden Funktionsblöcke.
Um nun verschiedene Modulationsverfahren miteinander vergleichen zu können, werden im
Folgenden die in untenstehender Tabelle aufgeführten Blöcke benötigt.
Modul Ort
M-PAM Modulator Baseband
M-PAM Demodulator Baseband
Rectangular QAM Modulator Communications Blockset>Modulation>Digital
Baseband Baseband Modulation>AM
Rectangular QAM Demodulator
Baseband
M-PSK Modulator Baseband Communication Blockset>Modulation>Digital
M-PSK Demodulator Baseband Baseband Modulation>PM
Tabelle 2: Einzufügende Module
26
27. Aufgabe A1:
Ordnen Sie folgenden Blöcken des Simulink-Modells deren nachrichtentechnische Bedeutung
zu und beschreiben Sie kurz deren Funktionalität.
1. Binary Vector Noise Generator
2. Modulator
3. Repeat(16x)
4. Impulsformer
5. AWGN
6. Matched-Filter
7. Downsample(16x)
8. Demodulator
9. Symbol Error Rate
10. Bit Error Rate
Aufgabe A2:
Erstellen Sie einen Chart, in dem die Bitfehlerraten (BER) der drei Modulationsverfahren (16-
PAM, 16-PSK und 16-QAM) über dem Signal- zu Rauschverhältnis aufgetragen sind.
Fügen Sie hierzu zunächst den M-PAM Modulator und Demodulator in das Vorlagemodel (an
entsprechend gekennzeichneter Stelle) ein. Um einen Block zu spiegeln, markieren Sie ihn
mit der Maus und drücken Sie anschließend STRG+R. Stellen Sie die folgenden Parameter
ein:
M-ary number: 16
Input type: Bit
Constellation ordering: Gray
Normalization method: Average Power
Average Power: 1
Output Type: Bit
Aktivieren Sie das 'Stop Simulation' Kästchen im Modul 'Symbol Error Rate'. Konfigurieren
Sie außerdem die Abbruchkriterien Target Number of Errors mit 300 Fehlern. Alle übrigen
Einstellungen bleiben gleich.
Die Simulationslaufzeit (Parameter 'Stop time') soll 5e3 Zeiteinheiten betragen.
Im Modul 'AWGN' geben Sie für den SNR-Parameter die Variable SNR ein. Dies erlaubt eine
Variation des Signal zu Rauschverhältnisses (SNR) im Rahmen einer Simulationsreihe. Um
eine Simulationsreihe durchzuführen, wurde ein Matlab–Script geschrieben, welches unter
stetiger Veränderung der SNR-Werte die Simulation des Datenübertragungssystems neu
startet.
Unten ist die Scriptdatei 'control_sim.m' abgedruckt. Diese Datei wird ebenfalls am Ver-
suchstag vorgegeben. Ersetzen Sie den Text Name der Simulation durch den Namen der
Simulink-Datei ohne die Endung .mdl.
28. Versuch 5
clc; % Löscht Command Window
ii = 1; % setzt Zählvariable ii zu eins
SNR_max = 20; % maximaler Wert für SNR
for SNR = 4:2:SNR_max % Schleife für Simulationsreihe
fprintf('Signal to Noise Ratio = %gn', SNR); % Ausgabe der aktuellen
% Simulationsparameter
sim('Name der Simulation'); % Starten des Simulinkmodells mit dem jeweiligen
% SNR --> Simulationsreihe
% Hier sollen nun verschiedene Variablennamen für verschiedene
% Modulationsverfahren angegeben werden :
SymbER_psk(ii) = SER(1); % Symbolfehlerrate der verschiedenen Modulationsverfahren
BitER_psk(ii) = BER(1); % Bitfehlerrate der verschiedenen Modulationsverfahren
ii = ii+1; % Inkrementieren der Schleifenvariablen
end % Ende der for-Schleife
snr = 4:2:SNR_max; % Erstellen eines Vektors snr von 4 .. SNR_max, in
% Zweierschritten
Um nun eine Simulationsreihe für die unterschiedlichen Modulationsverfahren durchführen
zu können, müssen die Variablen (z.B. für PSK sind SymbER_psk, BitER_psk; für
PAM sind SymbER_pam, BitER_pam; für QAM sind SymbER_qam, BitER_qam )
entsprechend vor jedem Neustart des Scripts umbenannt werden, um ein Überschreiben und
somit einen Verlust vorhergehender Simulationsdaten zu verhindern.
Mit Hilfe dieses Script-files lassen sich nun Vektoren mit den Symbol- bzw. Bitfehlerraten
der unterschiedlichen Modulationsverfahren erzeugen. Um diese nun in ein Diagramm
unterzubringen bedient man sich des Matlab-Befehls semilogy, welcher in diesem Kontext
wie folgt anzuwenden ist (im 'Command Window'):
%für Bitfehlerwahrscheinlichkeit:
semilogy(snr, BitER_pam, snr, BitER_psk, snr, BitER_qam)
legend(’PAM’, ’PSK’, ’QAM’)
xlabel(’snr / dB’)
ylabel(’BER’)
%für Symbolfehlerwahrscheinlichkeit:
semilogy(snr, SymbER_pam, snr, SymbER_psk, snr, SymbER_qam)
legend(’PAM’, ’PSK’, ’QAM’)
xlabel(’snr / dB’)
ylabel(’SER’)
Anschließend sollte sich ein Fenster mit der gesuchten Grafik öffnen. Speichern Sie dieses
Diagramm ab und fügen Sie es ihren Versuchsprotokollen bei.
Aufgabe A3:
Welches Modulationsverfahren schneidet bei dem Vergleich am schlechtesten ab, welches am
besten? Hat das beste Verfahren Nachteil?
Aufgabe A4:
28
29. Simulation eines Datenübertragungssystems
Sind die Simulationszeiten bei allen Modulationsverfahren gleich? Begründen Sie ihre
Aussage;
Ist die Genauigkeit der BER- bzw. SER-Schätzung für alle Iterationen gleich? Wenn nein,
wann wird sie geringer?
Welche Vor- und Nachteile ergeben sich durch die Abbruchbedingung mit fester Fehlerzahl
gegenüber einer festen Anzahl an Berechnungswerten?
Aufgabe A5:
Erstellen Sie einen neuen Chart, in welchem Bitfehlerfehlerwahrscheinlichkeit (BER) und
Symbolfehlerwahrscheinlichkeit (SER) in Abhängigkeit vom jeweiligen Signal- zu
Rauschverhältnis (SNR ist Abszisse) für eine 16-QAM angezeigt werden soll. Benutzen sie
hierzu den Matlab-Befehl plot anstelle von semilogy, jedoch mit den gleichen Parametern.
z.B.
plot(snr, BitER_qam, snr, SymbER_qam);
legend(’Bit error rate’, ’Symbol error rate’);
xlabel(’SNR / dB’);
ylabel(’Error Rate’);
Berechnen Sie anschließend das Verhältnis von Bitfehler- (BER) zu
Symbolfehlerwahrscheinlichkeit (SER) und geben Sie das Ergebnis in Abhängigkeit vom
jeweiligen Signal- zu Rauschverhältnis (SNR ist Abszisse) in einem separaten Plot aus.
Folgende Matlab-Befehle sind zu empfehlen.
plot(snr, BitER_qam ./ SymbER_qam);
xlabel(’SNR / dB’);
ylabel(’BER / SER’);
Warum ist hier die Bitfehlerwahrscheinlichkeit (BER) geringer, als die
Symbolfehlerwahrscheinlichkeit (SER)?
Aufgabe A6:
Fügen Sie das "Discrete-Time Scatter Plot Scope" (aus der Bibliothek „Communications
Blockset>Comm Sinks“) in das Simulink-Modell ein. Konfigurieren Sie es anschließend wie
folgt:
Modul Ort Konfiguration
Discrete- Communications Show plotting properties:
Time Blockset>Comm Samples per Symbol: 16
Scatter Sinks Offset (samples): 8
Plot Points displayed: 500
Scope New points per display: 10
Show rendering properties:
Color fading: no
Tabelle 3: Konfiguration des Scatter-Diagramm Moduls
29
30. Versuch 5
Integrieren Sie das Anzeige-Modul in das Simulink-Modell derart, dass das Scatter
Diagramm nach dem Empfangsfilter dargestellt wird.
Stellen Sie den SNR Parameter im AWGN-Kanalmodell auf 20 dB
starten Sie die Simulation.
Führen Sie anschließend die gleiche Simulation für ein Signal- zu Rauschverhältnis (SNR)
von 100 dB aus. Wie lässt sich anhand beider Plots die Übertragungsqualität vergleichen?
Es sollen nun im Folgenden Untersuchungen im Frequenzbereich durchgeführt werden. Dazu
werden folgende Module benötigt:
Modul Ort Konfiguration
Spectrum Signal Processing Show scope properties:
Scope Blockset > Buffer input: on
Signal Processing Buffer Size: 512
Sinks Buffer overlap: 128
Number of Spectral Averages: 50
Show Display Properties:
Channel legend: on
Show axis properties:
Frequency range: [0…Fs]
Inherit sample increment from input: off
Sample time of original time series:
>geben Sie hier 1/16 ein<.
Minimum Y-limit: -80
Maximum Y-limit: 20
Show line properties:
Line Colors: b|r|m
Bus Simulink > Signal Number of Inputs: 4
Creator Routing
Tabelle 4: Konfiguration der FFT und Bus Module
Fügen Sie die in Tabelle 4 aufgeführten Symbole dem Simulink-Modell hinzu und verbinden
Sie den Ausgang des „Bus Creator“ mit dem Eingang des „Spectrum Scope“. Die 4 Eingänge
des „Bus Creator“ sind anschließend mit dem Modell derart zu verknüpfen, dass die Spektren
sämtlicher Signale zwischen der Über- bzw. Unterabtastung angezeigt werden. Setzen Sie das
SNR auf 10 dB und löschen Sie die automatische Abbruchbedingung der Simulation. Starten
Sie nun die Simulation.
Aufgabe B1:
Beschreiben Sie, wie sich anhand des Spektralplots das SNR (hier 10 dB) ermitteln lässt.
(Tipp: Vergleichen Sie die Veränderung der Spektralplots bei Variation des SNRs.)
Die folgenden Untersuchungen finden im Zeitbereich statt. Es sollen hierbei sog.
Augendiagramme erstellt und ausgewertet werden. Dazu wird folgendes Modul benötigt:
30
31. Simulation eines Datenübertragungssystems
Modul Ort Konfiguration
Discrete- Time Communication Show plotting properties:
Eye Diagram Blockset > Samples per Symbol: 16
Scope Comm Sinks Symbols per trace: 2
Traces displayed: 200
New traces per display: 10
Show rendering properties:
Color fading: off
Tabelle 5: Konfigurationseinstellungen für das Augendiagrammmodul
Setzen Sie das Signal zu Rauschverhältnis (SNR) auf 20 dB.
Wählen Sie die QAM als das zu untersuchende Modulationsverfahren.
Aufgabe B2:
Betrachten Sie das Augendiagramm, welches das Signal direkt nach dem Empfangsfilter
abgreift und erläutern Sie das Ergebnis. Handelt es sich um einen guten oder schlechten
Kanal?
Aufgabe B3:
Ändern Sie das SNR des Kanals auf 100 dB und starten Sie die Simulation erneut.
Wie kann man hier die Empfindlichkeit der Modulation gegen Störungen und gegen
Abtastfehler(Jitter) ablesen? Zeigen Sie den optimalen Abtastpunkt auf der Zeitachse.
Aufgabe B4:
Betrachten Sie das Augendiagramm, welches direkt nach dem Sendefilter erzeugt wird. Wie
erklären Sie sich die Abweichungen des Signals an den optimalen Abtastzeitpunkten?
Wie bereits im Vorfeld erklärt, werden die Symbole als komplexe Zahlen dargestellt, bevor
sie auf entsprechende Wellenzüge abgebildet werden. Im Folgenden soll diese komplexe
Zahlenraumdarstellung nochmals genauer untersucht werden. Für diese Aufgabe werden
folgende Module benötigt:
Modul Ort Konfiguration
Discrete- Time Communication Show plotting properties:
Scatter Plot Blockset > Samples per Symbol: 16
Scope Comm Sinks Offset Samples: 8
Points displayed: 400
31
32. Versuch 5
New traces per display: 10
Show rendering properties:
Color fading: on
Phase/Frequency Communication Frequency Offset: 0.0001 Hz
Offset Blockset > RF
Impairments
Tabelle 6: Konfigurationseinstellung für die Signalraumuntersuchungen
Stellen Sie nun das Signal- zu Rauschverhältnis auf 100 dB ein.
Fügen Sie das Modul „Phase/Frequency Offset“ zwischen dem AWGN-Kanal und
dem Empfangsfilter ein.
Betrachten Sie nun mit Hilfe des Moduls „Discrete Time Scatter Diagram Scope“ die
Signalraumdarstellung unmittelbar nach dem Empfangsfilter.
Aufgabe B5:
Warum scheint sich der Signalraum nun zu drehen?
Aufgabe B6:
Wie lässt sich dieser Effekt kompensieren? (kurze Begründung)
32