Erreur dans ma boucle continue

J'ai un programme qui fait deux type d'acquisition continue et fine, sur une interface à evenement.
La struture fonctionne plutot bien sur l'acquisition fnie, même si une erreur survient, après correction (genre oublie de donnée la voie, ou parametre hors limite), la structure continue.
Par contre en fonctionnement continue, celle ci ne fonctionne absolument pas correctement, des qu'une erreur est détecté celle ci, le programme ne répond plus du tout correctement le bouton d'arret de programme ne réagit plus, alors que j'ai décoché pourtant l'option qui fige mon interface pour cette condition, de plus une erreur récurrante intervient dans cette acquisition comme quoi j'utiliserai un caractère non toleré (erreur 1), hors je transmet aucun nom, juste un tableau avec le nom de mes voies (donc créer par le logiciel lui même).
Je joins en fichier zip "mon projet"
Résolu !
Accéder à la solution.
Pièces jointes :
version test 3.zip ‏537 KB

En jetant un coup d'œil rapide à ton code, je dirais que le plus gros problème qu'il faut que tu règles c'est la structure monoboucle de ton application. Tu ne peux pas mettre le code de l'acquisition continue dans la boucle qui gère les événements utilisateurs.
Il faut mettre en place une boucle en parallèle qui sera en charge de l'acquisition.
Ta boucle de gestion des événements donnera l'ordre de démarrage et d'arrêt de l'acquisition.
L'acquisition se faisant en parallèle, tu pourras gérer tous les événements utilisateurs que tu veux en parallèle.
Dernier petit conseil, penses à faire des sous-vis, cela rendra ton code plus lisible et plus maintenable.
Cordialement.
Olivier JOURDAN
SAPHIR | Certified LabVIEW Architect | Topaze on NI Community | LabVIEW add-ons on NI Community | Follow me on Twitter

