Vous êtes sur la page 1sur 13

Table de matières

TP1 Analyse spectrale des signaux numériques ....................................................................................... 1


I. Rappel ............................................................................................................................................................... 1
II. Commandes Matlab usuelles ................................................................................................................... 3
III. Travail demandé ............................................................................................................................................. 3
TP2 Convolution et corrélation des signaux numériques ..................................................................... 5
I. Rappel ............................................................................................................................................................... 5
II. Représentation des signaux ..................................................................................................................... 6
TP3 Filtrage des signaux numériques ........................................................................................................... 8
I. Rappel ............................................................................................................................................................... 8
1. Génération des bruits ............................................................................................................................. 8
2. Filtre numérique ...................................................................................................................................... 9
II. Conception du filtre sous Matlab .........................................................................................................11
III. Travail à réaliser………………………………………………………………………………………………..12
TP1 Analyse spectrale des signaux numériques

TP1 Analyse spectrale des signaux numériques

L’objectif de ce TP est de :
• Etudier les signaux échantillonnés.
• Réaliser l’analyse spectrale des signaux échantillonnés.

I. Rappel
1. Représentation du signal échantillonné
Un signal échantillonné constitue en fait un ensemble des prélèvements dans une période du
temps connue Te du signal temporel continu. Physiquement, on peut obtenir un signal
échantillonné à travers un échantillonneur idéal qui peut-être généralement représenter par un
interrupteur (voir la figure).

x(t) xe(t)
Te

Mathématiquement, un signal échantillonné est obtenu suite à une multiplication du signal


analogique par le peigne du Dirac. Il peut-être exprime comme suit :
+ +
xe (t ) = x(t ) Te = x(nTe )    (t − nTe ) =  x(t − nTe )
− −

1|Page
TP1 Analyse spectrale des signaux numériques

2. Analyse spectrale d’un signal échantillonné


Pour effectuer l’analyse spectrale d’un signal, il faut passer du domaine temporel vers le
domaine fréquentiel qui permet une représentation et une étude du signal en termes de
fréquence. Ce passage est assuré par l’application de la transformée du Fourier (TF) dont
l’expression est la suivante :
Expression de la TF continu :
+

 x(t )e
− j 2 ft
X ( f ) = TF ( x(t )) = .t
−

Expression de la TF discrète :
+ +
X e ( f ) = TF ( xe (t )) = TF ( x(t − nTe )) = f e   X ( f − nf e )
− −

+ f
− j 2 n
X e ( f ) =  x(nTe )  e fe

−

En appliquant la transformée du Fourier pour un signal échantillonné, on aura une duplication du


spectre du signal continu à chaque fréquence n*Fe. Le signal résultant Xe(f) est un signal complexe.
X e ( f ) = R e + j I m . Donc, pour analyser le spectre, il faut extraire l’amplitude et la phase.

Spectre d’amplitude : X e ( f ) = R e 2 + I m 2

Im
Spectre de phase :  =
Re
Pour avoir une bonne reconstitution du signal, on doit respecter le théorème de Shannon qui, en
le respectant, on ne rencontre plus le phénomène du recouvrement spatial. Ce dernier une fois
détecté, peut engendrer un problème lors de reconstitution du signal. En effet, la forme d’onde du
signal original sera affectée (déformée).
Théorème de Shannon : La fréquence d’échantillonnage devrait être supérieure ou égale 2 fois
la fréquence maximale du signal : Fe>=2*Fmax

La reconstitution du signal est faite par l’application de la transformée du Fourier inverse est un
filtre anti-repliement.

2|Page
TP1 Analyse spectrale des signaux numériques

II. Commandes Matlab usuelles

Commande Description

plot (x1,x2) Représenter le signal x2 en fonction de x1

stem(x1,x2) Représenter les échantillons du signal x2 en fonction de x1

fft(x) La transformée du Fourier du signal x

fftshift(x) Réarrange une transformée de Fourier X en décalant la composante de


fréquence zéro vers le centre du réseau.

linspace(x) Générer un vecteur espacé linéairement

abs(x) Calculer le module du signal x

phase Calculer la phase du signal x

III. Travail demandé


