0% ont trouvé ce document utile (0 vote)
8 vues6 pages

Modulation et démodulation audio

Transféré par

kamenironel0
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
8 vues6 pages

Modulation et démodulation audio

Transféré par

kamenironel0
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

TRAITEMENT DE SIGNAL

FICHE DE RAPPORT
SÉANCE #3 (TP3)
Modulations et Multiplex fréquentiels

NOM ET PRÉNOM CLASSE

#1

#2

OBJECTIFS
Réaliser la modulation et la démodulation des signaux audio.

1
TRAVAIL A FAIRE

I. Compléter le programme fourni pour réaliser la manipulation décrite ci-après

Quatre signaux sont préalablement enregistrés (environ 3 secondes de signal audio) à l’aide de
fonctions Matlab spécifiques et stockés dans un fichier « signaux_audio ».
Ces signaux ont une bande passante comprise dans l’intervalle fréquentiel [-B, +B]
(B=2000Hz).
Les quatre signaux audios sont ensuite modulés autour de 4 fréquences porteuses fp(k).
fp(1)=1.1XB = 2200Hz
fp(2)=3.3XB = 6600Hz
fp(3)=5.5XB = 11000Hz
fp(4)=7.7XB = 15400Hz
Les signaux modulés sont appelés xm(k, :).
Les 4 signaux xm(k, :) sont sommés pour donner le signal y
Le signal y est démodulé pour obtenir les 4 signaux originaux x(k, :). Pour cela on multiplie le
signal y par un signal cosinusoïdal de fréquence fp(k) pour récupérer le signal x(k, :).
Après multiplication par le cosinus on filtre le signal résultant (ymult(k, :) ) par un filtre
passe-bas de bande [-B, +B]. la commande xdemod(k,:)=filter(B1,1,ymult(k,:)); est
suggéré à cet effet.
Les signaux générés avec le logiciel Matlab sont des signaux échantillonnés. La fréquence
d'échantillonnage utilisée dans ce programme sera de Fe=80000Hz. Cela veut dire que l'on
calculera la valeur des signaux tous les 1/80000 secondes soit Te=12.5µs.

La fréquence Fe=80KHz a été choisie afin de ne pas avoir de repliement de spectre des différents
signaux. La fréquence maximale de tous les signaux de la simulation Matlab doit être
inférieure à Fe/2 pour respecter la condition Shannon.

Les signaux modulants, xk(t) ont une bande comprise entre [-B, +B].Le premier signal modulé
xm1(t) a une bande comprise entre [-B-fp(1), +B-fp(1)] et [-B+fp(1),+B+fp(1)] Le quatrième signal
modulé xm4(t) a une bande comprise entre [-B-fp(4), +B-fp(4)] et [-B+fp(4),+B+fp(4)].
Le signal y(t) qui est la somme des quatre signaux modulés xmk(t) a une fréquence maximale
égale à +B+fp(4)
Lors de l'opération de démodulation on multipliera le signal y(t) par des cosinus aux fréquences
respectives: fp(1), fp(2), f(3) et fp(4).

Après multiplication par le cosinus à la fréquence fp(4), le signal ymult4(t)=y(t).cos([Link](4).t)


aura une fréquence maximale égale à : +B+fp(4)+fp(4). La fréquence maximale qui sera
rencontrée dans la simulation est donc égale à Fmax=+B+fp(4)+fp(4). Afin de ne pas avoir de
repliement de spectre il faut que Fe > [Link] soit Fe > (2.B+[Link](4)) Avec B=2000Hz et
fp(4)=15400Hz, cela donne Fmax=32800Hz et Fe > 65600Hz. Le choix de prendre Fe=80KHz
permet de respecter cette contrainte.

II. Modification du programme


 modifiez le programme complété de manière à utiliser une même fréquence porteuse
