Démodulation d’un message numérique modulé en bande de base

Démodulation d’un message numérique modulé en bande de base#

Émetteur#

../_images/a09f37e5db3c8303fbd6f544bcaf9f4d8dca124c9093452c1de6be14e02efa60.png
../_images/e1cb5bcfb5a79a6f173e07bfcd621cb5585f8848b4abe9654e98f530d9b8fcbc.png

Canal de transmission#

# Bruit gaussien (RSB = 10 dB)

snr = -10
N = len(x)
Px = np.linalg.norm(x)**2/N
sig = np.sqrt(Px * 10**(-snr/10))
b = np.random.normal(0, sig, N)
y = x + b
../_images/5bde4262227517e68c3793b6025c0201549f150861593a0736287960b282e5c4.png

Récepteur#

# Réponse impulsionnelle du filtre adapté

h = motif[::-1]
../_images/575bef62d56cf92c1eabfe195d965fa4e3ccaa2bb055697fa1eb0219fe56b080.png
../_images/45f082e15929865d980dda28d6542d50c6d3d26a4ec97cd8e4640b6c27c31b73.png

Robustesse par rapport au bruit#

L’exemple ci-dessus est reproduit pour différents RSB.

../_images/b0fbd0353581378ab807e9bc286fcbc245864ec6a35e5c1037279019b0eb1a3e.png

On peut approfondir l’étude en testant un grand nombre de RSB, et pour chacun d’eux calculer le nombre d’erreurs de transmission, c’est-à-dire le nombre de bits différents entre la séquence binaire émise et la séquence binaire identifiée par le récepteur.

../_images/97efd264eac50d20e930ad7c8401e0359be65fc6b4c95d113de67939004727c8.png
  • Comme on pouvait s’y attendre, le nombre d’erreur diminue lorsque le RSB augmente.

  • On remarque par ailleurs que si le RSB est supérieur à \(-10\) dB, il n’y a aucune erreur détectée, ce qui montre que le filtre adapté est une méthode très robuste au bruit !

  • Il y a une stagnation du pourcentage d’erreurs à environ 50 % pour un RSB inférieur à \(-40\) dB : dans ces conditions, le bruit est tellement fort que le filtre adapté se comporte comme un générateur aléatoire indépendant du message émis.

Décodage du signal manchester.csv#

../_images/61d3e142147da2ebf1b9d9eda431537f2b7de9b5c1534a2de86d91141e6e2b70.png

La séquence décodée est :

[1 0 0 0 0 1 0 1 0 1 0 0 1 0 1 0 0 0 0 0 1 1 0 1 0 1 1 0 1 0 0 1 1 1 1]

Ce qui, en regroupant les bits 7 par 7 (code ASCII) permet d’obtenir le message :

BRAVO