Universite Mohamed Boudiaf - M’sila
Faculte De Technologie
Département D’Electronique
Communication Numérique
Specialite : Telecommunication
Conte rendu du Travaux Pratiques 2
Nom: Ioura Lamido Saga
Prenom: Idi Koundoume
Groupe:01
Exemple: Modulation ASK avec le codage BRZ:
La modulation ASK (Amplitude Shift Keying) est une technique de modulation numérique
dans laquelle l’amplitude de la porteuse varie en fonction des données binaires transmises.
Codage BRZ (Bipolar Return to Zero)
Le codage BRZ est un type de codage en ligne où :
● Le bit 1 est représenté par une impulsion positive (+A) sur la première moitié de la
période du bit, puis retourne à zéro.
● Le bit 0 est représenté par une impulsion négative (-A) sur la première moitié de la
période du bit, puis retourne à zéro.
Combinaison de ASK et BRZ
Dans ce cas :
● Une porteuse sinusoïdale est utilisée, et son amplitude est modulée en fonction des
symboles transmis via BRZ.
● Lorsqu'un bit 1 est transmis, la porteuse est activée avec une amplitude définie selon
BRZ.
● Lorsqu'un bit 0 est transmis, l'amplitude de la porteuse suit la variation négative de
BRZ.
● Entre chaque bit, le signal retourne à zéro.
Ce type de modulation permet de faciliter la récupération de l’horloge au niveau du
récepteur et de limiter les effets du bruit.
clc; clear; close all;
Tb = 1;
fs = 100;
t = 0:1/fs:Tb-1/fs;
fc = 5;
data = [1 0 1 1 0 0 1];
BRZ_signal = [];
for i = 1:length(data)
if data(i) == 1
bit_wave = [ones(1, length(t)/2), zeros(1, length(t)/2)];
else
bit_wave = [-ones(1, length(t)/2), zeros(1, length(t)/2)];
end
BRZ_signal = [BRZ_signal, bit_wave];
end
t_total = 0:1/fs:(length(data)*Tb)-1/fs;
carrier = sin(2*pi*fc*t_total);
ASK_signal = BRZ_signal .* carrier;
subplot(3,1,1);
stairs(0:Tb:length(data)*Tb-Tb, data, 'LineWidth', 2);
ylim([-0.2 1.2]);
title('Séquence binaire d’origine');
xlabel('Temps (s)');
ylabel('Amplitude');
subplot(3,1,2);
plot(t_total, BRZ_signal, 'LineWidth', 1.5);
title('Signal codé BRZ');
xlabel('Temps (s)');
ylabel('Amplitude');
subplot(3,1,3);
plot(t_total, ASK_signal, 'LineWidth', 1.5);
title('Signal modulé ASK avec codage BRZ');
xlabel('Temps (s)');
ylabel('Amplitude');
Conte rendu du Travaux Pratiques 3
Exemple: Démodulation BPSK:
La modulation BPSK (Binary Phase Shift Keying) consiste à modifier la phase d’une onde
sinusoïdale en fonction du bit à transmettre :
● Bit 1 → la phase de la porteuse est 0°.
● Bit 0 → la phase de la porteuse est π (180°).
Démodulation BPSK
Le processus de démodulation BPSK comprend plusieurs étapes :
1. Multiplication avec la porteuse locale
○ Le signal reçu est multiplié par une porteuse de même fréquence et phase.
○ Cela génère un signal dont la composante continue est proportionnelle au bit
transmis.
2. Filtrage passe-bas
○ Le signal obtenu après multiplication contient des composantes haute
fréquence et basse fréquence.
○ Un filtre passe-bas est utilisé pour éliminer les hautes fréquences et
récupérer uniquement la composante utile.
3. Détection du seuil
○ Après filtrage, un comparateur est utilisé :
■ Si la valeur du signal est positive, le bit détecté est 1.
■ Si la valeur du signal est négative, le bit détecté est 0.
Ce type de démodulation est robuste contre le bruit et est souvent utilisé dans les
communications numériques comme le Wi-Fi et le GPS.
clc; clear; close all;
Tb = 1;
fs = 100;
t = 0:1/fs:Tb-1/fs;
fc = 5;
data = [1 0 1 1 0 0 1];
bpsk_signal = [];
for i = 1:length(data)
if data(i) == 1
bit_wave = cos(2*pi*fc*t);
else
bit_wave = cos(2*pi*fc*t + pi);
end
bpsk_signal = [bpsk_signal, bit_wave];
end
bpsk_signal_noisy = awgn(bpsk_signal, 10, 'measured');
t_total = 0:1/fs:(length(data)*Tb)-1/fs;
local_carrier = cos(2*pi*fc*t_total);
demodulated = bpsk_signal_noisy .* local_carrier;
demodulated_filtered = [];
for i = 1:length(data)
sample = demodulated((i-1)*length(t)+1:i*length(t));
demodulated_filtered = [demodulated_filtered, mean(sample)];
end
received_data = demodulated_filtered > 0;
subplot(4,1,1);
stairs(0:Tb:length(data)*Tb-Tb, data, 'LineWidth', 2);
ylim([-0.2 1.2]);
title('Séquence binaire d’origine');
xlabel('Temps (s)');
ylabel('Amplitude');
subplot(4,1,2);
plot(t_total, bpsk_signal_noisy, 'LineWidth', 1.5);
title('Signal BPSK reçu avec bruit');
xlabel('Temps (s)');
ylabel('Amplitude');
subplot(4,1,3);
plot(t_total, demodulated, 'LineWidth', 1.5);
title('Signal démodulé');
xlabel('Temps (s)');
ylabel('Amplitude');
subplot(4,1,4);
stairs(0:Tb:length(data)*Tb-Tb, received_data, 'LineWidth', 2);
ylim([-0.2 1.2]);
title('Séquence binaire récupérée');
xlabel('Temps (s)');
ylabel('Amplitude');