1. Analyse temporelle
1. Créer et représenter le signal x(t)=A*sin(2*pi*F*t) en fonction du temps avec une
amplitude A=3V et une fréquence F=100Hz, numérisé avec une fréquence
d’échantillonnage de 1 kHz pendant une durée d’acquisition de 200 millisecondes.
Temps = debut : pas : durée
durée − debut
N ech = +1
pas
1
pas = = Te
Fe
2. Modifier et représenter le signal x(t) pour différentes valeurs de fréquence
d’échantillonnage 400Hz, 300Hz, 200Hz, 100Hz et 50Hz, qu’est-ce que vous remarquez ?
3. Modifier la fréquence du signal F=180 Hz, et comparer le signal résultant avec celui
représenté à Te=5 ms et Fe=0.71 ms. Interprétez la taille et la période du signal résultant à
chaque fois.

3|Page
TP1 Analyse spectrale des signaux numériques

2. Analyse fréquentielle
1. Faites l’analyse spectrale par calcul du signal x(t) avec une fréquence F=100Hz et une
fréquence d’échantillonnage Fe=1 kHz.
2. Appliquer la transformée du Fourier Discrète (TFD) du signal x(t) et tracer son spectre X(f)
en fonction des fréquences.
3. Changer la fréquence d’échantillonnage à chaque fois pour les valeurs suivantes (50Hz,
500Hz et 1500Hz) et observer le spectre. Que remarquez-vous ?

4|Page
TP2 Convolution et corrélation des signaux numériques

TP2 Convolution et corrélation des signaux numériques

L’objectif de ce TP est de :
• Savoir la différence entre un signal échantillonné et un signal discret.
• Savoir le calcul de la convolution des signaux discrets.
• Savoir le calcul de la corrélation des signaux discrets.
• Représenter le graphe de convolution et corrélation des signaux discrets.
• Superposition et analyse des signaux discrets.

I. Rappel
1. Différence entre un signal échantillonné et discret
On peut retrouver une autre représentation du signal xe(t) qui a pour expression temporelle :
+ +
xe (t ) = x(nTe )    (t − nTe ) =  x(t − nTe )
− −

En effet, un signal discret est un signal échantillonné dont l’expression dépend du nombre des
échantillons contrairement a celui échantillonné qui possède une écriture en fonction du
temps. Donc, pour tout signal xe(t) on associe un signal x(k) qui n’est que sa représentation
discrète. Il est exprimé comme suit :
k =+
x( k ) =  x(k ). (n − k )
k =−

Soit x(k ) =  x( N ), x( N + 1),..., x( M ) , la taille du signal x(k) est obtenue selon cette formule :

L = M − N + 1 étant N le numéro d’échantillon du début et M celui de fin.

-n.Te ... -1.Te 0.Te 1.Te ... n.Te -n ... -1 0 1 ... n

Signal discret
Signal échantillonné

5|Page
TP2 Convolution et corrélation des signaux numériques

2. Convolution
Le produit de convolution de deux signaux discrets est déterminé à partir de cette formule :
y(n) = x1 (n)  x2 (n) =  x1 (k ) x2 (n − k )
k

Ou k représente la plage d’échantillons de x1.


La longueur du signal y(n) résultant de la convolution est : Ly = Lx1 + Lx2 −1

3. Corrélation
La corrélation est une mesure du degré de similitude entre deux signaux. Sa formule est issue
du produit de convolution. On peut distinguer ainsi deux natures de corrélation :
intercorrélation et autocorrélation. Cette dernière représente en fait la mesure du degré de
ressemblance entre le signal et lui-même (convolution du signal avec lui-même).
Superposition des signaux
Les signaux peuvent être associés ensemble (superposés) selon :
➢ Une addition : x(t ) = x1 (t ) + x2 (t ) )

➢ Une Multiplication : x(t ) = x1 (t )  x2 (t )

➢ Une Convolution : x(t ) = x1 (t )  x2 (t )

II. Représentation des signaux


Commandes Matlab à utiliser :
Commande Description
xcorr(x) : utiliser pour calculer la fonction d’autocorrélation
xcorr(x,y) : utiliser pour calculer la fonction d’intercorrélation
conv(x,y) : utiliser pour calculer le produit de convolution
fft(x) : utiliser pour la transformée de Fourier de x

Travail demandé
Soit les deux signaux x1(t) et x2(t) décrites comme suit :
x1 (t ) = A1.sin(2 Ft
1 )

