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 :

*Incrementer* les noms des ports d´une carte


Sujet :

Simulink

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Étudiant
    Inscrit en
    Juin 2008
    Messages
    16
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2008
    Messages : 16
    Par défaut *Incrementer* les noms des ports d´une carte
    Bonjour à tous,
    Voici un beau challenge :
    Mon problème traite d´incrémentation et j´ai déjà bien cherché dans les FAQ sans piste pour le résoudre.
    Je travaille sur un skript Matlab pour incrémenter les "valeurs" INPUT (E) /OUTPUT (A) des ports d´une carte PC (valeurs : S000E20.0 et S000A0.0 sont celles de départ à incrémenter).
    Ces entrées/sorties sont matérialisées dans Simulink (ci joint) : lorsque je copie (à la main) 1 ensemble entrée/sortie, Simulink incrémente automatiquement (ex: S000E20.0 devient S000E20.1). Par contre, dans les programmes associées à la lecture-écriture entrée/sortie ces valeurs ne sont pas incrémentées! Le but est justement d´automatiser pour éviter les erreurs de saisie!
    J´ai commencé par essayer d´incrémenter simplement dans Matlab ces "chaines de caractères" mais ca me donne beaucoup de réponses (en tout cas pas une incrémentation de 0.1 à la fin de la chaine).
    Et ensuite, en copiant à la main les blocs, comment je peux atteindre ces petits programmes pour que le nouveau nom du port soit écrit?

    Les domaines sont de S000E20.0 à S000E20.7, et S000E21.0 à S000E21.7 (16 entrées - le pas d´incrément est 0.1).
    Je vous remercie d´avance de vous pencher sur ce challenge
    Fichiers attachés Fichiers attachés

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    769
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 769
    Par défaut
    Salut,

    J'ai peur de n'avoir pas compris...

    Tu veux savoir comment faire :
    S000E20.0
    S000E20.1
    S000E20.2
    ...
    S000E20.6
    S000E20.7

    De même avec 21 ?

    Je ne vois pas où est la difficulté ?

    Tu veux faire ça où et quand ?

  3. #3
    Membre averti
    Étudiant
    Inscrit en
    Juin 2008
    Messages
    16
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2008
    Messages : 16
    Par défaut
    Merci pour ta réponse rapide,
    J´ai écrit challenge* pour attirer l´attention sur mon problème;
    Et je crois en fait que tu as bien saisi que je cherche à générer ces suites de noms (cf. ton exemple) et surtout à actualiser également dans les blocs-skripts (read et write où apparaissent S000......)
    Sympa l´humour, l´envie de challenge et ce serait vraiment cool de me donner des tuyaux. Thanks

  4. #4
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    En fait comme le souligne Christophe la génération des noms en soi n'est pas compliquée (voir et s'inspirer de : Comment créer des variables nommées A1, A2, A3, ...,AN ? )

    Ce qui est plus difficile à comprendre c'est à quel niveau tu veux "incrémenter" car pour incrémenter il faut connaitre l'incrément : comment l'obtiens-tu dans tes scripts (dont on ne sait pas bien à quoi ils sont rattachés) ?

  5. #5
    Membre averti
    Étudiant
    Inscrit en
    Juin 2008
    Messages
    16
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2008
    Messages : 16
    Par défaut
    Ah c'est un forum dynamique ^^
    J'avais essayé de bien expliquer et je vais essayer d'être plus précis. Pour resituer, les noms S000E20.0 (un des ports d'entrée de la carte) et S000A0.0 (un des ports de sortie de la carte) sont bien prédéfinis et je suppose qu'il faut que je génère par incrémentation de 0.1 car les autres entrées et sorties suivent un schéma d'incrémentation (S000E20.1, S000E20.2 ...) : l'approche par incrémentation (type S00020.0 = S00020.0 + 0.1) ne convient peut être pas car ce ne sont pas des variables, si ?
    En fait, Simulink incrémente très bien pour les entrées et sortie (j'aimerais bien savoir avec quel algorithme) et mon objectif central est que les scripts soient modifiés à chaque copie d'un bloc à la main (incrémentés avec le nom du port correspondant) c'est à dire que dans le script, soit pour la lecture ou l'écriture du port, seul l'endroit où le nom du port est inscrit soit modifié. Je ne sais pas vraiment comment automatiser cela, j'avais pensé en idée de base à l'incrémentation mais il faut que je me préoccupe ensuite de relier ce script au bloc Simulink pour pouvoir modifier ce fameux nom : voilà, je voulais dire que je ne souhaite pas seulement incrémenter une chaîne de caractères simplement pour voir que ça fonctionne dans Matlab.
    N'hésitez pas si vous avez des questions - je continue à chercher
    Et je vais promouvoir ce forum que je trouve constructif.

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    769
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 769
    Par défaut
    Désolé,

    Mais peux tu donner un exemple, car là je suis un peu perdu...

    Tu veux créer ton propre block simulink ?

Discussions similaires

  1. Récupérer les noms des ports COM actifs
    Par snymix dans le forum C#
    Réponses: 2
    Dernier message: 15/03/2010, 10h35
  2. [JTable] les noms des colonnes de s'affichent pas
    Par macben dans le forum Composants
    Réponses: 6
    Dernier message: 25/04/2008, 11h03
  3. ShellListView : comment récupérer les noms des fichiers?
    Par Lolo1988 dans le forum Composants VCL
    Réponses: 1
    Dernier message: 11/12/2005, 23h19
  4. Réponses: 2
    Dernier message: 03/02/2005, 13h21
  5. [VBA]Obtenir les noms des polices disponibles
    Par xp dans le forum VBA Access
    Réponses: 2
    Dernier message: 04/03/2004, 15h39

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