Académique Documents
Professionnel Documents
Culture Documents
Vahid Meghdadi
ELT2
1 Rappels
1.1 Echantillonnage [1, Chap. 4]
Soit x(t) un signal limité en fréquence. C’est-à-dire que
Si on échantillonne ce signal par une peigne de dirac avec une fréquence minimale
de répétition de 2B, le signal d’origine, x(t) peut être reconstruit parfaitement
en passant ce signal par un filtre passe bas de largeur de bande B.
Theorem 1. Un signal x(t) d’énergie finie dont la transformée de Fourier a
un support borné [−B, B] est entièrement défini par ses échantillons x(kT e)
prélevés à une fréquence d’échantillonnage fe = 1/Te ≥ 2B.
Définitions
On définit un train de dirac de période T étant:
+∞
X
δT (t) = δ(t − nT )
n=−∞
Le signal échantillonné (peigné) est le produit de x(t) par δT (t), ce qui traduit
par une convolution en fréquence.
+∞
X +∞
X
xT (t) = x(t)δT (t) = x(t)δ(t − nT ) = x(nT )δ(t − nT )
n=−∞ n=−∞
+∞
1 X k
XT (f ) = F (xT (t)) = X f− (1)
T T
k=−∞
1
Il est clair que si le spectre du signal est nul pour les fréquences supérieures
à fe /2 = 1/2T , le chevauchement de spectre n’aura pas lieu. Ainsi, un filtre
passe bas idéal est capable de restaurer le signal parfaitement.
Remarque: Le théorème d’échantillonnage peut être utilisé pour développer
une méthode d’interpolation. En fait, la transformée inverse de Fourier de
XT (f ) filtré, donne la série suivante:
+∞
X sinπ(t/T − n)
x(t) = x(nT )
n=−∞
π(t/T − n)
• L’échelon unité
0 pour n<0
u(n) =
1 pour n≥0
• La porte de longueur N:
1 pour 0≤n≤N −1
ΠN (n) =
0 ailleurs
Propriété: Un signal peut être écrit sous forme d’une somme de diracs
pondérés:
+∞
X
x(n) = x(k)δ(n − k)
k=−∞
2.1 Transformée en Z
Pour des signaux analogique, c’est la transformée de Laplace qui est utilisée alors
que pour des signaux discrets, c’est la transformée de Z qui devient important.
La transformée en Z du signal discret x(n) est définie par la relation:
+∞
X
X(z) = x(n)z −n
n=−∞
2
z est une variable complexe et la transformée en Z existe si la série converge.
Domaine de convergence: Le domaine de convergence est l’ensemble de
points sur le plan complexe Z où la transformée en Z converge. C-à-d
( +∞ )
X
1 −n
ROC = z tel que |X(z)| = x(n)z < ∞
n=−∞
remarque:
Si z1 ∈ ROC, ∀z tel que |z| = |z1 | alors z ∈ ROC
Dans ce cours nous ne considérons que les signaux causaux. Dans ce cas la limite
inférieure de la somme devient zéro et la formule se transforme en suivante:
+∞
X
X(z) = x(n)z −n
k=0
• Dérivé de X(z):
dX(z)
nx(n) ⇒ −z
dz
• Convolution:
x1 (n) ∗ x2 (n) ⇒ X1 (z)X2 (z)
• Valeur initiale: si x(n) est un signal causal, alors:
x(0) = lim X(z)
z→∞
3
3 Transformée inverse de Z [2, paragraphe 2.2]
3.1 Inversion par la formule de résidus
Le théorème d’intégral de Cauchy montre que
I
1 1, k = 0
z k−1 dz =
2πj C 6 0
0, k =
où C est un contour orienté dans le sens positif englobant l’origine. La trans-
formée en Z est définie par la relation:
+∞
X
X(z) = x(n)z −n
n=−∞
En multipliant les deux côtés par z k−1 et intégrer comme il faut, puis, changer
l’ordre de l’intégral et la somme, on obtiendra
I
1
x(n) = X(z)z n−1 dz
2πj C
X
= [ résidus de X(z)z n−1 pour les p^
oles à l’intérieur de C]
En général, si X(z)z n−1 est une fonction rationnelle de z, elle peut s’écrire sous
la forme:
φ(z)
X(z)z n−1 =
(z − z0 )s
où X(z)z n−1 possède s pôles en z = z0 . Dans ce cas le résidu de X(z)z n−1 en
z = z0 sera:
s−1
n−1 1 d φ(z)
Res[X(z)z en z = z0 ] =
(s − 1)! dz s−1 z=z0
Exemple: Soit
1
X(z) = |z| > |a|
1 − az −1
Alors la transformée inverse de z est:
z n−1 z n dz
I I
1 1
x(n) = dz =
2πj C 1 − az −1 2πj C z − a
x(n) = an u(n)
4
3.2 Inversion par développement en série
Si on peut présenter le X(z) sous forme d’une série en z −1 , les valeurs de x(n)
seront trouvées par identification.
Exemple: Soit
X(z) = log(1 + az −1 ), |z| > |a|
Utilisant le développement en série de Taylor pour log(1 + x) on obtient:
∞
X (−1)n+1 an z −n
X(z) =
n=1
n
PM −k
k=0 bk z
X(z) = PN
−k
k=0 ak z
Si M < N alors:
M
(1 − ck z −1 )
Q
N
b0 k=1 X Ak
X(z) = =
a0 QN 1 − dk z −1
(1 − dk z −1 ) k=0
k=1
Si M ≥ N ,
M −N N
X X Ak
X(z) = Br z −r +
r=0
1 − dk z −1
k=0
3 + 2.5z −1 − z −2 − 0.5z −3
X(z) =
1 + 1.5z −1 + z −2
5
En divisant, on obtient
3 + 2z −1
X(z) = 1 − z −1 +
1 + 1.5z −1 + z −2
2 1
= 1 − z −1 + +
1 + z −1 1 + 0.5z −1
L’inverse de la transformée en Z est:
x(n) = δ(n) − δ(n − 1) + (2 + 0.5n )u(n)
Exemple: Calculer le transformée inverse de Z quand il existe un pôle d’ordre
2 : X(z) = (1−az1 −1 )2 .
Solution: x(n) = (n + 1)an u(n)
6
Conclusion: La transformée en Z calculée sur le cercle unité donne la trans-
formée de Fourier de la sequence x(n), qui est la même chose que la transformée
de Fourier du signal xT (t), qui est la même chose que la transformée du Fourier
du signal x(t) antre (−fe /2, fe /2), à condition d’avoir respecté le critère de
Shannon (tout cela est bien sûr à un facteur près).
Propriétés : Nous avons les même propriétés que celles d’une transformation
en Z car la transformée de Fourier n’est que l’évaluation de la transformée en Z
sur un sous ensemble des points sur le plan Z. Par exemple:
5 Systèmes linéaires
Considérons un système linéaire défini en temps continu présenté par sa fonction
de transfert H(f ). La relation entrée-sortie de ce système est la suivante:
Y (f ) = H(f )X(f )
YT (f ) = HT (f )XT (f )
Comme nous avons vu dans la section précédente, en passant par les séquences
au lieu des signaux “peignés”, on peut écrire:
Ou plus simplement:
y(n) = x(n) ∗ h(n) (4)
Conclusion : Un système à temps continu peut être parfaitement remplacé
par son équivalent en temps discret (à condition de respecter le critère de Shan-
non).
7
On peut appliquer une transformée en Z aux deux côtés de la relation (4). On
obtient alors pour un système linéaire:
Ceci est la relation la plus utilisée pour résoudre les systèmes à temps discret.
N (z)
Y (z) = X(z)
D(z)
8
Ce qui donne:
N
X M
X
Y (z) bk z −k = X(z) ak z −k
k=0 k=0
Une transformée inverse de Z, donnera l’équation aux différences correspondant
à ce système rationnel:
b0 y(n) + b1 y(n − 1) + ... + bN y(n − N ) = a0 x(n) + a1 x(n − 1) + ... + aM x(n − M )
1
y(n) = [a0 x(n) + a1 x(n − 1) + ... + aM x(n − M ) − b1 y(n − 1) − ... − bN y(n − bN )]
b0
Exemple: Donner l’équation aux différences pour le système ci-dessous:
2 − z −1 + 0.5z −2
H(z) =
1 + 0.5z −1 + 3z −2 − 0.3z −3
L’équation aux différences sera donc:
y(n) = 2x(n) − x(n − 1) + 0.5x(n − 2) − 0.5y(n − 1) − 3y(n − 2) + 0.3y(n − 3)
5.3 Stabilité
Un système est stable si une entrée bornée donne une sortie bornée (BIBO pour
Bounded Input Bounded Output). Reconsidérons le système H(z) = N (z)
D(z) , la
région de convergence est à l’extérieur du cercle qui passe au pôle le plus loin du
centre. Pour que la transformée de Fourier existe, il faudra donc que le cercle
unité fasse partie de la région de convergence. Ceci implique qu’il faudra que
tous les pôles du H(z) soient à l’intérieur du cercle unité. On peut montrer que
c’est un condition nécessaire et suffisante pour le système H soit stable. Dans
ce cas, la fonction de transfert fréquentielle est obtenue par la relation
∞
X N (ejω )
H(ejω ) = h(n)e−jωn =
n=−∞
D(ejω )
9
et
M N
b0 X X
jω
arg 1 − ck e−jω − arg 1 − dk e−jω
arg H(e ) = arg +
a0
k=1 k=1
Le délai de groupe de H(z) est définie par la dérivée de la phase par rapport
à ω:
d
Délai de groupe : = − arg H(ejω )
dω
C’est une relation qui calcule la valeur de H(z) quand z bouge sur le plan Z.
Le numérateur est le produit de tous les vecteurs qui relie les zéros de H(z) au
point Z, et le dénominateur est le produit de tous les vecteurs qui relie les pôles
de H(z) au point Z. Si on souhaitait calculer H(eiω ), le z ne varie que sur le
cercle unité. Alors en se référant à la figure de la page 196 du livre Delamas, le
|H(ejω )| peut être évaluer par l’expression:
QM
jω j=1 (Zj M )
|H(e )| = |α| QN
j=1 (Pj M )
Dans cette expression, le point M est en fait ejω et Zj M est la taille de la droite
reliant le zéro Zj au point P . Pour la phase nous avons l’expression suivante:
M
X N
X
Arg[H(ejω )] = Arg[α] + Arg[Zj M ] − Arg[Pj M ]
j=1 j=1
Remarque: Lorsque h(n) est réel, les coefficients de N (z) et D(z) sont réels.
Alors,les pôles et les zéros de H(z) sont par pair conjugué.
10
x1(n)
a
y1(n)
x2(n) b
c y2(n)
x3(n)
1/z*1
z1
plan Z
Figure 1: Réflexion d’un zéro (ou pôle) par rapport au cercle unité
Exemple
−1
1−2z
Un canal de transmission présente la distorsion suivante: H1 (z) = 1+0.5z −1 .
11
x1(n)
a
y1(n)
x2(n) b
c y2(n)
x3(n)
12
x(n) b0 y1(n) y(n)
z-1 z-1
b1 a1
z-1 z-1
z-1 z-1
bM-1 aN-1
z-1
a1 b1
z-1
a2
z-1
bM-1
z-1
aN-1
13
Exemple
Soit H(z) un filtre à réponse impulsionnelle finie (RIF) de taille N + 1. La
figure 6 présente l’architecture Directe I ou Directe II d’un filtre FIR. Après
une transposition, le résultet se voit sur la figure 7. Cette figure peut être
arranger pour avoir comme d’habitude l’entrée par la gauche et la sortie par la
droite (figure 8).
h0 h1 h2 hN-1 hN
y(n)
h0 h1 h2 hN-1 hN
x(n)
x(n)
hN hN-1 h2 h1 h0
y(n)
z-1 z-1 z-1 z-1
Exemples
1. Pour les fonction de transfert suivantes donner la réalisation directe I et
puis directe II.
1
• H(z) = 1−0.5z −1
• H(z) = h0 + h1 z −1 + h2 z −2 + ... + hM z −M
0.2+0.2z −1 +0.6z −3
• H(z) = 1−0.3z −1
14
3. Pour l’accumulateur ci-dessous, donner la structure directe II.
0 n < 0
h(n) = 1 0 ≤ n < M
0 n≥M
Alors la série de Fourier d’un signal discret périodique de période N n’a que N
termes:
N −1
1 X
x̃(n) = X̃(k)ej(2π/N )nk (6)
N
k=0
On peut facilement remarquer que la séquence X̃(k) est une séquence périodique
de fréquence N , c-à-d X̃(0) = X̃(N ), X̃(1) = X̃(N + 1), etc.
15
Comparant cette expression et celle de la série de Fourier (7) pour un signal
périodique, on remarque que
X̃(k) = X(z)|z=ej2π/N k
Conclusion
• Un signal borné dans le temps peut être représenté par sa TFD alors qu’un
signal périodique est représenté par sa SFD (Série de Fourier Discret,
relation 6).
• Soit X(k) la TFD d’un signal borné dans le temps x(n). La TFD inverse
de X(k) donne un signal périodique x̃(n). Il suffit de ne le regarder que
dans l’intervalle (0,N − 1) pour obtenir x(n).
(
x̃(n) 0 ≤ n < N
x(n) =
0 ailleurs
• La TFD de x(n) est une séquence de taille N qui peut être obtenue à
partir de X(z) car
X(k) = X(z)|z=ej2πk/N
ce qui veut dire que le TFD n’est que les échantillons de X(Z) sur des
points homogènement répartis sur le cercle unité.
• X(k) se trouve aussi sur la transformé de Fourier de x(n): X(ejω à la
fréquence ω = 2πk/N .
16
• symétrie
x(n) est réel ↔ X(k) = X ∗ (−k) = X ∗ (N − k)
1 j −1 −j
Remarque: On note que WWH = N I.
17
6.5 Approximation de spectre utilisant la TFD
Soit x(t) un signal à temps continu. On souhaite estimer le spectre de ce signal
en faisant un calcul sur les valeurs numériques issues d’échantillonnage. On
suppose que l’on respecte le critère de Shannon : le spectre du signal est nul
pour tout |f | > fe /2. Par contre, le signal n’est pas borné dans le temps. Une
TFD exige une séquence limitée sur N points. On échantillonne alors le signal
xa (t) pour obtenir la séquence x0 (n) = xa (nT ) et ensuite, on la tronque sur N
points pour obtenir x(n). Cette opération est équivalent à
• soit multiplier le signal xa (t) par une fonction de porte et puis l’échantillonner
• soit par d’abord échantillonner le signal à temps continu x(t) pour obtenir
x0 (n) et puis multiplier la séquence obtenue par une fonction de porte
discrète.
Dans les deux cas, le spectre de la séquence bornée obtenue ne sera pas ex-
actement celui du signal d’origine. Par exemple, dans le premier cas, le spectre
est d’abord convolué par un sinus cardinal. Ceci, non seulement va modifier le
spectre, mais aussi va le rendre non-borné en fréquence. Ce qui veut dire que le
critère de Shannon n’est plus respecté. Si la largeur de la porte est importante,
N , le sinus cardinal va s’approcher d’un delta de Dirac et le spectre résultant
se ressemble de plus en plus au spectre du signal d’origine. Ceci est tout à fait
plausible car en augmentant le N , on tend vers le signal original.
Exercice
Soit le signal x(t) = e−t u(t). Echantillonner ce signal avec fe = 1/T et puis le
tronquer brutalement sur [0, N T ]. Tracer |X(f )| et |X(exp(jω))|ω=2πf /fe sur
les mêmes repères pour N = 16 et Te = 0.25. Sur le même repère, tracer les
X(k) sachant que l’fréquence correspondant l’indice k, est kfe /N (pourquoi ?).
Remarque 1
Si on utilise la TFD pour estimer le spectre d’un signal à temps continu, la
résolution fréquentielle est une fonction de fe et N . En fait, la distance entre
deux points consécutifs de la TFD est égale à fe /N .
Remarque 2
Si nous disposons d’une séquence limitée dans le temps [0, N − 1] et nous cher-
chons à calculer son spectre utilisant la TFD mais avec une précision meilleure
que fe /N , nous pouvons ajouter des zéros à la fin de la séquence pour obtenir
une autre séquence sur M > N points et calculer la TFD pour cette nouvelle
séquence. Sachant que l’essentiellement le spectre des deux séquences sont iden-
tiques (pourquoi ?), la résolution dans la deuxième solution est de fe /M , qui
est meilleure que fe /N .
18
6.6 Convolution linéaire et la TFD
On sais que la sortie d’un système linéaire est le résultat de la convolution
linéaire entre l’entrée et la réponse impulsionnelle du système. On souhaite
utiliser la TFD pour calculer cette convolution.
Exercice
Calculer la convolution circulaire pour les séquence x1 (n) = δ(n − 1), et x2 (n) =
4δ(n) + 3δ(n − 1) + 2δ(n − 2) + δ(n − 3) quand N = 4 et puis quand N = 5.
Utilisation de Matlab
x1=[0 1 0 0];
x2=[4 3 2 1];
conv(x1,x2)
ans = 0 4 3 2 1 % convolution linéaire x1*x2
ifft(fft(x1).*fft(x2))
ans = 1 4 3 2 % qui n’est qu’une convolution
% linéaire entre x1 et x2
ifft(fft(x1,5).*fft(x2,5),5)
ans = 0 4.0000 3.0000 2.0000 1.0000 % en respectant
Deuxième exercice: x1 (n) = x2 (n) = rect5 (n)
Utilisation de Matlab
x1=[1 1 1 1 1];
x2=x1;
conv(x1,x2) % donne 1 2 3 4 5 4 3 2 1 (convolution linéaire)
ifft(fft(x1).*fft(x2))
ans = 5 5 5 5 5 % donne une convolutioncirculaire
19
% entre x1 et x2
ifft(fft(x1,9).*fft(x2,9),9)
ans = 1 2 3 4 5 4 3 2 1 % là on obtient
% la convolution linéaire car N=L+P-1
ifft(fft(x1,11).*fft(x2,11),11)
ans = 1 2 3 4 5 4 3 2 1 0 0 % là on obtient
% le convolution linéaire car N>L+P-1
Quel est le résultat si on effectuer la commande ci-dessous:
ifft(fft(x1,6).*fft(x2,6),6)
Utilisant la propriété:
2π 2π
WN2rn = e−j N 2rn = e−j N/2 rn = WN/2 rn
On peut écrire:
N/2−1 N/2−1
X X
rk
X(k) = x(2r)WN/2 + WNk rk
x(2r + 1)WN/2
r=0 r=0
= G(k) + WNk H(k) pour k = 0, 1, ..., N − 1
Cette expression présente deux TFD chacun de taille N/2, la première à effectuer
sur les points pairs de la séquence x(n) et la seconde sur les points impairs. Le
nombre de multiplications réelles sera: 4(N/2)2 + 4(N/2)2 + 4N = 2N 2 + 4N .
C’est à dire que pour grand N , la complexité est approximativement divisée
par deux. On peut dessiner le graphe de flux pour réaliser l’équation ci-dessus
(voir figure 6.7.1 En dessinant ce graphe, nous avons utilisé la propriété de
périodicité de TFD: G(k) = G(k + N/2) et H(k) = H(k + N/2). Ce résultat
étant encourageant, nous pouvons continuer à diviser ces deux TFD chacune de
20
k
0 W
W2 N
1 k+N/2
W2 W
N
1
k
W -1
N
k
G(0) W
x(0) W2
0
N X(0)
0
WN
x(2) G(1) X(1)
DFTW21 k+N/2
W WN
1
x(4) N/2 points G(2) N X(2)
1
WN2
x(6) G(3) X(3)
k 3
W W
-1N
N
4
x(1) H(0) WN X(4)
5
H(1) WN
x(3) X(5) WN6
x(0) DFTG(0) X(0)
x(5) N/2 points H(2) 0
WN W6 N X(6) WN7
x(2) G(1) X(1)
DFT H(3)
1
W7
x(4) x(7) X(7)
WN
N/2 points G(2) N
X(2)
2
WN
x(6) G(3) X(3)
3
WN WN6
Figure 9: Une seule décimation dans le temps pour le cas N = 8
4
x(1) H(0) WN X(4)
5
H(1) WN
x(3) G(0) X(5) WN6
DFT x(0)
x(5) DTF WN6 W0
X(6)
N/2 points x(4)H(2) WN7
N/4 points G(1) 7
4
WN6
x(2) H(0) W2
4
DTF 3
x(6) N/4 points H(1) W
4
x(0) G'(0)
DTF G(0)
W0
N/4 points G'(1)
4
x(4)
1
G(1)
W
4
x(2) H'(0) W2
4 G(2)
DTF 3
x(6) N/4 points H'(1) W
4 G(3)
Figure 10: Décimation dans le temps pour le cas N = 8 pour arriver à des TFD
de taille 2
21
taille N/2. Si N = 2v , on arrive à la fin à des TFD de taille élémentaire de 2
comme présenté figure (6.7.1 Dans cette itération, on distingue v étages pour
calculer une TFD de taille N = 2v . On remarque dans chaque étage il y a N
multiplication complexe à effectuer. Alors le nombre total de multiplications
réelles est de 4(N log2 N ). Par exemple une TFD de taille 1024 a besoin de
4.194.304 multiplications alors que la TFR correspondant ne demande que 40960
multiplications.
7 Exercice
1. Soit
1 + 3z −1 + 8z −4 + 16z −10
X(z) =
1 − 3z −1 + 2z −2 + 8z −10
la transformée en Z du signal causal x(t). Quelles sont les valeurs x(0) et
x(1).
Hint: Utilisez la propriété de la valeur initial pour trouver x(0). Puis,
retranchez le de x(t) est décalez le tout de 1 vers la gauche pour trouver
x(1) à l’origine. Appliquez à nouveau la propriété de la valeur initiale.
Un autre façon de résoudre cet exercice est d’effectuer la division longue
et repérer la constante et le coefficient de z −1 .
References
[1] Element de théorie du signal: les signaux déterministes, Jean-Pierre DEL-
MAS
22