Plan du cours
• Résultats de ce cours À l'issue de ce cours, l'étudiant doit être capable d'aborder de nombreux problèmes de recherche actuellement ouverts dans le domaine de l'ingénierie des communications car il doit avoir acquis au moins les compétences suivantes :
• Cartographier et manipuler des expressions mathématiques complexes qui apparaissent fréquemment dans la littérature sur l'ingénierie des communications. • Capacité à utiliser les capacités de programmation offertes par MATLAB afin de reproduire les résultats de simulation d'autres articles ou au moins d'approcher ces résultats.
• Créer les modèles de simulation des idées auto-proposées.
• Utiliser efficacement les compétences de simulation acquises en conjonction avec les puissantes capacités MATLAB pour concevoir des codes MATLAB optimisés en termes de temps d'exécution de code tout en économisant l'espace mémoire.
• Identifier les paramètres clés de simulation d'un système de communication donné, les extraire du modèle du système et étudier l'impact de ces paramètres sur les performances du système considéré.
• Structure du cours
Le matériel fourni dans ce cours est extrêmement corrélé. Il n'est pas recommandé à un étudiant de suivre un niveau à moins qu'il ne fréquente et comprenne profondément son niveau antérieur afin d'assurer la continuité des connaissances acquises. Le cours est structuré en trois niveaux commençant par une introduction à la programmation MATLAB jusqu'au niveau de simulation de système complet comme suit.
Niveau 1 : Mathématiques de la communication avec MATLAB sessions 01-06
Une fois cette partie terminée, l'étudiant sera capable d'évaluer des expressions mathématiques complexes et de construire facilement les graphiques appropriés pour différentes représentations de données telles que les tracés des domaines temporel et fréquentiel ; BER trace les diagrammes de rayonnement de l'antenne… etc.
Concepts fondamentaux
1. Le concept de simulation 2. L'importance de la simulation dans l'ingénierie des communications 3. MATLAB en tant qu'environnement de simulation 4. À propos de la représentation matricielle et vectorielle des signaux scalaires en mathématiques des communications 5. Matrix et les représentations vectorielles de signaux complexes en bande de base dans MATLAB
MATLAB Bureau
6. Barre d'outils 7. Fenêtre de commande 8. Espace de travail 9. Historique des commandes
Déclaration de variables, vectorielles et matricielles
10. MATLAB constantes prédéfinies 11. Variables définies par l'utilisateur 12. Tableaux, vecteurs et matrices 13. Saisie manuelle de la matrice 14. Définition d'intervalle 15. Espace linéaire 16. Espace logarithmique 17. Règles de dénomination des variables
Matrices spéciales
18. La matrice des uns 19. La matrice des zéros 20. La matrice des identités
Manipulation Element et matricielle
21. Accéder à des éléments spécifiques 22. Modifier des éléments 23. Élimination sélective d'éléments (Matrix troncature) 24. Ajouter des éléments, des vecteurs ou des matrices (Matrix concaténation) 25. Trouver l'index d'un élément à l'intérieur d'un vecteur ou d'une matrice 26 Matrix remodelage 27. Matrix troncature 28. Matrix concaténation 29. Retournement de gauche à droite et de droite à gauche
Opérateurs matriciels unaires
30. L'opérateur Somme 31. L'opérateur d'attente 32. L'opérateur Min 33. L'opérateur Max 34. L'opérateur trace 35. Matrix déterminant |.| 36. Matrix inverse 37. Matrix transposer 38. Matrix Hermitien 39. …etc
Opérations matricielles binaires
40. Opérations arithmétiques 41. Opérations relationnelles 42. Opérations logiques
Nombres complexes dans MATLAB
43. Représentation complexe en bande de base des signaux passe-bande et conversion ascendante RF, une revue mathématique 44. Formation de variables, de vecteurs et de matrices complexes 45. Exponentielles complexes 46. L'opérateur de partie réelle 47. L'opérateur de partie imaginaire 48. L'opérateur conjugué (.) * 49. L'opérateur absolu |.| 50. L'argument ou l'opérateur de phase
MATLAB fonctions intégrées
51. Vecteurs de vecteurs et matrice de matrice 52. La fonction racine carrée 53. La fonction signe 54. La fonction "arrondi à l'entier" 55. La "fonction entière inférieure la plus proche" 56. La "fonction entière supérieure la plus proche" 57. La fonction fonction factorielle 58. Fonctions logarithmiques (exp, ln,log10,log2) 59. Fonctions trigonométriques 60. Fonctions hyperboliques 61. La fonction Q(.) 62. La fonction erfc(.) 63. Les fonctions de Bessel Jo (.) 64. La fonction Fonction Gamma 65. Commandes Diff, mod
Polynômes dans MATLAB
66. Polynômes dans MATLAB 67. Fonctions rationnelles 68. Dérivées polynomiales 69. Intégration polynomiale 70. Multiplication polynomiale
Tracés à l'échelle linéaire
71. Représentations visuelles de signaux continus dans le temps et d'amplitude continue 72. Représentations visuelles de signaux approximés en escalier 73. Représentations visuelles de signaux temporels discrets – amplitude discrète
Tracés à l'échelle logarithmique 74. Tracés dB-décennie (BER) 75. Tracés décade-dB (tracés de Bode, réponse en fréquence, spectre du signal) 76. Tracés décade-décennale 77. Tracés linéaires en dB
Tracés polaires 2D 78. (diagrammes de rayonnement d'antenne planaire)
Tracés 3D
79. Diagrammes de rayonnement 3D 80. Tracés paramétriques cartésiens
Section facultative (donnée à la demande des apprenants)
81. Différenciation symbolique et différenciation numérique dans MATLAB 82. Intégration symbolique et numérique dans MATLAB 83. MATLAB aide et documentation
MATLAB fichiers
84. MATLAB fichiers de script 85. MATLAB fichiers de fonctions 86. MATLAB fichiers de données 87. Variables locales et globales
Boucles, contrôle de flux de conditions et prise de décision dans MATLAB
88. La boucle de fin for 89. La boucle de fin while 90. La condition de fin if 91. Les conditions de fin if else 92. L'instruction de fin switch case 93. Itérations, erreurs convergentes, opérateurs de somme multidimensionnels
Commandes d'affichage d'entrée et de sortie
94. La commande input(' ') 95. Commande disp 96. Commande fprintf 97. Boîte de message msgbox
Niveau 2 : Opérations de signaux et de systèmes (24 heures) Séances 07-14
Les principaux objectifs de cette partie sont les suivants
• Générer des signaux de test aléatoires nécessaires pour tester les performances de différents systèmes de communication
• Intégrer de nombreuses opérations élémentaires de signal pouvant être intégrées pour mettre en œuvre une seule fonction de traitement de communication telles que des codeurs, des randomiseurs, des entrelaceurs, des générateurs de codes d'étalement… etc. à l'émetteur ainsi que leurs homologues au terminal de réception.
• Interconnectez correctement ces blocs afin d'obtenir une fonction de communication.
• Simulation de modèles de canaux à bande étroite intérieurs et extérieurs déterministes, statistiques et semi-aléatoires
Génération de signaux de test de communications
98. Génération d'une séquence binaire aléatoire 99. Génération d'une séquence entière aléatoire 100. Importation et lecture de fichiers texte 101. Lecture et lecture de fichiers audio 102. Importation et exportation d'images 103. Image sous forme de matrice 3D 104. RVB vers échelle de gris transformation 105. Flux binaire en série d'une image en échelle de gris 2D 106. Sous-cadrage des signaux d'image et reconstruction
Conditionnement et manipulation du signal
107. Mise à l'échelle de l'amplitude (gain, atténuation, normalisation de l'amplitude… etc.) 108. Décalage du niveau DC 109. Mise à l'échelle du temps (compression du temps, raréfaction) 110. Décalage temporel (délai, avance du temps, décalage temporel circulaire gauche et droite) 111. Mesure de l'énergie du signal 112. Normalisation de l'énergie et de la puissance 113. Mise à l'échelle de l'énergie et de la puissance 114. Conversion série-parallèle et parallèle-série 115. Multiplexage et démultiplexage
Numérisation des signaux analogiques
116. Échantillonnage dans le domaine temporel de signaux en bande de base temporels continus dans MATLAB 117. Quantification d'amplitude de signaux analogiques 118. Codage PCM de signaux analogiques quantifiés 119. Conversion décimal-binaire et binaire-décimal 120. Mise en forme d'impulsions 121. Calcul de la largeur d'impulsion adéquate 122. Sélection du nombre d'échantillons par impulsion
123. Convolution utilisant les commandes de conv et de filtre 124. L'autocorrélation et la corrélation croisée de signaux limités dans le temps 125. Les opérations de transformation de Fourier rapide (FFT) et IFFT 126. Visualisation d'un spectre de signal en bande de base 127. Effet du taux d'échantillonnage et de la fréquence appropriée fenêtre 128. Relation entre les opérations de convolution, de corrélation et de FFT 129. Filtrage dans le domaine fréquentiel, filtrage passe-bas uniquement
Fonctions auxiliaires Communication
130. Randomiseurs et dérandomiseurs 131. Perforateurs et dépoinçonneurs 132. Encodeurs et décodeurs 133. Entrelaceurs et désentrelaceurs
Modulateurs et démodulateurs
134. Schémas de modulation numérique en bande de base dans MATLAB 135. Représentation visuelle des signaux modulés numériquement
Modélisation et simulation de canaux
136. Mathematical modélisation de l'effet canal sur le signal transmis
• Addition – canaux de bruit gaussien blanc additif (AWGN) • Multiplication dans le domaine temporel – canaux à évanouissement lent, décalage Doppler dans les canaux de véhicules • Multiplication dans le domaine fréquentiel – canaux à évanouissement sélectif en fréquence • Convolution dans le domaine temporel – réponse impulsionnelle du canal
Exemples de modèles de canaux déterministes
137. Perte de trajet en espace libre et perte de trajet en fonction de l'environnement 138. Canaux de blocage périodique
Caractérisation statistique des canaux à évanouissements par trajets multiples stationnaires et quasi-stationnaires courants
139. Génération d'un RV uniformément distribué 140. Génération d'un RV distribué gaussien à valeur réelle 141. Génération d'un RV distribué gaussien complexe 142. Génération d'un RV distribué de Rayleigh 143. Génération d'un RV distribué de Rice 144. Génération d'un RV distribué lognormalement RV 145. Génération d'une RV distribuée arbitrairement 146. Approximation d'une fonction de densité de probabilité (PDF) inconnue d'une RV par un histogramme 147. Calcul numérique de la fonction de distribution cumulative (CDF) d'une RV 148. Gaussienne blanche additive réelle et complexe Canaux de bruit (AWGN)
Caractérisation du canal par son profil de retard de puissance
149. Caractérisation du canal par son profil de retard de puissance 150. Normalisation de puissance du PDP 151. Extraction de la réponse impulsionnelle du canal du PDP 152. Échantillonnage de la réponse impulsionnelle du canal par un taux d'échantillonnage arbitraire, échantillonnage non adapté et quantification du retard 153. Le problème de l'inadaptation échantillonnage de la réponse impulsionnelle des canaux à bande étroite 154. Échantillonnage d'un PDP par un taux d'échantillonnage arbitraire et une compensation de retard fractionnaire 155. Mise en œuvre de plusieurs modèles de canaux intérieurs et extérieurs normalisés IEEE 156. (COST – SUI - Modèles de canaux à bande ultra large… etc. .)
Niveau 3 : Simulation au niveau du lien des communications pratiques. Systèmes (30 heures) Séances 15-24
Cette partie du cours s'intéresse à la question la plus importante pour les étudiants chercheurs, à savoir comment reproduire par simulation les résultats de simulation d'autres articles publiés.
Performances du taux d'erreur sur les bits des schémas de modulation numérique en bande de base
1. Comparaison des performances de différents schémas de modulation numérique en bande de base dans les canaux AWGN (étude comparative approfondie via simulation pour vérifier les expressions théoriques) ; nuages de points, taux d'erreur sur les bits
2. Comparaison des performances de différents schémas de modulation numérique en bande de base dans différents canaux à évanouissement stationnaires et quasi-stationnaires ; nuages de points, taux d'erreur sur les bits (étude comparative approfondie via simulation pour vérifier les expressions théoriques)
3. Impact des canaux à décalage Doppler sur les performances des schémas de modulation numérique en bande de base ; nuages de points, taux d'erreur sur les bits
Hélicoptère-satellite Communication
4. Document (1) : Système de voix et de données en temps réel à faible coût pour le service mobile aéronautique par satellite (AMSS) – Énoncé et analyse du problème 5. Document (2) : Combinaison de diversité temporelle de pré-détection avec un AFC précis pour les satellites d'hélicoptères [ 1]s – La première solution proposée 6. Article (3) : Un schéma de modulation adaptative pour les hélicoptères-satellites Communication – Une approche d'amélioration des performances
Simulation de systèmes à spectre étalé
1. Architecture typique des systèmes basés sur l'étalement du spectre 2. Systèmes basés sur l'étalement du spectre à séquence directe 3. Générateurs de séquences binaires pseudo-aléatoires (PBRS) • Génération de séquences de longueur maximale • Génération de codes d'or • Génération de codes de Walsh
4. Systèmes à spectre étalé à sauts temporels 5. Taux d'erreur sur les bits Performances des systèmes à spectre étalé dans les canaux AWGN • Impact du taux de codage r sur les performances du BER • Impact de la longueur du code sur les performances du BER
6. Performances du taux d'erreur sur les bits des systèmes basés sur l'étalement du spectre dans les canaux à évanouissements lents de Rayleigh multitrajets avec décalage Doppler nul 7. Analyse des performances du taux d'erreur sur les bits des systèmes basés sur l'étalement du spectre dans des environnements à évanouissements à haute mobilité 8. Analyse des performances du taux d'erreur sur les bits des systèmes basés sur l'étalement du spectre en présence d'interférences multi-utilisateurs 9. Transmission d'images RVB sur des systèmes à spectre étalé 10. Systèmes optiques CDMA (OCDMA) • Codes orthogonaux optiques (OOC) • Limites de performances des systèmes OCDMA ; performances de taux d'erreur binaire des systèmes OCDMA synchrones et asynchrones
Systèmes SS à ultra large bande
Systèmes basés sur OFDM
11. Implémentation de systèmes OFDM utilisant la transformée de Fourier rapide 12. Architecture typique des systèmes basés sur OFDM 13. Performances du taux d'erreur sur les bits des systèmes OFDM dans les canaux AWGN • Impact du taux de codage r sur les performances du BER • Impact du préfixe cyclique sur le BER performances • Impact de la taille de la FFT et de l'espacement des sous-porteuses sur les performances du BER
14. Performances du taux d'erreur sur les bits des systèmes OFDM dans les canaux à évanouissements de Rayleigh lents à trajets multiples avec décalage Doppler nul 15. Performances du taux d'erreur sur les bits des systèmes OFDM dans les canaux à évanouissements de Rayleigh lents à trajets multiples avec CFO 16. Estimation des canaux dans les systèmes OFDM 17. Égalisation du domaine fréquentiel dans l'OFDM Systèmes • Égaliseur à forçage zéro • Égaliseurs MMSE 18. Autres mesures de performance courantes dans les systèmes basés sur OFDM (rapport de puissance crête à moyenne, rapport porteuse sur interférence… etc.) 19. Analyse des performances des systèmes basés sur OFDM dans des environnements à forte mobilité. (en tant que projet de simulation composé de trois articles) 20. Article (1) : Atténuation des interférences inter-porteuses 21. Article (2) : Systèmes MIMO-OFDM
Optimisation d'un projet de simulation MATLAB
Le but de cette partie est d'apprendre à construire et optimiser un projet de simulation MATLAB afin de simplifier et d'organiser le processus global de simulation. De plus, l'espace mémoire et la vitesse de traitement sont également pris en compte afin d'éviter les problèmes de débordement de mémoire dans les systèmes de stockage limités ou les longs temps d'exécution résultant d'un traitement lent.
1. Structure typique d'un projet de simulation à petite échelle 2. Extraction des paramètres de simulation et mappage théorique à la simulation 3. Construction d'un projet de simulation 4. Technique de simulation de Monte Carlo 5. Une procédure typique pour tester un projet de simulation 6. Espace mémoire Management et techniques de réduction du temps de simulation • Simulation bande de base vs bande passante • Calcul de la largeur d'impulsion adéquate pour les formes d'impulsion arbitraires tronquées • Calcul du nombre adéquat d'échantillons par symbole • Calcul du nombre nécessaire et suffisant de bits pour tester un système
Programmation graphique
Avoir un code MATLAB exempt de débogages et fonctionnant correctement pour produire des résultats corrects est une grande réussite. Cependant, un ensemble de paramètres clés dans un projet de simulation contrôle le Pour cette raison et plus encore, une conférence supplémentaire sur "l'interface utilisateur graphique (GUI) Programming" est donnée afin d'amener le contrôle sur différentes parties de votre projet de simulation à vos conseils plutôt que de plonger dans un long code source rempli de commandes. De plus, avoir votre code MATLAB masqué avec une interface graphique permet de présenter votre travail d'une manière qui facilite la combinaison de plusieurs résultats dans une seule fenêtre principale et facilite la comparaison des données.
1. Qu'est-ce qu'une interface graphique MATLAB 2. Structure du fichier de fonctions de l'interface graphique MATLAB 3. Principaux composants de l'interface graphique (propriétés et valeurs importantes) 4. Variables locales et globales
Remarque : Les sujets abordés dans chaque niveau de ce cours incluent, sans s'y limiter, ceux énoncés dans chaque niveau. De plus, les éléments de chaque cours particulier sont susceptibles de changer en fonction des besoins des apprenants et de leurs intérêts de recherche.
Pré requis
Afin d'acquérir la grande quantité de connaissances contenues dans ce cours, les stagiaires doivent avoir des connaissances générales sur les langages et techniques de programmation courants. Une connaissance approfondie des cours de premier cycle en ingénierie des communications est fortement recommandée.
Nos Clients témoignent (4)
J'ai beaucoup apprécié la capacité du formateur à s'adapter à notre besoin spécifique et à nous proposer un support de formation adapté.
Jeremy Herviou - Michelin
Formation - Basic MATLAB Programming
Les nombreux exemples et la construction du code du début à la fin.
Toon - Draka Comteq Fibre B.V.
Formation - Introduction to Image Processing using Matlab
Traduction automatique
Disponibilité et adaptabilité, réponses aux questions
Jean-Michel MEOT - CIRAD
Formation - Introduction au Machine Learning avec MATLAB
Les exercices pratiques et la disponibilité du formateur pour répondre aux questions.