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

MATLAB Discussion :

MATLAB INCA MIP


Sujet :

MATLAB

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 5
    Points : 3
    Points
    3
    Par défaut MATLAB INCA MIP
    Bonjour,

    J'ai un problème de condition if ...

    Je demande à Matlab de récupérer des acquis INCA et de modifier certains labels à certaines conditions.

    Je m'explique :

    J'ai un moteur d'automobile instrumenté. Il y a entre autres 2 capteurs de T°que je nommerai T1 et T2.

    Matlab récupère ses données sans problème. Il calcule ensuite le DeltaT (T1-T2) sans problème.

    Je demande à Matlab d'accélérer le moteur si T1<20°C et si DeltaT<10°C avec l'écriture du type if T1<20 & Delta<10.
    Mon problème est qu'il ne tient compte que d'une seule condition.
    J'ai essayé aussi avec l'écriture if ((T1<20) && (DeltaT<10)) mais aucune réaction ne se produit.
    J'ai regardé dans l'aide matlab mais je ne vois pas où est le problème.
    Si qq'un a une idée d'écriture...

    PS/ Je suis débutant sur Matlab et même en programmation. Je suis non expert en informatique.

    Merci de vos contributions.

    Jojo le boulon ...

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Bonjour,

    les 2 écritures sont correctes (la différence entre & et && est que dans le deuxième cas, MATLAB teste la seconde condition uniquement si la première est vraie). Es-tu sûr que le programme rentre dans le if si une seule des conditions est vraie?

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Oui il rentre bien dans le if.

    En fait je voudrai que le moteur accélère seulement si les 2 conditions sont vérifiées.

    La première condition est vérifiée T1<20 mais là seconde ne l'est pas (DeltaT>10). Le moteur ne devrait pas accélérer mais il le fait quand mm.

    Dans mon cas je dois alors utiliser if T1<20 & DeltaT<10 afin que le moteur n'accélère pas si une des conditions est fausse ?

  4. #4
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Comment vérifies-tu que DeltaT>10 lorsque matlab rentre dans le if?

  5. #5
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 313
    Points : 52 939
    Points
    52 939
    Par défaut
    Une façon simple de vérifier la condition est de remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if T1<20 & Delta<10
     
    end
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    if T1<20
       disp(Delta)
       if Delta<10
     
       end
    end
    Enfin c'est l'idée...

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Je le vois sur INCA directement.

    Le DeltaT est>10 et le moteur accélère tjrs.

    Donc Matlab se contente de vérifier la première mais pas la seconde.

    Je donnerai les scripts exacts demain.

  7. #7
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Il faut donc vérifier dans MATLAB (en utilisant le code de Dut par exemple) car MATAB ne rentre pas dans la boucle if si les 2 conditions ne sont pas vérifiées... (il y a peut-être un problème de communication entre MATLAB et INCA?)

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    J'ai trouvé mon problème.
    Ce n'était pas un problème de condition mais un soucis d'inertie.
    Merci quand même de vos réponse.

    Bonne continuation, à bientôt

    Jojo le boulon

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

Discussions similaires

  1. [LabView-MATLAB] Conversion de fichier binaire
    Par flzox dans le forum LabVIEW
    Réponses: 3
    Dernier message: 20/01/2007, 18h42
  2. Clone Matlab
    Par devmat dans le forum Applications et environnements graphiques
    Réponses: 2
    Dernier message: 30/04/2005, 16h44
  3. Recherche logiciel pour développer en Assembleur MIPS
    Par __alex__ dans le forum Autres architectures
    Réponses: 2
    Dernier message: 19/04/2005, 17h14
  4. OpenGl - Matlab
    Par ManuG dans le forum OpenGL
    Réponses: 2
    Dernier message: 19/01/2005, 15h04
  5. Mip Mapping
    Par ptidrone dans le forum DirectX
    Réponses: 10
    Dernier message: 31/07/2004, 02h40

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