Utiliser Matlab pour importer des données et tracer des courbes
Transcription
Utiliser Matlab pour importer des données et tracer des courbes
Exercice préliminaire aux travaux pratiques : Utiliser Matlab pour importer des données et tracer des courbes Exercice préliminaire aux travaux pratiques : Utiliser Matlab pour importer des données et tracer des courbes Vous utiliserez ici Matlab pour tracer des courbes et insérer des données. Ouvrez un éditeur pour conserver votre travail (tapez edit dans la fenêtre de contrôle Matlab). 1. Simple tracé Tracez la courbe y (x) = x2 pour x variant de 1 à 1000 avec 10000 points, ajoutez une grille, un titre à votre figure, une légende, et des titres sur vos axes (cf. Fig. 1). 5 10 Trace simple x 10 Puissance 2 9 8 7 y, unites 6 5 4 3 2 1 100 200 300 400 500 600 x, unites 700 800 900 1000 Figure 1 : Tracé simple. 2. Superposition de tracés Tracez maintenant dans un second graphique la superposition des courbes y (x) = x2 et y (x) = x4. Vous devriez obtenir un graphique similaire à la Fig. 2. 1/5 Exercice préliminaire aux travaux pratiques : Utiliser Matlab pour importer des données et tracer des courbes 11 10 Traces superposes x 10 Puissance 2 Puissance 4 9 8 7 y, unites 6 5 4 3 2 1 100 200 300 400 500 600 x, unites 700 800 900 1000 Figure 2 : Superposition de deux courbes. 3. Tracé en échelle logarithmique Tracez le même graphique mais avec des échelles logarithmiques, vous devriez obtenir une image similaire à la Fig. 3. Traces en echelle semi−logarithmique 12 10 Puissance 2 Puissance 4 10 10 8 y, unites 10 6 10 4 10 2 10 0 10 0 10 1 2 10 10 3 10 x, unites Figure 3 : Représentation en échelles logarithmiques. 4. Importer et tracer des données Vous aurez de plus en plus à acquérir les données d’un instrument via un ordinateur. Vous souhaiterez ensuite traiter ces données. Afin de vous y préparer, importez les données du fichier Data_Bode.csv où la première colonne représente la fréquence en Hz et la deuxième colonne l’amplitude en dB du diagramme de Bode d’un filtre passe-bas. Importez les données à l’aide de la fonction importdata, puis tracez la fonction de transfert en utilisant échelle logarithmique pour les abscisses. Vous devriez obtenir la courbe présentée Fig. 4. 2/5 Exercice préliminaire aux travaux pratiques : Utiliser Matlab pour importer des données et tracer des courbes Diagramme de Bode 0 RC −5 Transmission, dB −10 −15 −20 −25 −30 −35 −40 1 10 2 10 Frequence, Hz 3 10 Figure 4 : Tracé de données importées. Selon la langue de votre système, il peut être nécessaire de remplacer les points (séparateur de décimales anglo-saxon) par des virgules (séparateur français). 3/5 Exercice préliminaire aux travaux pratiques : Utiliser Matlab pour importer des données et tracer des courbes 5. Correction clear all close all clc %Efface les variables en mémoire %Ferme les figures %Efface le contenu de la fenêtre de commande %% Partie 1 x=linspace(1,1000,10000); %Création d'un vecteur x y2=x.^2; %Création du vecteur y2, attention à mettre le "." !! figure %Créer une nouvelle figure plot(x,y2) %Tracé axis tight %Axes ajustés grid on %Grille xlabel('x, unites') ylabel('y, unites') legend('Puissance 2') %Légende title('Trace simple') %Titre %% Partie 2 y4=x.^4; figure %Créer une nouvelle figure plot(x,y2,x,y4) %Tracés superposés (couleurs automatiques) axis tight %Axes ajustés grid on %Grille xlabel('x, unites') ylabel('y, unites') legend('Puissance 2','Puissance 4') %Légende title('Traces superposes') %Titre %Autre possibilit? %plot(x,y2); %hold on %Evite d'écraser l'ancienne figure %plot(x,y4,'r'); %Le 'r' indique une couleur rouge %% Partie 3 figure %Créer une nouvelle figure loglog(x,y2,x,y4) %Tracés avec échelle log %Utilisez semilogx pour une échelle log en abscisse %Utilisez semilogy pour une échelle log en ordonnée axis tight %Axes ajustés grid on %Grille xlabel('x, unites') ylabel('y, unites') legend('Puissance 2','Puissance 4') %Légende title('Traces en echelle semi-logarithmique') %Titre 4/5 Exercice préliminaire aux travaux pratiques : Utiliser Matlab pour importer des données et tracer des courbes %% Partie 4 data=importdata('Data_Bode.csv'); %Importe les données dans la variable data f=data(:,1); %Récupère toutes les lignes (:) de la première colonne h=data(:,2); %Récupère toutes les lignes (:) de la deuxième colonne h_dB=h;%20*log10(h); %Conversion en dB, attention utilisez log10 car log est le logarithme népérien ! figure semilogx(f,h_dB) axis tight %Axes ajustés grid on %Grille xlabel('Frequence, Hz') ylabel('Transmission, dB') legend('RC') %Légende title('Diagramme de Bode') %Titre 5/5