Vous êtes sur la page 1sur 14

TRAITEMENT DU SIGNAL NUMERIQUE

ECHANTILLONNAGE

Copie d'un lve
















Aprs chantillonnage la frquence Khz F
e
32 = , un signal vaut:
|

\
|
=
3
cos ) (

n n x .

Question 1

En supposant que le thorme de lchantillonnage ait t respect, on sait que le signal avant
chantillonnage tait de la forme : ) 2 cos( ) ( t f t x
a A
=
Donc,
|

\
|
= = =
3
cos ) 2 cos( ) ( ) (

n nT f nT x n x
e a e A

Par analogie, on voit que :

3
2

n nT f
e a
=
e
a
nT
f

2
1
3

6
e
a
F
f =

La frquence du signal avant chantillonnage est donc :
6
e
a
F
f =


Question 2

) 2 ( . ) 1 ( . ) ( ) ( + + = n x b n x a n x n y





On cherche a et b tels que y(n)=0. On a 2 inconnus, on va donc devoir poser 2 quations :
Si n=0
) 2 ( . ) 1 ( . ) 0 ( ) 0 ( + + = x b x a x y
|

\
|
+ |

\
|
+ =
3
2
cos
3
cos ) 0 cos( ) 0 (

b a y
2
1
2
1
1 ) 0 (

+ + = b a y
Or, on veut y(n)=0
0 1
2 2
= +
b a

2 = b a (1)

Si n=1
) 1 ( . ) 0 ( . ) 1 ( ) 1 ( + + = x b x a x y
( )
|

\
|
+ + =
3
cos 0 cos )
3
cos( ) 1 (

b a y
2
1
2
1
) 1 ( b a y + + =
0 1 2 = + + b a
1 2 = + b a (2)


Rsolution du systme dquations :

= +
=
1 2
2
b a
b a

=
=
3 3
2
a
b a

=
=
1
2
a
b a

=
+ =
1
2
a
a b

=
=
1
1 2
a
b

=
=
1
1
b
a



Vrifions maintenant que y(n) est bien nul sur une priode du signal x(n) :

) 2 ( . ) 1 ( . ) ( ) ( + + = n x b n x a n x n y
On remplace a et b par les valeurs calcules prcdemment :
) 2 ( ) 1 ( ) ( ) ( + = n x n x n x n y
)
3
) 2 cos(( )
3
) 1 cos(( )
3
cos( ) (

+ = n n n n y
(

\
|
|

\
|
+
|

\
|
|

\
|
+
(

\
|
|

\
|
+
|

\
|
|

\
|

\
|
=
3
2
sin
3
sin
3
2
cos
3
cos
3
sin
3
sin
3
cos
3
cos
3
cos ) (

n n n n n n y
(

\
|
+ |

\
|
|

\
|
+
(

\
|
+ |

\
|
|

\
|
=
3
2
sin
3
sin
3
sin
3
2
cos
3
cos 1
3
cos ) (

n n n y
4 43 4 42 1
43 42 1
0
2
3
2
3
3
sin
0
2
1
2
1
1
3
cos ) (
=
(

+
|

\
|
+
=
(

\
|
=

n n n y

n n y = , 0 ) (

On constate quavec les valeurs a=-1 et b=1, quelque soit la valeur de n, on a bien y(n)=0.
Question 3

Spectre Xa(f) du signal xa(t) :


Avec fa=Fe/6 et Fe=32Khz



Spectre X(f) du signal x(n) :

+
=
=
k
e a e
kF f X F f X ) ( ) ( (cours)



Le spectre du signal numrique est le spectre du signal analogique priodiser en Fe.
Lamplitude de chaque raie correspond lamplitude des raies du spectre X
a
(f) multiplies par
Fe.















Question 4

Le graphe ci-dessous reprsente le signal x(n). La partie en rouge tant une priode du signal
avant chantillonnage.

Ajoutons ce signal 2 chantillons 0 entre chaque chantillon de priode Te.
Les nouveaux chantillons sont reprsents par les points bleus.

On voit bien que le signal na pas chang, car les chantillons ajouts sont 0, et le signal
x(n) avait dj pour valeur 0 ces instants.
Cependant, nous pouvons maintenant considrer une nouvelle priode dchantillonnage Te,
qui est 3 fois plus petite que lancienne priode dchantillonnage.
On a donc : ' * 3
e e
T T =

Et par consquent, la frquence dchantillonnage du signal obtenu est :
e e
F F 3 ' =


Question 5

Comme nous lavons dit la question prcdente, en intercalant 2 chantillons 0 entre
chaque chantillon du signal x(n), on ne modifie pas ce dernier.

Le spectre du signal obtenu (x2(n)) est donc le mme que le signal x(n).
On a donc :

+
=
= =
k
e a e
kF f X F f X f X ) ( ) ( ) (
2


En tenant compte de la nouvelle frquence dchantillonnage Fe :

+
=
= =
k
e a e
F k f X F f X f X ) ' 3 ( ' 3 ) ( ) (
2

-

Questions 6 et 7


partir de x
2
(n), nous voulons obtenir un signal y(n) identique au signal qui aurait t obtenu
en chantillonnant xa(t) la frquence Fe.

Comparons le spectre du signal quon souhaite obtenir (y(n)), au spectre du signal que lon
veut traiter (x
2
(n)) :


On constate que pour obtenir le signal Y(f), il faudra filtrer certaines frquences du spectre
X2(f). Cependant, il va tout de mme falloir choisir les bonnes frquences filtrer.

Grce aux proprits de priodisation et de symtrie, nous savons que :
En filtrant la frquence f Fe on limine les raies barres en rouge.
En filtrant la frquence f Fe + on limine les raies barres en vert.
Ainsi nous retrouvons le spectre du signal xa(t) chantillonn la frquence Fe.














Il y a deux frquences filtrer, il y aura donc deux filtres appliquer x
2
(n).
Nous allons considrer les 2 filtres comme 2 traitements distinctifs qui seront mis lun la
suite de lautre.

Fe 0 -f +f Fe-f Fe+f 2Fe 3Fe 4Fe


Pour chacun des filtres, nous utiliserons le mme traitement qu la question 2) en modifiant
les paramtres.

1
er
filtre : Suppression de la raie la frquence ) (
a
f Fe :

Posons le signal dentre ) ' 2 cos( ) (
2
fnTe n x =
avec
6
5
6
e e
e a e
F F
F f F f = = =
|

\
|
=
|
|

\
|
|

\
|
= n
Fe
n
Fe
Fe nTe f Fe
9
5
cos
3
1
6
2 cos ) ' ) ( 2 cos(



Appliquons ce signal au filtre. Et trouvons a et b tel que :
0 ) 2 (
9
5
cos ) 1 (
9
5
cos
9
5
cos ) (
1
= |

\
|
+ |

\
|
+ |

\
|
= n b n a n n y


On a donc :
0
9
10
sin
9
5
sin
9
10
cos
9
5
cos
9
5
sin
9
5
sin
9
5
cos
9
5
cos
9
5
cos = |

\
|
|

\
|
+ |

\
|
|

\
|
+ |

\
|
|

\
|
+ |

\
|
|

\
|
+ |

\
|
n b n b n a n a n

On factorise par
|

\
|
n
9
5
cos

et par
|

\
|
n
9
5
sin

:

0
9
10
sin
9
5
sin
9
5
sin
9
10
cos
9
5
cos 1
9
5
cos =
(

\
|
+ |

\
|
|

\
|
+
(

\
|
+ |

\
|
+ |

\
|
b a n b a n

Ceci est vrai pour tout n, seulement si :
0
9
10
cos
9
5
cos 1 = |

\
|
+ |

\
|
+

b a et 0
9
10
sin
9
5
sin = |

\
|
+ |

\
|
b a



Nous devons donc rsoudre ce systme de 2 quations 2 inconnus

=
|

\
|
+
|

\
|
=
|

\
|
+
|

\
|
0
9
10
sin
9
5
sin
1
9
10
cos
9
5
cos


b a
b a

\
|
|

\
|

=
=
|

\
|
+
|

\
|
9
5
sin
9
10
sin
1
9
10
cos
9
5
cos


b
a
b a

\
|
|

\
|

=
=
|

\
|
+
|

\
|
|

\
|
|

\
|

9
5
sin
9
10
sin
1
9
10
cos
9
5
cos *
9
5
sin
9
10
sin

b
a
b
b

\
|
|

\
|

=
=
(
(
(
(

\
|
|

\
|
|

\
|
|

\
|
9
5
sin
9
10
sin
1
9
5
cos *
9
5
sin
9
10
sin
9
10
cos

b
a
b

\
|
|

\
|

=
=
9
5
sin
9
10
sin * 1
1

a
b

\
|
|

\
|
|

\
|

=
=
9
5
sin
9
5
cos
9
5
sin 2
1


a
b

\
|
=
=
9
5
cos 2
1

a
b


=
=
1
3473 , 0
1
1
b
a
2
me
filtre : Suppression de la raie la frquence ) (
a
f Fe + :
Posons le signal dentre ) ' 2 cos( ) (
2
fnTe n x =
avec
6
7
6
e e
e a e
F F
F f F f = + = + =
|

\
|
=
|
|

\
|
|

\
|
+ = + n
Fe
n
Fe
Fe nTe f Fe
9
7
cos
3
1
6
2 cos ) ' ) ( 2 cos(




En utilisant la mme mthode que pour le 1
er
filtre, on trouve :

\
|
=
=
9
7
cos 2
1
2
2

a
b

=
=
1
5321 . 1
2
2
b
a




A ce stade, nous pouvons considrer deux traitements :
) 2 ( ) 1 ( ) ( ) (
1 1 1
+ + = n x b n x a n x n y
) 2 ( ) 1 ( ) ( ) (
2 2 2
+ + = n x b n x a n x n y

) 2 ( ) 1 ( ) ( ) (
1 1 1
+ + = n b n a n n h
) 2 ( ) 1 ( ) ( ) (
2 2 2
+ + = n b n a n n h

{ } 1 a 1 ) (
1 1

= n h et { } 1 a 1 ) (
2 2

= n h

) ( ) ( ) (
2 1
n h n h n h =

Donc ( ) ( ) ( ) { } 1 2 1 ) (
2 1 2 1 2 1

a a a a a a n h + + + =




Si on pose
' 2
) (
fnTe j
e n x

=

+
=
=
k
k n x k h n y ) ( * ) ( ) (
' ) 4 ( 2 ' ) 3 ( 2
2 1
' ) 2 ( 2
2 1
' ) 1 ( 2
2 1
' 2
) ( ) 2 ( ) ( ) (
Te n f j Te n f j Te n f j Te n f j fnTe j
e e a a e a a e a a e n y

+ + + + + + + =


[ ]
' 8 ' 6
2 1
' 4
2 1
' 2
2 1
) (
' 2
) ( ) 2 ( ) ( 1 * ) (
fTe j fTe j fTe j fTe j
n x
fnTe j
e e a a e a a e a a e n y

+ + + + + + + =
3 2 1

[ ]
' 4 ' 2
2 1 2 1
' 2
2 1
' 4 ' 4
) ( ) 2 ( ) ( *
2Te retard
* ) ( ) (
fTe j fTe j fTe j fTe j fTe j
e e a a a a e a a e e n x n y
+ +
+ + + + + + +
=
=
3 2 1

( ) ) 2 ( ) ' 2 cos( ) ( 2 ) ' 4 cos( 2 * ) 2 ( ) (
2 1 2 1
a a fT a a fT n x n y
e e
+ + + + =

On constate que le signal y(n) est fonction du signal dentre retard de 2 chantillons. Il va
donc falloir lavancer de 2 chantillons : y(n)y(n+2)

On a donc :
( ) ) 2 ( ) ' 2 cos( ) ( 2 ) ' 4 cos( 2 * ) ( ) (
2 1 2 1
a a fT a a fT n x n y
e e
+ + + + =
et
( ) ( ) ( )
)
`

+ + + =

1 2 1 ) (
2 1 2 1 2 1
a a a a a a n h



Regardons ce que vaut y(n) pour f=fa=Fe/6
4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 2 1
dsir non Gain
2 1 2 1
) 2 (
9
cos ) ( 2
9
2
cos 2 * ) ( ) (
|
|

\
|
+ + |

\
|
+ + |

\
|
= a a a a n x n y


On constate que y(n) est amplifier par un gain G non dsir, avec G=7,5963. Il va donc falloir
diviser la sortie par G. y(n)y(n)/G
On obtient :
( ) ) 2 ( ) ' 2 cos( ) ( 2 ) ' 4 cos( 2 *
) (
) (
2 1 2 1
a a fT a a fT
G
n x
n y
e e
+ + + + =

Et ( ) ( ) ( )
)
`

0.1316 2474 . 0 3333 . 0 2474 . 0 316 0.1 ) (n h




Vrification de y(n) :
0 0.2 0.4 0.6 0.8 1 1.2
x 10
-3
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
X: 0.0001875
Y: 1
Signal xa chantillon la frquence fe=32kHz
chantillon
x
a
(
n
T
e
)
X: 0.0001875
Y: 0.3333
X: 0.000125
Y: -0.1674
X: 0.000125
Y: -0.5023

En rouge : Signal x
a
(n) chantillonn la frquence Fe.
En bleu : Reconstitution en continu du signal y(n) obtenu.

On constate quy (n) est 3 fois plus petit quil ne faudrait. On va donc multiplier par 3.


Finalement, on a :
{ } 0.3953 .7428 0 1 .7428 0 3953 0 ) (

= . n h


' 2
* ) ( ) (
fnTe j
n
e n h f H

+
=

=
A la frquence fa,
3 ) ( =
a
f H
Ceci est normal car nous passons dune frquence Fe une frquence Fe = 3Fe.
0 ) ( =
a
f Fe H
0 ) ( = +
a
f Fe H
NotaBene: Le traitement nest pas causal car il agit sur des chantillons venir.




Question 8

Voir le code Matlab (figures gnres dans lordre et commentaires associs).

Question 9

' 2
* ) ( ) (
fnTe j
n
e n h f H

+
=

=
' 4 ' 2 ' 2 ' 4
3953 , 0 7428 , 0 1 7428 , 0 3953 , 0 ) (
fTe j fTe j fTe j fTe j
e e e e f H
+ +
+ + + + =

( ) ( ) ( )
0
* ' 2 cos 4856 , 1 ' 4 cos 7906 , 0 1 ) ( e fTe fTe f H + + =
Ici, on constate que H(f) est rel

Module de H(f) :
( ) ( ) ' 2 cos 4856 , 1 ' 4 cos 7906 , 0 1 ) ( fTe fTe f H + + =
Phase de H(f) :
0 H(f) pour )) ( (
0 H(f) pour 0 )) ( (
< =
=

f H
f H


Avec le programme Matlab suivant, on trace le module et la phase de H(f)

close all;clear all;
%Dclaration des constantes
f=[0:100:96000];
Te=1/96000;

%Fonction de transfert, module et phase
H=1+0.3953*2*cos(4*pi*f*Te)+0.7428*2*cos(2*pi*f*Te);
mod=abs(H);
phase=phase(H);

%Trac du module
figure(1);
subplot(2,1,1)
plot(f,H,'g')
hold on;
plot(f,mod)
xlabel('Frquence')
ylabel('Module')
legend('H(f)','Module de H(f)')

%Trac de la phase
subplot(2,1,2);
plot(f,phase)
xlabel('Frquence')
ylabel('Phase')
legend('Phase de H(f)')




On voit bien que lorsque H(f) est ngatif, la phase vaut +.




Question 10


Pour obtenir le signal xa(t) chantillonn la frquence F3=48KHz, il faut multiplier le signal
y(n) par un peigne de Dirac de priode T3=2Te. Cela revient prendre un chantillon sur
deux du signal y(n).

Question 11

On sait que : )
9
cos( ) (
3
n
n x = )
3
cos( ) (
n
n x =
1 ) 0 (
3
= x 1 ) 0 ( = x 939 . 0 ) 1 (
3
= x 5 . 0 ) 1 ( = x
766 . 0 ) 2 (
3
= x 5 . 0 ) 2 ( = x 5 . 0 ) 3 (
3
= x 1 ) 3 ( = x
173 . 0 ) 4 (
3
= x 5 . 0 ) 4 ( = x 173 . 0 ) 5 (
3
= x 5 . 0 ) 5 (
3
= x

Cherchons une mthode permettant de dterminer directement le signal x
3
(n) partir du signal
x(n).
On sait que :
x
3
(n) = y(2n) car nous prenons un chantillon sur deux comme vu a la question prcdente.
De plus :
{ } 0.3953 .7428 0 1 .7428 0 3953 0 ) (

= . n h

Donc :
) 2 ( 3953 . 0 ) 1 2 ( 7428 . 0 ) 2 ( ) 1 2 ( 7428 . 0 ) 2 2 ( 3953 . 0 ) (
2 2 2 2 2 3
+ + + + + + = n x n x n x n x n x n x
Or nous savons bien que le signal x
2
(n) est gal au signal x(n) tous les trois chantillons donc
si n est un multiple de 3 alors
|

\
|
=
3
) (
2
n
x n x . Si n nest pas un multiple de 3 alors x
2
(n) vaut 0.

Ainsi nous pouvons trouver la mthode suivante pour trouver x
3
(n). :
Trois cas possibles :

Cas ou n est un multiple de 3.
) 2 ( 3953 . 0 ) 1 2 ( 7428 . 0 ) 2 ( ) 1 2 ( 7428 . 0 ) 2 2 ( 3953 . 0 ) (
2 2 2 2 2 3
+ + + + + + = n x n x n x n x n x n x
0 * 3953 . 0 0 * 7428 . 0 ) 2 ( 0 * 7428 . 0 0 * 3953 . 0 ) (
2 3
+ + + + = n x n x
|

\
|
= =
3
2
) 2 ( ) (
2 3
n
x n x n x .
Cas ou n+1 est un multiple de 3.
) 2 ( 3953 . 0 ) 1 2 ( 7428 . 0 ) 2 ( ) 1 2 ( 7428 . 0 ) 2 2 ( 3953 . 0 ) (
2 2 2 2 2 3
+ + + + + + = n x n x n x n x n x n x
0 * 3953 . 0 ) 1 2 ( 7428 . 0 0 0 * 7428 . 0 ) 2 2 ( 3953 . 0 ) (
2 2 3
+ + + + + = n x n x n x
|

\
| +
+ |

\
|
= + + =
3
1 2
7428 . 0
3
2 2
3953 . 0 ) 1 2 ( 7428 . 0 ) 2 2 ( 3953 . 0 ) (
2 2 3
n
x
n
x n x n x n x .

Cas ou n+2 est un multiple de 3.
) 2 ( 3953 . 0 ) 1 2 ( 7428 . 0 ) 2 ( ) 1 2 ( 7428 . 0 ) 2 2 ( 3953 . 0 ) (
2 2 2 2 2 3
+ + + + + + = n x n x n x n x n x n x
) 2 ( 3953 . 0 0 * 7428 . 0 0 ) 1 2 ( 7428 . 0 0 * 3953 . 0 ) (
2 2 3
+ + + + + = n x n x n x
|

\
| +
+ |

\
|
= + + =
3
2 2
3953 . 0
3
1 2
7428 . 0 ) 2 2 ( 3953 . 0 ) 1 2 ( 7428 . 0 ) (
2 2 3
n
x
n
x n x n x n x .

Conclusion : afin de dterminer rapidement x
3
(n), il suffit dcrire un algorithme vrifiant la
multiplicit par 3 de n et appliquer lun des trois cas prcdents.

Question 12

Pour que le thorme de lchantillonnage soit respect, il faut que la plus haute frquence du
signal x
a
(t) soit infrieure la frquence dchantillonnage divise par deux. Cet a dire :
.
2
max
Fe
f < Dans un cas contraire nous observerons un repliement de spectre et un instabilit
du signal chantillonn.

Vous aimerez peut-être aussi