Vous êtes sur la page 1sur 25

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

 SUP’COM 2018
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

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.

B(t)

Co d a g e ak e (t) r(t) z(t) âk


So u rc e b in a ire g (t) g r(t)
d e G ra y
t 0 +kT
Filtre d e m ise Filtra g e
e n fo rm e a d a p té

FIG URE 1 – C h a în e d e tra n sm issio n n u m é riq u e e n b a n d e d e b a se

2. Introduction :
Nous souhaitons transmettre sur un canal de type BBAG (Bruit Blanc Additif Gaussien) une suite de symboles { a k }
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 )=∑ ak g(t−kT ) (1)
k

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
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 , ± A 3 , … .., ±( 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 a k en un signal analogique :
a ( t )=∑ ak g (t −kT ) (3)
k

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 T b = 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 B k 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 t 0 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 a n 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
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

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
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 a k. 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 E b/N0 en décibels. On rappelle que la
probabilité d’erreur symbole Pes de la MDA-2 est égale à la probabilité d’erreur bit P eb 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 courbe théorique au TEB mesuré lors des simulations pour Eb/N 0 allant de 0dB à 5 dB avec un
pas égal à 0,5 dB. On simulera la transmission de N=10 5 symboles ce qui permet d’avoir une bonne précision de la
simulation de Peb.

Figure 2 : Probabilité d’erreur binaire théorique et par simulation de la modulation MDA-2

Superposer courbe

Insérer votre commentaire

Page 13 sur 25
Partie 2 : Modulation numérique MDA-4 (Durée estimée, 60mn)
Il s’agit de modifier la chaîne de simulation réalisée sous Matlab lors de la partie 1 pour étudier la modulation
MDA-4.

Note :       /2pt


1. Modifier la source : coder une source binaire uniforme en symboles MDA-4 selon le codage de gray. On utilisera
l’alphabet suivant : {±1, ±3}.

Insérer votre commentaire

Note :       /2pt


2. Utiliser le même filtre g(t) définie dans la partie 1 pour générer et tracer une version échantillonnée du signal
émis,

Insérer courbe

Note :       /2pt


3. Simuler le taux d’erreur binaire de la chaîne MDA-4 pour Eb/N0 variant de 0 à 5dB. Comparer ce résultat à
l’expression théorique de la probabilité d’erreur de la MDA-2 et MDA-4 :

Page 14 sur 25
Figure 3 : Probabilité d’erreur binaire théorique et par simulation de la modulation MDA-2 et MDA-4
Superposer courbe

Insérer votre commentaire

Partie 3 : Modulation numérique 8-PSK (Durée estimée, 60mn)


On considère la constellation 8-PSK dans laquelle chaque symbole d k est codé comme suit :

Note :       /1pt


1. Dessiner la constellation 8-PSK, en proposant un étiquetage binaire suivant le codage de Gray.

Superposer courbe

Page 15 sur 25
Insérer votre commentaire

Note :       /1pt


2. Calculer l’énergie par symbole Es ainsi que l’énergie par bit Eb pour la modulation 8-PSK.

Insérer votre commentaire

Note :       /1pt


3. Soit S un vecteur de données binaires de longueur 10 4, procéder au codage de Gray de cette séquence suivant la
modulation 8-PSK.

Insérer votre commentaire

Note :       /1pt


4. On considère le filtre de mise en forme g(t) précédant. Les symboles sont entachés d’un bruit additif Gaussien
centré B(t) et de variance N0. Générer les échantillons du signal z(t) à la sortie du filtre adapté.

Superposer courbe

Page 16 sur 25
Insérer votre commentaire

Note :       /1pt


5. Effectuer la prise de décision sur les symboles avec le maximum de vraisemblance.

Insérer votre commentaire

Note :       /1pt


6. Évaluer puis tracer le Taux d’Erreur Symbole (TES) et le Taux d’Erreur Binaire (TEB) pour un rapport signal
sur bruit (Eb/N0) variant entre 0 et 10dB pour un pas de1dB. Interpréter les résultats.

Superposer courbe

Insérer votre commentaire

Page 17 sur 25
Note :       /1pt
7. Vérifier que le Taux d’Erreur Symbole (TES8-PSK) théorique dans le cas d’une modulation de type 8-PSK,
vérifie la formule suivante :

Insérer votre commentaire

Page 18 sur 25
TP N°3 : 
CODAGE/DECODAGE DE L’INFORMATION

Nom et Prénom de l’étudiant(e) Date

Nom et Prénom de l’enseignant(e) Note finale

1.Objectif :
L’objectif du TP est d’étudier les performances d’une chaine de transmission numérique en présence de codes
correcteurs d’erreurs. En particulier les codes convolutifs sont considérés.
Le principe des simulations consiste à comparer les performances de deux chaînes de transmission : avec et sans
codage canal. Ces performances sont évaluées en termes de TEB (Taux d’Erreur Binaire) en fonction du rapport
signal sur bruit Eb/N0.

Compte-rendu : le compte-rendu de ce TP sera constitué des réponses aux questions, des codes MATLAB des programmes
développés ainsi que des figures présentant les courbes de performances. Le compte-rendu sera envoyé par mail, au format
Word à la fin de la séance.

NB : une annexe au TP N° 3, en fichier pdf, est donnée avec cet énoncé !

Page 19 sur 25
2. Travail demandé :
Partie 1 : Étude des fonctions de codage et de décodage 
(Durée estimée, 90mn) (10pts)

Dans cette section, on considère la chaine de transmission donnée par la Figure 1 :

Figure 1 : chaine de transmission

Les bits d’informations sont codés par un codeur correcteur d’erreur convolutif avant d’être transmis. A la
réception, la phase de décodage est effectuée en utilisant l’algorithme de Viterbi. Le code convolutif à étudier est
présenté par le schéma suivant :

Figure 2 : Codeur convolutif


Note :       /1pt
1. Donner la contrainte K et le rendement R de ce codeur.

Insérer votre commentaire

Note :       /1pt

Page 20 sur 25
2. Exprimer les séquences génératrices en octal.

Insérer votre commentaire

3. On désire simuler la chaine de transmission de la Figure 1 en utilisant le codeur convolutif


ci-dessus :

Note :       /1pt


 Générer une séquence binaire de longueur N avec la fonction randi()

Insérer votre commentaire

 Coder ces bits avec la fonction convenc () (utiliser la fonction poly2trellis() pour avoir la
structure de treillis)
Note :       /1pt

Insérer votre commentaire

On considère un canal de transmission binaire symétrique Utiliser la fonction bsc() pour simuler le canal. La
probabilité d’erreur binaire Peb dans la fonction bsc() sera celle d’une transmission BPSK donnée par :

Note :       /1pt


4. Décoder la séquence reçue à l’aide de la fonction vitdec().

Page 21 sur 25
Insérer votre commentaire

Note :       /1pt


5. Évaluer le TEB sur les N bits émis et vérifier que la séquence émise correspond bien à la séquence décodée
dans le cas sans bruit.

Insérer votre commentaire

Note :       /4pt


6. Tracer sur une même figure les courbes de TEB en fonction du rapport EB/N0 pour les cas avec et sans codage
canal. Interpréter les résultats obtenus. La simulation sera effectuée pour un rapport Eb/N0 allant de 0 à 10 dB
(par pas de 1 dB).

Superposer courbe

Insérer votre commentaire

Partie 2 : Performance d’un système de transmission numérique : codage


canal & modulation (Durée estimée, 90mn) (10pts)

Dans cette partie, on désire ajouter la phase de décodage canal (codes convolutifs) à la chaine de transmission
étudiée dans le TP2. Alors, la chaine est représentée comme suit :

Page 22 sur 25
Note :       /4pt
1. En utilisant la modulation MDA2 et le codeur convolutif donné par la Figure 2, tracer les TEB pour un rapport
Eb/N0 variant de 0 à 10dB dans les cas avec et sans codage canal. Interpréter les résultats obtenus.

Superposer courbe

Insérer votre commentaire

2. Considérons maintenant le codeur convolutif représenté par le schéma suivant :

Page 23 sur 25
Note :       /2pt
 Donner la longueur de contrainte, le rendement et les séquences génératrices (exprimées en octal) du ce
codeur.

Insérer votre commentaire

Note :       /4pt


 Reprendre la question 1 de la partie 2 en adoptant ce codeur et la modulation MDA4

Page 24 sur 25
Superposer courbe

Insérer votre commentaire

Page 25 sur 25

Vous aimerez peut-être aussi