Similar Messages

  • Connectez-vouz à itunes pour utiliser les notifications push c'est une erreur danas toutes les applications je peux plus les utiliser

    connectez-vouz à itunes pour utiliser les notifications push c'est une erreur danas toutes les applications je peux plus les utiliser

    n'ayant pas l'assistance promise par le site d'aide, d'un tchat avec des experts jours et nuits toute la semaine ...
    je continue le sujet ; j'ai fait une nouvelle tentative en désactivant le mode sans échec avant de réinstaller adobe, j'ai supprimé tous les composants adobe possibles et même ceux cachés comme selon le modèle mis à disposition sur le forum par un utilisateur ... je ne sais pas encore si cela fonctionne ; cela fait déjà 12heures que j'y suis, il va me falloir bien 1 heure pour installer un logiciel ; j'espère ... je ferais suivre l'article
    il faut peut être un autre article concernant le tchat permanent d'assistance en ligne inexistant ?
    c'est scandaleux qu'ils envoient les gens télécharger en mode sans échec alors qu'il n'est pas possible de se connecter ; en plus le modèle d'assistance que j'ai eu sur le forum ne convient pas à windows8

  • Diagramme de bode dans une boucle de simulation

    Bonjour,
    je continue mes questions sur control design et simulation
    Comment à partir d'un système décrit dans une boucle de simulation, tracer le diagramme de Bode de la fonction de transfert en boucle ouverte?
    merci
    Robert Papanicola
    http://sciences-indus-cpge.papanicola.info/
    http://www.medicalistes.org/~maxime-plus/

    Bonjour,
    Excusez moi mais j'ai un peu de mal à comprendre votre problème.
    J'ai essayé de faire un test que je vous envoie en pièce jointe.
    Ici j'ai initialisé mon tableau et chaque itération de boucle se fait au bout de 1 sec.
    Etant donné que la seule donnée logique de mon tableau initialisé se trouve à la ligne n ou je met n (attention le tableau commence à l'indice 0) alors je sortirai de la boucle ou bout de n+1 sec.
    J'espère que ce VI répondra à votre question, sinon, n'hésitez pas à revenir vers nous et à nous donner plus d'informations.
    Cordialement.
    Pierre Denis
    National Instrument
    Pierre_D
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    LabVIEW Tour
    Journées Techniques dans 10 villes en France, du 4 au 20 novembre 2014
    Attachments:
    test.vi ‏9 KB

  • Probleme de decalage dans une boucle FOR

    Bonjour j'ai un petit probleme dans ma boucle j'ai un code source et je dois extraire des informations de temperature de vent ... voici les lignes où je dois extraire les infos : 
    <tr class="temp">
    <th scope="row">Temp. (&deg;C)</th>
    <td class="first-col">6&#176;</td>
    <td class="">6&#176;</td>
    <td class="">6&#176;</td>
    <td class="">6&#176;</td>
    <td class="">5&#176;</td>
    <td class="">5&#176;</td>
    <td class="">4&#176;</td>
    <td class="last-col">4&#176;</td>
    </tr>
    <tr class="realfeel">
    <th scope="row">RealFeel&#174;</th>
    <td class="first-col">3&#176;</td>
    <td class="">3&#176;</td>
    <td class="">4&#176;</td>
    <td class="">3&#176;</td>
    <td class="">3&#176;</td>
    <td class="">4&#176;</td>
    <td class="">4&#176;</td>
    <td class="last-col">3&#176;</td>
    </tr>
    <tr class="realfeel">
    <th scope="row">Pr&#233;cipitations</th>
    <td style="border-right:solid 1px #EFECE4;" class="first-col" colspan="3">50%</td>
    <td style="border-right:solid 1px #EFECE4;" class="bggray" colspan="3">50%</td>
    <td class="last-col" colspan="3">40%</td>
    </tr>
    <tr>
    <th scope="row">Vent (km/h)</th>
    <td class="first-col">13 OSO</td>
    <td class="">11 OSO</td>
    <td class="">10 OSO</td>
    <td class="">8 OSO</td>
    <td class="">6 OSO</td>
    <td class="">6 OSO</td>
    <td class="">5 OSO</td>
    <td class="last-col">5 SO</td>
    </tr>
    <tr>
    <th scope="row">Humidit&#233;</th>
    <td class="first-col">80%</td>
    <td class="">81%</td>
    <td class="">82%</td>
    <td class="">85%</td>
    <td class="">87%</td>
    <td class="">90%</td>
    <td class="">92%</td>
    <td class="last-col">93%</td>
    </tr>
    <tr>
    <th scope="row">Indice UV</th>
    <td class="first-col">1</td>
    <td class="">0</td>
    <td class="">0</td>
    <td class="">0</td>
    <td class="">0</td>
    <td class="">0</td>
    <td class="">0</td>
    <td class="last-col">0</td>
    </tr>
    <tr>
    <th scope="row">Couverture nuageuse</th>
    <td class="first-col">83%</td>
    <td class="">100%</td>
    <td class="">100%</td>
    <td class="">100%</td>
    <td class="">100%</td>
    <td class="">100%</td>
    <td class="">100%</td>
    <td class="last-col">100%</td>
    </tr>
    <tr class="last-row">
    <th scope="row">Point de ros&#233;e</th>
    <td class="first-col">3&#176;</td>
    <td class="">3&#176;</td>
    <td class="">4&#176;</td>
    <td class="">3&#176;</td>
    <td class="">3&#176;</td>
    <td class="">3&#176;</td>
    <td class="">3&#176;</td>
    <td class="last-col">3&#176;</td>
    </tr>
     Le probleme que c'est j'ai fais 2 boucle For imbriqué la premiere elle lit les données " les valeurs de la temperature..." et la deuxieme pour quelle passe à la prochaine donnée par exemple:  vent pour que je puisse lire ces valeurs ainsi de suite , mais ca marche pas !!! vu quelle reste toujours dans la premiere donnée "temperature " ensuite elle sort, et  au final j'ai juste les primiere valeurs  AIDER MOI PLZZZZZZ !!! MERCI
    PS : voici mon VI dans les pieces jointes  
    Pièces jointes :
    La total.vi ‏95 KB

    Bonjour,
    Pour ce qui est de récupérer tes valeurs, il suffit de récupérer  et de modifier le Vi que je t'avais envoyé dans le post suivant :
    http://forums.ni.com/t5/Discussions-de-produit-de-NI/remplir-un-tableau/m-p/1870401#M45083
    Il d'y ajouter une boucle For de modifier les fins de lignes et de faire un tableau 1D avec les en-têtes des blocs de mesures que tu veux récupérer, par exemple :
    <th scope="row">Temp. (&deg;C)</th>
    <th scope="row">RealFeel&#174;</th>
    <th scope="row">Vent (km/h)</th>

  • Je ne peux pas valider ma commande, je reçois le message d'erreur suivant :  Erreur dans votre commande Ce compte a été enregistré pour un pays différent. Veuillez vous déconnecter puis vous reconnecter à un compte existant pour ce pays.

    Je ne peux pas valider ma commande de Photoshop Elements
    Lorsque j'arrive à la page règlement, il m'affiche le message suivant :
    Erreur dans votre commande
    Ce compte a été enregistré pour un pays différent. Veuillez vous déconnecter puis vous reconnecter à un compte existant pour ce pays.

    Je ne peux pas valider ma commande de Photoshop Elements
    Lorsque j'arrive à la page règlement, il m'affiche le message suivant :
    Erreur dans votre commande
    Ce compte a été enregistré pour un pays différent. Veuillez vous déconnecter puis vous reconnecter à un compte existant pour ce pays.

  • Modif de valeurs pour un sousvi dans une boucle while

    Bonjour, j'ai une question qui a surement l'air un peu idiote mais j'essaie de modifier une frequence de sinusoide en utilisant un sous vi. Ce sous vi est dans une boucle while et helas il ne prend en compte que la premiere valeur au demarrage du vi. Comment je peux modifier les vi de facons a ce que je puisse modifier la valeur de la frequence a mon gre. D'avance merci, je joins un projet exemple de ce que j'aimerais faire, merci de votre aide
    Pièces jointes :
    essai.lvproj ‏8 KB

    Bonjour,
    Vous pouvez utiliser les références pour contrôler votre sous-VI. Voici un exemple : Using Control References to Pass Access of Front Panel Controls to SubVIs
    Cordialement,
    Charlotte F. | CLAD
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    >> "Du 11 octobre au 17 novembre, 2 sessions en parallèle : bien démarrer - approfondir vos connais...

  • Mesure de temps dans une boucle while

    Bonjour,
    Je travaille sur une application qui doit exécuter les ligne d'un tableau contenant différent paramètre les unes après les autres.
    Il faudrait que la boucle While se stoppe quand le temps passer dans la boucle est égale au paramètre de temps contenu dans le tableau. C'est pour la partie mesure du temps dans la boucle que je galère.
    Si quelqu'un a des idées, merci d'avance.

    Bonjour,
    Excusez moi mais j'ai un peu de mal à comprendre votre problème.
    J'ai essayé de faire un test que je vous envoie en pièce jointe.
    Ici j'ai initialisé mon tableau et chaque itération de boucle se fait au bout de 1 sec.
    Etant donné que la seule donnée logique de mon tableau initialisé se trouve à la ligne n ou je met n (attention le tableau commence à l'indice 0) alors je sortirai de la boucle ou bout de n+1 sec.
    J'espère que ce VI répondra à votre question, sinon, n'hésitez pas à revenir vers nous et à nous donner plus d'informations.
    Cordialement.
    Pierre Denis
    National Instrument
    Pierre_D
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    LabVIEW Tour
    Journées Techniques dans 10 villes en France, du 4 au 20 novembre 2014
    Attachments:
    test.vi ‏9 KB

  • Keithley 2400 Meter Read dans une boucle - probleme de status byte read

    Bonjour,
    j'utilise un Keithley 2400 pour mesurer un potentiel. J'ai débuté en utilisant le modèle Read.vi du driver. Dans mon cas, la portion "read single" se trouve dans une boucle for et après un certain nombre de mesures (cela semble aléatoire), la fonction gèle et en remontant les étapes, on découvre qu'il s'agit de la lecture de "status byte" qui ne reçoit aucune réponse en amont. Il faut alors redémarrer complètement le programme. Celà survient à chaque fois et après un nombre d'itérations variable.
    J'ai même tenté de mettre une boucle while directement dans l'exemple "read single" (le .vi) et le problème est exactement le même, même si on ajoute un wait à la boucle. Après un certain temps, ça gèle et c'est le status read qui ne reçoit aucune réponse.
    Merci.

    Bonsoir PG123,
    Ce que je vois directement dans votre VI c'est le fait que vous exécutiez à la vitesse maximum votre boucle While sans le moindre cadencement ne laissant ainsi jamais de temps disponible au processeur pour effectuer d'autres tâches. Il est propable de plus que l'instrument ne supporte pas un nombre de requêtes aussi élevée saturant peut être son buffer ou ne laissant pas le temps à l'instrument d'écrire correctement les valeurs.
    De plus, je pense que vous n'avez pas besoin de récupérer à la vitesse maximum toutes les valeurs possibles provenant de votre instrument. C'est pourquoi je pense qu'une lecture toutes les 200ms suffirait déjà amplement.
    Voici donc à quoi devrait ressembler l'intérieur de votre boucle While :
    Essayez avec un cadencement d'1 seconde (1000ms en entrée de la fonction) dans un premier temps et voyez si le problème de gel se produit. Si ce n'est pas le cas, vous pourrez alors progressivement diminuer la valeur de cadencement (jusqu'à 200ms minimum, celà devrait suffire comme déjà dit au dessus.
    Cordialement,
    Jérémy C.
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Travaux Pratiques d'initiation à LabVIEW et à la mesure
    Du 2 au 23 octobre, partout en France

  • Comment créer une source de cadencement à 1MHz dans une boucle cadencée?

    Comment créer une source de cadencement à 1MHz dans une boucle cadencée?

    Bonjour Julie,
    Je ne comprends pas très bien votre question.
    Tout d'abord, à l'avenir, préférez recréer votre propre post sur le forum, celui-ci datant de 2006, vous pouvez être quasiment sûr que les gens qui y ont participé ne sont plus aussi disponible pour vous répondre.
    D'autre part, le module 8451, qui gère la communication SPI peut gérer des horloges jusqu'à 12MHz, je ne vois pas où est votre problème d'horloge à 1MHz.
    Le problème qui se posait dans le poste d'origine était d'avoir une boucle logicielle qui allait à plus d'1MHz, ce qui est très dur et qui demande du matériel particulier. C'est déjà une limite quasiment inatteignable avec un environnement RT, et il faudra plutot se tourner vers de la technologie FPGA.
    En revanche, si votre besoin est de gérer une comm SPI à 1MHz, vous pouvez très bien avoir le module 8451 qui fait le codage et décodage SPI, et votre programme qui lui tourne à quelques ms pour récupérer ou envoyer de nouvelles données sur le bus!
    J'espère vous avoir éclairé!
    Cordialement,
    Olivier L. | Certified LabVIEW Developer

  • Table: enleverun ligne dans une boucle while

    bonjour,
    je remplis une table avec des valeurs, le but est de pouvoir effacer une ligne quand j'ai fais une faute ,
    le probleme quand je click  droit souris sur la table supprimer la ligne , ca ne marche pas,car je suis dans un boucle infini.
    je veux rester dans la boucle et effacer la ligne , si vous avez une idée, ou améliorer mon programme
    merci.
    Pièces jointes :
    table.vi ‏136 KB

    Bonjour Babnour,
    J'espère que cet exemple vous éclairera; à vous par la suite de le réutiliser et de l'adapter exactement à ce dont vous avez besoin. Il me semble que vous connaissez déjà la structure évènement, et je l'ai enregistré pour LabVIEW 7.0...
    Une remarque concernant les tableaux: il est recommandé lorque l'on en connaît la taille, d'utiliser la fonction remplacer un élément, plutôt que ajouter un élément (gestion de mémoire plus efficace, puisque dès l'initialisation du tableau, l'espace mémoire nécéssaire est alloué).
    Dans l'exemple, la taille du tableau est réglable (avant de lancer l'éxécution) et paramétrée à 8 par défaut. en focntion de l'évènement "clic" détecté, on détermine l'index qui servira pour la fonction remplacer, et l'index pour la prochaine itération de la boucle globale. Si cet index suivant sort de la gamme d'index possible du tableau, on ne modifie pas le tableau, on ne prend pas en compte la modification d'index, et un message apparaît.
    Cordialement,
    Message Edité par Mathieu R. le 09-08-2006 03:26 PM
    .mrLeft{float:left} .mrInfo{border-left:solid 1px #989898;font-size:x-small;color:#989898}
    Mathieu R.  
      CTD - Certified TestStand Developer / Développeur TestStand Certifié  
      CLAD - Certified LabVIEW Associate Developer  
    Pièces jointes :
    tableRem.vi ‏47 KB

  • Comment supprimer une page ajoutée par erreur dans Pages

    Bonjour,
    Je souhaiterais supprimer une page crée par erreur dans un document de Pages. J'ai essayé d'annuler l'action avec CMD + Z mais cela n'y fait rien. Je ne peux pas supprimer directement la page via clic droit et ensuite supprimer.
    Quelqu'un pourrait-il m'indiquer la procédure à suivre?
    Je pense que ce doit être simple mais comme je suis nouvel utilisateur de Mac, je suis entrain de trouver mes repères.
    Merci et à bientôt.
    Cordialement,

    Salut fictif29 ;
    Ouvrez la page se il est fermé .
    Allez dans File > Revert To > Browse All Versions…
    Recherchez dans les Date et heure affichée sur le côté droit de l'écran .
    Sélectionnez comme vous aviez besoin .
    Cordialement,

  • Boucle FOR dans une boucle while avec un registre à décalage

    Bonjour à tous,
    je rencontre un problème au niveau de l'indexation de l'execution de mes commandes.
    Lorsque j'exécute mon programme, seulement la dernière commande est prise en compte.
    Faut-il enlever mon registre à décalage? Changer le mode du tunnel ?
    Cordialement
    Pièces jointes :
    Boucle FOR, while.JPG ‏134 KB

    ça peut avoir son utilité lorsque le diagramme est conséquent et illisible
    alors c'est que tu "reprends en main" le diagram d'un autre .... 
    sinon... si c'est le tien ... il ne sera jamais illisible.
    Et si tu veux "gagner du temps" ... je t'assure ... cable "propre" du premier coup.
    Lisibilité, compréhensibilité, évolutivité ... tu seras gagnant à tous les coups. (à 1000%)
    Sans compter "le coup d'oeil" quand "un autre" ouvrira ton code.
    Avant d'aller plus loin et de comprendre quoi que ce soit dans ce que tu as fait ...
    la propreté de ton diagram sera "ta signature".
    Ah oui ... un diagramme aussi propre que ça ... ça ne peut être que Geoffrey !
    ça l'fait non ?  

  • Boucle FOR dans une boucle while

    Bonjour à tous,
    je rencontre un problème, car lorsque j'exécute une série de commande dans boucle FOR, celle ci ne s'arrête jamais.
    Ma boucle FOR est censée exécuter toutes les sections lues à partir d'un fichier de configuration  et s'arrêter.
    Mais elle répète en boucle mes sections..
    Je ne vois pas bien d'où vient mon problème.
    Cordialement
    Résolu !
    Accéder à la solution.
    Pièces jointes :
    Mode _Auto_Cluster.vi ‏151 KB

    @aznnath : 
    Mode_Auto_Cluster.vi.
    jolie surprise, bravo pour l'effort évident de propreté du BD. (on va dans la bonne direction)
    une certaine réponse était peut-être un rien "rigide".
    à ma décharge, une certaine forme de récurrence n'aide pas.
    et respect à TiTou pour sa déterminantion dans l'aide qu'il t'apporte.

  • Cluster d'erreur dans structure conditionn​el

    Bonjour tous le monde
    J'ai un petit soucis, je découvre labview. J'ai fait deux cluster d'erreur, relié à une structure conditionnelle. Mais les sorties ne semblent pas reliées (d'ailleurs listées dans la liste des erreurs). Du coup, je ne comprend pas trop pourquoi il ne considère pas celle ci reliées.
    Résolu !
    Accéder à la solution.
    Pièces jointes :
    cluster d'erreur.vi ‏7 KB

    Bonjour,
    Dans le cas "True", c'est à dire numérique >=0 tu as en effet relié les deux clusters d'erreurs à travers la structure conditionnel ; mais pour le cas "False" tu n'as relié aucune des deux sorties de la structure conditionnelle (Sortie d'erreur 2 et Numérique 2) donc dans le cas False LabVIEW ne sait pas quelles valeurs attribuer à ces deux sorties. Tu dois relier ces deux sorties pour que ton VI soit exécutable.
    Hope this helps
    When my feet touch the ground each morning the devil thinks "bloody hell... He's up again!"

  • Erreur dans l'étape 10

    SVP quelqu'un peut m'aider?
    Erreur :
    L'erreur suivante est survenue lors de l'exécution de "$error.Clear(); 
              if (!$RoleIsDatacenter)
                $arbUsers = @(get-user -Filter {lastname -eq "MSExchApproval 1f05a927-3be2-4fb9-aa03-b59fe3b56f4c"} -IgnoreDefaultScope -ResultSize 1);
                if ($arbUsers.Length -ne 0)
                  $mbxname = $arbUsers[0].name;
                  $mbxs = @( get-mailbox -arbitration -Filter {name -eq $mbxname} -IgnoreDefaultScope -resultSize 1 );
                  if ( $mbxs.length -eq 0)
                    $dbs = @(get-MailboxDatabase -Server:$RoleFqdnOrName -DomainController $RoleDomainController);
                    if ($dbs.Length -ne 0)
                      enable-mailbox -Arbitration -identity $arbUsers[0] -database $dbs[0].Identity;
            " : "Le serveur actif de la base de données Mailbox Database 1944627809 (949279cd-baab-43ef-afbf-9705fde6860d) est introuvable.".

    Hi,
    This is English Exchange Server Forum.
    To help you better with Exchange problem, please use English post for us.
    Thanks for your cooperation.
    Best Regards.
    Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact [email protected]
    Lynn-Li
    TechNet Community Support

Maybe you are looking for

  • Table does not exist at dw.insertrow(0)

    Hi, I am trying to update an old PB app. Background of the basic database structure: my_data Table: col1 col2 -- lookup to an_old_table.id col3 -- newly added as lookup my_new_lookup Table: code -- 'linked' to col3 above description an_old_lookup tab

  • Auto Update of configuration values in PR from SRM.

    Hi, For Configurable material we have characteristics values. Material is configurable material with material type as services. Same ECC material is replicate in SRM. Create Shopping cart in portal SRM EBP for Multiple line item for material. Each ma

  • Cannot delete mails in public folders using OWA after applying SP3 RU5

    Hello, we recently applied service pack 3 rollup 5 to our Exchange 2010 server (before it was running rollup 4). Ever since, when we try to delete a mail in a public folder using OWA we get the message "An unexpected error occurred and your request c

  • SOLARIS 10 & WINDOWS SERVER 2003 ENTERPRISE

    Hi. I have a Windows Server 2003 installed on my laptop and need to install a Solaris 10 as well .Is it possbile to have both on my laptop?If so ,I put the first CD when booting the system but nothing came up .It heppened also when I wanted to instal

  • After installing asked me a serial number! I have not received any serial number!

    hello, I downloaded the CC, and Muse, on my Macbook Pro, after installing asked me a serial number! I have not received any serial number! Just received a thank you email and explaining the first steps to be taken, yet not have the serial number and