Вы находитесь на странице: 1из 16

TRAVAUX PRATIQUES

DE TRAITEMENT
DU SIGNAL

2016/2017

LST IIEA 2016/2017


TP 1 Echantillonnage
0.0 Objectifs
Lobjectif de ce TP est la synthse de plusieurs signaux et le calcule de leur spectre. Un
intrt particulier sera port aux diffrentes fentres de troncature rectangulaire, hanning,
Blackman et hamming.
1 Gnration de signaux
Soient les signaux suivants :
x1 = sin(2 f1 t) , x2= sin(2 f2 t), x3= sin(2 f3 t) et x=x1+x2+x3;

fixez les diffrentes frquences f1, f2, f3 entre 10 et 500 Hz;

calculer theoriquement les Transformes de Fourier des signaux x1, x2, x3, et x;

proposez une frquence dchantillonnage respectant le thorme de Shanon pour


les signaux x1, x2, x3, et x;

gnrez par Matlab les diffrents signaux x, x1, x2, x3, et x; et tracez-les sur une
mme figure sur P chantillons quivalent au moins 5 priodes du signal ayant
la plus grande priode. Utiliser les fonctions plot et stem.

Calculer theoriquement les Transformes de Fourier temps discrt des signaux


x1, x2, x3, et x;

Calculer on utilisant Matlab (fft, shiftfft), la Transforme de Fourier de chaque


signal et en tracer une reprsentation sur la mme figure.

2 limitation des dures de signaux


Soient les fentres suivantes :
La fentre de Hanning est dfinie par :
Wh (t)= .5*(1-cos(2*pi*t))
Gnrer une fentre de Hanning de longueur P chantillons et de valeur max =1, et afficher
son allure temporelle.

Limitez la dure de signaux gnrs plus haut 1- par la fentre de hanning et tracezles.

Traitement du Signal

LST IIEA 2016/2017

La fentre de Blackman est dfinie par :