x2 (t ) = A2 .cos(2 F2t )
On considère les amplitudes suivantes : A1=2V et A2=5V et les fréquences F1=1kHz et F2=F1.
1. Générer et tracer les deux signaux pour une période de temps T=1s et une période
d’échantillonnage Te=10 ms.

6|Page
TP2 Convolution et corrélation des signaux numériques

2. Calculer théoriquement le produit de convolution des deux signaux x1 et x2 puis représenter-


le en Matlab.
3. Calculer et observer la fonction d’autocorrélation du signal x1.
4. Maintenant, créer et observer le signal x11(t)=x1(t)+x2(t) et son spectre fréquentiel.
5. Créer et observer le signal x12(t) résultant de la multiplication de x1(t) et x2(t) et son spectre
fréquentiel.
6. Créer et observer le signal x13(t) résultant de la convolution de x1(t) et x2(t) et son spectre
fréquentiel.
7. Changer la fréquence du signal x2 F2=150Hz. Reproduire les questions (4, 5 et 7). Interpréter

7|Page
TP3 Filtrage des signaux numériques

TP3 Filtrage des signaux numériques

L’objectif de ce TP est de :
• Génération des bruits
• Création des signaux bruités
• Analyse spectrale des signaux bruités
• Filtrage numérique

I. Rappel
Il existe deux natures de bruit :
- Les bruits additifs : simple d’être filtrer et éliminer xB (n) = x(n) + B(n) .

- Les bruits convolutifs : difficile d’être analyser et séparer xB (n) = x(n)  B(n) .

On va s’intéresser dans ce TP qu’a l’analyse et le traitement des signaux superposes par un bruit
additif. De ce fait, il existe divers types de ce bruit parmi lesquels on peut citer :
Les bruits aléatoires : sont des échantillons d’un signal créer à travers la commande Matlab "rand".
Les bruits blancs gaussiens : ils possèdent une variation gaussienne. Ils sont générés à travers la
commande Matlab "wgn" ou "awgn".
1. Génération des bruits
▪ La commande "rand" :
t=0:0.01:2; %Génération d'axe du temps
segma=0.1; %écart type de la distribution gaussienne du bruit
b=segma.*rand(size(t)); %Génération d'un signal bruit de même taille que vecteur
temps
plot(t,b); % traçage du signal bruit en fonction du temps
stem(t,b); % traçage du signal bruit discret

▪ La commande "wgn" :
t=0:0.01:2; %Génération d'axe du temps
[m n]=size(t);% Extraction de la taille du vecteur temps
b=wgn(m,n,-20); %Génération d'un signal bruit avec une puissance -20dB
plot(t,b); % traçage du signal bruit en fonction du temps
stem(t,b); % traçage du signal bruit discret

▪ La commande "awgn"

8|Page
TP3 Filtrage des signaux numériques

t=0:0.01:2; %Génération d'axe du temps


F=1; %frequence du signal x(t)
A=2; %Amplitude du signal x(t)
x=sin(2*pi*F*t);% Signal original x(t)
b=awgn(x,2,-20); %Génération d'un signal bruit avec une puissance -20dB et SNR=2
subplot(133)
plot(t,b); % traçage du signal bruit en fonction du temps
stem(t,b); % traçage du signal bruit discret
Traçage des signaux bruits
Représentation en continu

Représentation en discret

2. Filtre numérique
Pour tout signal d’entrée x(n), le signal de sortie y(n) est issu d’un produit de convolution de x(n)
M
par h(n) (fonction du transfert du filtre) : y(n) = x(n)  h(n) =  x(k )  h(n − k )
k =0

x(n) h(n) y(n)

9|Page
TP3 Filtrage des signaux numériques

Représentation en transformée en Z
Tout signal discret possède une représentation impulsionnelle :
+
x(n) =  x(k )  (n − k )
−

Exemple :
Soit x(n) le signal suivant :
1.5

1 1

0.5

0 0
0 1 2 3 4 5
x(n) = 1. (n) + 0. ( n − 1) + 1.5. ( n − 2) + 0. ( n − 3) + 1. ( n − 4) + 0.5. ( n − 5)