pour les signaux 1 et 4 (fp(4)=fp(1)= 2200Hz). Ecoutez et comparez les quatre signaux
originaux et démodulés. Conclure
 Fixez maintenant la fréquence d’échantillonnage Fe= 40 KHz. Ecoutez et comparez
les quatre signaux originaux et démodulés. Conclure.

2
PROGRAMME A COMPLETER
Fe=80000; % Définition de la fréquence d'échantillonnage
Te=1/Fe; % Période d'échanillonnage Te=1/Fe
B=2000; % Valeur de B en Hz
nptsfft=5000; % Densité spectrale de puissance calculée sur (nptsfft+1) points

%**************************************************************
% Les signaux seront visualisés sur une plage temporelle correspondant à 2*npts
échantillons.
npts=200000 ; % Nombre d'échantillons total de la
simulation
temps=(0:Te:(npts-1)*Te); % les valeurs du temps pour lesquelles on calculera d(t)
freq=linspace(0,Fe,npts+1);
freq=freq(1:end-1);
freq=freq-Fe/2;
couleur(1)='b'; % Couleur des signaux
couleur(2)='r'; % Couleur des signaux
couleur(3)='g'; % Couleur des signaux
couleur(4)='m'; % Couleur des signaux
couleuro(1,:)='b-*'; % Couleur des signaux
couleuro(2,:)='r-*'; % Couleur des signaux
couleuro(3,:)='g-*'; % Couleur des signaux
couleuro(4,:)='m-*'; % Couleur des signaux
%**************************************************************
% GENERATION DES SIGNAUX TEMPORELS
%**************************************************************
%==============================================================
% Chargement des signaux xk(t)
nbsignaux=4;
load('signaux_audio');

%**************************************************************
% MODULATION DES SIGNAUX : xm(t) = x(t).cos([Link].t)
%**************************************************************
fp=zeros(1,nbsignaux);
fp(1)=1.1*B;
xm=zeros(nbsignaux,length(temps));
for k=1:nbsignaux
fp(k)=fp(1)+(k-1)*2.2*B;
xm(k,:)= ;
end

%**************************************************************
% SOMME DES SIGNAUX : y(t) = x1(t)+x2(t)+ x3(t)+...
%**************************************************************
y=zeros(1,npts);
for k=1:nbsignaux
y= ;
end

%**************************************************************
% DEMODULATION DES SIGNAUX
%**************************************************************
%==============================================================
% Multiplication de y(t) par des cosinus de fréquences fp(k)
% ymult(t) = y(t).[Link]([Link].t)
ymult=zeros(nbsignaux,length(temps));
for k=1:nbsignaux

3
ymult(k,:)= ;
end

%==============================================================

% Filtrage de ymult(t) par un filtre passe-bas


% xdemod(t) = ymult(t)* h(t)
B1=fir1(501,B*2/Fe);
xdemod=zeros(nbsignaux,length(temps));
for k=1:nbsignaux
xdemod(k,:)= ;
end

%**************************************************************
% CALCUL DES TRANSFORMEES DE FOURIER DES SIGNAUX
%**************************************************************
xdemod_f=zeros(nbsignaux,length(temps));
ymult_f=zeros(nbsignaux,length(temps));
xm_f=zeros(nbsignaux,length(temps));
x_f=zeros(nbsignaux,length(temps));
for k=1:nbsignaux
x_f(k,:)=abs(fftshift(fft(x(k,:))));
xm_f(k,:)=abs(fftshift(fft(xm(k,:))));
ymult_f(k,:)=abs(fftshift(fft(ymult(k,:))));
xdemod_f(k,:)=abs(fftshift(fft(xdemod(k,:))));
end
y_f=abs(fftshift(fft(y)));

%**************************************************************
% TRACE DES ALLURES TEMPORELLES ET FREQUENTIELLES DES SIGNAUX
%**************************************************************
figure
hold on;
for k=1:nbsignaux
plot(temps, x(k,:)+2*k,couleur(k))
end
hold off
grid
title('Tracé temporel des signaux xk(t) k=1 à 4')% Titre de la figure
xlabel('Temps en secondes') % Label de l'axe des abcisses
ylabel('Amplitudes') % Label de l'axe des ordonnées
legend('Signal 1','Signal 2','Signal 3','Signal 4')

