Schulungsübersicht
Lernziele dieses Kurses
Nach Abschluss dieses Kurses sollte der Student in der Lage sein, sich an vielen der aktuellen offenen Forschungsprobleme im Bereich der Kommunikationstechnik zu beteiligen, da er/sie mindestens die folgenden Fähigkeiten erworben haben sollte:
- Komplexe mathematische Ausdrücke, die häufig in der Fachliteratur der Kommunikationstechnik vorkommen, abbilden und manipulieren
- Fähigkeit, die Programmierungsmöglichkeiten von MATLAB zu nutzen, um Simulationsergebnisse anderer Publikationen zu reproduzieren oder zumindest diesen Ergebnissen nahezukommen.
- Simulation von selbst entwickelten Ideen erstellen.
- Die erworbenen Simulationsfähigkeiten effizient in Verbindung mit den leistungsstarken Möglichkeiten von MATLAB einsetzen, um MATLAB-Codes zu entwerfen, die hinsichtlich der Laufzeit optimiert sind und gleichzeitig den Speicherplatz schonen.
- Die wichtigsten Simulationsparameter eines gegebenen Kommunikationssystems identifizieren, diese aus dem Systemmodell extrahieren und die Auswirkungen dieser Parameter auf die Leistung des betrachteten Systems untersuchen.
Kursstruktur
Die in diesem Kurs bereitgestellten Materialien sind stark miteinander verknüpft. Es wird nicht empfohlen, dass ein Student ein Niveau besucht, ohne das vorherige Niveau absolviert und tiefgreifend verstanden zu haben, um die Kontinuität des erworbenen Wissens zu gewährleisten. Der Kurs ist in drei Niveaus strukturiert, beginnend mit einer Einführung in die MATLAB-Programmierung bis hin zur vollständigen Systemsimulation, wie folgt.
Mathematik der Kommunikation mit MATLAB
Sitzungen 01-06
Nach Abschluss dieses Teils wird der Student in der Lage sein, komplexe mathematische Ausdrücke zu bewerten und leicht die geeigneten Graphen für verschiedene Daten Darstellungen wie Zeit- und Frequenzbereichsplots, Bitfehlerraten-Diagramme, Antennenstrahlungsdiagramme usw. zu erstellen.
Grundlegende Konzepte
- Das Konzept der Simulation
- Die Bedeutung der Simulation in der Kommunikationstechnik
- MATLAB als Simulationsumgebung
- Zur Matrix- und Vektordarstellung skalierter Signale in der Kommunikationstheorie
- Matrix- und Vektordarstellung komplexer Basband-Signale in MATLAB
MATLAB Desktop
- Symbolleiste
- Befehlsfenster
- Arbeitsbereich (Workspace)
- Befehlshistorie
Deklaration von Variablen, Vektoren und Matrizen
- MATLAB-voreingestellte Konstanten
- Von Benutzern definierte Variablen
- Arrays, Vektoren und Matrizen
- Manuelle Matrixeingebe
- Intervalldefinition
- Lineare Skalierung
- Logarithmische Skalierung
- Namensregeln für Variablen
Spezielle Matrizen
- Die Einsen-Matrix
- Die Null-Matrix
- Die Einheitsmatrix
Elementweise und Matrix-basierte Manipulationen
- Zugriff auf bestimmte Elemente
- Ändern von Elementen
- Selektive Entfernung von Elementen (Matrix-Trunkierung)
- Hinzufügen von Elementen, Vektoren oder Matrizen (Matrix-Katenation)
- Auffinden des Index eines Elements in einem Vektor oder einer Matrix
- Matrix-Umformung (Reshaping)
- Matrix-Trunkierung
- Matrix-Katenation
- Umkehrung von links nach rechts und rechts nach links
Unäre Matrixoperatoren
- Der Summenoperator
- Der Erwartungswert-Operator
- Min-Operator
- Max-Operator
- Der Spurenbetrag-Operator (Trace)
- Determinante einer Matrix |.|
- Inverse einer Matrix
- Transponierte einer Matrix
- Hermitesche Matrix
Binäre Matrixoperationen
- Arithmetische Operationen
- Relationale Operationen
- Logische Operationen
Komplexe Zahlen in MATLAB
- Komplexe Basband-Darstellung von Bandbegrenzten Signalen und HF-Aufmischung, eine mathematische Wiederholung
- Bildung komplexer Variablen, Vektoren und Matrizen
- Komplexe Exponentialfunktionen
- Der Operator für den Realteil
- Der Operator für den Imaginärteil
- Der Konjugationsoperator (.)*
- Der Betragsoperator |.|
- Der Operator für Argument oder Phase
In MATLAB eingebaute Funktionen
- Vektoren von Vektoren und Matrizen von Matrizen
- Die Quadratwurzelfunktion
- Die Vorzeichenfunktion
- Die „Runden auf Ganze Zahl“-Funktion
- Die „Nächste kleinere Ganzzahl“-Funktion
- Die „Nächste größere Ganzzahl“-Funktion
- Die Fakultätsfunktion
- Logarithmische Funktionen (exp, ln, log10, log2)
- Trigonometrische Funktionen
- Hyperbolische Funktionen
- Die Q(.)-Funktion
- Die erfc(.)-Funktion
- Bessel-Funktionen Jo (.)
- Die Gamma-Funktion
- Befehle Diff, mod
Polynome in MATLAB
- Polynome in MATLAB
- Rationale Funktionen
- Ableitungen von Polynomen
- Integration von Polynomen
- Multiplikation von Polynomen
Lineare Skalierungsplots
- Visuelle Darstellungen von kontinuierlichen Signalen in Zeit und Amplitude
- Visuelle Darstellungen von Treppenförmig approximierten Signalen
- Visuelle Darstellungen von diskreten Signalen in Zeit und Amplitude
Logarithmische Skalierungsplots
- dB-Dekaden-Diagramme (BER)
- Dekaden-dB-Diagramme (Bode-Plots, Frequenzgang, Signalspektrum)
- Dekaden-Dekaden-Diagramme
- dB-Lineare Diagramme
2D-Polarplots
- (Planare Antennenstrahlungsdiagramme)
3D-Plots
- 3D-Strahlungsdiagramme
- Kartesische Parametrische Plots
Optionaler Abschnitt (auf Wunsch der Lernenden)
- Symbolische Ableitung und numerische Differenzbildung in MATLAB
- Symbolische und numerische Integration in MATLAB
- MATLAB-Hilfe und Dokumentation
MATLAB-Dateien
- MATLAB-Skriptdateien
- MATLAB-Funktionsdateien
- MATLAB-Datendateien
- Lokale und globale Variablen
Schleifen, bedingte Ablaufsteuerung und Entscheidungsfindung in MATLAB
- Die for-end-Schleife
- Die while-end-Schleife
- Die if-end-Bedingung
- Die if-else-end-Bedingungen
- Die switch-case-end-Anweisung
- Iterationen, konvergierende Fehler, mehrdimensionale Summenoperatoren
Ein- und Ausgabe-Befehle
- Der input(' ') -Befehl
- Der disp-Befehl
- Der fprintf-Befehl
- Dialogfenster msgbox
Signale und Systeme Operationen
Sitzungen 07-14
Die Hauptziele dieses Teils sind wie folgt
- Erzeugung zufälliger Testsignale, die zur Überprüfung der Leistung verschiedener Kommunikationssysteme erforderlich sind
- Integration vieler elementarer Signaloperationen, die zu einer einzigen Kommunikationsverarbeitungsfunktion wie Encoder, Randomizer, Interleaver, Spreizcode-Generatoren …etc. auf der Sendeseite sowie ihren Gegenstücken auf der Empfangsseite kombiniert werden können.
- Korrekte Verknüpfung dieser Blöcke, um eine Kommunikationsfunktion zu erreichen
- Simulation deterministischer, statistischer und semi-zufälliger Indoor- und Outdoor-Schmalband-Kanalmodele
Erzeugung von Kommunikationssignalen für Tests
- Erzeugung einer zufälligen binären Sequenz
- Erzeugung zufälliger ganzzahliger Sequenzen
- Importieren und Lesen von Textdateien
- Lesen und Wiedergabe von Audiodateien
- Importieren und Exportieren von Bildern
- Bild als 3D-Matrix
- Umwandlung von RGB in Graustufen
- Serialer Bitstrom eines 2D-Graustufenbildes
- Unterteilung von Bildsignalen in Subrahmen und Rekonstruktion
Signalanpassung und Manipulation
- Amplitudenkalibrierung (Verstärkung, Dämpfung, Amplitudennormalisierung …etc.)
- DC-Niveauverschiebung
- Zeitkalibrierung (Zeitskalierung, Kompression, Rarefizierung)
- Zeitverschiebung (Zeitverzögerung, Zeitvoraussetzung, zirkuläre Zeitverschiebung links und rechts)
- MESSung der Signalenergie
- Energie- und Leistungsnormalisierung
- Energie- und Leistungskalibrierung
- Seriell-Parallel- und Parallel-Seriell-Umwandlung
- Multiplexing und Demultiplexing
Digitalisierung von Analogsигналen
- Zeichenträgersample von kontinuierlichen Basband-Signalen in MATLAB
- Amplitudenquantisierung von Analogsигналen
- PCM-Kodierung von quantisierten Analogsигналen
- Dezimal-Binär- und Binär-Dezimal-Umwandlung
- Pulsgestaltung
- Berechnung der angemessenen Pulsdauer
- Auswahl der Anzahl der Abtastproben pro Puls
- Faltung mit den Befehlen conv und filter
- Autokorrelation und Kreuzkorrelation von zeitlich begrenzten Signalen
- Operationen der Schnellen Fourier-Transformation (FFT) und IFFT
- Ansicht eines Basband-Signalspektrums
- Auswirkung der Abtastrate und des geeigneten Frequenzfensters
- Zusammenhang zwischen Faltung, Korrelation und FFT-Operationen
- Frequenzbereichsfilters, Tiefpassfilterung nur
Zusätzliche Kommunikationsfunktionen
- Randomizer und De-randomizer
- Puncturer und De-puncturer
- Encoder und Decoder
- Interleaver und De-interleaver
Modulatoren und Demodulatoren
- Digitale Basband-Modulationsverfahren in MATLAB
- Visuelle Darstellung digital modulierter Signale
Kanalmodellierung und Simulation
- Mathematische Modellierung der Kanaaleffekte auf das übertragene Signal
- Addition – additiver weißer Gaußischer Rauschen (AWGN) Kanäle
- Multiplikation im Zeitbereich – langsame Fading-Kanäle, Doppler-Verschiebung in Fahrzeugkanälen
- Multiplikation im Frequenzbereich – frequenzselektive Fading-Kanäle
- Faltung im Zeitbereich – Kanalimpulsantwort
Beispiele für deterministische Kanalmodele
- Freiraum-Pfadverlust und umgebungabhängiger Pfadverlust
- Periodische Blockage-Kanäle
Statistische Charakterisierung gängiger stationärer und quasi-stationärer Multipath-Fading-Kanäle
- Erzeugung einer gleichmäßig verteilten Zufallsvariablen (RV)
- Erzeugung einer reellwertigen, gaußschen verteilten Zufallsvariablen (RV)
- Erzeugung einer komplexen, gaußschen verteilten Zufallsvariablen (RV)
- Erzeugung einer rayleigh-verteilten Zufallsvariablen (RV)
- Erzeugung einer ricean-verteilten Zufallsvariablen (RV)
- Erzeugung einer lognormal verteilten Zufallsvariablen (RV)
- Erzeugung einer beliebig verteilten Zufallsvariablen (RV)
- Annäherung einer unbekannten Wahrscheinlichkeitsdichtefunktion (PDF) einer RV durch ein Histogramm
- Numerische Berechnung der kumulativen Verteilungsfunktion (CDF) einer RV
- Reelle und komplexe additiven weißen Gaußischen Rauschen (AWGN) Kanäle
Kanalkennzeichnung durch ihr Leistungs-Zeitverzögerungs-Profil
- Kanalkennzeichnung durch ihr Leistungs-Zeitverzögerungs-Profil (PDP)
- Leistungsnormalisierung der PDP
- Extraktion der Kanalimpulsantwort aus der PDP
- Abtastung der Kanalimpulsantwort mit einer beliebigen Abtastrate, nicht passende Abtastung und Verzögerung
- Quantisierung
- Das Problem der nicht passenden Abtastung der Kanalimpulsantwort von Schmalbandkanälen
- Abtastung einer PDP mit einer beliebigen Abtastrate und Kompensation von Bruchteilverzögerungen
- Implementierung mehrerer IEEE-standardisierter Indoor- und Outdoor-Kanalmodele
- (COST – SUI - Ultra Wide Band Kanalmodele …etc.)
Link-Level-Simulation praktischer Kommunikationssysteme
Sitzungen 15-24
Dieser Teil des Kurses befasst sich mit dem wichtigsten Thema für Forschungsstudenten, nämlich wie man die Simulationsergebnisse anderer veröffentlichter Publikationen durch Simulation nachvollzieht.
Bitfehlerraten-Leistung von digitalen Basband-Modulationsverfahren
- Leistungsvergleich verschiedener digitaler Basband-Modulationsverfahren in AWGN-Kanälen (Umfassende vergleichende Studie über Simulation zur Überprüfung theoretischer Ausdrücke); Streudiagramme, Bitfehlerrate
- Leistungsvergleich verschiedener digitaler Basband-Modulationsverfahren in verschiedenen stationären und quasi-stationären Fading-Kanälen; Streudiagramme, Bitfehlerrate (Umfassende vergleichende Studie über Simulation zur Überprüfung theoretischer Ausdrücke)
- Auswirkung von Doppler-Verschiebungs-Kanälen auf die Leistung digitaler Basband-Modulationsverfahren; Streudiagramme, Bitfehlerrate
- Helikopter-zu-Satelliten-Kommunikation
- Papier (1): Low-Cost Real-Time Voice and Data System for Aeronautical Mobile Satellite Service (AMSS) – Problemstellung und Analyse
- Papier (2): Pre-Detection Time Diversity Combining with Accurate AFC for Helicopter Satellite Communications – Die erste vorgeschlagene Lösung
- Papier (3): An Adaptive Modulation Scheme for Helicopter-Satellite Communications – Ein Ansatz zur Leistungsverbesserung
Simulation von Spread Spectrum-Systemen
- Typische Architektur von Spread Spectrum-basierten Systemen
- Direct Sequence Spread Spectrum-basierte Systeme
- Pseudozufällige binäre Sequenz (PBRS) Generatoren
- Erzeugung von maximalen Längen-Sequenzen
- Erzeugung von Gold-Codes
- Erzeugung von Walsh-Codes
- Time Hopping Spread Spectrum-basierte Systeme
- Bitfehlerraten-Leistung von Spread Spectrum-basierten Systemen in AWGN-Kanälen
- Auswirkung des Codierungsverhältnisses r auf die BER-Leistung
- Auswirkung der Codelänge auf die BER-Leistung
- Bitfehlerraten-Leistung von Spread Spectrum-basierten Systemen in Multipath langsame Rayleigh Fading-Kanäle mit Null-Doppler-Verschiebung
- Bitfehlerraten-Leistungsanalyse von Spread Spectrum-basierten Systemen in Hochmobil-Fading-Umgebungen
- Bitfehlerraten-Leistungsanalyse von Spread Spectrum-basierten Systemen bei Vorhandensein von Multi-User-Interferenz
- RGB-Bildübertragung über Spread Spectrum-Systeme
- Optisches CDMA (OCDMA) Systeme
- Optische orthogonale Codes (OOC)
- Leistungsgrenzen von OCDMA-Systemen; Bitfehlerraten-Leistung von synchronen und asynchronen OCDMA-Systemen
Ultra-Breitband SS-Systeme
OFDM-basierte Systeme
- Implementierung von OFDM-Systemen unter Verwendung der Schnellen Fourier-Transformation
- Typische Architektur von OFDM-basierten Systemen
- Bitfehlerraten-Leistung von OFDM-Systemen in AWGN-Kanälen
- Auswirkung des Codierungsverhältnisses r auf die BER-Leistung
- Auswirkung des zyklischen Präfix auf die BER-Leistung
- Auswirkung der FFT-Größe und der Subcarrier-Abstände auf die BER-Leistung
- Bitfehlerraten-Leistung von OFDM-Systemen in Multipath langsame Rayleigh Fading-Kanäle mit Null-Doppler-Verschiebung
- Bitfehlerraten-Leistung von OFDM-Systemen in Multipath langsame Rayleigh Fading-Kanäle mit CFO
- Kanalschätzung in OFDM-Systemen
- Gleichlauf im Frequenzbereich in OFDM-Systemen
- Zero Forcing Equalizer
- MMSE Equalizers
- Andere gängige Leistungskennzahlen in OFDM-basierten Systemen (Spitzen-zu-Durchschnitts-Leistungsverhältnis, Träger-zu-Störverhältnis …etc.)
- Leistungsanalyse von OFDM-basierten Systemen in Hochmobil-Fading-Umgebungen (als Simulationsprojekt bestehend aus drei Papieren)
- Papier (1): Inter-Carrier-Interferenz-Minderung
- Papier (2): MIMO-OFDM Systeme
Optimierung eines MATLAB-Simulationsprojekts
Das Ziel dieses Teils ist es, zu lernen, wie man ein MATLAB-Simulationsprojekt aufbaut und optimiert, um den gesamten Simulationsprozess zu vereinfachen und zu organisieren. Darüber hinaus werden auch der Speicherplatz und die Verarbeitungsgeschwindigkeit berücksichtigt, um Speicherüberlaufprobleme in Systemen mit begrenztem Speicher oder lange Laufzeiten aufgrund langsamer Verarbeitung zu vermeiden.
- Typische Struktur kleiner Simulationsprojekte
- Extraktion von Simulationsparametern und Abbildung von theoretischen auf simulierte Werte
- Aufbau eines Simulationsprojekts
- Monte-Carlo-Simulationstechnik
- Ein typisches Verfahren zum Testen eines Simulationsprojekts
- Verwaltung des Speicherplatzes und Techniken zur Reduzierung der Simulationszeit
- Basband- vs. Bandbegrenzten-Simulation
- Berechnung der angemessenen Pulsdauer für gekappte willkürliche Pulsformen
- Berechnung der angemessenen Anzahl von Abtastproben pro Symbol
- Berechnung der notwendigen und hinreichenden Anzahl von Bits zum Testen eines Systems
GUI-Programmierung
Ein MATLAB-Code, der fehlerfrei ist und korrekt arbeitet, um richtige Ergebnisse zu liefern, ist eine große Leistung. Allerdings kontrolliert eine Reihe von Schlüsselparametern in einem Simulationsprojekt die ... Aus diesem Grund und anderen wird ein zusätzliches Vortragsmodul zur „Graphical User Interface (GUI) Programmierung“ angeboten, um die Kontrolle über verschiedene Teile Ihres Simulationsprojekts in der Hand zu haben, anstatt in langen Quellcodes voller Befehle zu graben. Außerdem hilft es, Ihren MATLAB-Code mit einer GUI zu versehen, um Ihre Arbeit auf eine Weise zu präsentieren, die das Kombinieren mehrerer Ergebnisse in einem Master-Fenster erleichtert und den Datenvergleich einfacher macht.
- Was ist eine MATLAB-GUI
- Struktur der MATLAB-GUI-Funktionsdatei
- Hauptkomponenten der GUI (wichtige Eigenschaften und Werte)
- Lokale und globale Variablen
Hinweis: Die in jedem Niveau dieses Kurses behandelten Themen umfassen, sind aber nicht auf die in jedem Niveau genannten beschränkt. Darüber hinaus sind die Inhalte jeder einzelnen Vorlesung abhängig von den Bedürfnissen der Lernenden und ihren Forschungsinteressen anpassbar.
Voraussetzungen
Um die umfangreichen Kenntnisse zu erwerben, die in diesem Kurs vermittelt werden, sollten die Teilnehmer über allgemeine Grundkenntnisse in gängigen Programmiersprachen und -techniken verfügen. Ein tiefgreifendes Verständnis der Studienfächer der Kommunikationstechnik im Bachelorbereich wird dringend empfohlen.
Erfahrungsberichte (2)
Die vielen Beispiele und das Schreiben des Codes von Anfang bis Ende.
Toon - Draka Comteq Fibre B.V.
Kurs - Introduction to Image Processing using Matlab
Maschinelle Übersetzung
Viele nützliche Übungen, gut erklärt
Helene Meadows - European Investment Bank
Kurs - MATLAB Programming
Maschinelle Übersetzung