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 :

base de temps


Sujet :

Simulink

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2010
    Messages : 58
    Points : 53
    Points
    53
    Par défaut base de temps
    Bonjour,

    j'ai un modèle Simulink et je veux utilisé en entré une série de donné y(t).

    ma matrice est [vecteur y; vecteur temps ]

    Mais je ne trouve pas comment faire dans simulink....

    merci

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2010
    Messages : 58
    Points : 53
    Points
    53
    Par défaut
    A priori cela marche avec fromfile.

    Cela ne me plaît pas vraiment comme méthode puisque je dois faire du save.

    Peut être que ça marche aussi avec un simple bloc constant, je n'aurai plus besoin de save et pourrai passer le tout en paramètre.

    bref résolu.

  3. #3
    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 : 39
    Localisation : France

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

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

    Une autre solution consiste à définir le nom de tes variables dans la fenêtre de configuration du solveur.

    Par défaut, elles doivent s'appeller t et u avec t le vecteur temps et u une matrice avec le même nombre de lignes que le vecteur temps (donc t) et le même nombre de colonnes qu'il y a d'input ports (c'est les blocs à utiliser pour "injecter" les signaux dans le modèle)

    Bonne soirée,
    Duf
    Simulink & Embedded Coder

    Au boulot : Windows 7 , MATLAB r2016b
    A la maison : ArchLinux mais pas MATLAB

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2010
    Messages : 58
    Points : 53
    Points
    53
    Par défaut
    bonjour, merci pour ta réponse.

    je suis aller dans la config, j'ai activer dans load from workspace input [t,u]

    mais pour l'instant je n'arrive pas à l'utiliser...

    Nom : untitled.JPG
Affichages : 554
Taille : 3,6 Ko

    et dans mon code,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    t=0:0.01:1;
    u=sin(314*t);
    sim('untitled.mdl','t',t,'u',u)
     
    ou
     
    sim('untitled.mdl','u',u)
    le premier me dit erreur t inconnu
    le deuxiéme m,e dit erreur u inconnu...

    aurait tu un lien qui montre comment utilisé ceci à partir du code, ou cela ne marche que en passant par le workspace?

    merci

  5. #5
    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 : 39
    Localisation : France

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

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Points : 4 661
    Points
    4 661
    Par défaut
    Le plus simple est de définir les variables t et u dans le workspace (si tu le fais à partir d'une fonction, tu peux utiliser ASSIGNIN).

    Pour les définir, il suffit que ce soit des vecteurs colonnes, pour ton exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    t = [0:0.01:10]';
    u = cos(t);
    Sachant que tu peux rajouter des input ports et rajouter en parallèle les valeurs dans u, pour 2 inputs:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    u = [sin(t),cos(t)];
    Simulink & Embedded Coder

    Au boulot : Windows 7 , MATLAB r2016b
    A la maison : ArchLinux mais pas MATLAB

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2010
    Messages : 58
    Points : 53
    Points
    53
    Par défaut
    merci, désolé d'avoir posté sans avoir vraiment cherché^^

    en fait je ne peux pas passer par le workspace, il s'agit de compléter un programme codé que je complete. J'ai besoin de passer par simulink et ensuite de reprendre les résultats et continuer le programme.

    J'ai trouver ce que je voulais en lisant un peu mieux la doc et la direction que tu m'a indiqué.

    Voila ce que je fait, je ne change rien à la config du solver,

    sim('untitled.mdl',[0 t(end)],[],[t' u']);

    avec t le vecteur temps, et u mon signal.

    et dans simulink un input avec l'index correspond à l'index colonne du signal (+1).

    merci

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2010
    Messages : 58
    Points : 53
    Points
    53
    Par défaut
    il me reste un dernier souci,

    dans mon modéle j'utilise des varaible pour les gain par exemple.

    Puisque je ne peux pas utiliser le workspace, il ne connaît pas ces variables, j'arrive donc a envoyer mes signaux mais comment lui envoyer les variables?

    j'ai pas trouver dans la doc de sim...

    merci pour votre aide.

    EDIT:

    j'ai trouver ça, a priori ça fait ce que je veux, donc je vais tester.

    http://www.developpez.net/forums/d27...me-simulation/


    Au poil, ça marche.

    merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Oracle 11gR2 duplication de bases en temps réel
    Par ducho dans le forum Administration
    Réponses: 11
    Dernier message: 15/02/2012, 14h54
  2. Sauvegarde d'une table sur base de temps
    Par manas dans le forum MS SQL Server
    Réponses: 11
    Dernier message: 31/01/2012, 21h54
  3. Enregistrement de données avec base de temps
    Par lio59 dans le forum Windows Forms
    Réponses: 19
    Dernier message: 12/10/2011, 14h44
  4. Recherche dans la base en temps réel
    Par sky88 dans le forum JSF
    Réponses: 7
    Dernier message: 26/09/2011, 19h32
  5. Insérer une décomposition image par image avec base de temps en légende
    Par guifon1000 dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 2
    Dernier message: 09/06/2008, 11h07

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