Wb(t) = (.42-.5*cos(2*pi*t)+.08*cos(4*pi*t) ;

Gnrer une fentre de Blackman de longueur P chantillons et de valeur max =1, et


afficher son allure temporelle.

Limitez la dure de signaux gnrs plus haut 1- par la fentre de Blackman et


tracez-les.

La fentre de Hamming est dfinie par :


Whm (t)= .54 +0,46 cos(2*pi*t -)
Gnrer une fentre de Hamming de longueur P chantillons et de valeur max =1, et afficher
son allure temporelle.

Limitez la dure de signaux gnrs plus haut 1- par la fentre de hamming et tracezles.

Calculer la Transforme de Fourier de chaque signal et en tracer une


reprsentation sur la mme figure.

Construire un signal y qui se compose de x 1 pour ces premiers chantillons et se


termine par les chantillons de x2.

Calculer la Transforme de Fourier du signal y et tracer sa reprsentation puis


comparer avec la Transforme de x.

Calculer la transforme de Fourier discrte (TFD) de la fentre sur N = 1000


points frquentiels.

Afficher le module de la transforme de Fourier en linaire puis en dB.

Quelle est la largeur du lobe principal ?

Quel est le rapport en dB entre le max du lobe principal et le max du lobe


secondaire ?

Traitement du Signal

LST IIEA 2016/2017

Autocorrelation et DSP d'un signal alatoire

Crer un bruit blanc sur 200 points (utiliser Randn) et le visualiser.

Calculer et visualiser sa fonction d'auto-corrlation temporelle.

En dduire sa DSP et la visualiser; Commentaires.

Traitement du Signal

LST IIEA 2016/2017


TP 2 La Transforme de Fourier Discrte
0.0 Objectifs
Lobjectif de ce TP est ltude des performances, par simulation numrique, de quelques
estimateurs spectraux classiques mono-dimensionnel par le calcul lutilisation de la
Transforme de Fourier Discrte et Rapide.
La comparaison sera effectue sur des signaux synthtiques dont on matrise lamplitude,
la phase et la frquence de rsonance. On tudiera les avantages et les inconvnients
rsultants lutilisation de quelques fentres : Rectangulaire, Hamming et Blackman.
1 - Spectre dun signal sinusodal
1. Construire et visualiser un signal sinusodal sur 1024 points :
s(t) = ACos(2f0t)

(1)

o A = 1, f0 = 150 Hz et la frquence dchantillonnage Fe = 1/Te = 20000.


2. Calculer la transforme de Fourier FFT S(f) de s(t) sur 20000 points.
3. En dduire la densit spectrale de puissance |S(f)|2 et la reprsenter graphiquement sur
512 points en deux modes : linaire et logarithmique.
2 - Spectre dun bruit blanc
1. Crer et visualiser un bruit blanc b(t) de moyenne nulle et de variance

2 sur 1024

points.
2. Calculer la Transforme de Fourier FFT B(f) sur 1024 points.
3. En dduire la densit spectrale de puissance |B(f)|2 et la reprsenter graphiquement sur
512 points en deux modes : linaire et logarithmique.
3 - Spectre dun signal sinusodal noy dans un bruit blanc
1. Construire et visualiser un signal y(t) qui soit la somme du deux signaux s(t) (1) et le
bruit blanc b(t) sur 1024 points.

2. Calculer la Transforme de Fourier FFT Y(f) de y(t) sur 20000 points.


3. En dduire la densit spectrale de puissance |Y(f)|2 et la reprsenter graphiquement sur
512 points en deux modes : linaire et logarithmique.

Traitement du Signal

LST IIEA 2016/2017


Remarque
Lors de lanalyse spectrale dun signal de longue dure, nous navons accs, en pratique,
qu une portion limite de ce signal. Le spectre obtenu correspond donc au spectre du signal
analyser auquel une fentre a t pralablement multiplie. La figure ci-dessous illustre
cette opration.

Figure 3.1
Exemple

Figure 3.2
Cette opration de limitation de dure du signal ne se voit pas en pratique, surtout lorsquon
utilise une fentre rectangulaire. Et cest le cas des trois premires questions o la limitation
de la dure du signal consistait ne considrer que les chantillons dsirs.
Comme on peut le constater, la fentre f(t) doit tre telle que le spectre Y() puisse tre
considr comme une approximation acceptable de X(), le spectre du signal complet.
Plusieurs tudes ont t effectues pour dterminer la forme optimale de la fentre utiliser.
Les principales caractristiques dune fentre peuvent tre mises en vidence en utilisant, par
exemple, un signal x(t) sinusodal de frquence 0. Comme on le sait, le spectre X() de la

Traitement du Signal

LST IIEA 2016/2017


sinusode nest form que deux impulsions de Dirac situes 0; le spectre Y() sera donc
( un facteur prs) F(+0) + F(-0) et nous permettra dvaluer la qualit de la fentre selon
les deux critres (figure 3.3) suivants :
11 - La largeur du lobe central dtermine la rsolution spectrale de la fentre, cest--dire sa
capacit de discriminer deux frquences proches lune de lautre.
2
32 - Lamplitude des lobes latraux dtermine ltalement spectral de la fentre. Un
talement spectral trop grand nuira la dtection dun signal damplitude faible en
prsence dun signal damplitude leve.

Figure 3.3
Des exemples de fentres de troncation sont illustrs par la figure 3.4

Traitement du Signal

LST IIEA 2016/2017

Les commandes triang(n), blackman(n) et hamming(n) produisent directement les fentres


voulues selon n points (en vecteurs colonnes).
4- Etude de leffet de diffrentes fentres
On propose de travailler sur lintervalle illustr par la figure 3.5

Intervalle [ 0 ] reprsent par 1024 points


Intervalle [ 0 T ] reprsent par 16384 points
TRAVAIL EFFECTUER
Au dbut de la sance, deux fentres vous serons dsignes. Vous utiliserez le logiciel
MATLAB pour :

mettre en vidence par une simulation pertinente (1) la supriorit dune fentre sur lautre
en ce qui a trait la rsolution spectrale,
(1)

deux sinusodes de frquences trs proches lune de lautre

mettre en vidence par une simulation pertinente (2) la supriorit dune fentre sur lautre
en ce qui a trait ltalement spectral.
(2)

une sinusode damplitude forte + une sinusode de frquence diffrente et


damplitude faible

Traitement du Signal

LST IIEA 2016/2017


Dans le rapport de TP, vous devrez remettre :

des figures illustrant la supriorit dune fentre sur lautre en ce qui a trait la
rsolution spectrale,

des figures illustrant la supriorit dune fentre sur lautre en ce qui a trait ltalement
spectral,

le listage comment des commandes MATLAB utilises.

Traitement du Signal

LST IIEA 2016/2017


TP 4 Filtrage Numrique
0.0 Objectifs
Lobjectif de ce TP est dapprendre comment implmenter des filtres FIR sous Matlab et
dtudier la rponse de ces filtres face diffrentes entres.
De plus, les expriences de ce TP, vous permettront de comprendre comment dfinir un
algorithme de filtrage numrique. Enfin, on va introduire des exemples concrets pour
montrer comment un filtre ragit diffrentes composantes de frquence en entre.
1. Introduction
Nous allons dfinir un filtre comme un systme en temps discret qui convertit un signal
dentre x[n] en un signal de sortie y[n] laide de moyennes de la somme pondre
M

y[n] =

k 0

x[n-k] - a l y(n-l)
l 1

(4.1)

Lquation (4.1) donne une rgle pour calculer la n-ime valeur de la squence de sortie
partir de certaines valeurs de la squence dentre. Les coefficients du filtre {b k) et (al) sont
des constantes qui dfinissent le comportement du filtre. Par exemple, considrons le
systme pour lequel les valeurs de sortie sont donnes par :
y[n] = 13 x[n] + 13 x[n-1] + 13 x[n-2]

(4.2)

= 13 x[n] x[n -1] x[n - 2]


Cette quation nonce que la n-ime valeur de la squence de sortie est une moyenne de la
n-ime valeur de la squence dentre x[n] et des deux valeurs prcdentes, x[n -1] et
x[n 2]. Pour cet exemple, les b k sont : b0 = 1/3, b1 =1/3 et b2 =1/3.
Matlab a une fonction du nom de filter() pour excuter lopration dans (4.1).
nn = 0 :99;

% <-- indices de temps

xx = cos (0.08* pi*nn) ;

% <-- signal dntre

bb = [1/3 1/3 1/3 ] ;

% <-- coefficients du filtre

aa=1;

yy = filter ( bb,aa, xx ) ;

Traitement du Signal

% <-- calcule la sortie

10

LST IIEA 2016/2017


2. Filtres Rponse Impulsionnelle Fini FIR
2.1 Rponse frquentielle
La sortie ou rponse dun filtre pour une entre sinusodale complexe, e j n, dpend de la
frquence . Souvent, un filtre se dcrit simplement par la manire dont il affecte diffrentes
frquences. Ceci est communment appel la rponse frquentielle. Par exemple, la rponse
frquentielle dun filtre ( 2 points) y[n] =1/2x[n] x[n -1] peut tre trouve

en

utilisant une exponentielle gnrale complexe comme entre et en observant la sortie ou


rponse.
x [n] = A e j n
1
1
y [n] = 2 A e j n + + 2 A e j (n -1)

(4.3)
+

1
= A e j n + 2 {1 + e - j}

(4.4)

(4.5)

Dans (4.4), il y a deux termes, lentre originale et un terme qui est une fonction de .
Ce second terme est la rponse frquentielle et est communment note H (e j ).
1
H (e j ) = 2 {1 + e - j}

( 4.6 )

Une fois que le rponse frquentielle H ( e j ) est dtermine comme une fonction de ,
leffet du filtre sur nimporte quelle exponentielle complexe pourrait tre dtermin en
valuant H (e j ) la frquence correspondante. Le rsultat sera un nombre complexe dont
la phase dcrit la phase de transition de la sinusode complexe et dont lamplitude dcrit le
gain appliqu la sinusode complexe.
La rponse frquentielle (en gnral) dun systme FIR linaire et invariant en
temps est :
M

H (e

) = bk e - jk
k 0

(4.7)

Matlab a une fonction pour calculer la rponse frquentielle dun systme LTI et discret en
temps. Elle sappelle freqz ( ). Les lignes de commande suivantes de Matlab montrent

Traitement du Signal

11

LST IIEA 2016/2017


comment utiliser freqz pour calculer et imprimer lamplitude (en valeur absolue) de la
rponse frquentielle dun systme (de

2 points)

comme une fonction de

dans

lintervalle - :
bb = [ 1, -1] ;

%<-- coefficients du filtre

ww = -pi : ( pi/100) : pi ;
h = freqz ( bb, 1, ww ) ;
plot (ww, abs (H) )
Nous utiliserons toujours le H majuscule pour la rponse frquencielle. Pour les filtres FIR
de la forme de (4.1), le second argument de freqz doit toujours tre gal 1.
2.2 Laboratoire : filtres FIR
Dans les sections suivantes, nous allons tudier la manire dont un filtre affecte une entre
sinusodale, et nous commencerons comprendre la performance du filtre en tant que
fonction de la frquence dentre. Nous verrons que :
1.

Les filtres de la forme de lquation 4.1 peuvent modifier lamplitude et la

phase dune courbe en cosinus, mais ils ne modifient pas les frquences.
2.

Pour une somme de courbes en cosinus, le systme modifie chaque composante

indpendamment.
3.

Les filtres peuvent enlever compltement une ou plusieurs composantes de la

somme de courbes en cosinus.


2.2.1 Filtrage de courbes en cosinus
Nous nous intresserons au filtrage de sinusodes en temps discret de la forme :
x[n] = A cos (n + ) o

n = 0,1, 2, , L 1

La frquence en temps discret pour des courbes en cosinus en temps discret,

(4.8)

, satisfait

toujours 0 .
Si la sinusode en temps discret est gnre en chantillonnant une courbe en cosinus
continue en temps, la frquence en temps discret est = Ts = 2. f / fs,

Traitement du Signal

12

LST IIEA 2016/2017


2.2.2. Filtre du premier ordre
Gnrer 50 chantillons dune courbe en cosinus (en temps discret) avec A = 7, = /3, et
= 0.125. Stocker ce signal dans le vecteur xx, comme cela il pourra aussi tre utilis
dans les parties suivantes. Maintenant utilisez firfilt ( ) pour implmenter le filtre suivant
avec le signal xx comme entre :
y[n] = 5 x[n] 5 x [n-1]

(4.9)

Ceci est communment appel fisrt-difference filter, mais avec un gain de 5. Sous Matlab
vous devez dfinir le vecteur bb ncessaire dans firfilt.

1.

Noter que y[n] et x[n] ne sont pas de la mme longueur. Quel est longueur du

signal filtr, et pourquoi est-il de cette longueur? (Si vous avez besoin dune indication,
referez vous la section (4.1)

2.

Tracez les 50 premiers chantillons des deux courbes x[n] et y[n] sur la mme

figure en utilisant subplot. Utilisez la fonction stem pour un trac du signal (en temps
discret), mais tiquetez laxe des x pour rester dans lintervalle 0 < n < 49.

3.

Vrifiez lamplitude et la phase de x[n] directement partir de son trac dans le

domaine temporel.

4.

A partir du trac, observez que, lexception du premier chantillon y[0], la

squence y[n] semble tre une courbe en cosinus gradue et shifted de la mme frquence
que lentre. Expliquez pourquoi le premier chantillon est diffrent des autres.

5.

Dterminez la frquence, lamplitude et la phase de y[n] directement partir du

trac. Ignorez le premier point de sortie, y[0].

6.

Caractrisez la performance du filtre lentre frquentielle en calculant

lamplitude et la phase relative, i.e., le ratio de lamplitude de sortie par rapport lamplitude
dentre et la diffrence des phases dentre et de sortie.

7.

Drivez lexpression mathmatique pour la sortie lorsque le signal dentre est

une exponentielle complexe x[n] =

e jn. A partir

de cette formule, dterminez comment

lamplitude et la phase devraient changer pour x[n], qui a une frquence de = 0.125.

Traitement du Signal

13

LST IIEA 2016/2017


2.2.3 Linarit du filtre
1. Maintenant multipliez le vecteur xx de la section 2.2.2 par 2 pour obtenir xa, xa
=2* xx. Gnrez le signal ya en filtrant xa avec le filtre du premier ordre donn
par lquation 4.3.b. Rptez les mesures relatives damplitude et de phase
dcrites dans la section 2.2.2.
2. Gnrez un nouveau vecteur dentre xb correspondant au signal temps discret
xb[n] = 8 cos (0.25n) et ensuite filtrez le avec loprateur du premier ordre pour
obtenir yb[n]. Maintenant, rptez les mesures relatives damplitude et de phase
comme prcdemment. Dans ce cas la mesure de la phase pourrait tre
lgrement biaise car il y a seulement peu dchantillons par priode. Dcrire la
manire dont lamplitude, la phase et la frquence de la sortie yb changent
compares lentre.
3. Crez un autre signal dentre xc qui est la somme de xa et xb. Faites passer xc travers
le filtre pour obtenir yc. Faire le trac de yc. Comparez yc au trac de ya + yb. Sont-ils
gaux? Expliquez toute diffrence que vous observerez.
2.2.4 Linvariance en temps du filtre
Dcaler en temps le vecteur dentre xx par 3 units temps pour obtenir la squence :
xs[n] = 7 cos (0.125 (n 3) + /3 )

pour n = 0, 1, 2, 3,

puis le filtrer xs[n] en utilisant loprateur du premier ordre pour obtenir ys[n]. Comparez ys
yy, la sortie quand lentre est xx. Trouvez un dcalage de yy (en nombre dchantillons)
afin quil saligne parfaitement ys.

Traitement du Signal

14

LST IIEA 2016/2017


TP 5 Synthse d'un Filtre Numrique RIF
0.0 Objectifs
L'objet de ce TP est la synthse d'un filtre R.I.F phase linaire par le calcul des
coefficients du filtre satisfaisant les conditions imposes par un gabarit. Ces coefficients
seront obtenus par la technique du dveloppement en sries de Fourrier.
Dans la dernire partie de ce TP on tudiera les avantages et les inconvnients
rsultants de quelques fentres Rectangulaire, Hanning, Blackman...
1 Thorie
On dsire synthtiser un filtre numrique hn rponse impulsionnelle finie. Pour cela, on
spcifie H(f), rponse frquentielle du filtre. hn

tant un filtre numrique, H(f)

ncessairement priodique et de priode 1. Ce problme admet donc toujours une rponse


qui est prendre pour rponse impulsionnelle h(n) la transforme de Fourier inverse de H(f),
soit :
1/ 2

hn

H ( f )e

2 jfn

1 / 2

La difficult provient de ce que, en gnral, la rponse impulsionnelle ainsi obtenue


comprend une infinit d'chantillons non nuls et n'est donc pas finie. On reformule alors le
problme en cherchant le filtre de rponse impulsionnelle finie h(n) dont le support est dfini
par n 1,2 N-1 et dont la rponse frquentielle est proche de H(f) en un sens dfinir.
2- Mthode
Soit Hd(f) la transforme de Fourier du filtre rponse impulsionnelle finie h(n);
n 1,2 N-1. Hd(f) est priodique et de priode 1 et il a t montr en cours que la
transforme de Fourier discrte X(k) de la squence h(n) chantillonne Hd(f) aux frquences fk
= k=N, soit X(k) = Hd(k=N) : (2)
L'ide consiste donc dfinir h(n) comme la transforme de Fourier inverse discrte de
H(k=N); k 1,2 N-1. De cette manire, Hd(k) et H(f) concideront aux frquences
f = k=N, mais seront en gnral diffrentes aux autres frquences (voir illustration cidessous). La procdure comprend donc les tapes suivantes :
1. choix de la longueur N du support de la rponse impulsionnelle ;
2. dtermination des coefficients X(k) = H(k=N); k 1,2 N-1 ;

Traitement du Signal

15

LST IIEA 2016/2017


3. calcul de h(n); n 1,2 N-1 par transforme de Fourier inverse discrte :
1
hn
N

n 1

X ( k )e

2 jkn / N

k 0

3 - Travail effectuer
On dsire effectuer la synthse d'un filtre passe-bas la phase linaire dont le gabarit
est donne par:
1-1 < H(f)< 1+1

pour f<fp

H(f)< 2

pour fs<f<1/2

O f=F/Fe est la frquence normalise par rapport la frquence d'chantillonnage.

a) Gabarit en dB

b) Gabarit en linaire

Figure 5-1 Gabarit du filtre passes bas dsir


1. Calculer la forme littrale des coefficients hn de la rponse impulsionnelle.

2. N= 200 Fc = 0.15
Calculer et visualiser les N chantillons de cette rponse impulsionnelle. Modifier N
et commenter.
3. N=100; Fc = 0.25
Calculer et visualiser la rponse impulsionnelle ainsi que sa rponse en frquence.
Quelle valeur prend le gain cette frquence Fc.
4. Refaire 1 2 et 3 en utilisant les diffrentes fentres Hanning, Blackman pour limiter la
dure des chantillons du filtre. Citer les avantages et les inconvnients, rsultants de
l'utilisation de la fentre rectangulaire. Se rfrer aux rsultats trouvs au TP 3.

Traitement du Signal

16

Вам также может понравиться