%==============================================================
%*** Allure fréquentielle des signaux xk(t), échelle linéaire
figure
plot(freq, xm_f(1,:),'b')
hold on
for k=2:nbsignaux
plot(freq, xm_f(k,:),couleur(k));
end
hold off
grid
title('Tracé fréquentiel des signaux xk(t) modulés, échelle lin');
xlabel('Fréquence en Hz')
ylabel('Module des TF')
legend('Signal 1','Signal 2','Signal 3','Signal 4')

4
%==============================================================
%*** Allure fréquentielle des signaux ymult(t), échelle logarithmique
figure
semilogy(freq, ymult_f(1,:),'b');
hold on
for k=2:nbsignaux
semilogy(freq, ymult_f(k,:),couleur(k));
end
hold off
grid
title('Tracé fréquentiel des signaux ymult(t), échelle log');
xlabel('Fréquence en Hz')
ylabel('Module des TF')
legend('Signal 1','Signal 2','Signal 3','Signal 4')

%==============================================================
%*** Allure fréquentielle des signaux xdemod(t), échelle logarithmique
for k=1:nbsignaux
figure
semilogy(freq, x_f(k,:),'b');
hold on
semilogy(freq, xdemod_f(1,:),'m');
hold off
grid
title('Tracé fréquentiel des signaux xk(t) et xdemodk(t), échelle log');
xlabel('Fréquence en Hz')
ylabel('Module des TF')
legend('Signal original','Signal démodulé')
end

%==============================================================
%*** Allure temporelle des signaux xdemod(t)
figure
hold on
for k=1:nbsignaux
plot(temps, x(k,:),couleur(k))
plot(temps, [xdemod(k,length(B1)/2:end) zeros(1,length(B1)/2-1)],couleuro(k,:))
end
hold off
grid
title('Tracé temporel des signaux xk(t) et xdemodk(t)(*) (1=b 2=r 3=v 4=m)')
xlabel('Temps en secondes')
ylabel('Amplitudes')
legend('S1','S1-demod','S2','S2-demod','S3','S3-demod','S4','S4-demod')
figure
hold on
for k=1:nbsignaux
plot(x(k,100000:101000),couleur(k))
plot(xdemod(k,length(B1)/2+100000:length(B1)/2+101000),couleuro(k,:))
end
hold off
grid
title('Tracé temporel des signaux xk(t) et xdemodk(t)(*)')
xlabel('1000 échantillons de signal temporel')
ylabel('Amplitudes')
legend('S1','S1-demod','S2','S2-demod','S3','S3-demod','S4','S4-demod')

5
%**************************************************************
% ECOUTE DES DIFFERENTS SIGNAUX
%Avant écoute des signaux audios, on passe de Fe=80000Hz à Fe=8000Hz. Pour cela on
%décime les signaux par un facteur 10.
**************************************************************
% Signal n°k ORIGINAL
% Signal n°k ORIGINAL
sound(x(k,1:10:end),Fe/10);
% Signal n°k après démodulation
sound(xdemod(k,1:10:end),Fe/10);

Contenu du Rapport
Le Rapport doit contenir :
I. Prémière partie

 Les quatre (04) commandes Matlab qui ont permis de compléter le programme ci-
dessus ;
 Toutes les figures illustrant la représentation temporelle et fréquentielles du multiplex
modulé et démodulé ;
 Votre conclusion après écoute des 04 signaux modulés et démodulés.

II. Deuxième partie


 Les commandes Matlab modifiées ;
 Les conclusions ainsi que les figures illustrant la représentation fréquentielle des
phénomènes écoutés.

Vous aimerez peut-être aussi