Fascicules de TP1

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 15

Fascicules de Travaux

Pratiques
___________________________________________________________________________
___

Thème : Traitement du Signal

Niveaux : LF-EEA2
_____________________________________________________
__

TP1: Initiation à Matlab


Préparé par : Imen Cherif Abid
Karim Dabbabi

TP2 : Analyse spectrale des signaux continus


Mis à jour par : Imen Cherif Abid-Karim Dabbabi

TP3 : Convolution et corrélation des signaux Continus


Préparé par : Imen Cherif Abid-Karim Dabbabi

TP4 : Les systèmes linéaires invariants à temps continus


Préparé par : Imen Cherif Abid--Karim Dabbabi
FACULTE DES SCIENCES DE TUNIS LAB. TRAITEMENT DU
SIGNAL
Département de Physique

TP1 : INTRODUCTION À MATLAB

ESPACE DE TRAVAIL DANS MATLAB


Matlab est un outil très efficace qui est largement utilisé pour le calcul numérique et la
visualisation graphique. C’est est un logiciel interactif permettant d’effectuer des calculs
numériques complexes particulièrement utiles dans le domaine de l’ingénierie. Disponible sur
de gros systèmes, il fut adapté pour l’ordinateur personnel muni d’un coprocesseur
mathématique permettant une grande capacité de calcul.
Notez que MATLAB est un logiciel auto documenté ; des informations relatives à une
commande donnée peuvent être obtenues à l’écran en composant help , suivi du nom de la
commande.
Dans Matlab, les variables et les scalaires sont manipulés comme des matrices de "n" colonnes
par "m" lignes. Par exemple, un scalaire serait une matrice de 1 x 1. À l'exécution, Matlab
affiche plusieurs fenêtres sur l'écran. Les trois types de fenêtres les plus importants sont:
• "Command window", où toutes les commandes sont entrées
•"Figure Windows", dans lesquelles des figures et des graphiques sont dessinés

•"Edit Windows", où l'utilisateur peut modifier ou créer des programmes Matlab ("M-files")

•Fenêtre de Commande
Une fois que Matlab est parti, une fenêtre appelée "Command Window" apparaît sur l'écran.
L'utilisateur peut entrer multiples commandes ou équations mathématiques après le signe ">>"
qui apparaît au côté gauche de la fenêtre. Pour exécuter une opération, il faut toujours appuyer
sur la touche "enter" du clavier. De plus, il faut terminer l'opération par un point-virgule
";"sinon, toutes les étapes du calcul seront affichées sur l'écran.

•"Edit Window"
Au lieu de tapez les commandes individuellement et directement dans la fenêtre de commande,
il est possible de créer un fichier appelé "m-file" qui contient toutes les fonctions et commandes
nécessaires et qui peut être rapidement exécuté en tapant le nom du fichier dans la fenêtre de
commande. Ces fichiers sont appelés "script files" et se terminent avec l'extension ".m". La
fenêtre "Edit Window" est utilisée pour créer ou modifier les "m-files". Pour créer un nouveau
fichier, allez dans le menu de sélection à: "File/New/M-file"
Pour ouvrir un fichier déjà créé, allez à: "File/Open" et choisissez le nom du fichier en
question.

 Matrices et vecteurs

Le logiciel MATLAB est conçu en fonction de la manipulation de matrices et de vecteurs (un


vecteur de longueur N est une matrice de dimension 1×N, c’est-à-dire comportant une ligne et
N colonnes). On génère une matrice en écrivant ses éléments entre crochets, chaque ligne étant
délimitée par un point-virgule. Par exemple, pour générer la matrice :

 1 2 3
 
A=  4 5 6 
7 8 9
 
On compose :

A=[1 2 3 ; 4 5 6 ; 7 8 9] ;

Si on veut générer un vecteur ligne : u=[1 2 3] , on compose u= [1 2 3], et si on veut

4
génère le vecteur colonne v=  5  , on compose v=[4 ;5 ;6]
 6 
On obtiendra la transposée et le déterminant de la matrice A par les commandes B=A’ et
C=det(A) respectivement.

L’opérateur «:»

Un outil puissant de MATLAB est l’opérateur «:»:


>> x=1:10 % création d’un vecteur ligne formé de 10 entiers
x =
1 2 3 4 5 6 7 8 9 10
>> x=10:-1:1 % à rebours
x =
10 9 8 7 6 5 4 3 2 1
>> x=0:0.1:0.5 % un incrément de 0.1 plutôt que 1
x =
0 0.1000 0.2000 0.3000 0.4000 0.5000

On peut utiliser l’opérateur «:» pour extraire plusieurs composantes d’un vecteur ou d’une
matrice:
>> d=x(2:4) % on va chercher les composantes 2, 3 et 4 du
vecteur x
d =
0.1000 0.2000 0.3000
>> B=A(2:3,2:3) % soutirons une matrice 2x2 de la matrice A
définie plus haut
B =
5 6
8 9
>> e=A(2,:) % ou si on veut extraire la deuxième ligne de A
e =
4 5 6

Il existe un certain nombre de matrices prédéfinies dans MATLAB. Les plus courantes sont:
eye(n) la matrice identité n × n
>> eye(3)
ans =

1 0 0
0 1 0
0 0 1

