Vous êtes sur la page 1sur 5

Université de Carthage, Institut National des Sciences Appliquées et de

Technologie
Filière : RT-3, Matière : Transmissions Numériques
TP0 : Représentations temporelle et fréquentielle de signaux numériques
Ce TP est proposé avec des solutions afin de savoir comment répondre aux TPs
suivants.
Pour le compte rendu essayer de reprendre les solutions et ajouter les interprétations
que voyez nécessaires.
Sous Matlab les signaux numériques en représentation temporelles apparaîtront sous
forme d'un vecteur ligne ou colonne. Nous proposons une lite non exhaustive de
quelques signaux:
- L'impulsion unité définie par la suite: δ (n )={1 si n=0
0 sinon
- L'échelon unité définie par la suite : u (n )= {1 sin≥0
0 sinon
- La fonction signe définie par la suite : signe (n )=2 u (n )−1= {+1 si n≥0
−1 sinon
- La fonction porte définie par la suite : rect N (n ) =u ( n )−u (n−N )= {1 si≤n≤N −1
0 sinon
- La fonction sinusoïdale éternelle : x (n )=x 0 sin (2 πf 0 n+ϕ )
- La fonction exponentielle éternelle : x (n )=x 0 exp (2 πf 0 n )
- La fonction sinusoïdale tronquée : x (n )=x 0 sin (2 πf 0 n+ϕ )rect N (n )
- La fonction exponentielle tronquée : x (n )=x 0 exp (2 πf 0 n )rect N (n )
Un signal à temps discret sera désigné, suivant le contexte, soit par l'ensemble
{ x(n) } de ces valeurs soit par son nom générique x(n).
Représentation temporelle de signaux de base
Pour le compte rendu, écrire un script Matlab chargé d'engendrer et de tracer les
signaux de base ci-dessus et la fonction triangle.
Solution1:
%*****************************************************
%FCTBASE.m; représentation temporelle de fonction de base
N = 20; temps = [0:N-1];
Impuls = eye(1,N);% impulsion unite
Echelu = ones(1,N);% Echelon unite
f0 = 0.1;Fsin=sin(2*pi*f0*temps); %Sinusoide
P = 3; tps2 = (-N:N); % Porte de 2P+1 points
porteP= [zeros(1,N-P) ones(1,2*P+1) zeros(1,N-P)];
figure(1)
subplot(221); plot(temps, Impuls,'x'); grid
subplot(222); plot(temps, Echelu,'x'); grid
subplot(223); plot(temps, Fsin,'x'); grid
subplot(224); plot(tps2,porteP,'x'); grid
%***************************************************
% Ajouter des titres des axes et les légendes
Représentation fréquentielle

INSAT 2020/2021 Page 1/5


Énoncer les expressions de la TFD et son inverse et ses propriétés pour échantillons
N d’un signal x (x(0), …, x(N-1)) :
- linéarité TFD(a x(n) +b y(n))
- Translation en temps: TFD (x((n-p) mod N))
- Renversement temporel TFD (x ((-n) mod N))
- Conjugaison x*(n)
- Suite réelle TFD de x(n) réelle
- Convolution circulaire
- Formule de Parseval: somme des carrées des modules des échantillons temporels =
1/N somme des carrées des modules des échantillons fréquentiels
Convolution circulaire
Soit la suite x(n) = n pour n = 0, 1, 2, 3 et x(n) = 0 sinon
1. Donner l'expression de la convolution de x(n) par elle – même
2. Justifier le résultat donné par le programme qui suit, où ifft est la fonction qui
fournit la TFD inverse rapide.
%***************************************************
% CONVCIRCO.m
x = (0:63);
xs = fft(x); xxs = xs.*xs;
figure(2)
plot(real(ifft(xxs))); grid
%****************************************************
Observation d'une sinusoïde complexe
Considérons la suite x(n) obtenue par échantillonnage de l'exponentielle complexe
exp(2 j pi F₀ t) à la cadence Fs = 1/T. En posant f₀ = F₀ /Fs que l'on suppose < 1, on
a x(n) = exp (2 j pi f₀ n )
1. Déterminer l'expression de la TFTD de la suite suite {x(n) = exp (2 j pi f₀ n )}, où
f₀ = 7/32 et n dans {0, …, 31}.
2. En déduire la valeur de la TFDT aux points de fréquence f = k/32, avec k dans {0,
…,31}
3. En utilisant la commande fft, afficher le module de la TFD de {x(n)}
4. Soit à présent f0 = 0.2, Afficher le module de la TFD de {x(n)}. Comment
expliquez vous le résultat obtenu
Solution
N −1
sin( N pi(f −f 0))
1. X ( f )= ∑ exp(2 j pi f 0 n)exp(−2 j pi f n)= exp(− j pi(N−1)( f 0−f ))
n=0 sin( pi(f −f 0 ))
Le fait de ne disposer que d'une séquence de durée finie fait apparaître des
ondulations 'rapport des deux sinus) dans la TFDT du signal. Ceci est obtenu après
l'exécution du programme suivant:
%****************************************
% Observation d'une sinusoïde complexe
%***************************************
N = 32; % Nombre de points du signal
f0 = 7/32; %Frequence sinusoïde
npts = 1024; % Nombre de points de fréquence
freqmin = -0.5; freqmax = 0.5;

INSAT 2020/2021 Page 2/5


pas = (freqmax - freqmin)/npts;
f = (freqmin: pas : freqmax);
freqM = f-f0;
% calcul direct de la TFDT
fctM = sin(N*freqM*pi) ./ sin(freqM*pi);
figure(3)
plot(f, abs(fctM)); grid
hold on; plot([f0 f0], [0 35]), hold off
%****************************************
2. Comme la TFD correspond à l'échantillonnage de TFDT aux points de fréquence
k/N, elle est en général constituée de valeurs différentes de zéro, sauf si f₀ est
exactement un multiple de 1/N, ce qui est le cas pour f₀ = 7/32. Les valeurs de f sont
données par 0, 1/32, …, 31/32. On obtient alors X(k) = 32 si k = 7/32 et 0 si non.
Taper:
%*****************************************************
%2. Deduction de la valeur de la TFDT aux points de
fréquence f = k/32, avec k dans {0, …,31}
N = 32; f0 = 7/32;
L = 32; freq = (0: L-1)/L;
xt = exp(2*j*pi*f0*(0:N-1));
xf = fft(xt,L); %calcul par TFD
figure(4)
plot(freq, abs(xf),'x');
% on superpose la TFTD calculee par FFT
L = 512; freq = (0:L-1)/L; xf = fft(xt, L);
hold on ; plot(freq, abs(xf)); grid
hold off
Interpréter le résultat obtenu
Solution
On observe que l'on a une raie (en réalité il s'agit de la seule valeur non nulle de la
suite X(k) d'amplitude 32 à la fréquence 7/32, et un spectre nul pour tous les autres
points de fréquence. Ce résultat, qui parait en accord avec ce que l'ont est en droit
d'attendre pour le spectre d'une exponentielle complexe de durée infinie qui ne
comporte qu'une raie, est un peu exceptionnel.
3. f₀ = 0.2. On voit sur la figure obtenu pour f₀ = 0.2 dans le programme précédent,
que le résultat est bien différent d'une simple raie.
Modulation d'amplitude et échantillonnage
Modulation d'amplitude double bande avec porteuse DBAP
On considère un message m(t) réel continu, de bande B, c'est à dire sa transformée de
Fourier M(f) est nulle pour abs(f) > B. Soit une fréquence F0 > B (en radio diffusion
on rencontre des valeurs de F0/B de l'ordre de 1000). On appelle modulation
d'amplitude DBAP l'opération qui engendre x(t) = (1+k m(t)) cos(2 pi F0 t)
F0 la porteuse, k l'indice de modulation une constante positive de façon que abs (k
m(t)) < 1.
1. Donner l'expression de X(f), la TF de x(t), en fonction de k, M(f) et F₀ . Quelle
largeur de X(f) autour de F₀ .

INSAT 2020/2021 Page 3/5


2. Pour effectuer une analyse de fréquence de x(t) on échantillonne ce dernier à Fs =
500Khz. On suppose que F0 = 50Khz et que m(t) = cos(2 pi F1 t)+1.8 cos(2 pi F2 t)
+0.9 cos(2 pi F3 t), où F1 = 2310Hz, F2 = 3750Hz, et F3 = 4960Hz. On prendra k =
0.2. Écrire un programme qui engendre x(t) sur une durée 2ms. Vérifier sur le
chronogramme de m(t) l'absence de sur-modulation.
3. Donner le nombre d'échantillons à traiter pour pouvoir distinguer les fréquences
présentes.
4. Qu'elle longueur de fft faut il prendre si on veut lire le spectre avec une précision
de 100Hz.
5. Ecrire un programme qui trace le spectre du signal modulé
Solution
1. on a x(t) = cos(2 pi F0 t) + k m(t) cos(2 pi F0 t). La TF de x(t) est :
2 X ( f )=δ(f −F 0)+δ (f +F 0)+kM (f −f 0)+kM (f +F 0)
Dans tous les cas, le spectre de x(t) contient deux raies aux fréquences +/-F0 aisi que
le spectre de m(t) translaté à +/-F0. Si m(t) est de largeur B, ce qui signifie que son
spectre est non nul entre -B et +B, le spectre de x(t) occupe une bande 2B autour de
F0. Comme le spectre de m(t) possède la symetrie hermitienne (signal réel), le spectre
X(f) a cette même propriété autour de F0. On peut donc limiter la représentation de
X(f) aux fréquences situées au-delà de F0.
2. Le spectre contient 7 raies dans les fréquences positives :
* 50 Khz , la porteuse
* 47 870 Hz et 52130Hz provenant de la composante à 2130 Hz
* 46250 Hz et 53750 Hz provenant de la composante à 3750 Hz
* 45040 Hz et 54960Hz provenant de la composante à 4960 Hz
3. Le programme suivant permet d'obtenir les tracés de m(t) et x(t)
%Spectre de la Modulation d'amplitude double bande avec
porteuse DBAP
%**************************************************
Fs = 500000; duree = 2/1000; N = Fs *duree;
td = (0:N-1); t = td/Fs; % temps pour simulation
F0 = 50000; f0r = F0/Fs; % frequence de modulation
Fm =[2130; 3750; 4960]; fmr = Fm/Fs; Am = [1 1.8 0.9];
k = 0.3; ac =1+k*Am*cos(2*pi*fmr*td); xt = ac .*
cos(2*pi*f0r*td);
figure(5)
subplot(311); plot(t,ac); grid
subplot(312); plot(t, xt); grid
L = 8192; freq = [0: L-1]/L*Fs; % Freq. Vraie
subplot(313); semilogy(freq,abs(fft(xt,L))); grid
axis([0 length(freq) 10 500]);
set(gca,'xlim',[40000 60000])
L'absence de surmodulation est caractérisée par le fait que (1+k m(t)) ne devient
jamais négatif. On note alors que (1+k m(t)) est l'enveloppe supérieure de x(t). ce
résultat est essentiel en pratique, car il permet d'effectuer l'opération de démodulation
de façon extrêmement simple: on utilise un redresseur double alternance suivi d'un

INSAT 2020/2021 Page 4/5


filtre RC pour détecter l'enveloppe. Si B << 1/(RC) <<F0 le signal en sortie va suivre
l'enveloppe.
4. Ici les deux raies les plus proches sont à un peu plus de 1000Hz, soit, en fréquence
réduite, un écart de 1000/500000. Il faut donc, pour les distinguer par TFDT, prendre
un nombre de points assez grand devant 500. Pour pouvoir les séparer nous prenons
N = 1000 ce qui correspond à 2ms.
5. En fréquence réduite, 100Hz correspond à 1/5000. Il faut donc prendre une taille
de FFT supérieure à 5000.

INSAT 2020/2021 Page 5/5

Vous aimerez peut-être aussi