SUP’COM 2018 FASCICULE DES TRAVAUX PRATIQUES EN TRANSMISSIONS NUMERIQUES 1. TRA

SUP’COM 2018 FASCICULE DES TRAVAUX PRATIQUES EN TRANSMISSIONS NUMERIQUES 1. TRANSMISSION NUMERIQUE EN BANDE DE BASE 2. TRANSMISSION NUMÉRIQUE EN BANDE TRANSPOSEE 3. CODAGE/DECODAGE DE L’INFORMATION NB : compléter ce document et le remettre en version électronique à la fin de la séance 1. Objectif : Ce TP a pour objectif d’étudier avec l’utilisation de MATLAB, chaque bloc, représenté dans la Figure 1, constituant une chaîne de transmission numérique en bande de base. FIG URE 1 – C ha îne d e tra nsmission numé riq ue e n b a nd e d e b a se t0+kT z(t) r(t) e (t) a k Sourc e b ina ire g(t) Co d a g e d e G ra y g r(t) â k B(t) Filtre d e mise e n fo rme Filtra g e a d a p té 2. Introduction : Nous souhaitons transmettre sur un canal de type BBAG (Bruit Blanc Additif Gaussien) une suite de symboles {ak} d’information à la cadence 1/T, T étant la durée d’un bit ou d’un symbole. Avant d’être émise sur le canal physique, cette suite est mise en forme par le biais d’un filtre linéaire analogique de mise en forme g(t). Ainsi, le signal analogique émis e(t) est le suivant : e (t )=∑ k ak g(t−kT ) (1) Le signal reçu, r(t), après le passage du signal émis e(t) dans le canal est donné par : r (t )=e (t )+B(t) (2) où B(t) est le BBAG. Page 2 sur 25 TP N°1 : Transmission numérique en bande de base Nom et Prénom de l’étudiant(e) Date Nom et Prénom de l’enseignant(e) Note finale 3. Travail demandé : Partie 1 : Durée estimée (30mn) Note : /1pt 1. Générer à l’aide de la fonction Matlab “randint” N échantillons (quelconque) d’une source binaire où N est le nombre de bits à émettre. Les N échantillons seront stockés dans un vecteur ligne. Représenter quelques périodes du signal et uploader la courbe dans la zone réservée et commenter le résultat. Insérer votre courbe Insérer votre commentaire Note : /1pt 2. Effectuer, l’opération de codage de Gray, avec les fonctions de MATLAB, de la source binaire en symboles a k dans l’alphabet M-aire {± A ,± A3,…..,±(M−1) A } où A est un réel strictement positif permettant de contrôler l’énergie moyenne transmise par bit. Dans la suite, nous nous limitons au cas binaire M = 2. On doit convertir le signal en temps discret composé des symboles ak en un signal analogique : a (t )=∑ k ak g(t−kT) (3) où δ(t) est l’impulsion de Dirac et T correspond à la durée d’un bit. Ensuite, nous proposons d’échantillonner ce signal à la fréquence d’échantillonnage égale à fe =F/T où F est le facteur de sur échantillonnage que l’on fixera à 8. Échantillonner le signal a(t) à fe = F/T revient à insérer F-1 zéros entre deux symboles consécutifs. Représenter le signal discret ainsi obtenu (utiliser la fonction “scatter” de Matlab). Insérer votre courbe Partie 2 : Durée estimée (60mn) Page 3 sur 25 On désire simuler un filtre dit filtre de mise en forme en racine de cosinus surélevé, couramment utilisé dans les chaînes de transmissions numériques. Sa réponse impulsionnelle a pour expression : (4) Où α est dit coefficient de retombé (roll-off) compris entre 0 et 1. On fixera Tb = 1s (durée d’un bit). Il est à noter que g(t) est de durée infinie et présente trois formes indéterminées en t = 0 et t = ±Tb/4α. Note : /2pt 1. Calculer les limites correspondantes par développement limité ou en utilisant la fonction “limit” de Matlab. Étudier cette fonction pour l’utiliser ultérieurement. Insérer votre courbe Insérer votre commentaire Note : /2pt Page 4 sur 25 2. Pour les valeurs de α = 0.1, 0.25 et 0.9, stocker dans un vecteur ligne les échantillons de la troncature de g(t) sur [−KTb, KTb] où K = 8. Tracer et commenter sur la même figure l’évolution des échantillons du filtre g(t) en fonction du temps pour les différentes valeurs de α (fonction “subplot” de MATLAB). Insérer votre courbe Insérer votre commentaire Note : /1pt 3. Vérifier que l’énergie du filtre échantillonné g(t) vaut F. Insérer votre commentaire Page 5 sur 25 Note : /2pt 4. Générer une version échantillonnée du signal émis, e(t), en effectuant la convolution discrète des versions échantillonnées de a(t) et g(t). On utilisera la commande Matlab “conv”. Insérer votre courbe Insérer votre commentaire Partie 3 : Durée estimée (30mn) Note : /1pt 1. Étudier la fonction “randn” de Matlab. Déduire comment on peut générer un bruit Gaussien de moyenne nulle et de variance σ2 quelconque. Insérer votre commentaire Note : /1pt 2. Utiliser cette fonction pour générer des échantillons d’un bruit Bk discret, Gaussien et de variance N0/2. La valeur de N0 sera déduite de la valeur en décibel de Eb/N0 qu’on désire simuler. Insérer votre commentaire Partie 4 : Durée estimée (60mn) Page 6 sur 25 Note : /2pt 1. Tracer le diagramme de l’œil pour α = 0.1, 0.25 et 0.9. On rappelle que le diagramme de l’œil s’obtient en superposant toutes les traces de la sortie du filtre adapté en absence de bruit (utiliser la fonction MATLAB eyediagram). Interpréter l’ouverture horizontale du diagramme de l’œil en fonction de la valeur du coefficient de retombée. Insérer votre courbe Insérer votre commentaire Note : /2pt 2. Étudier l’effet de l’interférence entre symboles à travers la fermeture verticale du diagramme de l’œil pour une troncature très sévère du filtre de mise en forme g(t). On rappelle qu’en pratique le critère de Nyquist n’est vérité qu’approximativement pour des grandes valeurs de K. Prendre par exemple K = 2 et K = 4 pour α = 0, 25. Insérer votre courbe Insérer votre commentaire Page 7 sur 25 Note : /2pt 3. Générer le signal filtré décimé d’un facteur F servant à la prise de décision. L’instant d’échantillonnage t 0 doit correspondre à l’ouverture maximale du diagramme de l’œil. Le filtre g(t) étant non causal, on devrait le retarder lors de l’implémentation sous Matlab. Ce qui fait que la sortie du filtre de mise en forme est retardée de la moitié de la taille du filtre g(t). De même pour le filtre adapté. Ainsi l’instant d’échantillonnage t0 vaut la taille du filtre g(t) en nombre d’échantillons. Autrement dit, la variable de décision permettant d’estimer le premier symbole émis se trouve à l’indice taille du filtre g(t) en nombre d’échantillons. Pour récupérer le symbole suivant, il suffit d’avancer d’une période symbole, c’est-à-dire de F échantillons. Insérer votre courbe Insérer votre commentaire Note : /1pt 5. Vérifier qu’en absence de bruit, la variable de décision correspondante au symbole an vaut : (5) Insérer votre commentaire Note : /2pt 6. Générer des échantillons du signal reçu bruité : z(t) = e(t) ∗ gr(t) + b(t). Page 8 sur 25 Insérer votre courbe Insérer votre commentaire Page 9 sur 25 Annexe : Fonction générant la réponse impulsionnelle d'un filtre en racine de cosinus surélevé function y = RRCF(x, T, RollOff) if (RollOff == 0), if (x == 0), y = 1/sqrt(T); else y = (1/sqrt(T))*sin(pi*x/T)/(pi*x/T); end else z = pi/(4*RollOff); if (x == 0), y = ((1 - RollOff) + 1/z)/sqrt(T); elseif (x == T/(4*RollOff)) | (x == -T/(4*RollOff)), y = ((cos(z)*(pi/2-1)+sin(z)*(pi/2+1))/(2*sqrt(2)*z))/sqrt(T); else y = sin(pi*(x/T)*(1-RollOff))+4*RollOff*(x/T)*cos(pi*(x/T)*(1+RollOff)); y = y / (pi*(x/T)*(1-(4*RollOff*(x/T))^2)); y = y/sqrt(T); end end Page 10 sur 25 1. Objectif : L’objectif de ce TP est d’étudier les performances des modulations MDA-2, MDA-4 et 8-PSK par le biais de la simulation sous Matlab. 2. Travail demandé : Partie 1 : Modulation numérique MDA-2 (Durée estimée, 60mn) Considérons la chaîne de transmission définie par : On rappelle l’expression de la réponse impulsionnelle d’un filtre en racine de cosinus surélevé : On fixera Ts=1s. Page 11 sur 25 TP N°2 : TRANSMISSION NUMERIQUE EN BANDE TRANSPOSEE Nom et Prénom de l’étudiant(e) Date Nom et Prénom de l’enseignant(e) Note finale Note : /2pt 1- En utilisant la fonction Matlab « sign », effectuer la prise de décision Insérer votre commentaire Note : /2pt 2- Évaluer, par simulation, le Taux d’Erreur Binaire (TEB) sur les symboles ak. Vérifier que le TEB est nul pour N0=0 Insérer votre commentaire Note : /2pt 3. Tracer l’évolution de la probabilité d’erreur de la MDA-2 en fonction de Eb/N0 en décibels. On rappelle que la probabilité d’erreur symbole Pes de la MDA-2 est égale à la probabilité d’erreur bit Peb et vaut : où erfc(.) est la fonction erreur complémentaire. Utiliser la fonction Matlab « erfc » pour calculer Peb pour Eb/N0 allant de 0 à 5 dB avec un pas égal à 0.1 dB. La figure 2 illustre l’évolution de Peb en fonction de Eb/N0. On représentera l’axe des ordonnées en échelle logarithmique grâce à la commande Matlab « semilogy ». Eb/N0 (dB) 0 1 2 3 4 5 Peb Insérer les données du Tableau Page 12 sur 25 Insérer votre courbe Insérer votre commentaire Note : /1pt 4- Superposer cette uploads/s3/ fascicule-des-travaux-pratiques-en-transmissions-numeriques-2019-novembre-2021.pdf

  • 27
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager