1. #1
    Nouveau membre du Club
    Femme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    mai 2016
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : mai 2016
    Messages : 36
    Points : 37
    Points
    37

    Par défaut Récupérer valeur d'un fichier .mat

    Salut,

    J'ai un modèle Simulink où je récupère les valeurs d'une variable dans un fichier .mat en utilisant Tofile block.

    J'ai créé un script pour pouvoir récupérer que la dernière valeur du fichier .mat donc j'ai utilisé la fonction load pour charger le fichier après je ne sais pas quelle fonction à utiliser pour pouvoir récupérer ma valeur.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    load('FT1FinalListToFT0.mat')

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    août 2007
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : août 2007
    Messages : 172
    Points : 99
    Points
    99

    Par défaut

    Ta valeur n'est pas dans ton workspace ?

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    mai 2016
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : mai 2016
    Messages : 36
    Points : 37
    Points
    37

    Par défaut

    Si, la valeur est dans le workspace.

    Normalement j'ai un modèle que j'exploite avec deux GUIs. J'utilise la première GUI pour récupérer les valeurs de ma variable dans le workspace que j'aurai besoin dans la 2ème GUI. Quand je relance la simu par la 2ème GUI pour continuer à exploiter le modèle je perd les valeurs de ma variable.

    Donc ce que j'ai pensé à faire est d'essayer de stocker la dernière valeur de mon fichier .mat (que j'aurai besoin pour GUI 2) dans une autre variable et l'appeler par la suite quand je lancerai la 2ème GUI.

  4. #4
    Membre émérite
    Homme Profil pro
    Inscrit en
    mai 2008
    Messages
    1 700
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : mai 2008
    Messages : 1 700
    Points : 2 275
    Points
    2 275

    Par défaut Récupérer valeur d'un fichier .mat

    Bonjour,

    Un exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    clear
    t=0:0.1:10;
    y=sin(t);
    save('datasin')
     
    S=load('datasin');
     
    % dernière valeur de t
    S.t(end)
     
    % Dernière valeur de y
    S.y(end)

  5. #5
    Nouveau membre du Club
    Femme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    mai 2016
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : mai 2016
    Messages : 36
    Points : 37
    Points
    37

    Par défaut

    Merci phryte, j'ai compris la solution, donc j'ai écrit le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    load('X.mat'); 
    F = X(end,:)
    Quand je compile le code dans le "command window" ça fonctionne et je reçois la dernière valeur mais quand j'attribue le code ci-dessus à un bouton pour pouvoir le compiler à partir mon GUI je reçois l'erreur suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function Load_file_Callback(hObject, eventdata, handles) 
    load('X.mat'); 
    set(handles.Load_file, 'BackgroundColor', 'cyan'); 
    F = X(end,:);
    Nom : ErrorX.PNG
Affichages : 13
Taille : 113,0 Ko

  6. #6
    Membre émérite
    Homme Profil pro
    Inscrit en
    mai 2008
    Messages
    1 700
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : mai 2008
    Messages : 1 700
    Points : 2 275
    Points
    2 275

    Par défaut Récupérer valeur d'un fichier .mat

    Bonjour,

    X est le nom de ton fichier.
    Il faut le nom de la variable.
    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function pushbutton1_Callback(hObject, eventdata, handles)
    % hObject    handle to pushbutton1 (see GCBO)
    % eventdata  reserved - to be defined in a future version of MATLAB
    % handles    structure with handles and user data (see GUIDATA)
     
    z=0:0.1:10;
    save('essai.mat');
    v=load('essai');
    valeur=v.z(end)

Discussions similaires

  1. lire les valeurs d'un fichier .mat
    Par amal1410 dans le forum MATLAB
    Réponses: 4
    Dernier message: 04/06/2013, 22h26
  2. Récupérer valeur balise dans fichier XML
    Par jamy69 dans le forum VBScript
    Réponses: 3
    Dernier message: 24/05/2012, 16h45
  3. Réponses: 2
    Dernier message: 06/03/2012, 09h11
  4. Récupérer valeur d'un fichier XML
    Par asnaeb dans le forum C#
    Réponses: 10
    Dernier message: 19/04/2011, 09h45
  5. Récupérer valeurs d'un fichier ini en php5
    Par lenoil dans le forum Fichiers
    Réponses: 2
    Dernier message: 29/03/2007, 16h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo