Bonjour,
Ceci est mon premier post donc excusez moi si je ne le rédige pas de la bonne façon.
Je suis actuellement en stage dans une université en Roumanie. Mon stage porte sur la mécanique vibratoire. J'utilise un appareil qui me permet de mesurer les vibrations ainsi que les vitesses de rotations de machines. Les données contenant le signal sont exportées sous forme de fichier .wav, les données contenant les vitesses de rotation sont exportés sous formes de fichier texte ASCII.
J'aimerais créer une IHM qui me permettra de traiter de façon intuitive les donnés car par la suite je ne serais pas le seul à utiliser ce programme et je le destine à des personnes ne connaissant pas matlab.
Je ne connais matlab que depuis deux jours et je ne sais donc pas trop par où commencer.
Ce que j'ai déjà fait :
Une fonction matlab qui permet :
-d'ouvrir un fichier .wav
-le réechantionné
-le remettre à l'échelle
-le visualiser avec la fonction Plot
voici le code:
Ce que je vais faire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 function [y2,Fe,N] = wave( nom ) % WAVE [y,Fe]=wavread(nom); %Ouvre le fichier wav [N,p]=size(y); %Donne le nombre d'échantillon stocké dans le fichier wav t=(0:N-1)/Fe; %Construit l'echelle des temps avec pour parametre le nombre d'echantillon et la fréquence d'échantillonage plot(t,y); %Trace la courbe grid on; xlabel('Temps(s)'); ylabel('Amplitude ?'); title(nom); % La deuxieme partie de la commande permet de revenir à l'amplitude inital du signal x1=input('Valeur d un pic sur le fichier d origine : '); x2=input('Valeur du même pic sur le fichier wav : '); y2=y*x1/x2; plot(t,y2); grid on, xlabel('Temps(s)'); ylabel('Amplitude (m/s²)'); title(nom);
-La même chose pour traiter les donnés du fichier texte
Ce que j'aimerais faire (la je ne sais pas du tout comment procéder):
-Fair une IHM qui ressemble plus ou moins à ca:
-Sauvegarder les donnés traités:
Une ligne pour l'echelle des tps, une pour le signal, une pour les vitesses de rotation. Je n'ai aucune idée du type de format que je dois utiliser pour enregistrer mes données (txt ?)
-Par la suite j'aimerais intégré cette IHM à d'autre qui vont permettre de visualiser la FFT du signal etc.. (j'ai également deja programmé la fonction)
Pour résumer:
Est-ce une bonne façon d'aborder les choses de commencer à programmer les fonctions puis apres essayer des les intégrés ds une IHM ?
Est-ce que l'interface graphique que je désire est réalisable pour un débutant comme moi et si oui existe t'il des exemples de codes dans le même genre ? (j'ai regardé rapidement les tutoriaux mais ils sont complexes pour moi)
Avez vous des remarques/question ?
Merci d'avance
Partager