Chapitre 4
Chapitre 4
Chapitre 4
Dans le chapitre3, nous avons étudié la transformée de Fourier en temps discret pour
représenter les signaux discrets en utilisant les séquences exponentielles complexes. Cette
représentation est clairement avantageux pour les systèmes LTI parce qu’il décrit ces
systèmes dans le domaine fréquentielle en utilisant la réponse fréquentielle de la fonction
H (e j ) . Le calcul de la réponse sinusoïdal en régime permanent est très facilitée par
l’utilisation of H (e j ) . Par ailleurs, la réponse à une séquence arbitraire absolument
sommable x(n) peut facilement être calculée dans le domaine fréquentiel en multipliant la
transformée X (e j ) et la réponse fréquentielle H (e j ) . Cependant, nous avons 2 lacunes avec
l’approche de la transformée de Fourier. Premièrement, il y a beaucoup de signaux utilisable
en pratique tels que u(n) et nu(n) pour lequel la transformée discrète de Fourier n’existe pas.
Deuxièmement, la réponse transitoire du système due aux conditions initiales ou aux
changements de points ne peut pas être calculée en utilisant la transformée de Fourier
temporelle et discrète. Cependant, nous considérons maintenant une extension de la
transformée de Fourier en temps discret pour résoudre ces deux problèmes. L’extension est
appelée la transformée en z. Sa version bilatérale (ou à deux cotés) fournit un autre domaine
dans lequel une large classe de séquences et de systèmes peuvent être analysés, et sa version
unilatéral (ou un côté) peut être utilisée pour obtenir les réponses du système avec les
conditions initiales ou les changements de points.
Où z est une variable complexe. L’ensemble des valeurs de z pour lesquelles X(z) existe est
appelée la région de convergence (ROC) et est donnée par
Pour plusieurs nombres non négatifs Rx- et Rx+. La transformée inverse de Fourier est
donnée par
1
Z X ( z) 2 j X ( z) z
1 n 1
x ( n) dz (4.3)
C
où C est un contour dans le sens inverse des aiguilles d'une montre entourant l'origine et se
trouvant dans le ROC.
Commentaires
1. La variable complexe z est appelée la fréquence complexe donnée par z z e j , où z est
le module et ω est la fréquence réelle
2. Puisque la ROC (4.2) est définie en termes du modèle z , la forme du ROC est un anneau
ouvert, comme le montre la Figure4.1. Notons que Rx- doit être égal à zéro et/ou Rx+
pouvait être ∞.
3. Si Rx+ <Rx−, alors la ROC est un espace nulle et le transformée en z n’existe pas.
4. La fonction |z| =1(ou z e j ) est un cercle de rayon unitaire dans le plan z et est appelé le
cercle unitaire. Si la ROC contient le cercle unitaire, alors nous pouvons évaluer X(z) surle
cercle unitaire.
Cependant, la transformée de Fourier en temps discret doit être vu comme un cas spécial de
la transformée X(z) en z.
Soit x(n) a nu(n) , 0 < |a| < ∞. (Cette séquence est appelée la séquence temporelle positive)
n
a 1 a
X1 ( z) 0 a z
n n
1
; if 1
0 2 1 az z
z
, z a ROC1: a z
za Rz
Rz
Notons que X1(z) dans l’exemple est une fonction rationnelle, qui est
B( z ) z
X 1( z )
A( z ) z a
où B(z)= z est le polynôme du numérateur et A(z)= z-a est le polynôme du dénominateur. Les
racines de B(z) sont appelées les zéros de X(z), tandis que les racines de A(z) sont appelées
les pôles de X(z). Dans cet exemple, X1(z) a un zéro à l'origine z = 0 et un pôle à z = a. Par
conséquent, x1(n) peut également être représenté par un diagramme pôle-zéro dans le plan z
dans lequel les zéros sont indiqués par 0 et les pôles par comme indiqué à la Figure 4.2
EXAMPLE 4.2 Soit x2(n) b u(n 1),0 . (Cette séquence s'appelle une
n
b
séquence de temps négatif.) Alors
1 n n n
1
b z z
X 2 ( z ) b n z n 1
z 1 b 0 b
1 z
1 , ROC 2 : 0 z b
1 z z b Rz
b RZ
z z
, ROC1 : z a , ROC1 : z b
z a z b
z z
; ROC3 : ROC1 ROC2
z a z b
Si b a , alors ROC3 est un espace nul, et X3(z) n'existe pas. Si a b alors le ROC3 est
a z b et X3(z) existe dans cette région comme indiqué dans la Figure 4.4.
1. Le ROC est toujours délimité par un cercle puisque la condition de convergence est sur la
grandeur |z|.
2. La séquence x1 (n) a nu(n) de l'exemple 4.1 est un cas particulier d'une séquence du côté
droit, défini comme une séquence x n qui est nulle pour un certain n n0 . Dans
l'exemple 4.1, le ROC pour les séquences du côté droit est toujours en dehors d'un cercle
de rayon Rx-. Si n0 0 , alors la séquence du côté droit est aussi appelée une séquence
causale.
3. La séquence x2 n bnu n 1 dans l'exemple 4.2 est un cas particulier d'une
séquence du côté gauche, défini comme une séquence x n qui est nulle pour
certains n n0 . Si n0 0 , la séquence résultante est appelée une séquence anti-
causale. A partir de l'exemple 4.2, le ROC pour les séquences du côté gauche est
toujours à l'intérieur d'un cercle de rayon Rx+.
4. La séquence x3 n de l'exemple 4.3 est une séquence à deux côtés. Le ROC pour les
séquences des deux côtés est toujours un anneau ouvert Rx z Rx , s'il existe.
5. Les séquences qui sont nulles pour n<n1 et n>n2 sont appelées séquences de durée finie.
Le ROC pour de telles séquences est le plan Z entier. Si n1 < 0, alors z = ∞ n'est pas dans
le ROC. Si n2 > 0, alors z = 0 n'est pas dans le ROC.
6. Le ROC ne peut pas inclure un pôle puisque X(z) converge uniformément à l'intérieur de
celui-ci.
7. Il y a au moins un pôle à la limite d'un ROC d'un rationnel X(z).
8. La ROC est une région contiguë, c'est-à-dire qu'elle ne vient pas en morceaux.
Dans le traitement numérique du signal, les signaux sont supposés être causaux puisque
presque toutes les données numériques sont acquises en temps réel. Par conséquent, le seul
ROC qui nous intéresse est celui qui figure dans l'énoncé 2.
1. Linéarité:
a1 x1 (n) a2 x2 (n) a1 X1 ( z ) a2 X 2 ( z ); ROC : ROCx1 ROCx2 (4.4)
2. Décalage de l’échantillon:
z x(n n0 ) z n0 X ( z ); ROC : ROCx (4.5)
3. Déplacement de la fréquence:
z
z a n x(n) X ( ); ROC : ROCx est mise à l’échelle a (4.6)
a
4. Pliage:
1
z x(n) X ( ); ROC :Inversé ROC x (4.7)
z
5. Complexe conjugué:
z x *(n) X *( z*); ROC : ROCx (4.8)
6. Différentiation dans le domaine z
dX ( z )
Z nx(n) z ; ROC : ROCx
dz (4.9)
Cette propriété est aussi appelée la propriété multiplication par une rampe.
7. Multiplication:
1
Z x1 (n) x2 (n) X1 ( )X 2 ( z / )v 1d : ROC; ROCx1 Inverted ROCx2 (4.10)
2 j C
où C est un contour fermé qui renferme l'origine et se trouve dans le ROC commun.
15- Convolution:
Ensuite, la convolution de ces deux séquences donnera les coefficients du produit polynomial
requis.
MATLAB script:
Solution
Notons que
En passant, nous notons que pour diviser un polynôme par un autre, nous aurions besoin
d'une opération inverse appelée déconvolution. Dans MATLAB, p, r deconv b,a
calcule le résultat de la division de b par a dans une partie polynomiale p et un reste r. Par
exemple, si nous divisons le polynôme X3(z) de l'exemple 4.4 par X1(z), comme suit,
B( Z )
X (Z )
A( Z )
où B(z) et A(z) sont des polynômes dans z-1. Si nous utilisons le coefficients de B(z) et A(z)
comme tableaux b et ab dans la routine de filtrage et excitons ce filtre par la séquence
d'impulsions δ(n), alors de (4.11) et utilisant Z[δ(n)] =1, la sortie du filter sera x(n). (Il s'agit
d'une approche numérique du calcul de la transformée inverse en z; nous discuterons de
l'approche analytique dans la prochaine section.) Nous pouvons comparer cette sortie avec le
x(n) donné pour vérifier que X(z) est bien la transformation de x(n). Ceci est illustré dans
l'exemple 4.6. Une approche équivalente consiste à utiliser la fonction impz discutée au
chapitre 2.
x(n) (n 2)(0.5) n2 cos (n 2) u(n 2)
3
n
X ( z ) Z x(n) z 2 Z n(0.5)n cos( )u (n)
3
avec aucun changement dans le ROC. En appliquant la multiplication par une propriété de
rampe,
d (0.5) cos( 3 n)u (n)
n
X ( z ) z 2 z
dz
d’où
1d 1 0.25 z 1
X ( z) z 1 2
, z 0.5
dz 1 0.5 z 0.25 z
0.25 z 2 0.5 z 3 0.0625 z 4
z 1 1 2 3 4
, z 0.5
1 z 0.75 z 0.25 z 0.0625 z
0.25 z 2 0.5 z 3 0.0625 z 4
, z 0.5
1 z 1 0.75 z 2 0.25 z 3 0.0625 z 4
MATLAB verification : Pour vérifier que ce X(z) est bien l'expression correcte, calculons les
8 échantillons de la séquence x(n) correspondant à X(z), comme discuté précédemment.
Cette approche peut être utilisée pour vérifier les calculs de la transformée en z.
Idée centrale
Lorsque X(z) est une fonction rationnelle de z-1, il peut être exprimé comme une
somme de facteurs simples en utilisant l'expansion de la fraction partielle. Les
séquences individuelles correspondant à ces facteurs peuvent ensuite être notées à
l'aide de la table de la transformée en z.
Méthode
Étant donné
b0 b1 z 1 ... bM z M B( z )
X ( z) (4.2)
1 a1 z 1 ... aN z N A( z )
Exprimons ça comme
b0 b1 z 1 ... bM z M M N
X ( z) X ( z)
1 a1 z 1 ... aN z N
C z
k 0
k
k
Pr operrationalpart polynomialpartifM N
où le premier terme sur le côté droit est la partie rationnelle appropriée, et le deuxième
terme est la partie polynomiale (longueur finie). Ceci peut être obtenu en effectuant la
division polynomiale si M ≥ N en utilisant la fonction deconv.
Perform a partial fraction expansion on the proper rational part of X(z) to obtain
N M N
Rk
X ( z) 1
Ck z k (4.13)
k 1 1 pk z k 0
M N
où pk est le kième pôle de X(z) et Rk est le résidu à pk. On suppose que les pôles sont
distincts pour lesquels les résidus sont donnés par
b0 b1 z 1 ... bM z M 1
R k 1 a1z 1 ... aN z N (1 pk z ) |z pk
Pour les pôles répétés, l'expansion (4.13) a une forme plus générale. Si un pôle pk a
une multiplicité r, alors son expansion est donnée par
r Rk ,l z (l 1)
Rk Rk 1 z 1 Rk r 1 z ( r 1)
1 pk z 1 1 p z 1 2
... (4.14)
1 p z 1
1 l
l 1 (1 pk z )
r
k k
où les résidus Rk,l sont calculés en utilisant une formule plus générale, qui est
disponible dans la référence[23].
en supposant des pôles distincts comme en (4.13), écrire x(n) comme
N
1 M N
x(n) Rk Z 1 1
Ck (n k )
k 1 1 pk z k 0
M N
z
EXAMPLE 4.7 Cherchons la transformée inverse en z de x( z )
3z 4 z 1
2
1 1
z
z 3
X ( z)
4 1 4 1
3( z 2 z ) 1 z 1 z 2
3 3 3 3
Solution: Ecrivons
1 1 1 1
z
3 2 1 2
(1 z 1 )(1 z 1 ) 1 z
1 1
1 z 1
3 3
ou
1 1 1 1
X ( z)
2 1 z 1 2 1 1 z 1
3
Maintenant, X(z) a deux pôles : z1 =1 et z2 = 1/3 ; et puisque la ROC n'est pas spécifiée, il y
a trois ROC possibles comme le montre la figure 4.5.
n
1 11
x1 (n) u (n) u (n)
2 23
1
b- ROC2: 0 z . Ici, les deux pôles se trouvent sur le côté extérieur du ROC2, c'est-à-
3
1 1
dire | z1 Rx+= et z2 . Ainsi, à partir de (4.15)
3 3
n
u (n 1)
1
1
x2 (n) u ( n 1)
2 3
n
11 1
u (n 1) u (n 1)
23 2
1
c- ROC3: z 1 . Ici, le pôle z1 est sur le côté extérieur du ROC3, c'est-à-dire z1 Rx+=1
3
1
tandis que le pôle z2 est sur le côté intérieur, c'est-à-dire | z1 . Ainsi, à partir de (4.15)
3
n
1 11
x3 (n) u (n 1) u (n)
2 23
b0 b1 z 1 ... bM z M B( z )
X ( z)
1 a1 z 1 ... aN z N A( z )
N M N
Rk
X ( z) 1
Ck z k
k 1 1 pk z k 0
M N
Soit une fonction rationnelle dans laquelle les polynômes du numérateur et du dénominateur
sont en puissances ascendantes de z-1. Puis [R,p,C]=residuez(b,a) calcule les résidus, les pôles
et les termes directs de X(z) dans lesquels deux polynômes B(z) et A(z) sont donnés dans
deux vecteurs b et a, respectivement. Le vecteur colonne R retourné contient les résidus, le
vecteur colonne p contient les emplacements des pôles et le vecteur de ligne C contient les
termes directs. Si p(k)=...=p(k+r-1) est un pôle de multiplicité r, alors l'expansion inclut le
terme de la forme
Rk Rk 1 Rk r 1
... (4.16)
1 p z 1 p z 1
1
1 pk z 1 2 r
k k
De même,[b,a]= residuez (R,p,C), avec trois arguments d'entrée et deux arguments de sortie,
convertit l'expansion de fraction partielle en polynômes avec coefficients en vecteurs de ligne
b et a.
EXAMPLE 4.8 Pour vérifier nos calculs de résidus, considérons la fonction rationnelle
z
x( z )
3z 4 z 1
2
Solution Premièrement, réorganisons X(z) de sorte qu'il s'agisse d'une fonction dont les
puissances sont ascendantes de z-1
z 1 0 z 1
X ( z)
3 4 z 1 z 2 3 4 z 1 z 2
Nous obtenons
1 1
X ( z ) 2 1 2
1 z 1
1 z 1
3
1
0 z 1
3 z 1 z
. x( z )
4 1 1 2 3 4 z 1 z 2 3z 2 4 z 1
1 z z
3 3
comme avant
1
X ( z) , z 0.9
(1 0.9 z ) (1 0.9 z 1 )
1 2
Solution Nous évaluerons le polynôme du dénominateur ainsi que les résidus à l'aide du
MATLAB script:
b = 1; a = poly([0.9,0.9,-0.9])
a=
1.0000 -0.9000 -0.8100 0.7290
>> [R,p,C]=residuez(b,a)
R=
0.2500 + 0.0000i
0.5000 - 0.0000i
0.2500 + 0.0000i
p=
0.9000 + 0.0000i
0.9000 - 0.0000i
-0.9000 + 0.0000i
C=
[]
Notons que le polynôme du dénominateur est calculé à l'aide de la fonction polynomiale poly
de MATLAB, qui calcule le polynôme coefficient, étant donné ses racines. Nous aurions pu
utiliser la fonction conv, mais l'utilisation de la fonction poly est plus pratique à cette fin. A
partir des calculs de résidus et en utilisant l'ordre des résidus donné en (4.16), nous avons
0.25 0.5 0.25
X ( z) , z 0.9
1 1
1 0.9 z 1 0.9 z 1 2
1 0.9 z
0.25
0.5
z
0.9 z 1 0.25 , z 0.9
1 0.9 z 1 0.9 1 0.9 z 1 2 1 0.9 z 1
5
x(n) 0.25 0.9 u (n) n 1 0.9 u(n 1) 0.25 0.9 u(n)
n n 1 n
x(n) 0.75 0.9 u(n) 0.5n 0.9 u(n) 0.25 0.9 u(n)
n n n
1 0.4 2 z 1
X ( z)
1 0.8 2 z 1 0.64 z 2
de sorte que la séquence résultante soit causale et ne contienne pas de nombres complexes.
Solution Nous aurons à trouver les pôles de X(z) sous la forme polaire pour déterminer la
ROC de la séquence causale
MATLAB script:
>> b = [1,0.4*sqrt(2)]; a=[1,-0.8*sqrt(2),0.64];
>> [R,p,C] = residuez(b,a)
R=
0.5000 - 1.0000i
0.5000 + 1.0000i
p=
0.5657 + 0.5657i
0.5657 - 0.5657i
C=
[]
>> Mp=(abs(p))’ % pole magnitudes
Mp =
0.8000 0.8000
>> Ap=(angle(p))’/pi % pole angles in pi units
Ap =
0.2500 -0.2500
A partir de ces calculs
0.5 j 0.5 j
X ( z)
, z 0.8
j j
1 1
1 0.8e 4
z 1 0.8e 4
z
MATLAB vérification:
>> [delta, n] = impseq(0,0,6);
x = filter(b,a,delta) % check sequence
x=
Columns 1 through 4
1.00000000000000 1.69705627484771 1.28000000000000 0.36203867196751
Columns 5 through 8
-0.40960000000000 -0.69511425017762 -0.52428800000000 -0.14829104003789
>> x = ((0.8).^n).*(cos(pi*n/4)+2*sin(pi*n/4))
x=
Columns 1 through 4
1.00000000000000 1.69705627484771 1.28000000000000 0.36203867196751
Columns 5 through 8
-0.40960000000000 -0.69511425017762 -0.52428800000000 -0.14829104003789
à condition que ROCx chevauche ROCh . Par conséquent, un système linéaire et invariant
dans le temps peut être représenté dans le domaine z par
Lorsque les systèmes LTI sont décrits par une équation différence
N M
y(n) ak y (n k ) bl x(n l ) (4.19)
k 1 l 0
la fonction système H(z) peut être facilement calculée. Prendre la transformation z des deux
côtés, et utiliser les propriétés de la transformation z,
N M
Y ( z ) ak z k Y ( z ) bl z l X ( z )
k 1 l 0
or
M
Y ( z) b z l
l
B( z )
H ( z) l 0
N
1 ak z k
X ( z) A( z )
k 1 (4.20)
b
b0 z M z M M
b0
N
z ( z aN )
N
N M
(z z ) l
H ( z ) b0 z l 1
N
(4.21)
(z p )
k 1
k
where zls are the system zeros and pk’s are the system poles. Thus H(z) (and hence an LTI
system) can also be represented in the z-domain using a pole-zero plot. This fact is useful in
designing simple filters by proper placement of poles and zeros.
To determine zeros and poles of a rational H(z), we can use the MATLAB function roots on
both the numerator and the denominator polynomials. (Its inverse function poly determines
polynomial coefficients from its roots, as discussed in the previous section.) It is also possible
to use MATLAB to plot these roots for a visual display of a pole-zero plot. The function z
plane (b,a) plots poles and zeros, given the numerator row vector b and the denominator row
vector a. As before, the symbol o represents a zero and the symbol x represents a pole. The
plot includes the unit circle for reference. Similarly, z plane (z,p) plots the zeros in column
vector z and the poles in column vector p. Note very carefully the form of the input
arguments for the proper use of this function.
où zls sont les zéros du système et pk 's sont les pôles du système. Ainsi, H z (et donc un
système LTI) peut également être représenté dans le domaine z à l'aide d'une courbe pôle-
zéro. Ce fait est utile dans la conception filtres simples par le placement approprié des pôles
et des zéros.
Pour déterminer les zéros et les pôles d'un H z rationnel, nous pouvons utiliser les racines
de fonction MATLAB sur les polynômes numérateur et dénominateur. (Sa fonction inverse
poly détermine le polynôme coefficients à partir de ses racines, comme discuté dans la section
précédente.) Il est également possible d'utiliser MATLAB pour tracer ces racines pour une
représentation visuelle d'un tracé pôle-zéro. La fonction zplane (b,a) trace les pôles et les
zéros, étant donné le vecteur de ligne de numérateur b et le vecteur de ligne de dénominateur
a. Comme précédemment, le symbole o représente un zéro et le symbole x représente un pôle.
Le tracé comprend le cercle unitaire à titre de référence. De même, zplane (z,p) trace les zéros
dans le vecteur colonne z et les pôles dans le vecteur colonne p. Notez très soigneusement la
forme des arguments d'entrée pour l'utilisation correcte de cette fonction.
Si le ROC de H(z) comprend un cercle unitaire ( z e j ), nous pouvons évaluer H(z) sur le
cercle unitaire, ce qui donne une fonction de réponse en fréquence ou de transfert H( e j ).
Puis à partir de (4.21)
M
j j ( N M )
(e z )
j
l
H (e ) b0e N
1
(4.22)
(e
1
j
pk )
Le facteur (e j - zl ) peut être interprété comme un vecteur dans le plan z complexe de zéro
zl vers le cercle unitaire à z e j , tandis que le facteur ( e j pk ) peut être interprété comme
un vecteur du pôle pk vers le cercle unitaire à z e j .
j
e j zl ... e j zM
H (e ) b0 (4.23)
e j pl ... e j pN
peut être interprété comme un produit de la longueur des vecteurs de zéros au cercle unitaire
divisé par la longueur des vecteurs des pôles au cercle unitaire et mis à l'échelle par b0 . De
même, la fonction de la réponse en phase.
M N
H (e j ) 0 or ( N - M ) (e j - zk ) - (e j - zk ) (4.24)
1 1
Cons tan t Linear
Nonlinear
peut être interprétée comme la somme d'un facteur constant, d'un facteur de phase linéaire et
d'un facteur de phase non linéaire (angles des "vecteurs zéro" moins la somme des angles des
"vecteurs pôles").
Dans le chapitre 3, nous avons tracé les réponses de magnitude et de phase dans MATLAB
en implémentant directement leurs formes fonctionnelles. MATLAB fournit également
FIGURE 4.6 Vecteurs pôle et zéro
une fonction appelée freqz pour ce calcul, qui utilise l'interprétation précédente. Dans sa
forme la plus simple, cette fonction est appelée par :
[H,w] = freqz(b,a,N)
La seconde forme
[H,w] = freqz(b,a,N,’whole’)
utilise N points autour du cercle entier pour le calcul. Sous une autre forme
H = freqz(b,a,w)
a. De (4.21)
1
H ( z) ; z
1 0.9 z 1
Notez que nous avons choisi b=[1,0] au lieu de b=1 car la fonction du plan z suppose que les
scalaires sont des zéros ou des pôles. La figure 4.7 illustre la courbe pôle-zéro qui en résulte.
MATLAB Script:
Les courbes de réponse sont illustrées à la figure 4.8. Si vous étudiez attentivement ces tracés,
vous constaterez qu'ils sont calculés entre 0 ≤ ω ≤ ≤ 0.99π et ne sont pas disponibles sur ω =
π. Ceci est dû au fait que dans MATLAB la moitié inférieure du cercle de l'unité commence à
ω = π.Pour surmonter ce problème, nous utiliserons la deuxième forme de la fonction freqz
comme suit.
À l'avenir, nous utiliserons l'un ou l'autre de ces formulaires, selon notre convenance. Notez
également que dans les graphiques, nous avons divisé les tableaux w et phaH par pi pour que
les axes des graphiques soient dans les unités de π et plus faciles à lire. Cette pratique est
fortement recommandée.
z 1
H z
z 0.9 z 0.81
2
Dans ce chapitre et les deux chapitres précédents, nous avons développé plusieurs
représentations du système. La figure 4.9 illustre les relations entre ces représentations
sous forme graphique.
transformée de Fourier en temps discret, cette stabilité implique que H (e j ) existe, ce qui
implique en outre que le cercle unitaire |z| =1 doit être dans le ROC de H(z). Ce résultat est
appelé le théorème de stabilité du domaine z ; par conséquent, les trajectoires en pointillés de
la figure 4.9 n'existent que si le système est stable.
Pour la causalité des LTI, nous exigeons que h n 0 , pour n 0 (c.-à-d. une
séquence du côté droit). Cela implique que le ROC de H(z) doit se trouver à l'extérieur
d'un cercle de rayon Rh . Ce n'est pas une condition suffisante puisque toute séquence
du côté droit a un ROC similaire. Cependant, lorsque le système est stable, sa causalité
est facile à vérifier.
Théorème 3 Stabilité des LTI causaux dans le domaine-Z
Un système LTI causal est stable si et seulement si la fonction système H(z) a tous ses
pôles à l'intérieur du cercle unitaire.
EXEMPLE 4.13 Un système de LTI causal est décrit par l'équation de
différence suivante :
Determine
Solution
Comme le système est causal, le ROC se trouve à l'extérieur d'un cercle dont le rayon
est égal à la plus grande amplitude du pôle.
a. En prenant la transformée en z des deux côtés de l'équation de différence et en
résolvant ensuite Y(z)/X(z) ou en utilisant (4.20), nous obtenons
1 z 2 1 z 2
H ( z) , z 0.9
1 0.81z 2 1 0.9 z 1 1 0.9 z 1
1
Z u n U z , z , par conséquent
1 z 1
V( z ) H ( z )U ( z )
1 z 1 1 z 1 1
, z 0.9 z 1
1 0.9 z 1 0.9 z 1 z
1 1 1
1 z 1
, z 0.9
1 0.9 z 1 1 0.9 z 1
Ou
1 1
V ( z ) 1.0556 1
0.0556 , z 0.9
1 0.9 z 1 0.9 z 1
Finalement,
Note that in the calculation of V (z) there is a pole-zero cancellation at z = 1. This has
two implications. First, the ROC of V (z) is still {|z| > 0.9} and not{|z| > 0.9 ∩ |z| > 1
= |z| > 1}.Second, the step response v(n) contains no steady-state term u(n).
Notez que dans le calcul de V(z) il y a une annulation de pôle-zéro à z =1. Cela a deux
implications. Premièrement, le ROC de V (z) est toujours z 0,9 et non pas
Z x n Z x n u n X z x (n ) z n
n 0
n 0 m k
1
m
x ( m) z z
( m k ) k
x ( m) z
m k m 0
Ce résultat peut maintenant être utilisé pour résoudre les équations de difference avec
des conditions initiales non nulles ou avec des entrées variables. Nous voulons
résoudre l'équation de difference
N M
1 ak y(n - k ) bm x(n - m), n 0
k 1 m0
{ y i , i 1, , N} et {x i , i 1, . . . , M }.
3 1
y(n) y(n 1) y(n 2) x(n), n 0
2 2
n
1
Où x(n) u (n)
4
3 1 1
Y ( z ) y 1 z 1Y ( z ) y 2 z 1 y 1 z 2Y ( z )
2 2 1
1 z 1
4
1
1
Y ( z)
1 z 1
4
1 2 z 1 (4.27
3 1 1 2 3 1
1 z z 1 z 1 z 2
2 2 2 2
9 1
2 z 1 z 2
Finalement, Y ( z ) 4 2
1 1
(1 z 1 )(1 z 1 )(1 z 1 )
2 4
2 1
1
Y ( z) 3 3
1 1 1 z 1 1 1 (4.28)
1 z 1 z
2 4
1 n 2 1 1 n
y ( n ) u ( n )
2 3 3 4 (4.29
1 n 2 1 1
n
y ( n ) u ( n ) u ( n )
2 3 3 4
Partie homogène Partie particulière
La partie homogène est due aux pôles du système et la partie particulière aux pôles
d'entrée.
1 1 n 1 n 2
y ( n ) u ( n) u ( n)
3 4 2 3
Réponses à l' état d ' équilibre
Réponses transitoires
La réponse transitoire est due aux pôles qui se trouvent à l'intérieur du cercle unitaire,
tandis que la réponse en régime permanent est due aux pôles qui se trouvent sur le
cercle unitaire. Notez que lorsque les pôles sont à l'extérieur du cercle de l'unité, la
réponse est appelée une réponse sans bornes.
• Réponses d'entrée nulle (ou condition initiale) et d'état zéro : Dans l'équation (4.27)
Y ( z ) a deux parties. La première partie peut être interprétée comme :
YZS z H z X z
où X IC z peut être considéré comme une entrée de condition initiale équivalente qui
génère la même sortie YZI que celle générée par les conditions initiales. Dans cet
exemple, X IC n est X IC n 1, 2
1 1 n 1 8
n
1 n
y (n) 2 u (n) 3 2 u (n)
3 4 2 3 2
Réponse à l'état zéro Réponse d'entrée nulle
De cet exemple, il est clair que chaque partie de la solution complète est, en général,
une fonction differente et met l'accent sur un aspect different de l'analyse du système.
Dans le chapitre 2, nous avons utilisé la fonction de filtre pour résoudre l'équation
difference, étant donné son coefficients et une entrée. Cette fonction peut également
être utilisée pour obtenir une réponse complète lorsque les conditions initiales sont
données. Sous cette forme, la fonction de filtrage est appelée par
y= filter(b,a,x,xic)
où xic est un tableau d'entrée de condition initiale équivalent. Pour trouver la réponse
complète dans l'exemple 4.14, nous allons utiliser le script MATLAB.
xic = filtic(b,a,Y,X)
Pour lesquelles b et a sont les matrices de coefficient du filtre et Y et X sont les
matrices de conditions initiales à partir des conditions initiales sur y(n) et x(n),
respectivement, sous la forme
X =[x(−1),x(−2),..., x(−M)]
Si x(n)=0, n ≤-1 alors X n'a pas besoin d'être spécifié dans la fonction filtic.
Dans l'exemple 4.14 nous aurions pu utiliser
>> Y = [4, 10]; xic = filtic(b,a,Y)
xic =
1 -2
pour déterminer xIC n .
Y+(z)= 1
1 1 1 1 2
z z
1.4742 2.1383z 1
Y z 3 3 3 X
z
1 0.95 z 1 0.9025 z 2 1 0.95z 1 0.9025z 2
1 0.5 z 1
X z
1 z 1 z 2
et en simplifiant, nous obtiendrons Y z comme fonction rationnelle. Ce
simplification et d'autres expansions partielles de fractions peuvent être faites en
utilisant MATLAB.
Script MATLAB:
Script MATLAB: