Institut Supérieur des Sciences Appliquées et de Technologie de Sousse
Ondes Acoustiques et Traitement des Signaux (Cours avec applications théoriques et pratiques)
Par : Ahmed RHIF Département Génie Électronique
Année Universitaire 2009-2010
Version 1.0 - Avril 2010 (Brouillon)
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Sommaire
Partie Théorique
Chapitre 1 Généralité sur le son ............................................ ................................................................... .............................................. .......................... ... 3 1 Caractéristiques d’un son .............................................. ..................................................................... .............................................. .......................... ... 4 2 Propagation d’une onde sonore ............................................. .................................................................... ......................................... .................. 4 3 Caractéristiques d’une onde sonore ........................................... .................................................................. ..................................... .............. 4 4 L'impédance acoustique ............................................ ................................................................... ............................................... .............................. ...... 7 5 Effet Doppler .............................................. ..................................................................... .............................................. ............................................. ...................... 7 6 Applications ........................................... .................................................................. .............................................. .............................................. .......................... ... 8
Chapitre 2 Les transformations de Fourier ............................................. ..................................................................... ............................ .... 10 1 La décomposition décompositio n en série de Fourier .............................................. ...................................................................... ............................ .... 10 1.1 Quelques propriétés ............................................. .................................................................... ............................................... ............................ .... 11 1.2 Applications ............................................. .................................................................... .............................................. ....................................... ................ 12 2 La transformée de Fourier ............................................. .................................................................... .............................................. ......................... 15 3 Filtrage ............................................ ................................................................... .............................................. .............................................. ............................... ........ 17 4 La transformée de Fourier inverse ............................................ ................................................................... ................................... ............ 18 5 Le phénomène de Gibbs ............................................ ................................................................... .............................................. ............................ ..... 19 Chapitre 3 Traitement des signaux numériques ............................................. ................................................................. .................... 21 1 L’échantillonnage des signaux .............................................. ..................................................................... ....................................... ................ 22 2 La transformée de Fourier numérique ............................................... ...................................................................... ........................... .... 22 2.2 Existence de la transformée de Fourier .............................................. .................................................................. .................... 23 2.2 Propriétés du spectre ........................................... ................................................................... ............................................... ........................... .... 24 3 Transformée de Fourier discrète ........................................... .................................................................. ....................................... ................ 25
Partie Expérimentale Manipulation 0 Manipulation 1 Manipulation 2 Manipulation 3
RHIF Ahmed
Initiation au logiciel logici el MATLAB .............................................. .................................................................. .................... 26 Les Transformations de Fourier .............................................. .................................................................. .................... 33 Systèmes Linéaires Linéaires Continus Filtrage Analogique .................................... ...................................... 40 L’Échantillonnage ............................................ ................................................................... ........................................... .................... 48
2
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Chapitre 1 Généralité sur le son
Introduction Le son est une onde produite par la vibration mécanique d'un support fluide ou solide et propagée grâce à l'élasticité du milieu environnant sous forme d'ondes ondes longitudinales (cordes vocales, guitare…). Par extension physiologique, le son désigne la sensation auditive à laquelle cette vibration est susceptible de donner naissance. Par conséquent le son ne peut pas se propager dans le vide (exemple de la cloche à vide).
Cloche à vide
(On ne peut pas écouter le son de la réveille puisque il y a du vide au dessous de la cloche) La science qui étudie les sons s'appelle l'acoustique. La psychoacoustique combine l'acoustique avec la physiologie et la psychologie, pour déterminer la manière dont les sons sont perçus et interprétés par le cerveau. Terminologie : On appellera « source » ou « excitateur » pour ce qui produit le son, « milieu » pour le fluide ou le solide dans lequel se propage l’onde sonore, de « récepteur » ou « puits » pour ce qui capte l’onde.
RHIF Ahmed
3
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
1
ISSATSO 2010
Caractéristiques d’un son
Il y a deux types de son : les sons purs et les sons complexes.
Les sons purs sont caractérisés par une seule fréquence.
Les sons complexes résultent de la somme des sons purs de fréquences f, 2f, 3f…
Le domaine des fréquences est le suivant :
2
Propagation d’une onde sonore
Le phénomène qui se propage est une petite oscillation de matière autour de sa position initiale. Au sein d'un solide élastique, l'oscillation peut-être longitudinale si elle s'effectue dans la direction de propagation de l'onde ou transversale si elle s'effectue perpendiculairement à la direction de propagation. Au sein d'un fluide comme l'air, la vibration est toujours longitudinale. La propagation d’une onde sonore dans un milieu se traduit par l’existence d’une pression acoustique pac qui s’ajoute à la pression atmosphérique.
p ac + p atm = ptotale 3
Caractéristiques d’une onde sonore
L’onde sonore peut être représenté par plusieurs équation différentes la plus simple entre elle est :
y (t ) = A sin( wt + φ ) avec : A : l’amplitude du signal ω
: pulsation du signal
Φ
: déphasage entre le signal en un point (P) et la source (S)
RHIF Ahmed
4
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
On obtient les équations suivantes de la célérité et de déphasage :
C =
φ =
x ∆t
2π x λ
La fréquence : La vitesse à laquelle la source oscille détermine la fréquence ( f ) de l'onde sonore engendrée, qui est exprimée en Hertz (Hz) ou cycles par secondes. Elle conditionne la hauteur tonale du son. Plus la source oscille en un temps donné, plus sa fréquence est élevée et le son est aigu.
L'amplitude : L'importance des compressions et dépressions du milieu provoquées par le mouvement de la source correspond à l'amplitude ( A ) de l'onde et est exprimée en décibels (dB). L'amplitude détermine donc l'intensité, le volume de l'onde sonore.
La longueur d'onde : Lorsque l'onde se propage dans le milieu, la distance séparant deux points successifs où la compression est maximale est appelée longueur d'onde. Cette distance est mesurable à n'importe quel endroit de l'onde l 'onde mais elle correspond toujours touj ours à la longueur lon gueur d'un cycle c ycle complet (voir le schéma ci-dessous). Souvent représentée par la lettre greque lambda ( λ ), elle
RHIF Ahmed
5
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
est exprimée en mètres et dépend de la fréquence ainsi que de la vitesse de propagation de l'onde(v). Plus la fréquence est élevée pour une vitesse donnée, plus un cycle est court. Plus la vitesse est élevée pour une fréquence donnée, plus la distance entre deux maxima successifs est importante. Cette relation peut être résumée par la formule qui suit:
λ = C .T λ en m, C en ms-1 et T en s
C est la célérité du son, elle est de l’ordre de 340 ms-1 dans l’air
La période : On notera également la notion de période ( T ) qui est la durée dur ée en secondes séparant s éparant deux crêtes successives (et donc une longueur d'onde). Cette durée est mesurable à n'importe quel moment de l'onde mais elle correspond toujours à la durée d'un cycle complet (voir le schéma ci-dessous). La période est l'inverse de la fréquence: plus la fréquence est élevée, plus la période est courte et inversement.
T =
RHIF Ahmed
1 f
et
T = 2π
6
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Les caractéristiques d'une onde peuvent, comme nous le voyons, être représentées à l'aide d'un graphique où l'amplitude figure sur l'axe vertical (les valeurs positives ou négatives correspondent respectivement aux compressions et dépressions du milieu) et le temps sur l'axe horizontal. Si l'onde est pure, l'évolution temporelle aura la forme d'une sinusoïde parfaite à cause de la vibration simple et régulière de la source. Cette évolution est appelée le "mouvement harmonique".
4
L'impédance acoustique
L'impédance acoustique d'un milieu (solide, liquide ou gazeux) est définie comme le rapport de la pression acoustique sur la vitesse de déplacement en milieu ouvert (c’est-à-dire en l'absence d'ondes réfléchies). L'impédance acoustique est une propriété du matériau considéré et est égale, dans le cas d'un espace illimité, au produit de la masse volumique du matériau ρ par la vitesse du son c dans ce même matériau : Z = ρ . c
Unités : ρ étant exprimé en kg/m3, c en m/s, Z est exprimé en Pa.s/m. Exemples de quelques valeurs de célérité du son dans des milieux différents: Milieu
Air (O°C)
Eau (15°C)
Granit Grani t
Sapin
plomb
acier
Verre
Célérité (m/s)
332
1 440
3 950
5 000
1 300
5 100
5 500
5 Effet Doppler Lorsque la source est en déplacement, la vitesse de propagation résultante est égale à la vitesse de propagation ajoutée (vectoriellement) à la vitesse de déplacement de la source. Cette vitesse de déplacement fait varier la hauteur du son. Soit f la fréquence émise par la source et f’ la fréquence capter par le récepteur :
RHIF Ahmed
7
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
f ' = f
ISSATSO 2010
c c−v
V est la vitesse de la source en mouvement et C la célérité du son.
6
Applications
1) Pourquoi écouter aux rails Dans certains Western on peut voir des bandits coller l’oreille au rail de chemin de fer pour surveiller le train qui approche. 1. Justifier cette méthode. 2. Calculer le temps mis par les sons pour se propager depuis un train situé à la distance d = 3 km. On donne : Cair = 340 ms-1 Cacier =5100 ms-1
2) Utilisation d’un sonar Le sonar est constitué d’un émetteur ultrason (S) et d’un récepteur (R). Il mesure le temps mis par les ultrasons pour effectuer un aller retour entre le sonar et l’obstacle (fond de la mer, sous marin…). Puis l’appareil affiche la profondeur d qui sépare (S) de l’obstacle. 1. Situer le domaine des fréquences sur une échelle. 2. Quelle est la longueur d’onde des ultrasons émis dans le milieu marin ? 3. L’onde sonore émise se répercute sur un sous marin. A quelle profondeur d se trouve t-il si le récepteur reçoit l’onde réfléchit avec un déphasage de temps ∆t=0.1s ? On donne : Ceau = 1500 ms-1 f ultrason ultrason = 20 khz
3) Vol d’une chauve-souris Une chauve-souris (C) vole en ligne droite vers un obstacle à la vitesse moyenne v=8 ms-1. Elle émet un bref signal ultrason quand elle se trouve à environ 30 m de l’obstacle. Ce signal se réfléchit sur l’obstacle et atteint la chauve-souris après un instant ∆t plus tard. A quelle distance x de l’obstacle se trouve-t-elle à la réception du signal de retour ? Cair = 340 ms-1
RHIF Ahmed
8
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
4) Effet Doppler dans une salle de classe Tout en parlant, un professeur se déplace vers ses étudiants à la vitesse v = 1 m/s. On note f la fréquence du son émis par le professeur et f ' la fréquence de ce même son perçu par les étudiants. 1. Calculer le décalage en fréquence (en %) : 100
f '− f f
2. On donne f = 500 Hz. Calculer f '. 3. Une oreille normale ne peut pas distinguer une variation de fréquence de moins de 1 %. Quelle conclusion peut-on en tirer ?
RHIF Ahmed
9
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Chapitre 2 Les transformations de Fourier
Introduction L’analyse de Fourier, mise en place par Joseph FOURIER mathématicien français, est une analyse de type fréquentielle, étendue à des régimes qui ne sont pas forcément sinusoïdaux. L'analyse de Fourier est très utilisée en électricité comme en physique. Les termes des séries de Fourier sont des fonctions sinusoïdales et cosinusoïdales. A nouveau, on aperçoit l'importance de l'analyse harmonique des systèmes, puisque la pertinence de ces décompositions est garantie pour tout système linéaire (principe de superposition). La transformation de Fourier a déjà été signalée comme un cas particulier mathématique de la transformation de Laplace. Elle est très employée dans toutes les branches techniques avec des implications vastes et diverses : des relations d'incertitudes en physique aux espaces réciproques en cristallographie, en passant bien sûr par l'électricité.
1
La décomposition en série de Fourier
Soit f une fonction périodique de période T. Joseph FOURIER, affirma, dans un mémoire daté de 1807, qu’il était possible, dans certaines conditions, de décomposer une fonction périodique f sous la forme d’une somme infinie de signaux sinusoïdaux : +∞
f (t ) = a 0 +
∑1 [a
n
cos( nwt ) + bn sin( nwt )]
n=
On a :
RHIF Ahmed
a 0 a n bn
=
=
=
1 T
f (t )dt ∫ T 0
2 T
f (t ) cos(nwt ) dt ∫ T 0
2 T
f (t ) sin( nwt )dt ∫ T 0
10
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
avec : a0, an, bn sont les coefficients de Fourier On peut donc considérer f comme la somme :
d’un terme constant a0
d’un nombre infini de termes sinusoïdaux appelés harmoniques.
n=1 ω représente la composante fondamentale du signal n=1 ω représente la composante harmonique du signal
Figure 1: spectre de fréquence d’un signal périodique
Il est souvent intéressant de caractériser un signal par son spectre de fréquence. En effet, celui-ci met en évidence l’importance du fondamental ainsi que la décroissance plus ou moins rapide des amplitudes des harmoniques de rang élevé. Il peut aussi servir à déterminer le nombre d’harmoniques nécessaires pour transmettre la quasi totalité de l’énergie du signal (notion de bande passante...).
1.1
Quelques propriétés
Si f est paire : f(t) = f(-t) bn =0
Si f est impaire : f(t) = -f(-t) an =0
Valeur moyenne : f = f (t )
=
1 T
∫ f (t )dt = a0
T 0
1 (an2 + bn2 ) ∑ 2n1 +∞
2
Valeur efficace : f ⇒
2
2 f eff = a0 +
=
RHIF Ahmed
11
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
1.2
ISSATSO 2010
Applications
Exemple 1 On cherche à concevoir un filtre passe Bande très sélectif sur le premier harmonique et le deuxième harmonique. Soit f le signal à filtrer.
E f (t ) = − E
0 < t <
si si
T
2
<
T
2
t < T
Elément de réponse : an = 0 bn =
2 E (1 − (1) n ) nπ
b2 p +1 = f (t ) =
4 E (2 p + 1)π 4 E sin wt sin 3wt + + L) ( π 1 3
Le spectre du signal est le suivant avec une amplitude de
4 E π
Exemple 2 Trouver la série de Fourier de la fonction f ( x) = x,
RHIF Ahmed
− π ≤ x ≤ π
12
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Réponse Puisque f (x) est impair on a an = 0. On cherche les coefficients b n .
bn =
1
π
1 x cos(nx) sin(nx)
∫ x sin(nx)dx = π −
π −π
+
n
n
2
π
−π
On déduit
bn = −
2 n
2 cos(nπ ) = (−1) n
+1
n
Par conséquent
f ( x) = 2 sin( x) −
sin( 2 x) sin(3 x) + L 2 3
Exemple 3 Trouver la série de Fourier de la fonction
x, f ( x ) = π ,
− π ≤ x ≤
0
0 ≤ x ≤ π
Réponse On a :
a0
=
bn
=
π
2 an = 0 1 n
(1 − (−1) n )
RHIF Ahmed
13
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Nous obtenons b2 n
=
0
et b2 n +1
=
2 2n + 1
Par conséquent, la série de Fourier de f (x) est : f ( x ) =
π
2
+ 2 sin( x ) +
sin(3 x ) sin(5 x) L + 3 5
Exemple 4 Trouver la série de Fourier de la fonction
π − 2 , − π ≤ x ≤ 0 f ( x ) = π , 0 ≤ x ≤ π 2 Réponse π
Cette fonction est celle de l'exemple ci-dessus moins la constante . La série de Fourier de 2 (x) est : f (x) f ( x) =
π
2
+ 2 sin( x ) +
sin(3 x) sin(5 x) L + 3 5
Exemple 5 Trouver la série de Fourier de la fonction f :
0, f ( x) = x,
RHIF Ahmed
− 2 ≤ x ≤
0
0 ≤ x ≤ 2 14
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Réponse
1 2 2 1 2 n an = ((− 1) − 1) 2 nπ 2 (−1) n 1 bn = a0
=
+
nπ
Par conséquent, nous avons : π x π x 1 2 2 f ( x ) = + ∑ 2 2 ((−1) n − 1) cos( n ) + (−1) n 1 sin( n ) nπ 2 n 1 n π 2 2 ∞
+
=
2
La transformée de Fourier
La transformée de Fourier F est une opération qui transforme une fonction intégrable en une autre fonction, décrivant le spectre fréquentiel de cette dernière. Si x(t) est une fonction intégrable, sa transformée de Fourier est la fonction X(f) donnée par la formule :
X ( f ) =
1 T
x(t )e T ∫ 0
− 2π jft
dt
Exemples 1) Signal porte La fonction porte (ou fenêtre) est définie par :
1 Π = 0
−
T
2
≤
t ≤
T
2
sin on
1 / 2
∫ 0
F (Π) = 2 Π(t ) cos(2π ft )dt
F (Π ) = sin c (π f )
RHIF Ahmed
15
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Signal porte
Sinus cardinal 2) Signal impulsion Le signal impulsion est définie par : T T 1 − ≤ t ≤ 2 2 Π T (t ) = T 0 sin on Π T (t ) =
1 T
Π(
On pose u =
t
)
T
t T
on obtient
Π T ( f ) =
sin(π fT ) π fT
Lorsque T 0, on admettra que la fonction impulsion tend vers une limite, qui n’est pas une fonction, et qui est appelée Distribution de Dirac notée δ .
RHIF Ahmed
16
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
En tenant compte de :
lim T →0
sin π fT π fT
ISSATSO 2010
=1
On conclut : F (δ ) = 1
3) Fonction exponentielle Soit la fonction suivante :
x(t ) = e
−a
t
, a>0
La fonction x est paire : +∞
X ( f )
=
2 ∫ e
− at
cos(2π ft )dt
0
une double intégration par parties conduit à :
X ( f )
=
2a 2 2 2 a + 4π f
3 Filtrage Le filtrage consiste à appliquer une transformation (appelée filtre) à tout ou partie d'un signal numérique en appliquant un opérateur. On distingue généralement les types de filtres suivants :
les filtres passe-bas, consistant à atténuer les composantes du signal ayant une fréquence haute. Ce type de filtrage est généralement utilisé pour atténuer le bruit du signal, c'est la raison pour laquelle on parle habituellement de lissage.
RHIF Ahmed
17
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
les filtres passe-haut, à l'inverse des passe-bas, atténuent les composantes de basse fréquence du signal et permettent notamment d'accentuer les détails, c'est la raison pour laquelle le terme de " filtre d'accentuation d'accentuation " est parfois utilisé.
les filtres passe-bande permettant d'obtenir la différence entre le signal original et celui obtenu par l’application d'un filtre passe-bas.
Le produit de convolution Appliquer un filtre sur un signal revient à réaliser, dans le domaine temporel , le produit de convolution : Soit x(t) un signal à filtré, h(t) un filtre et y(t) le signal résultant on a : +∞
∫
y (t ) = x * h(t ) = x(u ) h(t − u ) du −∞
Dans le domaine fréquentiel , le produit de convolution est converti en un simple produit scalaire. Soit X(f) la transformée de Fourier du signal x(t), H(f) un filtre et Y(f) la résultante on a :
Y ( f )
= X ( f ). H ( f )
Exemple : Soit la fonction triangulaire suivante :
1 − t − 1 ≤ t ≤ 1 Λ (t ) = 0 sin on 1
Fonction paire : Λ ( f ) = 2 ∫ (1 − t ) cos(2π ft )dt = 0
4
sin 2 π f π 2 f 2
La transformée de Fourier inverse
Le signal utile est toujours exprimé dans le domaine spatial (temporel), donc après avoir filtré un signal dans le domaine fréquentiel on à besoin de transformer la résultante dans le domaine spatial pour pouvoir ensuite l’utilisé.
RHIF Ahmed
18
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
La transformée de Fourier inverse est exprimée comme suit : +∞
∫
x(t ) = X ( f )e
2π jft
df
−∞
5
Le phénomène de Gibbs
Lors de l'étude des séries de Fourier et des transformées de Fourier, il apparaît parfois une déformation du signal, connue sous le nom de phénomène de Gibbs. Ce phénomène est un effet de bord qui se produit à proximité d'une discontinuité, lors de l'analyse d'une fonction dérivable par morceaux. Le phénomène fut mis pour la première fois en évidence en 1848 par Wilbraham, mais cette découverte ne connut guère d'écho. En 1898, Albert Michelson développa un système mécanique capable de calculer et sommer la série de Fourier d'un signal donné en entrée. Il observa alors un effet d'amplification des discontinuités, qui persistait malgré l'augmentation du nombre de coefficients calculés. Alors que Michelson soupçonnait un défaut dans la fabrication de son engin, Gibbs montra que le phénomène était d'origine mathématique et se produisait dans des conditions très générales. En 1906, Maxime Bôcher donna la première interprétation satisfaisante du phénomène auquel il donna le nom de phénomène phéno mène de Gibbs qui est, en quelque sorte, s orte, un « défaut d'approximation » pour une fonction continue de classe C1 par morceaux.
Approximation du créneau à l'ordre 10
RHIF Ahmed
19
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Approximation du créneau à l'ordre 50
Approximation du créneau à l'ordre 250
Le phénomène de Gibbs est plus fréquent en utilisant les portes discontinues et les signaux numériques. Comme solution on pourra utiliser des portes de type Gibbs (portes continues) : Sinus\ Cosinus\ Triangulaire\ Harming\ Blackman\ Kaiser…
RHIF Ahmed
20
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Chapitre 3 Traitement des signaux numériques
Introduction Le traitement numérique repose sur le système binaire dans lequel ne peut exister que 2 valeurs 0 et 1. Ce choix du système binaire s'explique par la facilité à reproduire électriquement ces deux valeurs : 0: absence de tension (0V), 1 : présence d'une tension (5 V par exemple). On compte en binaire de la même façon que l'on compte en décimal sauf que l'on n'utilise que le 0 et le 1. Chaque "chiffre" d'un nombre binaire s'appelle un BIT (Binary dIgiT). Le nombre décimal 9 s'écrira, en binaire, avec quatre bits : 1001. Les bits sont souvent regroupés par 8 et forment ainsi un octet (byte en anglais). La valeur la plus élevée que peut prendre un octet est 11111111 qui vaut 255. La conversion d'un signal analogique en un signal numérique est souvent confiée à des circuits spécialisés fort justement baptisés "convertisseur analogique digitale (CAD)" ou ADC en anglais (Analog Digital Converter). Le schéma ci-dessous illustre le principe de cette conversion :
RHIF Ahmed
21
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
1
ISSATSO 2010
L’échantillonnage des signaux
Le traitement numérique des signaux se fait sur des valeurs discrètes: il n'est pas possible de traiter par ordinateur des signaux à temps continu. Par souci de simplicité, on échantillonne les signaux à un rythme régulier. Une horloge de cadence T e permet de diviser la periode du signal en n échantillons régulier, ce qui permet ensuite de calculer la valeur numérique binaire du signal par une succession d'opérations de comparaisons à des tensions de référence.
Illustration de l'échantillonnage d'un signal : on mesure la valeur du signal à des instants qui sont des multiples de la période d'échantillonnage
2
La transformée de Fourier numérique
La transformée de Fourier numérique est définie comme suit : X ( f ) =
∑ x(k )e 2 −
π jfk
k
On utilise une somme au lieu d’une intégration point par point (cas des signaux analogique) pour faire le calcul sur des segments (périodes d’échantillonnages). La transformée de Fourier numérique inverse est la suivante : 1 / 2
x(k ) =
∫
X ( f )e 2π jfk df
−1 / 2
RHIF Ahmed
22
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
2.2 Existence de la transformée de Fourier Théorème de Cauchy
∑ x(k )e 2 −
Si
π jfk
<∞
⇒ ∑ x( k ) < ∞
k
k
Donc les conditions d’existence de la transformée de Fourier est la suivante :
X ( f ) = ∑ x(k )e −2π jfk < ∞ k 1 / 2 x(k ) = ∫ X ( f )e 2π jfk df < ∞ −1 / 2 Exemple Soit la fonction rectangulaire
1 si 0 ≤ k ≤ N − 1 Re ct N (k − ) = 2 0 sin on N
N
X ( f ) =
2
−1
∑
j 2π fk
e−
N k = −
=
e
jπ f
sin π fN ⇒ X ( f ) sin π f
=
sin π fN sin π f
2
Formule de Poisson
∑e k
RHIF Ahmed
fk − j 2π
=
∑ δ ( f + n) n
23
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Exemple x(k)=1
trouvez X(f). 1 / 2
∫ 1 / 2
Rép. x(k ) =
X ( f )e
2π jfk
df = 1
−
Décalage fréquentiel Soit x(k) une fonction définie autour de la fréquence f 0.0. x(k ) = e
j 2π f 0 k
X ( f ) =
= cos(2π kf 0 ) + j sin( 2π kf 0 )
∑e 2
.e j 2π fk = ∑ δ ( f − f 0 + n)
j π f 0 k
k
n
Soit : x ( k ) = X ( f ) =
cos( 2π kf 0 ) =
∑
δ ( f − f 0
e
j 2 π f 0 k
+
e
f 0 k − j 2 π
2
+ n ) + δ ( f + f 0 +
n)
2
n
Remarque : Le décalage fréquentiel n’agit pas sur le spectre.
2.2 Propriétés du spectre X ( f ) → paire ⇒ X ( f )
2
(énergie) → paire et arg( X ( f )) → impaire
x(k) X(f)
x( k − k 0 ) → e
− j 2 π fk 0
X ( f )
T.F.N x(k) X(f) A.x(k) A.X(f) z(k)=x(k) + y(k) Z(f)=X(f) + Y(f)
RHIF Ahmed
24
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
z(k)=x(k) . y(k) y (k ) =
Z(f) = ∫ X(f - u) + Y(u)du
∑ x(l )g (k − l ) = ∑ g (l ) x(k − l ) → Y ( f ) = X ( f ).G( f ) l
3
ISSATSO 2010
l
Transformée de Fourier discrète
La transformée de Fourier numérique présente deux problèmes : 1. limitation de l’interval de k 2. X(f i)i=1,…n comment restituer le signal avec ces f i.
N = 2
n
f ( − n) = − f ( n) =
n
avec
N
−
N
2
<
n<
N
2
n N
On a alors : +∞
X ( f n ) = X ( n) =
∑ x(k )e
− j 2π f n k
. T .F D
k = −∞ N
x( k ) =
1
2
−1
∑ X (n)e N
n j 2π k N
. −1 T .F D
N n =−
2
Propriétés de l’exponentielle
w N = e
j
2π N
1 nk w N = ∑ N n =0 0
1 N 1 −
RHIF Ahmed
pour
k = l n
pour
k ≠ l n
25
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Manipulation Manipulat ion 0 Initiation au logiciel MATLAB Ce TP a pour but d’apprendre à utiliser le logiciel Matlab afin de pouvoir développer des applications simples en traitement du signal.
Entrer d’abord la commande diary(‘initiation’) pour garder les traces de votre travail ; à
la fin de la séance entrer la commande diary() ; I- Manipulation des variables On distingue les variables scalaires et les variables vectorielles (matricielles en général).
1- Variables scalaires Dans un premier temps on génère trois variables scalaires a, b et c de la manière suivante : >> a=2 ; >> b=3; >> c=4 ; On peut consulter la valeur d’une variable en entrant son nom :
>> a La réponse serait : a= 2 Cela signifie que les valeurs des variables sont mémorisées automatiquement avec leurs noms.
2- Taille des variables dans la mémoire La taille d’un scalaire de type « double » est 8 Bytes = 8 Octets = 64 Bits
3- Commandes de base : · who et whos : Affiche la taille mémoire et types de toutes les variables utilisées. · cd :
RHIF Ahmed
26
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Affiche le répertoire (directorie) où vous opérez en ce moment. · what, dir : Affiche la liste les noms des fichiers contenus dans le répertoire actuel. · help nom_fonction : Donne un descriptif de la fonction et ses arguments d’entrée sortie.
4- Opérations sur les variables >>d=a+b+c >>e=a+b*c >>f=(a+b)*c >>g=(a/b)*c >>h=a^2
5- Les matrices et les variables vectorielles Matlab est optimisé pour l’usage matriciel : Eviter les formulations non matricielles. · [ a b c ] est un vecteur ligne. · [a ;b ;c ;] est un vecteur colonne. · V’ est le transposé du vecteur V · u=1:5 est le vecteur [1 2 3 4 5] (de même que [1 :5] et (1 :5). · t=0 :2 :15 est le vecteur [0 2 4 6 8 10 12 14] · sin(t) est le vecteur [sin(0) sin(2) …sin(14)] · zeros(1,N) est le vecteur ligne nul à N éléments. · Ones(1,N) est le vecteur ligne à N éléments égaux à 1.
6- Opérations sur les vecteurs § Il faut respecter les dimensions des vecteurs et matrices. Génération automatique d’un vecteur V=début:pas:fin;
§ On définit une valeur de début : début § On définit une valeur de fin : fin § On définit un pas de progression linéaire ou logarithmique (incrémentation) : pas ; § si le pas n’est pas spécifié, il est égal à 1 automatiquement. >>v3=1:10 >>v4=1:-0.5:-1
RHIF Ahmed
27
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
>>debut=0;fin=256;pas=8; >>v5=debut:pas:fin >>debut=0;fin=2*pi;pas=0.1; où pi désigne le nombre 3.14… >>v5=debut:pas:fin Une liste des fonctions les plus courantes est disponible dans l’aide en ligne en tapant la commande (elfun désigne elementary functions : sin, cos, log, exp…) >>help elfun
7- Les matrices Saisir la matrice 3x3 suivante :
a=[1 2 3 ;4 5 6 ;7 8 9] Noter que deux lignes sont séparées par un point virgule. Si vous entrez la commande a(:) vous obtenez le vecteur colonne [1 4 7 2 5 8 3 6 9]’ . La fonction eig donne les valeurs propres de la matrice a.
zeros(N) est la matrice nulle NxN, eye(N) est la matrice identité NxN. II- ROGRAMMATION 1-LES SCRIPTS Plutôt que de taper les commandes au clavier les unes après les autres pour effectuer une tâche, ce qui vous oblige à refaire la même chose à chaque utilisation de cette tâche, il est préférable de grouper les commandes dans un fichier à extension .m, ainsi tous les programmes auront pour nom name.m. Il suffit alors de taper name pour que la tâche s’exécute.
Exemple 1 Créez un fichier qui s’appelle essai1.m, qui génère un signal sinusoïdal x(t) de n points, puis visualisez le à l’aide de la commande plot(x). § Etape 1 : édition du fichier par la commande : edit essai1.m § Etape 2 : taper les commandes suivantes dans la fenêtre d’édition : ce fichier génère et affiche une sinusoïde :
t=0:0.1:2*pi; % t est le vecteur temps avec un pas d’échantillonnage 0.1 x=sin(t); % le signal x est un vecteur de même taille que le vecteur t
RHIF Ahmed
28
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
plot(t,x) ;grid on % dessine à l’écran x en fonction de t Remarques :
1- Le texte débutant par % est un commentaire de votre choix, il est ignoré par le logiciel. Vous pouvez supprimer ces commentaires, mais ils sont utiles lorsqu’on a plusieurs programmes. 2- Chaque instruction doit être suivie d’un point virgule. Etape 3 : Sauvegardez le fichier dans le répertoire en cours ; Etape 4 : Exécutez le programme en entrant la commande suivante : >>essai1
2- Utilitaires graphiques Les instructions :
title(‘titre de la courbe ou la figure’) ajoute un titre à la figure visualisée.
xlabel(‘titre des abscisses’) affiche un titre horizontal suivant x.
ylabel(‘titre des ordonnés’) affiche un titre vertical suivant y.
grid on et grid off quadrille ou non le graphique.
Exemple 2 Générez,à l’aide d’un programme prog1.m, deux périodes des deux signaux x(t)=cos(t) et y(t)=sin(t) et visualisez les deux signaux sur une même figure, l’une en rouge et l’autre en bleu à l’aide de la fonction plot(t,x,’b’,t,y,’r’). Mettre une légende.
Exemple 3 Visualisez sur une même figure,à l’aide d’un programme prog2.m, les quatre signaux cos(t),
sin(t),log10(t) et exp(t) en utilisant la fonction subplot(.,.,.) qui divise l’écran en quatre sous figures : (2,2,1),(2,2,2),(2,2,3) et (2,2,4). >>subplot(2,2,1),plot(t,x);
Saisie d’une donnée au clavier : Pour saisir une variable x à partir du clavier, on utilise l’instruction :
x=input(‘x=’) ;
RHIF Ahmed
29
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Affichage d’un message à l’écran : Pour afficher à l’écran un message personnel suivi d’un retour à la ligne :
fprintf(‘message personnel \n’) ; Affichage de la valeur d’une variable : Pour afficher à l’écran la valeur d’une variable x :
fprintf(‘x=’%d) ; III- LES FONCTIONS Si plusieurs de vos programmes personnels utilisent en commun une liste d’instructions, il est préférable de regrouper ces instructions sous forme d’un programme indépendant. A chaque besoin on appelle le dit programme par son nom : c’est une fonction. Une fonction possède des paramètres d’entrée et des paramètres de sortie, dont la syntaxe de déclaration est la suivante :
function [sortie1,sortie2,…]=nom_fonction(entrée1,entrée2,…) Le programme matlab correspondant à la fonction doit porter le même nom que la fonction :
nom_fonction.m Exemple 1 : Calcul de la moyenne arithmétique m d’un vecteur v de dimension n :
m=
1 n
n
∑1 v(i) i=
La fonction moyenne.m comportera les instructions suivantes :
function resultat=moyenne(v,n); %déclaration de la fonction r=0; %initialisation de la moyenne for k=1:n r=r+v(k); end resultat=r/n;
RHIF Ahmed
30
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
On note la présence de la boucle itérative :
for indice=debut:pas:fin instruction ;
end Qui est équivalente à : indice=debut ; (B) instruction; debut=debut+pas; si debut=fin aller à B; Mise en œuvre de la fonction
>>moyenne(1:100,100) Comparer avec la fonction matlab mean.
Exemple 2 Créez une fonction puissance.m qui donne la valeur efficace s et la puissance moyenne p d’un signal. x étant un vecteur de composantes x(i) , i=1..n, la valeur efficace de x est :
S
=
p
=
1 n
n
∑1 ( x(i) − x)² i=
Testez cette fonction sur un signal sinusoïdal d’amplitude A et de période 1. Comparer avec la fonction matlab std.
Exemple 3 : Diagramme de bode. 1- Créez une fonction spectre(f,H) qui affiche à l’écran le spectre d’amplitude 20log|H(f)| et le spectre de phase Arg(H(f)) en fonction de f en Hertz avec indication du titre de chaque courbe ; Les paramètres d’entrée sont le vecteur fréquence f=0:fmax et le vecteur complexe
H. Fonctions conseillées :abs(x),angle(x) et log10(x).
RHIF Ahmed
31
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
2- Utilisez la fonction spectre dans un programme indépendant myfilter.m pour tracer les diagrammes de Bode des filtres passe bas et passe haut dont les fonctions de transferts sont définies par :
fc étant la fréquence de coupure demandée par le programme et fournie par l’utilisateur à l’exécution.
Exemple 4 : vitesse de convergence d’une série Considérons la série en N suivante (qui converge vers exponentiel de x) :
Réaliser : · Une fonction factoriel(n) qui calcule le factoriel d’un entier naturel. · Une fonction somme(x,n) qui calcule s(x,n). · Un programme prog3.m qui calcule la valeur de l’exponentiel de 2 avec une précision (incertitude relative) supérieure à 95% (incertitude inférieur à 5%).
RHIF Ahmed
32
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Manipulation 1 Les Transformations de Fourier Objectif : Dans ce TP on cherche à comparer entre la méthode MATLAB et la méthode mathématique vis-à-vis le calcul de la transformée de Fourier d’une fonction. Ensuite on va mettre en évidence la restitution du signal temporel ainsi que l’effet du décalage fréquentiel sur le spectre.
%I- Représentation temporelle et fréquentiel de x(t) %A) Représentation temporelle %1) Definitions prealables a=1; Te=0.01; t=-5:Te:5;
%2) Definition de la fonction x(t) x=exp(-a*(abs(t)));
%3) Trace de notre fonction x(t) figure(1) subplot(2,1,1),plot(t,x)
%4) Quadrillage, titre, axes & legendes grid title('Representation temporelle du signal x(t)') legend('x(t) = exp(-a*|t|)') xlabel('Temps t (en s)') ylabel('Amplitude du signal')
RHIF Ahmed
33
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
%B)Representation frequentielle : methode formelle %1) Definitions prealables Fe=0.01; f=-3:Fe:3;
%2) Definition de X(f) X=(a*2)./((a.*a)+(pi.*pi)*(f.*f)*4);
%3) Trace de X(f) subplot(2,2,3),plot(f,X,'r')
%4) Quadrillage, titre, axes & legendes grid title('Methode formelle: Calcul & representation frequentielle du signal x(t) : X(f)') legend('TF[x(t)] = X(f)') xlabel('Frequence f (en Hz)') ylabel('Amplitude du signal')
%II- Calcul de la transformee de Fourier de x(t) : methode Matlab %A) Transformee de Fourier: x(t) -> X(f) %1) Definitions prealables n1=length(x); f1=linspace(-1/(2*Te),1/(2*Te),n1);;
%2) Definition du signal X(f) X1=fftshift(fft(x)*Te);
%3) Trace de notre fonction X(f) subplot(2,2,4),plot(f1,abs(X1),'r')
%4) Quadrillage, titre, axes & legendes grid axis([-3 3 0 2]); title('Methode Matlab: Calcul & representation frequentielle du signal x(t) : X(f)') legend('TF[x(t)] = X(f)')
RHIF Ahmed
34
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
xlabel('Frequence f (en Hz)') ylabel('Amplitude du signal')
%B) Comparaison des 2 TF obtenus %1) Trace de nos fonctions X(f) précédement obtenues obtenues figure(2) hold on plot(f,X,'b') plot(f1,abs(X1),'r') hold off
%2) Quadrillage, titre, axes & legendes grid axis([-3 3 0 2]); title('Representation frequentielle du signal x(t) : X(f) suivant 2 méthodes')
RHIF Ahmed
35
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
legend('TF[x(t)] : méthode formelle','TF[x(t)] : méthode matlab') xlabel('Frequence f (en Hz)') ylabel('Amplitude du signal')
On peut donc conclure à partir de ce graphique que les deux « fonctions » sont sensiblement identiques : fonctions représentant la Transformée de Fourier du signal x(t) suivant les deux manières : la méthode formelle se révèle être plus précise que celle de la « fft » de matlab car, contrairement à cette dernière, elle ne réalise pas d’approximation dans le calcul de la TF.
%C) Transformee de Fourier Inverse: X(f) -> x(t) %1) Recuperation de notre variable temporelle t à partir de notre X(f) n2=length(X1)-1; borne=(Te*n2)/2; t2=-borne:Te:borne;
%2) Definition du signal x(t) x2=abs(ifft(X1)/Te);
%3) Trace de notre fonction X(f) figure(3)
RHIF Ahmed
36
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
hold on plot(t,x,'b') plot(t2,x2,'r--') hold off
%4) Quadrillage, titre, axes & legendes grid axis([-borne borne 0 1]); title('Representation temporelle du signal x(t) obtenu par la TF Inverse : X(f) -> x(t)') legend('x(t) : signal initial','x''(t) : signal récupéré à partir de X(f)') xlabel('Temps t (en s)') ylabel('Amplitude du signal')
Comme le définit la transformée de Fourier inverse : TF-1[X(f)] = x(t) est bien ce que l’on obtient quand on réalise la commande abs(ifft(X) / Te). Lorsque l’on compare notre signal x(t) initial avec le signal x1(t) obtenu précédemment par la TFI, on se rend compte que les deux courbes se superposent ; preuve que : -1
TF [X(f)] = x1(t) = x(t)
%D) Decalage fréquentiel de la TF
RHIF Ahmed
37
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
%1) Definition de la nouvelle fonction x(t) décalée fréquentiellement fo=5; y=x.*(exp(i*2*pi*fo*t));
%2) Calcul de la transformee de Fourier de y(t)=x(t)*exp(i*2*pi*fo*t) y(t)=x(t)*exp(i*2*pi*fo*t) Y=abs(fftshift(fft(y)*Te));
%3) Trace de nos fonctions X(f) et X(f-fo) figure(4) hold on plot(f1,abs(X1)) plot(f1,Y,'r') hold off
%4) Quadrillage, titre, axes & legendes grid axis([-10 10 0 2]); title('Representation frequentielle des signaux x(t) et x(t)*exp(i*2*pi*fo*t)') legend('x(t) -TF-> X(f)','x(t)*exp(i*2*pi*fo*t) -TF-> X(f-fo)') xlabel('Frequence f (en Hz)') ylabel('Amplitude du signal')
RHIF Ahmed
38
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010 (j*2*pi*fo*t)
Comme le prouve la définition du décalage fréquentiel : TF[x(t)* e
] = X(f-fo) Dans
notre cas, fo = 5 Hz. Il est donc normal d’obtenir, comme le met en évidence ce graphique, le même spectre fréquentiel mais cette fois-ci décalé de 5 Hz.
Bilan du TP : Transformée de Fourier Ce TP permet de mettre en application définitions et propriétés concernant la Transformée de Fourier selon deux points de vue: les méthodes formelles et matlab présentent tout au long de celui-ci leurs atouts et leurs inconvénients. La méthode formelle se révèle être plus laborieuse à mettre en place car elle nécessite le calcul de l’intégrale de la Transformée de Fourier du signal que l’on souhaite étudier. Cependant, elle apparaît être la solution la plus précise et la plus rigoureuse sur le plan purement mathématique. La méthode matlab prouve son efficacité par sa « simplicité » et sa rapidité d’utilisation. Aucun calcul n’est nécessaire. Malgré cela, cette solution est légèrement moins précise que la méthode précédente ; la différence étant infime. Le principal problème rencontré au cours de ce TP est la taille de nos vecteurs : ils devaient être obligatoirement de même taille (taille du vecteur abscisse = taille du vecteur ordonnée) pour pouvoir obtenir l’affichage des différents graphes.
RHIF Ahmed
39
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Manipulation 2 Systèmes Linéaires Continus Filtrage Analogique
Objectif : L’objectif de ce travail pratique est de mettre en application les connaissances acquises sur la Transformée de Fourier et le filtrage. Nous verrons, grâce à Matlab, les différences existantes entre le filtrage idéal (Partie 1) utilisé en théorie et le réel (Partie 2) appliqué dans divers domaines tels que la télécommunication, l’électronique, l’automatique…
Partie I : Convolution, transformée de Fourier et filtrage. Dans cette partie, on étudie le filtrage idéal d’un signal porte. Avec ΠT(t) = 1 pour –T/2 < t < T/2 0 ailleurs On considère un filtre H(f) passe-bas idéal de fréquence de coupure fc=2/T.
%Définitions préalables T=5; Fe=100; Te=1/Fe; fc=2/T;
1°) Définition du domaine temporel et tracé de la fonction porte pour T=5 : D’abord, on discrétise le domaine temporel car Matlab ne peut pas travailler sur du « continu ». Pour cela, on créé un vecteur t=[-20 … 20]. On choisit un pas Te=1/Fe=1/100. Autrement dit, entre –20 et 20, t prend 4001 valeurs différentes. t = -20 + n.Te avec n un entier tel que 0
%Définition du domaine temporel t=-20:Te:20; Le domaine temporel étant défini, on peut maintenant tracer la fonction porte pour T= 5 :
RHIF Ahmed
40
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Avec ΠT(t) = 1 pour –T/2 < t < T/2 avec T= 5 0 ailleurs
%Création de la fonction porte x=(((-T/2)<=t)&(t<=(T/2)));
%Représentation temporelle de la fonction porte avec T=5 figure(1) plot(t,x,'r' ) grid axis([-5 5 -0.05 1.05]) title('Représentation temporelle de la fonction Porte avec T = 5') xlabel('Temps t') ylabel('Amplitude du signal')
2°) Définition du domaine fréquentiel et tracé de la fonction H(f) : Dans le domaine fréquentiel, il faut aussi représenter f sous forme d’un vecteur : on discrétise donc le domaine fréquentiel. En effet, le calculateur, en l’occurrence Matlab, ne peut calculer le contenu fréquentiel du signal qu’en un nombre fini de points fréquentiels. Pour pouvoir passer du domaine temporel au domaine fréquentiel sans problème, la dimension de f doit être égale à la dimension de t. On a donc f = (Fe/2) + k*∆(f) avec ∆(f) = (Fe/2-(-Fe/2))/4000 = Fe/4000 = 1/40 Hz.
%Définition du domaine fréquentiel f=linspace(-Fe/2,Fe/2,length(t));
RHIF Ahmed
41
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Le domaine fréquentiel étant défini, on peut maintenant tracer H(f). H(f) est un passe-bas idéal de fréquence de coupure fc= 2/T = 2/5 = 0.4 Hz On a donc : Avec H(f) =
1 pour –2/T< f <+2/T 0 ailleurs
%Création du filtre passe-bas de fréquence de coupure fc=2/T Hf=(((-2/T)<=f)&(f<=(2/T)));
%Représentation fréquentielle du filtre passe-bas idéal H(f) figure(2) plot(f,Hf) grid axis([-2 2 -0.05 1.05]) title('Représentation fréquentielle du filtre passe-bas idéal H(f) de fréquence de coupure fc=2/T') xlabel('Fréquence f') ylabel('Amplitude de H(f)')
3°) Calcul et tracé de X(f) X(f ) entre –2 et 2 Hz %Transformée de Fourier de la fonction porte (appelée x) : X(f) = TF[x(t)]
RHIF Ahmed
42
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Xf=fftshift(fft(x)*Te);
%Représentation graphique de X(f) figure(3) plot(f,abs(Xf),'r' ) grid axis([-2 2 0 5]) % limite la représentation de X(f) à l’intervalle de fréquences [-2 2Hz] title('Représentation fréquentielle du signal x(t) : X(f) = TF[x(t)]') xlabel('Fréquence f') ylabel('Amplitude de X(f)')
4°) Calcul et tracé de Y(f) Y(f ) entre –2 et 2 Hz %Calcul de Y(f) = H(f) . X(f) Yf=Hf.*Xf;
%Représentation fréquentielle figure(4)
%A) Représentation graphique graphique de H(f) et X(f) subplot(2,1,1);plot(f,abs(Xf),'r',f,Hf)
RHIF Ahmed
43
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
grid axis([-2 2 0 5]) % limite la représentation de X(f) et H(f) à l’intervalle de fréquences [-2 2Hz] title('Représentation fréquentielle de TF[x(t)] et de TF[h(t)]') xlabel('Fréquence f') ylabel('Amplitude') legend('X(f) = TF[ x(t) ]','H(f) : filtre passe-bas idéal','de fréquence de coupure fc = 2/T')
%B) Représentation graphique de Y(f)=H(f) x X(f) subplot(2,1,2);plot(f,abs(Yf),'m') grid axis([-2 2 0 5]) % limite la représentation de Y(f) à l’intervalle de fréquences [-2 2Hz] title('Représentation fréquentielle: Y(f)') xlabel('Fréquence f') ylabel('Amplitude') legend('Y(f) = H(f) . X(f)')
RHIF Ahmed
44
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
5)Calcul et tracé de y(t) Pour obtenir y(t), il nous faut revenir dans le domaine temporel. Pour cela, on utilise la -1
Transformée de Fourier Inverse : y(t)=TF [Y(f)]. On utilise la commande ifft de Matlab.
%Calcul de y(t) = TF-1[ y(t) ] yt=abs(ifft(fftshift(Yf)/Te)); %Représentation graphique y(t) = h(t) * x(t) figure(5) plot(t,yt) grid axis([-20 20 0 1.2]) title('Représentation temporelle : y(t) = TF-1[ Y(f) ]') xlabel('Temps t') ylabel('Amplitude') legend('y(t) = h(t) * x(t)') On peut observer une déformation de notre signal de sortie y(t) par rapport à l’entrée x(t) : signal porte. Ceci peut s’expliquer par la suppression d’harmoniques de fréquences f < -Fe/2 et f > Fe/2, d’où une perte d’information.
6°) Tracé de y(t) pour des valeurs croissantes de la fréquence de coupure fc=[2/T,1,5,15,50]; %La fréquence de coupure prendra respectivement les valeurs 2/T, 1Hz, 5Hz, 15Hz, 50Hz
RHIF Ahmed
45
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
figure(6) for k=1:5 %Boucle nous permettant de calculer et tracer y(t) en fonction de fc Hf=((-fc(k)<=f)&(f<=fc(k))); Yf=Hf.*Xf; subplot(5,1,k);plot(t,yt); %| grid %|=> On trace dans une sous-fenêtre graphique y(t) pour axis([-10 10 -0.05 1.5]) %| les différentes valeurs de la fréquence de coupure if (k==1) title('Représentation du signal d''entrée x(t) après un filtrage passe-bas idéal h(t) : y(t) = h(t) * x(t)') end xlabel('Temps t') %| ylabel('Amplitude') %|=> définition des axes switch k %| case 1, legend('fc = 2/T Hz') %| case 2, legend('fc = 1 Hz') %| case 3, legend('fc = 5 Hz') %|=> Affichage de la légende en fonction de k (... et donc case 4, legend('fc = 15 Hz') %| en fonction de fc) case 5, legend('fc = 50 Hz') %| end %| end
RHIF Ahmed
46
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
On constate que plus la fréquence de coupure augmente plus on se rapproche du signal initial à savoir : ΠT(t) avec T= 5.
EXPLICATION Plus la fréquence de coupure du signal augmente, plus le filtre H(f) laisse passer de « lobes » du sinus cardinal. Comme les lobes pour lesquels f tend vers l’infini sont d’amplitude quasiment nulle, leur énergie peut être considérée comme nulle. Ainsi, plus la fréquence de coupure est grande plus les énergies de X(f) et Y(f) sont proches. Quand fc tend vers l’infini, on peut considérer que X(f) et Y(f) ont même énergie. En effet, pour les fréquences filtrées par H(f), Y(f) est d’amplitude quasiment nulle, on récupère alors la totalité du spectre de X(f). Comme la Transformée de Fourier conserve l’énergie du signal entre le domaine fréquentiel et le domaine temporel, y(t) a la même énergie que Y(f). De même, x(t) et X(f) ont même énergie. On en déduit donc que y(t) a même énergie que x(t). Ceci s’explique car quand fc est très grand, la perte d’informations est minimale lors du filtrage. Ici, pour fc=50Hz, on constate que le signal de sortie y(t) est le même que le signal d’entrée x(t) à savoir une porte. On en déduit qu’une fréquence de coupure de 50 Hz est suffisamment grande pour minimiser la perte d’informations.
RHIF Ahmed
47
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
Manipulation Manipulation 3 L’Échantillonnage L’Échantillonnage Objectif L’objectif de ce travail pratique est de mettre en application les connaissances acquises sur l’échantillonnage, qu’il soit idéal ou réel. Nous verrons tout au long de ce TP, deux méthodes de discrétisation du signal. On pourra alors juger et comparer les résultats de chaque technique.
I / Représentation du signal réel On commence donc par créer notre signal x(t) réel : étant impossible de réaliser un signal continu sous Matlab, on le représentera sur l’intervalle temporel [-2 2] avec un pas T0 = 0.001s.
x(t) = sin(π*f 0*t)/(π*t) = f 0*sinc(π*f 0*t) avec f 0 = 5 Hz
%Définitions préalables fo=5;
RHIF Ahmed
48
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
To=0.001; %Définition du domaine temporel t=-2:To:2; %Définition du signal x(t) x=fo*sincard(pi*fo*t);
II / Echantillonnage idéal On discrétise le signal x(t) défini précédemment par un échantillonneur idéal, à savoir un peigne de Dirac. Donc par la théorie :
xe(t) = Σ x(nTe) * δ(t-nTe) Avec Matlab, l’échantillonnage idéal est réalisé par le choix de la variable t. Comme nous l’avons déjà dit précédemment, Matlab ne peut pas créer & travailler avec des signaux continus : nous sommes donc obligés de discrétiser le domaine temporel : t pour pour générer x(t). le signal x(t) est donc déjà échantillonné idéalement. Mais cela ne se « voit » pas car le pas est très fin. Nous allons maintenant discrétiser notre signal x(t) pour 3 fréquences d’échantillonnage Fe = 5, 10 & 30 Hz : A la vue de ces représentations temporelles, on peut tout de suite déduire que plus la fréquence d’échantillonnage est grande, plus la forme du signal xe(t) est proche de celle de x(t) et donc plus la perte d’information pendant l’échantillonnage est faible. Ce qui est tout à fait logique car en augmentant la fréquence Fe, on diminue Te = 1/Fe , impliquant la « récupération » d’un plus grand nombre d’échantillons. Cependant pour effectuer un bon échantillonnage, c’est-à-dire un échantillonnage sans perte d’information, il est important de respecter le théorème de Shannon. Pour cela, il faut et il suffit que Fe >= 2*f max Dans notre cas : Fe >= 2*f 0 pour respecter le théorème de Shannon : - On peut observer la perte d’information pour xe1(t) avec Fe = 5 Hz On ne retrouve plus du tout l’enveloppe du signal x(t)
Shannon non-
respecté - Contrairement à xe1(t) & xe2(t) respectivement pour Fe = 10 Hz et 15 Hz où l’on voit bien
RHIF Ahmed
49
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
la vue de ces représentations temporelles, on peut tout de suite déduire que plus la fréquence d’échantillonnage est grande, plus la forme du signal xe(t) est proche de celle de x(t) et donc plus la perte d’information pendant l’échantillonnage est faible. Ce qui est tout à fait logique car en augmentant la fréquence Fe, on diminue Te = 1/Fe , impliquant la « récupération » d’un plus grand nombre d’échantillons. Cependant pour effectuer un bon échantillonnage, c’est-à-dire un échantillonnage sans perte d’information, il est important de respecter le théorème de Shannon. Pour cela, il faut et il suffit que Fe >= 2*f max Dans notre cas : Fe >= 2*f 0 pour respecter le théorème de Shannon : - On peut observer la perte d’information pour xe1(t) avec Fe = 5 Hz On ne retrouve plus du tout l’enveloppe du signal x(t) Shannon nonrespecté -
Contrairement à xe1(t) & xe2(t) respectivement pour Fe = 10 Hz et 15 Hz où l’on voit bien apparaître l’enveloppe du sinus cardinal Shannon respecté
RHIF Ahmed
50
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
%Définitions préalables Fe=[5 10 30]; %Définition du domaine temporel t1=-2:1/Fe(i):2; %Définition du signal x(t) x1=fo*sincard(pi*fo*t1);
III / Echantillonnage réel Cette fois-ci, nous réalisons un échantillonnage réel du signal x(t) à l’aide d’un échantillonneur moyenneur : on ne réalise plus la discrétisation avec une impulsion infiniment brève, mais on utilise au contraire une impulsion de largeur finie et on considère la valeur moyenne de x(t) pendant la durée de l’impulsion. En effet, dans la réalité, il est impossible d’utiliser un peigne de Dirac car chaque impulsion se caractérise par une durée ∆T qui correspond au temps de conversion analogique / numérique.
Quel que soit le type de discrétisation, plus la fréquence d’échantillonnage augmente, plus le nombre d’échantillons augmente et donc plus notre signal échantillonné « s’approche » du
RHIF Ahmed
51
Dép. Génie Electronique
Ondes Acoustiques et Traitement des Signaux
ISSATSO 2010
signal continu. Il est donc tout à fait normal de voir (pour un ∆T donné) que xe(t) ressemble de plus en plus à x(t) quand Fe augmente (il y a moins de perte d’informations). Le second facteur dans l’échantillonnage moyenneur est ∆T. Quand ∆T tend vers 0, ∆T tend vers δ(t) l’impulsion de Dirac. Or échantillonner avec ∆T = δ(t) reviendrait au cas idéal : celui qui permettrait le meilleur échantillonnage du signal x(t). On peut donc en déduire que plus ∆T
est petit, meilleur sera l’échantillonnage.
Tout comme pour l’échantillonnage idéal, l’échantillonnage réel nécessite le respect du théorème de Shannon . Mais, en plus, il requiert l’utilisation d’un pas de numérisation ∆T que l’on doit choisir largement inférieur à Te
%3) Echantillonnage reel Te=[1/5 1/10 1/30]; DT=[Te(i) Te(i)/2 Te(i)/5]; for j=1:3 %Définitions préalables tech=-2:Te(i):2; %Discrétisation du signal x(t) par l'échantillonneur moyenneur for n=1:length(tech) ind1=find((t>=tech(n))&(t
RHIF Ahmed
52
Dép. Génie Electronique