Le retard est exprimé dans domaine de transformée en z par z-k d’où, on peut retirer cette
expression :
X ( z ) = x0 + x1.z −1 + x2 .z −2 + x3 .z −3 + x4 .z −4 + x5 .z −5
X ( z ) = 1.z −0 + 0.z −1 + 1.5.z −2 + 0.z −3 + 1.z −4 + 0.5.z −5
Remarque
La transformée en z n’est applicable que pour les signaux causaux (ne possèdent plus des
représentatrices pour n<0)

X(z) H(z) Y(z)

En appliquant la transformée en z, on obtient l’expression de la sortie suivante : Y ( z ) = X ( z )  H ( z )

Y ( z ) b0 + b1.z −1 + b2 .z −2 ... + bm .z − m
ainsi H ( z ) = =
X ( z ) a1.z −1 + a2 .z −2 + ... + a p .z − p

D’où on peut interpréter la forme générale de la sortie du filtre numérique :


y(n) = a1. y(n −1) + a2 . y(n − 2) + ... + a p . y(n − p) + b0 .x(n) + b1.x(n −1) + b2 .x(n − 2) + ... + bm.x(n − m)

On peut distinguer deux grandes familles du filtre numérique :

10 | P a g e
TP3 Filtrage des signaux numériques

➢ Filtre à Réponse Impulsionnelle Finie (RIF) : est un filtre dont la sortie dépend seulement des
Y ( z)
échantillons des entrées précédentes : H ( z ) = = b0 + b1.z −1 + b2 .z −2 ... + bm .z − m
X ( z)
➢ Filtre à Réponse Impulsionnelle Infinie (RII) : est un filtre dont la sortie dépend à la fois des
Y ( z ) b0 + b1.z −1 + b2 .z −2 ... + bm .z − m
échantillons des entrées et sorties précédentes : H ( z ) = =
X ( z ) a1.z −1 + a2 .z −2 + ... + a p .z − p

II. Conception du filtre sous Matlab


Les commandes usuelles sont :
Commande Description
[b a]=butter(ordre,wn,type) Génération des coefficients d’un filtre RII Butterworth
[b a]=cheby1(ordre,wn,type) Génération des coefficients d’un filtre RII Chebyshev
filter(b,a,x) Filtre le signal selon les coefficients du filtre
freqz(b,a) Obtention du gabarit du filtre H et fréquences associées à la fréquence f

b=fir1(ordre,wn,type) Génération des coefficients d’un filtre RIF

Exemple des filtres

➢ Filtre RIF
b=fir1(1,0.02,'low'); %filtre RIF d'ordre 1
[H,f]=freqz(b);
figure(2)
subplot(121)
semilogx(f,20*log10(abs(H))) % Tracé du Gabarit du filtre
grid
title('gabarit du filtre de RIF 1er ordre passe bas')
xlabel('fréquence')
ylabel('Gain en dB')

➢ Filtre RII
[b a]=butter(1,0.02,'low'); %filtre RIF d'ordre 1
[H,f]=freqz(b,a);
semilogx(f,20*log10(abs(H))) % Tracé du Gabarit du filtre
grid
title('gabarit du filtre de RII 1er ordre passe bas')
xlabel('fréquence')
ylabel('Gain en dB')

11 | P a g e
TP3 Filtrage des signaux numériques

III. Travail à réaliser


1. Créer un signal sinusoïdal x(n) de fréquence F=100Hz dont les échantillons sont prélevés dans
une période d’échantillonnage Te=10ms.
2. Faire l’analyse spectrale de ce signal.
3. Générer et représenter 3 signaux de bruit b1, b2 et b3 par les trois commandes (rand, wgn et
awgn) avec un écart type segma=0.3.
4. Faire l’analyse spectrale de ces signaux
5. Superposer les signaux générés avec le signal x(n) et tracer les signaux x1b, x2b et x3b bruités.
6. Faire l’analyse spectrale des signaux générés
7. Concevez un filtre RIF du 1er ordre passe bas de fréquence de coupure initiale Fc=0.01.
8. Filtrer les signaux bruités par ce filtre.
9. Changer à chaque fois la fréquence de coupure. Que remarquez-vous ?
10. Changer maintenant l’ordre et interpréter.
11. Changer le type et conclure.
12. Refaire la même chose avec un filtre RII type Butterworth puis Chebyshev et tirer une
conclusion finale.
13. Changer la valeur de segma et interpréter l’influence de ce changement au niveau du filtrage
du signal.
14. Tirer une conclusion finale

12 | P a g e

Vous aimerez peut-être aussi