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 :

S-function rtw fichier tlc


Sujet :

Simulink

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 4
    Par défaut S-function rtw fichier tlc
    Bonjour,

    J'ai réalisé une s-function a l'aide du s-function builder.

    Ce bloc n'est pas simulable toute la partie "intelligente" est codée en tlc et est donc générée automatiquement par RTW EC.

    Seulement quand le bloc reçoit en entrée un signal issu d'un bloc "constant" rtw ne génère même pas le bloc.

    Il semble qu'il se passe une sorte d'optimisation impromptue.

    Je pense que ce genre de problème peut venir des options de la s-function dans le .c qui génère le mex file mais je n'arrive pas à trouver cette option.

    Merci pour par avance pour vos suggestions

  2. #2
    Membre Expert
    Avatar de tug83
    Homme Profil pro
    MATLAB Geek !
    Inscrit en
    Juin 2006
    Messages
    1 781
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : MATLAB Geek !
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 781
    Par défaut
    Je n'ai pas bien compris ton problème, t'as un message d'erreur? quelle est ta version Real-Time Workshop Embedded Coder ?

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 4
    Par défaut
    Il n'y a pas d'erreur à la génération.
    Quand le signal inputs n'est pas un bloc constant mais est calculée a partir d'un signal "vivant" ma s-function est générée sans problème.

    ici le bloc est "squeezé" aucune génération je ne vois pas mes message passé à la console pendant la génération et aucune trace de mon code dans le .c généré.

    Real-Time Workshop Version 7.2 (R2008b)
    Real-Time Workshop Embedded Coder Version 5.2 (R2008b)

    merci de vous y interresser

  4. #4
    Membre Expert
    Avatar de tug83
    Homme Profil pro
    MATLAB Geek !
    Inscrit en
    Juin 2006
    Messages
    1 781
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : MATLAB Geek !
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 781
    Par défaut
    Il y a pas de mal de bugs reports lié à RTW et le bloc Constant, tu devrais y jeter un œil, par exemple (bug report 532226):
    Incorrect code generation: code execution result might differ from simulation for multirate multitasking model with Constant block as sample time source

    voir aussi bug report 552224

    Cette note propose de remplacer le bloc Constant par un bloc Merge :
    Why do I not get a reusable function for a subsystem containing a Switch block, when driven by a Constant block using the Real-Time Workshop 6.0 (R14)?

    En espérant que tu trouves ta solution, sur le site du support .

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 4
    Par défaut
    Merci,

    Pour le premier point il semble que ce ne soit pas cela ( mes blocs sont bien sur inf)

    et pour le deuxième je n'ai pas de cas spécifique suivant l'entrée (je n'utilise pas le mode reusable)


    Je continue de chercher , la hotline mathworks est dessus également

    encore merci

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 4
    Par défaut reponse mathworks
    voila réponse de la hotline :

    The code will not be generated for the OUTPUTS function of a Simulink block, if it has constant (infinite) sample time. In this case Simulink uses a the output port value from a one time simulation step instead. To prevent this behavior, a S-Function can choose to disallow constant sample times using the following function call in the blocks mdlInitializeSizes function.

    ssSetOptions(S, SS_OPTION_DISALLOW_CONSTANT_SAMPLE_TIME);


    il s'agissait bien d'une optimisation qui simplifiat le calcul en cablant la sortie sur une constante correspondant au resultat du bloc calculé une seule fois.

    il y a donc deux solutions la plus propre c'est donc comme proposée de désactiver le temp d'echantillonage constant

    ou alors de cabler les sorties de la s-function directement sur un output port.



    Tout cela ne se produit que si le bloc s-function se trouve dans un subsystem trigger.


    en esperant que cela puisse servir un jour à quelqu'un.

Discussions similaires

  1. Réponses: 32
    Dernier message: 21/06/2012, 16h48
  2. Bug, Boucle, S-function, RTW, C
    Par Dezailes dans le forum MATLAB
    Réponses: 16
    Dernier message: 28/05/2008, 17h31
  3. un script sur plusieurs fichiers "functions.m"
    Par prologO dans le forum MATLAB
    Réponses: 12
    Dernier message: 18/12/2007, 18h37
  4. function replace fichier txt
    Par bailamos dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 14/04/2007, 00h58
  5. function MidB upload fichier en ASP pur
    Par Poussy-Puce dans le forum ASP
    Réponses: 3
    Dernier message: 15/06/2006, 23h15

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