IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Simulink Discussion :

Paramètres d'une DLL générée a partir d'un modèle Simulink


Sujet :

Simulink

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    dev
    Inscrit en
    Avril 2011
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : dev
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2011
    Messages : 174
    Par défaut Paramètres d'une DLL générée a partir d'un modèle Simulink
    Bonjour,

    J'ai généré une librairie dll a partir d'un modèle simulink (Matlab2013a), j'ai accès aux entrées, sorties, et aux paramètres.
    Dans le modèle simulink j'ai des fils nommés (loging data) exemple en pièce jointe. Comment je peux récupérer leur valeurs s'il n'est pas connecté à une sortie, sur mon script qd j'utilise le modèle je le fais avec la commande suivante:
    Merci d'avance pour vos réponses.
    Images attachées Images attachées  

  2. #2
    Expert confirmé
    Avatar de duf42
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2007
    Messages
    3 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Par défaut
    Bonjour,

    Pour récupérer les valeurs d'un signal intermédiaire dans une DLL, il faut mettre un "Test Point" en cochant la checkbox dans les propriétés du signal (à côté du Data Logging).
    Ensuite dans la DLL, une structure nommée <modèle>_B est créée: elle contient tous les signaux qui ont un test point.

    Duf

  3. #3
    Membre très actif
    Homme Profil pro
    dev
    Inscrit en
    Avril 2011
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : dev
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2011
    Messages : 174
    Par défaut
    Salut Duf, merci pour ta réponse.
    J'ai essayé mais ça n'a pas marché j'ai l'erreur suivante "Error using calllib Method was not found." sachant que j'ai appelé la librairie comme suite :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Test_signal =  calllib('libname_win64','libname_B');
    .
    La piece jointe montre la déclaration de mon signalNom : Capture.PNG
Affichages : 410
Taille : 30,1 KoNom : Capture1.PNG
Affichages : 407
Taille : 36,0 KoNom : Capture3.PNG
Affichages : 433
Taille : 36,7 Ko.

  4. #4
    Expert confirmé
    Avatar de duf42
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2007
    Messages
    3 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Par défaut
    Vérifie dans ton fichier libname.h si la structure _B est bien déclarée (elle devrait)

  5. #5
    Membre très actif
    Homme Profil pro
    dev
    Inscrit en
    Avril 2011
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : dev
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2011
    Messages : 174
    Par défaut
    Non elle n'est pas déclarée!!

    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    /* Block parameters (auto storage) */
    extern P_Bloc_Data_T Bloc_Data_BCA_P;
     
    /* Block states (auto storage) */
    extern DW_Bloc_Data_T Bloc_Data_BCA_DW;
     
    /* External inputs (root inport signals with auto storage) */
    extern ExtU_Bloc_Data_T Bloc_Data_BCA_U;
     
    /* External outputs (root outports fed by signals with auto storage) */
    extern ExtY_Bloc_Data_T Bloc_Data_BCA_Y;

    La structure DW correspond a quoi?
    Dans le fichier .def elle n'est pas déclaré non plus :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    EXPORTS
    Bloc_Data_M_
    Bloc_Data_M
    Bloc_Data_U
    Bloc_Data_Y
    Bloc_Data_initialize
    Bloc_Data_step
    Bloc_Data_terminate
     
     
     
    Bloc_Data_P
    Sur Matlab R2008b est ce qu'on a accès aux entrées, sorties sous forme de pointeurs comme sur Matlab2013?

    T'en penses quoi Duf?

  6. #6
    Expert confirmé
    Avatar de duf42
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2007
    Messages
    3 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Par défaut
    Citation Envoyé par autousto Voir le message

    Sur Matlab R2008b est ce qu'on a accès aux entrées, sorties sous forme de pointeurs comme sur Matlab2013?
    Je pense que oui.

    Je ne vois pas trop pourquoi tu ne retrouves pas la structure B avec ton signal. A tout hasard, pourrais-tu verifier dans l'onglet "Code Generation" du Configuration Parameters que l'option "Ignore test points "est bien decochee?
    Tu utilises bien le System Target File "ert_shrlib.tlc" ?

Discussions similaires

  1. Réponses: 1
    Dernier message: 04/11/2009, 19h04
  2. Paramètres d'une DLL
    Par Morfus dans le forum Delphi
    Réponses: 1
    Dernier message: 17/02/2007, 12h27
  3. Gérér la langue d'une DLL générée par VB6
    Par lbgl dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 20/11/2006, 14h53
  4. Réponses: 7
    Dernier message: 11/09/2006, 16h44
  5. Visualiser les paramètres d'une DLL C++
    Par tolliv dans le forum C++Builder
    Réponses: 7
    Dernier message: 11/06/2006, 19h46

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