ones(m,n) la matrice m × n dont tous les éléments valent 1


>> ones(2,3)
ans =

1 1 1
1 1 1

zeros(m,n) la matrice m × n dont tous les éléments valent 0


>> zeros(2,4)
ans =

0 0 0 0
0 0 0 0

rand(m,n) une matrice m × n dont les éléments sont générés de manière aléatoire
>> rand(4,2)
ans =

0.9501 0.8913
0.2311 0.7621
0.6068 0.4565
0.4860 0.0185

On peut former un vecteur qui contient des 1 et des 0 en composant


>> P=[ones(1,5) zeros(1,3)]
P =

1 1 1 1 1 0 0 0

Si m=n, il suffit de spécifier une seule valeur de dimension: ones(n) est la matrice carrée n × n
dont tous les éléments valent 1.

Notes : Tous les résultats des calculs effectués sont affichés à l’écran; en ajoutant un point-
virgule à la fin d’une commande, on annule l’affichage automatique du résultat. Pour faire
apparaître une valeur à l’écran, il suffit de composer seulement son nom.

Affichage graphique

Forme : plot(X,Y), où X et Y sont des vecteurs de même longueur. Cette commande trace
à l’écran Y en fonction de X. Par défaut, les points seront reliés entre eux; on peut toutefois
choisir d’afficher uniquement les points : plot(X,Y,’o’) (d’autres caractères sont possibles
comme ´x´, ´.´, ´*´ et ´ +´). Si X est omis, alors les éléments de Y seront tracés en fonction de
leur rang dans le vecteur.
Plusieurs courbes peuvent être affichées sur le même graphique de la façon suivante :
plot(X1,Y1,X2,Y2,X3,Y3).
Pour l’affichage d’un titre et l’identification des axes, on utilise les commandes suivantes :
« title(‘Ceci est le titre affiché’) », « xlabel(’identification
de l’’axe x’) » et « ylabel(’axe y’)». La commande « grid » trace des
lignes de référence sur le graphique. La commande « axis » permet de fixer les bornes des
abscisses et ordonnées du graphique.
Exemple :
>> x=0:0.1:2*pi; % L’ordonnée
>> plot(x,sin(x),’b-o’,x,cos(x),’m--+’); % Le graphe de sinus
et de cosinus
>> axis([0 2*pi -1.1 1.1]); % Définition des axes
>> title(’Le titre du graphique’);
>> xlabel(’L’axe des x’);
>> ylabel(’L’axe des y’);
>> legend(’sinus’,’cosinus’);

Ces commandes donnent comme résultat:

On aurait aussi pu tracer ce graphique avec les commandes:


>> clf reset % on efface et réinitialise l’environ graphique
>> plot(x,sin(x),’b-o’); % un premier graphique
>> hold on
>> plot(x,cos(x),’m--+’); % on superpose un deuxième graphique

La commande hold évite que le premier graphique soit écrasé par le deuxième.
Pour insérer plusieurs graphiques dans une seule fenêtre, il faudrait utiliser la fonction
"subplot".
Exemple :
Si on compose :
clear
clc
x =0:0.1:10;
y1 =sin(x);
y2=cos(x);
y3=sqrt(x);%racine de x
subplot(311)% subdivise l’écran en 3 lignes et une colonne, dans
la première
plot(x,y1);grid % on trace y1
subplot(312);% dans la deuxième colonne on
plot(x,y2);grid % trace y2
subplot(313) % dans la troisième colonne on
plot(x,y3);grid % trace y3
On aura comme résultat :

Obtenir de l'aide dans Matlab


Il y a plusieurs manières d'obtenir de l'aide dans Matlab.
• Une première option est de taper dans la fenêtre de commande "help" suivi par le nom de la
fonction que vous recherchez.
Exemple:
Tapez:
>>help cos
Ceci vous décrit la fonction "cos". Si vous ne connaissez pas le nom exact de la fonction utilisée
par Matlab, il faut trouver un autre moyen pour obtenir de l'aide.
•• Une deuxième option est de taper "helpwin" dans la fenêtre de commande. Ceci, vous
affichera toutes les librairies de Matlab incluant les fonctions de chacune d'elles.
Exemple:

Tapez:
>>helpwin
Ensuite, choisissez la section "signal processing toolbox"
Ceci vous affichera toutes les fonctions disponibles dans cette catégorie:
Une fois que vous trouvez le nom de la fonction qui vous intéresse, vous pouvez cliquer dessus
pour obtenir de plus amples informations. Par exemple, cliquez sur "abs":

Ceci vous expliquera comment utiliser la fonction "abs" et vous donnera des fonctions qui sont
similaires ou de même catégorie.
Voici une courte liste des instructions utiles pour le TP, accompagnées d'une brève description.
Pour savoir comment utiliser ces fonctions, se référer à l'aide de MATLAB, par exemple en
tapant « help (nom de la commande) ».

Commandes générales

Clear Efface les variables gardées en mémoire


who Affiche le nom des variables
whos Affiche le nom, le type et les dimensions des variables

Convolution et corrélation

Conv Réalise la convolution de deux signaux


xcorr Réalise l’inter corrélation de deux signaux, ou l'auto corrélation d'un seul signal

Vous aimerez peut-être aussi