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 :

Question sur Simulink


Sujet :

Simulink

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2013
    Messages : 12
    Points : 4
    Points
    4
    Par défaut Question sur Simulink
    Bonjour,

    Je voudrais demander des propositions pour réaliser l'algorithme ci-dessous sous Simulink s'il vous plaît.

    Voici l'idée:

    3 entrées: A,B,C (A,B,C varient en fonction du temps)
    1 sorties: N

    si A>B>C, N=1;
    si A>C>B, N=2;
    .....
    si C>B>A, N=6;

    Programme évident sous Matlab mais pas sous Simulink.
    Merci d'avance!

  2. #2
    FLB
    FLB est déconnecté
    Modérateur
    Avatar de FLB
    Homme Profil pro
    Ing. Aérospatiale
    Inscrit en
    Juin 2003
    Messages
    770
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Ing. Aérospatiale
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2003
    Messages : 770
    Points : 1 185
    Points
    1 185
    Par défaut
    Salut,
    quand tu as ce genre de petit code facile a coder en Matlab et non en simulink, et si tu ne fais pas appelle à des fonctions particulières, je te conseille le bloc "embedded" et d'écrire le code en Matlab à l'intérieur.

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2013
    Messages : 12
    Points : 4
    Points
    4
    Par défaut
    Bonjour, Merci pour votre réponse.
    Si on peut pas le faire coder de manière générale en Simulink, c'est un bon choix.

  4. #4
    Modérateur
    Avatar de le fab
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    1 882
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 882
    Points : 3 432
    Points
    3 432
    Par défaut
    salut

    on peut toujours le faire avec simulink
    dans ce cas à l'aide de blocks compare et switch
    après ca sera plus complexe et moins lisible qu'un bloc embeded

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2013
    Messages : 12
    Points : 4
    Points
    4
    Par défaut
    Salut,

    @le fab :
    Avec les blocs compare et switch en Simulink, je peux déterminer une valeur de N. Problème c'est que je ne sais pas comment les associer comme une seule sortie ayant la séquence continue de 0 à 6. Est-ce que vous auriez une idée?

    @FLB :
    J'ai appliqué Embedded:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    function N=fcn(v1,v2,v3) 
     
    if (v1>v2 && v2>v3) 
        N = 1;
     
    elseif (v1>v3 && v3>v2)
        N = 2;
     
    elseif (v3>v1 && v1>v2)
        N = 3;           
     
    elseif (v3>v2 && v2>v1)
        N = 4;
     
    elseif (v2>v3 && v3>v1)
        N = 5;           
     
    elseif (v2>v1 && v1>v3)
        N = 6; 
     
    end           
     
    end

    mais une erreur ça affiche:
    Output argument 'N' is not assigned on some execution paths
    J'aimerais savoir si vous auriez des solutions pour ce genre de problème. Merci d'avance.

  6. #6
    Modérateur
    Avatar de le fab
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    1 882
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 882
    Points : 3 432
    Points
    3 432
    Par défaut
    salut

    concernat ton erreur avec embedded, il faut que tu geres une condition "else"
    avec que des "if" et "elseif", tu as un cas théorique ou la sortie de ton bloc ne sera pas assignée

    sinon un bloc switch se comporte comme un if (il existe d'ailleurs aussi des bloc if ...) ... par contre il te faudra en cabler plusieurs

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2013
    Messages : 12
    Points : 4
    Points
    4
    Par défaut
    Citation Envoyé par le fab Voir le message
    salut

    concernat ton erreur avec embedded, il faut que tu geres une condition "else"
    avec que des "if" et "elseif", tu as un cas théorique ou la sortie de ton bloc ne sera pas assignée

    sinon un bloc switch se comporte comme un if (il existe d'ailleurs aussi des bloc if ...) ... par contre il te faudra en cabler plusieurs

    Salut,
    Merci pour votre réponse!
    Avec les blocs compare et switch en Simulink, je peux déterminer une valeur de N pour chaque cas. Problème c'est que je ne sais pas comment les réunir comme une seule sortie. Est-ce que vous auriez une idée?

  8. #8
    Modérateur
    Avatar de le fab
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    1 882
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 882
    Points : 3 432
    Points
    3 432
    Par défaut
    comme avec un elseif !
    chaque bloc swith prend en entrée la valeur de N si le test est vrai, la valeur du précedent bloc switch sinon

    une autre solution :
    utiliser des blocs "Fcn" pour evaluer les 6 conditions (en utilisant un bloc mux pour faire entrer 3 signaux dans le bloc FCN), ponderer les conditions par N via un bloc gain et additionner le tout (si les conditions sont bien exclusives)

  9. #9
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2013
    Messages : 12
    Points : 4
    Points
    4
    Par défaut
    Je vous suis très reconnaissant de vos réponses rapide!
    Elles sont indispensables pour moi!

Discussions similaires

  1. [debutant] Questions sur 1 futur projet
    Par cyrull22 dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 28/04/2003, 21h49
  2. Quelques questions sur le TWebBrowser...
    Par CorO dans le forum Web & réseau
    Réponses: 3
    Dernier message: 17/01/2003, 21h23
  3. Question sur les handles et les couleurs...
    Par MrDuChnok dans le forum C++Builder
    Réponses: 7
    Dernier message: 29/10/2002, 08h45
  4. Réponses: 2
    Dernier message: 11/08/2002, 21h27
  5. question sur les message box !
    Par krown dans le forum Langage
    Réponses: 7
    Dernier message: 02/08/2002, 16h11

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