Académique Documents
Professionnel Documents
Culture Documents
2 – REPRESENTATION FREQUENTIELLE
Signaux périodiques et série de Fourier.
Signaux apériodiques et transformée de Fourier.
Fusion de ces deux notions grâce aux distributions.
Propriétés des séries et transformées de Fourier (linéarité, retard ...)
Spectre d’un signal, (largeur de bande)
Filtrage et transmission des signaux.(intégration, passe-bas, passe-haut, passe-bande....).
3 – ECHANTILLONNAGE ET NUMERISATION
Rôle des calculateurs numériques (gestion de procédé, historisation, stockage, traitement)
La chaîne d’acquisition.
Circuits électroniques :
Capteurs et mise à l’échelle.
Echantillonneur-bloqueur (composant).
Convertisseur analogique-numérique (composant).
Convertisseur numérique-analogique (composant).
Quantification et numération binaire.
De l’analogique au numérique.
Bruit de quantification.
Théorisation de l’échantillonnage. Théorème de Shannon. Filtre anti-repliement.
4 – FILTRAGE NUMERIQUE
Equations aux différences. (équations récurrentes).
Filtres numériques (non récursif, récursif).
Stabilité des filtres récursifs.
Exemples (intégration, passe-bas, passe-haut....).
Filtres non causaux.
Fonction de transfert échantillonnée.
Transformée en z et fonction de transfert en Z.
Filtre analogique vers filtre numérique
T. Chorot
L.A.G.E.P.
1
0 – INTRODUCTION
Un signal physique peut être défini comme une fonction du temps. Ce signal physique peut être
traité de deux façons :
o Par un système de traitement analogique qui travaille directement sur le signal à temps
continu.
o Par un système de traitement numérique qui travaille sur des nombres.
Notre choix s’est porté sur le traitement numérique des données.
Le but de ce cours est de vous initier à l’acquisition et au traitement de données physiques. Cela
sous-entend que l’on va chercher à mesurer de façon précise l’évolution d’un phénomène physique
(déplacement, température, pression, pH, etc.) et ensuite transmettre ces mesures à un ordinateur
pour réaliser différents traitements sur ces données ; le but étant souvent de mieux comprendre le
phénomène pour mieux le contrôler. La connaissance de l’évolution du phénomène pourra par
exemple nous décider à intervenir sur la source du phénomène physique. Mais notre cours s’arrêtera
avant le contrôle du processus.
Exemple : Suivi de la température d’une pièce chauffée par une source de chaleur.
Prenons un exemple : Le procédé consiste au chauffage d’une pièce par une source de chaleur
(radiateur par exemple). On désire suivre l’évolution de la température afin de la réguler.
L’acquisition des données consiste, dans ce cas, à mesurer la température de la pièce et de
transmettre les valeurs mesurées à l’ordinateur. Le traitement des données consiste ensuite à
exploitée les valeurs mesurées pour suivre l’évolution de la température de la pièce.
Chaîne
d’acq.
Le traitement des données numériques peut permettre dans cet exemple le calcul de la
température moyenne, des valeurs minimale et maximale observées pendant la durée
d’acquisition, etc. Ces mesures permettent d’évaluer les caractéristiques de la source de
chaleur et les valeurs de ces résultats pourraient servir à déclencher une intervention sur le
phénomène physique en agissant sur le contrôle de la source de chaleur. Ceci pourra se
traduire par exemple par l’arrêt du chauffage lorsqu’une certaine température est atteinte.
C’est la chaîne d’acquisition qui permet de mesurer et de transmettre les valeurs mesurées à
l’ordinateur.
2
Chaîne d’acquisition de données.
Système d’acquisition
Décideur
(homme/
calculateur)
Affichage
Traitement Signal numérique
Contrôle
Seules les parties en trait plein seront commentés dans la suite du cours.
3
1 – RAPPEL SUR LES SIGNAUX
On appelle signal une fonction x(t) où t prend ses valeurs dans R (ou un sous-ensemble de R), et
x(t) est un nombre réel ou complexe. x(t) est donc l’amplitude du signal à l’instant t.
Puissance : x2(t) (si x est réelle) ou |x(t)|2 = x(t).x*(t) (si x est complexe)
Remarque : la puissance instantanée est une fonction réelle positive du temps.
Les valeurs suivantes dépendent des bornes d’intégration, le support de x(t) noté T.
Energie : = ∫(T) x(t)2.dt (si x est réelle) ou ∫(T) |x(t)|2.dt (si x est complexe)
Remarque : l’énergie est un nombre réel positif.
1
Valeur moyenne : = T ∫(T) x(t).dt C’est un nombre réel ou complexe.
1 1
Puissance moyenne : = T ∫(T) x(t)2.dt (si x est réelle) T ∫(T) |x(t)| .dt (si x C)
2
ou
C’est un nombre réel.
--------------------------------------------------------------------------------------------------------
Espaces fonctionnels
Un E.V. est un ensemble de vecteurs E={u, v, w...} muni de deux lois de composition :
La seconde est externe : Il existe un corps de scalaires (par exemple R,+,) dont est élément, alors
.u E. Et on a : ().u = .u .u & .(u+v) = .u + .v
--------------------------------------
4
Une fonction est localement sommable si pour tout interval [a,b] l’intégrale ∫ ab x(t) dt <
1
Par exemple x(t)=et est localement sommable ; x(t) = t-1 ne l’est pas.
--------------------------------------
L1 est l’ensemble des fonctions sommables sur [support] i .e. ∫ |x(t)|.dt <
L2 est l’ensemble des fonctions de carré sommable sur [support] i .e. ∫ |x(t)|2 dt <
--------------------------------------
Ces ensembles constituent des espaces vectoriels (fonctionnels) avec le corps des scalaires (C,+,) :
- l’addition de deux fonctions est une fonction. La fonction nulle est élément neutre.
- .x(t) est une fonction. (avec C).
- produit scalaire de deux fonctions : <x(t),y(t)> = ∫ x(t).y*(t).dt C’est un nombre C ou R.
--------------------------------------
Si de plus || ei(t) || = 1 pour tout indice i ; alors { ei(t) } est une base orthonormée. Et on a :
Cette base est dite complète si la seule fonction orthogonale à tout ei(t) est la fonction nulle.
-------------------------------------------------------------------------------------------------------------
5
Distributions
Soit f(t) une fonction ‘test’ élément d’un certain espace fonctionnel.
Une distribution T est une forme linéaire qui associe un nombre ‘a’ à la fonction f(t) :
a = T(f) = <T,f(t)> .
*) Puisqu’il s’agit d’une forme linéaire :< T,a1.x1(t) + a2.x2(t) > = a1.<T,x1(t)> + a2.<T,x2(t)>
*) L’ensemble de toute les distributions est un espace vectoriel, et nous pouvons définir la
combinaison linéaire de distributions : < a1.T1 + a2.T2 , x(t) > = a1.<T1,x(t)> + a2.<T2,x(t)>
*) Certaines distributions (dite régulières) peuvent être quelquefois assimilée ou associée à une
fonction x(t); On a alors : a = Tx(f) = <Tx,f(t)> = () x(t).f(t).dt
Il faut bien sur, que cette intégral ait un sens. Nous allons distinguer trois espaces fonctionnels pour
la fonction f(t) :
1) f(t) D l’ensemble des fonctions infiniment dérivables sur un support borné [t1 ; t2] et nulles en
dehors de cet intervalle. x(t) peut alors être quelconque, pourvue qu’elle soit localement intégrable.
On a x(t) D’ le dual topologique de D.
2) f(t) S l’ensemble des fonctions à décroissance rapide (plus vite que t-n). Il faut alors que x(t)
soit à croissance lente (polynome de degré borné). On a x(t) S’ , les distributions tempérées.
3) f(t) E l’ensemble des fonctions localement intégrables.(ea.t , cos(.t) …) Il faut alors que x(t)
soit défini sur un support borné [t1 ; t2] et nulle en dehors de cet intervalle. On a x(t) E’
Propriétés :
*) Retard
6
*) Dérivée d’une distribution :
< Tx’, f(t) > = () x’(t).f(t).dt = [x(t).f(t)] () - () x(t).f’(t).dt = - () x(t).f’(t).dt
car [x(t).f(t)] () est nulle (puisque soit x(t), soit f(t) est nulle à l’infinie);
Appliquons ce résultat à la fonction échelon (fonction de Heaviside H(t)) : Il faut que f(t) S
puisque H(t) n’est pas à support borné, donc est dans S’.
< TH’,f(t) > = - < TH, f’(t) > = - () H(t).f’(t).dt = - 0 f’(t).dt = -[f(t)] 0 = - (f() - f(0))
NB : H(t) est une distribution régulière, tandis que (t) est une distribution singulière.
La fonction échelon H(t) est continue et dérivable sauf en t=0. Sa dérivée au sens des fonctions
n’est définie que sur R* et vaut 0.
La distribution régulière TH associée à H(t) posséde une dérivée puisque il a été montré que : <TH’,
f(t)> = <(t),f(t)> On dira par extension que la dérivée de H(t) est (t) «au sens des distributions».
De manière général, toute discontinuité d’amplitude finie A, à l’instant ti, se représente comme une
fonction échelon A.H(t-ti) ; et conduit à un terme A.(t) lorsqu’on le dérive au sens des distibutions.
--------------------------------------------------------------------------------------------
7
Bruit
C’est un signal aléatoire b(t). Sa valeur à chaque instant b(t1) n’est pas prévisible. C’est donc une
variable aléatoire qui peut être décrite par ses ‘moments’ (moyenne, variance…) Ces moments
dépendent a priori de l’instant considéré t1.
Un bruit est stationnaire si ses propriétés statistiques (moments) ne dépendent pas du temps.
Un bruit est ergodique si ses propriétés statistiques peuvent être déterminées par une analyse
temporelle du signal sur une durée suffisament longue :
lim 1
moyenne : E[b] = mb = T T . (T) b(t).dt
lim 1 lim 1
variance : b2 = T T . (b(t)-mb)2.dt = T T . (T) b2(t).dt - mb2
lim 1
fonction d’autocorrélation d’un bruit : Cbb() = T T . ∫(T) b(t+).b(t).dt
Cbb() = b2 + mb2. Cbb() mb2.
Il s’agit d’un signal dont la valeur à l’instant t+dt n’est absolument pas corrélée à sa valeur à
l’instant t. (ce qui est physiquement impossible pour des raisons de continuité du signal.)
Le bruit blanc est donc un signal idéal, comme un sinus par exemple, qui n’existe pas en pratique ;
mais qui est très utile pour établir les méthodes de calcul en traitement du signal.
8
2 – REPRESENTATION FREQUENTIELLE
2.
Soit la base { ej.n..t , n=- ;+} (qui n’est pas normée) ( et T ) => série complexe :
1
C(n) = T . ∫ x(t).e-j.n..t .dt avec n= ]- ; + [ ... x(t) = n=-, Cn.ej.n..t
Compte tenue des relations d’Euler précédentes, on obtient la décomposition en série réelle :
a0 = 1/T ∫ x(t).dt
an = 2/T ∫ x(t).cos(n..t).dt pour n=1….
bn = 2/T ∫ x(t).sin(n..t).dt pour n=1….
si x(t) est réelle, alors les an et bn sont réels. puisque Cn = ( an - j.bn ) / 2 on en conclue :
La partie réelle est donc an/2 et est paire par rapport à l’indice n.
La partie imaginaire est donc -bn/2 et est impaire par rapport à l’indice n.
Une représentation intéressante de la décompostion consiste à décrire x(t) comme une somme de
cosinus de module et phase fonctions du rang n : x(t) = n=0, An.cos(n..t + n)
bn
Compte tenu des relations d’Euler, on a : An = ( an2 + bn2 )½ et n = arc tg ( a )
n
----------------------------------------------------------------
9
Signaux apériodiques et Transformée de Fourier
--------------------------------------------------------------------
Considérons un train d’onde de durée t=2.r/ : x(t) = cos(.t) sur l’intervalle t[-r/ ; r/ ] ;
X() = ∫() x(t).e-j..t.dt = ∫-r/ r/ cos(.t).e-j..t.dt = ∫-r/ r/ (e-j..t + ej..t).e-j..t /2 . dt
sin((.r sin((.r r r r r
= = sinc((. sinc((.
C’est à dire la somme de deux fonctions sinus-cardinal centrées sur et .
10
Exemple avec =2, et k=3 puis 10:
sin((.r sin((.r
La surface de est de même chose pour la surface de
r
L’amplitude est de pour et pour .
Lorsque ce train d’onde s’allonge, la transformée tend vers deux pics dont la surface reste . Après
passage à la limite, on a : F (cos(.t)) () = () + ()
11
(e) Pour l’exponentielle complexe : exp(j..t) = cos(.t) + j.sin(.t)
L’impulsion de Dirac trouve alors une application évidente pour la représentation des signaux
périodique. En effet, on a :
Et on vient de voir que les fonctions du temps cos(n..t), sin(n..t) ou encore exp(j.n..t) peuvent
être représentées dans le domaine fréquentiel par des impulsion de Dirac placées a certaines valeurs
particulières sur l’axe des abscisses : =n..
C’est à dire des impulsions de Dirac placées aux abscisses multiples de et d’amplitude Cn.
-----------------------------------
12
Propriétés :
Linéarité : Ca.x+b.y (n) = a.Cx (n) + b.Cy (n) F [a.x+b.y] () = a.F [x] () + b.F [y] ()
Dérivation : Soit x(t) et sa transformée X() . Soit y(t) =dx/dt , alors Y() = j.. X()
Soit x(t) et ses coefficients Cx(n). Soit y(t) =dx/dt , alors Cy(n)= j.n..Cx(n)
Il faut dériver au sens des distributions.
Soit x(t) un signal périodique. Sa valeur moyenne sur [T] est par définition Cx(0) = ∫ x(t).dt
Si cette valeur moyenne est nulle, alors toute primitive de x(t) est périodique.
Par exemple y(t) = ∫ x(t’).dt’ + Cste
Par conséquent dy/dt = x(t)
1
Et donc j.n..Cy(n) = Cx(n) … ou encore Cy(n) = . Cx(n)
j.n.
Parité – imparité :
Soit x(t) une fonction périodique paire. Donc bn=0 ; et Cn = an/2 est réel pur.
Soit y(t) une fonction périodique impaire. Donc an=0 ; et Cn = -bn/2 est imaginaire pur.
Or Cx(n) est réel et Cy(n) est imaginaire. Donc les coefficients paires doivent être nuls.
Donc un signal pair ou impaire modulo une translation de T/4 a ses coefficients pairs nuls.
13
Théorème de Parseval
Si un signal se décompose selon une base orthonormée, tel que xn(t) = i=1,n ai.ei(t) alors on a :
∫ |x(t)|2 dt = i=1, |ai|2 = énergie du signal
Avec les bases orthogonales mais non normées utilisées pour les séries de Fourier, on a :
∫ |x(t)|2 dt = T.(a02 + n=1, (an2/2 + bn2/2 )) = T.(A02 + n=1, (An2/2 )) = T. n=-, |Cn|2
() = ∫ Cxx(v) . ej..v . dv donc la densité spectrale énergétique est la transformée de Fourier de
la fonction d’autocorrélation du signal.
Pour que cette somme converge, il faut que les coefficients Cn décroissent au moins en 1/n.
Considérons une fonction périodique x(t) présentant une discontinuité de première espèce
d’amplitude A. En choisissant judicieusement l’origine, on place cette discontinuité en t=0. Donc
x(0+)-x(0-)=A ou encore x(0+)-x(T-)=A
T.Cn = ∫ x(t).exp(-j.n..t).dt
que l’on intègre par parties ; notez que x’(t) est la dérivée de x(t) au sens des fondctions.
x(t).exp(-j.n..t) T x'(t).exp(-j.n..t)
T.Cn = [ ]0 + ∫ .dt
-j.n. -j.n.
x(T-).exp(-j.n..T-)-x(0+).exp(-j.n..0+) x'(t).exp(-j.n..t)
T.Cn = + ∫ .dt
-j.n. -j.n.
- + x(T-)-x(0+) x'(t).exp(-j.n..t)
exp(-j.n..T ) = exp(-j.n..0 ) = 1 donc : T.Cn = + ∫ .dt
-j.n. -j.n.
A x'(t).exp(-j.n..t)
x(0+)-x(T-) = A donc x(T-)-x(0+) = -A donc : T.Cn = + ∫ .dt
j.n. -j.n.
Ainsi, la discontinuité de x(t) se traduit par un terme en 1/n dans l’expression algébrique de ses
coefficients de Fourier.
14
Dilatation de l’échelle du temps : Soit x(t) et sa transformée X()
X(/k)
Y() = ∫ y(t).e-j..t.dt = ∫ x().e-j./k.d / |k| = |k|
Un signal périodique présente un spectre de raies, c’est à dire des impulsions de Dirac placées aux
valeurs de fréquences (pulsations) qui constituent le signal. Un signal apériodique présente un
spectre continu. Dans ces deux cas l’amplitude tend vers zéro quand croit, de telle sorte que
l’énergie (E = ∫ X().X*().d ) soit finie.
Une conséquence du théorème de dilatation de l’échelle du temps est que plus les variations d’un
signal sont rapides, plus sa transformée s’étend loin dans le domaine fréquentiel.
Il est facile de déterminer le spectre d’un signal dont on connaît l’expression algébrique (une
intégrale à calculer). Cependant transmettre un signal connu a priori ne présente aucun intérêt. Un
cours comme celui ci où l’on calcule le spectre de fonctions connues permet de s’habituer aux outils
mathématiques, de se faire une idée du spectre de tel ou tel type de signal. Mais en pratique, on ne
connaît pas le signal transmis, donc on ne connaît pas son spectre. A priori, le signal en question est
donc un signal aléatoire dont on ne connaît qu’approximativement le domaine spectral.
Chaque source de signal, selon sa nature, génère un signal aux variations plus ou moins rapides. Il
lui correspond alors un spectre qui occupe un certain domaine de fréquence :
voix humaine : 100 à 5000Hz
instruments de musique : 10 à 20000Hz
ondes sismiques : 10-3 à 10 Hz
émetteur d’une station radio en MF : fréquence de la porteuse 300kHz.
signal vidéo de luminance TV : 0Hz à 4 ou 5 MHz selon les standards (secam, pal, ntsc).
Les capteurs, qu’ils soient naturels ou artificiels, sont caractérisés par un certain domaine de
fréquence pour lequel leur sensibilité est non nul : La bande passante.
oreille humaine : 30 à 15000Hz
oeil : continu à 1 seconde d’arc
odorat :
thermistance :
caméra vidéo & ccd:
--------------------------------------------------------------------------------------
15
Filtrage et transmission des signaux.
Un signal est dit filtré lorsqu’il traverse un système dynamique linéaire. Ce système dynamique
linéaire est caractérisé par une relation différentielle liant son entrée u(t) et sa sortie x(t) :
dnx dx dmu du
an. dtn + … a1. dt + a0.x(t) = bm. dtm + … b1. dt + b0.u(t)
Si x(t) et u(t) sont L1, on peut utiliser la transformée de Fourier et cette relation devient :
an.(j.)n + … a1.(j.) + a0
c’est à dire : X() = . U() = H() . U()
bm.(j.)m + … b1.(j.) + b0
--------------------------------------
A
passe bas (1° ordre) : gain constant si 0 puis gain0 si H() =
1 + j.
A.j.
passe haut (1° ordre) : gain0 si 0 puis gain constant si H() =
1 + j.
16
3 – ECHANTILLONNAGE ET NUMERISATION
Calculateurs numériques:
- Gestion des procédés : Acquisition des mesures des variables du procédé, comparaison avec les
consignes, prise de décision, sortie des commandes. Constitution d’un fichier de mesure
(historisation) pour le suivi de qualité, l’analyse des pannes. Affichage interactif sur synoptique...
- Numérisation des informations analogiques : CD audio, NICAM, DVD, TNT. immunité au bruit,
compression de l’information, traitement numérique (remastérisation)
- Les signaux à transmettre à l’ordinateur/calculateur doivent traduire au mieux le signal tout en
nécessitant un espace de stockage limité.
Numération binaire.
- En base dix : dix symboles (chiffres) pour représenter les quantités zéro à neuf. {0123456789}
nombre = concaténation de chiffres décimaux : an...a2a1a0,a-1a-2... qui représente une somme
pondérée des puissances de dix. an10n + ... a2102 + a1101 + a0100 + a-110-1 + a-210-2 + ...
- En base deux : deux symboles (chiffre binaire = bit) pour représenter les quantités zéro à un. {0,1}
nombre = concaténation de bits : an...a2a1a0,a-1a-2... qui représente une somme pondérée des
puissances de deux. an2n + ... a222 + a121 + a020 + a-12-1 + a-22-2 + ...
- En base seize : seize symboles pour les quantités zéro à quinze. {0123456789ABCDEF}
nombre = concaténation d’hexadécimaux : an...a2a1a0,a-1a-2... qui représente une somme pondérée
des puissances de seize. an16n + ... a2162 + a1161 + a0160 + a-116-1 + a-216-2 + ...
binaire naturel sur n bits bn-1 .. .b1 b0 de [000...000] à [111...111] = 2n-1 pour les positifs
binaire signé sur n bits bn-1 .. .b1 b0 de [000...000] à [011...111] = 0 à 2n-1-1 pour les positifs
de [111...111] à [100...000] = -1 à -2n-1 pour les négatifs
pour un négatif tel que –x [-2n-1 ; -1] sur n bits, on calcule en fait son complément à 2n : y = 2n-x
17
Quantification . Exemple de signal numérisé sur 4 bits en binaire signé. Il y a donc 16 niveaux de
quantification, pour coder les quantités –8 à +7. Et on fait correspondre la valeur la plus négative
avec –1. L’incrément d’une valeur à l’autre est donc 1/23 = 1/8 = 0,125
0111 7 0,875
0110 6 0,750
0101 5 0,625
0100 4 0,500
0011 3 0,375
0010 2 0,250
0001 1 0,125
0000 0 0
1111 -1 -0,125
1110 -2 -0,250
1101 -3 -0,375
1100 -4 -0,500
1011 -5 -0,625
1010 -6 -0,750
1001 -7 -0,875
1000 -8 -1,000
-----------------------------------------------------------------------------------------------
Bruit de quantification.
Lors de la numérisation sur n bits en binaire , le convertisseur associe à chaque valeur réelle,
le nombre binaire le plus proche (arrondi). Il commet donc une erreur qui est un nombre réel
compris entre -1/2 et +1/2 . Cette erreur qui résulte de la numérisation est équivalente à un bruit qui
serait ajouté au signal : le bruit de quantification dont la loi de probabilité est constante.
18
La chaîne d’acquisition
Circuits électroniques
a) Capteurs :
Les signaux sont des grandeurs physiques de nature très diverses. Un capteur est un élément
matériel qui réalise une application depuis la variable physique vers une tension. Cette application
peut être linéaire, affine, logarithmique, exponentielle...en tout état de cause elle doit être monotone.
b) Mise à l’échelle :
Les convertisseurs analogique-numérique sont conçues pour travailler dans une certaine gamme de
tension. par exemple [-10V ;+10V] ; [0V ;+5V] ... Toute tension en dehors de cet intervalle
provoquera une saturation du CAN. A contario, une tension dont les variations serait trop faible
n’utilisera pas toute la dynamique du CAN. La tension fournie par le capteur doit donc être mise à
l’échelle par une fonction affine pour profiter au mieux de la dynamique du CAN : y=a.x+b .
R R
y = R .x + R .u y = a.x + b
1 2
-------------------------------------------------------------------------------------------------
19
c) Echantillonneur-bloqueur (sample & hold)
convertisseur FLASH
-----------------------------------------------------------------------------------------------
20
e) Convertisseurs numérique-analogique
A chaque état logique ‘0’ ou ‘1’ est associé une tension de référence précise.
Par exemple 0 & 1 Volt ; ou 0 & 1/256 Volt.
…à résistances pondéré
Ce système n’est pas judicieux car il faut que la précision absolue soit la même de R à 16.R.
--------------------------------------------------------------------------------------------------
… à réseau R-2R.
--------------------------------------------------------------------------------------------------
21
De l’analogique à l’analogique via le numérique : On distingue plusieurs types de signaux :
Signal à amplitude continue et temps discret (signal échantillonné, séquence) : x(n.Te) ou xe(t).
22
Caractérisation du bruit de quantification:
2n-1.q 22n-2.q2
2- Pour un sinus, la tension efficace est : Veff = et la puissance : Peff = 2 = 22n-3.q2.
2
2n-1.q 2 22n-2.q2
3- Pour un signal aléatoire gaussien : = 3 ; donc la puissance est : = P = 9 .
22n-2.q2
On notera donc : Ps = (avec a=1 ou 2 ou 9)
a
22n-2.q2
a 22n.3
Donc : Rapport signal/bruit = q 2 = a => SNRdB = 6.n + 10.log10(3/a) .
12
------------------------------------------------------------------------------------------
densité de probabilité gaussienne du signal utile :
23
-----------------------------------------------------
Plus la fréquence d’échantillonnage est élevée, plus l’énergie du bruit est étalée dans le
domaine fréquentiel. Une proportion de plus en plus importante de cette énergie se trouve alors
rejetée au delà de la fréquence de cassure du récepteur. Et si l’on compare le bruit et le signal dans
la seule bande utile, on constate donc une amélioration du SNR.
24
Théorisation de l’échantillonnage
Rappelons la définition de la distribution de Dirac : x() = < (t-),x(t) > = () (t-).x(t).dt
Le signal est donc capté aux instants k.Te. On obtient une liste de valeurs : x(k.Te).
Les x(k.Te) constituent une liste de valeurs et non plus un signal transportant de l’énergie. Pour
conserver cette notion d’énergie nous devont définir un signal échantillonné comme une somme
pondérée d’impulsion de Dirac :
Le signal échantillonné xe(k.Te) est donc un peigne de Dirac de période Te, noté ШTe(t), modulé en
amplitude par le signal x(t).
-----------------------------
2.
si = n.e = n. T alors il vient : cos(n.k.2.) – j.sin(n.k.2.) = 1 – 0 =
e
2.
si n. T alors il vient : xc – j.xs = 0 car xc et xs prennent des valeurs aléatoires entre –1
e
et 1 de moyenne nulle.
-----------------------------
Soit 0 une valeur quelconque de l’axe des pulsations. alors : Xe(0) = x(k.Te).e-j..k.Te
Donc : Xe(0+e) = Xe(0) : Le spectre du signal échantillonné est donc périodique, de période e.
25
---------
autre démonstration :
Et que le produit simple dans le domaine temporel devient produit de convolution dans le domaine
fréquentiel…
Ce qui signifie que le spectre X() se retrouve périodisé le long de l’axe des pulsations avec un
interval de e. Ce qui confirme le résultat encadré obtenu précédement.
-----------------------------------------------------------------------------
Théorème de Shannon
Ainsi Xe() = X() + n0 X(n-n.e) tel que n-n.e = n = n.e + 1 n
Or on sait que |X()| est une fonction paire donc |X()| = |X(-)|
La fréquence d’échantillonnage doit être supérieure ou égale à deux fois la plus haute fréquence
contenue dans le signal à échantillonner. Si besoin, le signal sera d’abord traité par un filtre
analogique passe-bas dit filtre-anti-repliement.
-----------------------------------------------------------------------------
Filtre anti-repliement.
26
Spectre du signal reconstitué:
Nous avons vue que si x(t) à pour transformée X(), alors la transformée du signal
échantillonné xe(t) est : Xe() = X()*(-k.e)
Cette expression est valable pour le signal tel qu’il est stocké dans un fichier (ou la mémoire
de l’ordinateur). Mais au moment de sa restitution comme un signal physique (porteur d’énergie)
les échantillons sont appliqués à un bloqueur qui fournit une tension constante par morceaux.
*
Signal échantillonné, dans la mémoire
du calculateur, sur un CD…
*
*
Signal reconstitué, à la sortie du
convertisseur numérique-analogique.
Il est ‘constant par morceau’.
*
27
Le filtrage provoqué par le bloqueur dans la bande utile, peut être astucieusement compensé
par un filtre passe-bas d’ordre élevé, avec une résonnance adéquate. Le résultat est un filtre dont la
réponse en fréquence est plate jusqu’à Fe/2, puis décroit rapidement pour annuler les composantes
fréquentielles présentes autour de Fe.
% effet du filtrage du bloqueur suivi d'un passe bas du second ordre (puis 6° ordre) [ fb.m ]
clf ; hold on ; x=0.01:0.001:2 ; f=(1-exp(-j*2*pi*x))./(j*2*pi*x) ; plot(x,abs(f),'g') ; grid
x1=0.60 ; g1=1./((1-(x/x1).^2)+j*(x/x1)*0.8);
x2=0.70 ; g2=1./((1-(x/x2).^2)+j*(x/x2)*1.32);
x3=0.90 ; g3=1./((1-(x/x3).^2)+j*(x/x3)*1.3);
plot(x,abs(f.*g1.*g2.*g3),'b')
pause ; clf ; plot(log10(x),20*log10(abs(f.*g1.*g2.*g3)))
28
Synthèse des phénomènes liés à
-) l'échantillonnage,
-) la quantification,
-) la reconstruction du signal 'constant par morceaux' en sortie du bloqueur.
-) le signal bloqué puis filtré judicieusement.
29
4 – FILTRAGE NUMERIQUE
a0.y(k) + a1.y(k-1) + a2.y(k-2) + ... + an.y(k-n) = b0.x(k) + b1.x(k-1) + b2.x(k-2) + ... + bm.x(k-m)
a) Filtre à réponse impulsionnelle finie (non récursif) : tous les ai sont nuls pour i 1 ; donc :
Si x(k) est une impulsion (x(0)=1, les autres sont nuls) Après la mieme valeur, la sortie y(m+1)=0
Exemples :
b) Filtre à réponse impulsionnelle infinie (récursif) : y(k) est fonction de ses valeurs passées.
a0.y(k) = b0.x(k) + b1.x(k-1) + b2.x(k-2) + ... + bm.x(k-m) - a1.y(k-1) - a2.y(k-2) + ... - an.y(k-n)
pour x(k)=impulsion et k>m il reste toujours : a0.y(k) = - a1.y(k-1) - a2.y(k-2) + ... - an.y(k-n)
Exemple :
30
Stabilité des filtres récursifs :
Un filtre numérique est instable si après une impulsion x(0)=1, la sortie y(k) diverge quand k->
(On voit immédiatement qu’un filtre non récursif ne peut pas être instable.)
Le filtre est stable lorsque, si x(k)=0 alors : |y(k)| < |y(k-1)| <=> |y(k)| - |y(k-1)| < 0
par exemple, si y(k) = a.y(k-1) alors |y(k)| - |y(k-1)| = |a|.|y(k-1)| - |y(k-1)| = ( |a| - 1 ) . |y(k-1)|
Si les racines de cette équation sont de module inférieur à 1 alors le système est stable.
-------------------------------------------------------------------------------------------------
exemple de filtres
-------------------------------------------------------------------------------------------------
31
filtres non causaux :
Un filtre non causal construit la valeur actuelle de sa sortie y(k) avec des valeurs futures de son
entrée x(k+...). Ceci n’est évidement pas réalisable en temps réel, mais peut être réalisé en temps
différé. Par exemple lors de la lecture d’un CD-audio, lors d'une émission TNT.
par exemple :
a0.y(k) + a1.y(k-1) + a2.y(k-2) + ... + an.y(k-n) = b0.x(k) + b1.x(k-1) + b2.x(k-2) + ... + bm.x(k-m)
Rappel : Si x(t) a pour transformée X() , alors x(t-k.T) a pour transformée X().e-j..k.T . )
Donc l’équation aux différences ci-dessus s’écrit dans le domaine fréquentiel :
La stabilité de cette FTE est déterminée par ses pôles qui doivent être de module inférieur à 1.
Le dénominateur a0 + a1.z-1 + a2.z-2 + ... + an.z-n peut alors s’écrire : a0.zn + a1.zn-1 + a2.zn-2 + ... + an
Qui n’est rien d’autre que l’équation caractéristique du filtre: a0.zn + a1.zn-1 + a2.zn-2 + ... + an = 0
Si les racines zi de ce polynome sont inférieures à 1 en module, alors le filtre est stable.
32
2.
Remarque sur la périodicité de F() : On pose = T , c’est la pulsation d’échantillonnage.
b0 + b1.e-j..T + b2.e-j..2.T + ...
soit une pulsation quelconque : F() = on a alors :
a0 + a1.e-j..T + a2.e-j..2.T + ...
b0 + b1.e-j.(.T + b2.e-j.(.2.T + ...
F() =
a0 + a1.e-j.(.T + a2.e-j.(.2.T + ...
Y() 0,9
donc : =
X() 1 - 0,1.e-j..T
0,9
|F()| =
1,01 - 0,2.cos(.T)
Y() 0,5
donc : =
X() 1 - 0,5.e-j..T
0,5
|F()| =
1,25 - cos(.T)
33
Transformée en Z :
Poser z = ej..T ne constitue pas simplement un allègement de l’écriture. Mais ceci est à la base de
la définition d’une transformation du signal lorsque celui-ci est échantillonné.
d
Alors que la variable de Laplace ‘p’ correspond à l’opérateur dérivation dt ; la variable ‘z’
correspond à l’opérateur ‘avance’ d’une période d’échantillonnage x((k+1).T).
Laplace d Laplace
x(t) -------> X(p) …&… dt x(t) -------> p.X(p)
Z Z
x(k.T) -------> X(z) …&… x((k+1).T) -------> z.X(z)
La transformée en z d’un signal échantillonné se définit comme suit : X(z) = x(k.T).z-k
k=0
-------------------
1 z
Premier exemple : x(k.T)=A (une constante), alors : X(z) = A. z-k = A.1-z-1 = A.z-1
k=0
Second exemple : y(k.T) = A.k.T (c’est à dire une droite de pente A).
-k -k -k-1
alors : X(z) = A.k.T.z = A.T. k.z = A.T. k.z .z = -A.T.z. (-k).z-k-1
k=0 k=0 k=0 k=0
d d d z -1 A.T.z
= -A.T.z. dz z-k = -A.T.z . dz z-k = -A.T.z . dz z-1 = -A.T.z . (z-1)2 = (z-1)2
k=0 k=0
Autre calcul : On peut dire que cette droite résulte de l’intégration du signal constant : x(k.T)=A.
T T z A.T.z
(z-1).Y(z) = T.X(z) Y(z) = z-1 .X(z) … Donc Y(z) = z-1 . A . z-1 = (z-1)2
-------------------
signal d’entrée x(k) équation aux différence signal de sortie (filtré) y(k)
signal d’entrée X(z) fonction de transfert échantillonné F(z) signal de sortie Y(z) = F(z).X(z)
z = ej..T
spectre en entrée X() fonction de transfert F() spectre en sortie Y() = F().X()
34
Transformées de Laplace et Transformées en Z de quelques signaux élémentaires :
e-at.H(t) 1 1 x(k.T) = k
avec =e-a.T
p+a 1-.z-1 = exp(-a.k.T)
1 -at -bt 1 1 1 1 1 k k
.( e - e ).H(t) .( - )
b-a (p+a)( p+b) b-a 1-.z 1-.z-1 ) avec
.( -1 -
b-a
=e-b.T
35
Calcul de la fonction de transfert échantillonnée à partir de la fonction de transfert continue :
F(p)
La fonction de transfert en Z s’obtient donc en écrivant : F(z) = (1-z-1) . Z [ ] …
p
F(p)
… où p est un signal dont on peut trouver la transformée en z dans la table précédente.
-----------------------------------------------------------------------------------------
K
Exemple : F(p) = (filtre du 1° ordre de constante de temps , et de gain statique K)
.p+1
F(p) K K/ 1
On pose S(p) = p = = qui est de la forme (p+a)( p+b) avec a=0 et b=1/.
p.(.p+1) p.(p+1/)
1 1 1
Donc S(z) = K/ . b-a . ( -1 - ) avec = e0.T =1 et = e-T/
1-.z 1-.z-1
1 1 1 1
Donc S(z) = K/ . . ( 1 - z-1 - -T/ -1 ) = K . ( 1 - z-1 - )
1-e .z 1 - e .z-1 -T/
1 1 1 - z-1
Donc F(z) = (1-z-1) . K . ( 1 - z-1 - ) = K.(1 - )
1 - e-T/.z-1 1 - e-T/.z-1
(1 - ).z-1 (1 - )
On allège la notation en posant : = e-T/F(z) = K . -1 = K.
1 - .z z-
(1 - )
On retrouve alors l’équation aux différences : X(z) = K . . U(z)
z-
36
Convertisseur Sigma-Delta
L’idée de base dans ce type de convertisseur est de compenser une faible définition (peu de bits) de
la grandeur mesurée par un sur-échantillonnage. Ce sur-échantillonnage ne doit évidemment pas
répéter plusieurs fois la même valeur. Pour ce faire, un bouclage interne est effectué de manière à
obtenir des échantillons successifs qui tendent en moyenne vers la valeur mesurée.
Schéma de principe:
(Sur-échantillonnage = 10*Fe)
1
Y(z).(1+F(z)) = X(z).(1+F(z)) + B(z) … donc Y(z) = X(z) + 1 + F(z) . B(z)
1
On pose : G(z) = 1 + F(z) donc Y(z) = X(z) + G(z) . B(z)
Le bruit de quantification B(z) possède une densité spectrale énergétique constante. Il faut alors que
la fonction de transfert G(z) filtre les bases fréquences, puisque c'est là que ce trouve le signal utile.
1 1 z-1
Par exemple, si F(z) = z - 1 alors G(z) = 1 + 1/(z-1) = z = 1 – z-1
-j.T
Gain fréquentiel : G() = 1 – e = 1 – e-j.2..f.T = j.2..f.T + (2..f.T)2/2 + …
2.z - 1 -j.2..f.T
Autre exemple : si F(z) = z2 - 2.z + 1 alors G() = 1 – 2.e + e-j.2..f.T
37
Mise en œuvre avec Simulink :
38
Exemples pratiques de signaux numériques:
fichier WAV : Celui-ci contient des sons en format non compressé, sur 16 bits en binaire signé.
L’en-tête contient 46 octets qui fournissent diverses informations pour le programme de lecture. Les
données ci-dessous donnent l’en tête et le début du fichier (de taille 988766 octets et contenant
988720 octets utiles):
39
CD audio :
-) Les deux canaux gauche et droit sont échantillonnés à la fréquence de 44100Hz, en binaire signé
sur 16 bits (un word). Les words gauche et droit sont entrelacés. (Jusqu’ici c’est du format WAV)
-) Une trame est constituée d’un octet ‘affichage’ en tête, d’une succession de 12 words et de huit
octets ‘correction’ en deux groupes de quatre.
-) Puis chaque octet subit un transcodage vers un ‘mot’ de 14 bits dans le but de minimiser le
nombre de bits à 1 (qui sont source d’erreur à la lecture) et adjonction de 3 bits de réalignement.
40