Discussions au sujet des autres produits NI

annuler
Affichage des résultats de 
Rechercher plutôt 
Vouliez-vous dire : 

saisie clavier bloquée

Bonjour,

 

J'ai une définition de type strict dans laquelle je rentre une chaine de caractères et un I32. Jusqu'à présent je pouvais saisir sans problème des données dans mon programme sans bug, mais depuis 2 jours à chaque fois que je tente une saisie je plante LabVIEW.

Comme je n'ai rien changé de ce coté là je suppose que ça vient d'une autre partie de mon programme alors  j'aimerai savoir quels sont les facteurs qui peuvent déclencher ce genre de blocage.

 

Sebastien DEVISSCHER - Nerys
0 Compliments
Message 1 sur 11
3 885 Visites

Bonjour,

 

Quelle version de LV utilisez vous?

Je pense qu'il ne s'agit pas d'un phénomène systématique et reproductible avec un autre VI. J'ai crée la définition de type stricte en LV 2009 et je peux l'utiliser sans problème. Il semble que quelque chose soit "corrompu" dans votre VI. Un phénomène rare souvent lié à un objet de la face avant. Je vous invite à faire une copie de votre VI et à suprimer petit à petit les éléments pour simplifier le VI dans le but d'isoler la commande ou l'indicateur qui pose problème, puis à supprimer et recréer celui-ci.

 

Vous pouvez m'envoyer une version simplifiée du VI et je pourrai regarder.

 

Une autre piste serait de faire un mass compile et de faire une recompilation forcée.

 

Une autre option est de repartir d'une version antérieure du VI (backup) sauvegardée avant l'apparition du problème.

 

Cordialement,

 

 

Thomas B. | CLAD
National Instruments France

0 Compliments
Message 2 sur 11
3 844 Visites

Je suis sur LV2009 SP1 et la partie qui bloque sur mon VI ne pose pas de problèmes si je l'isole dans un autre VI. Par contre il est vrai que ce VI contient pas mal de bazar.

 

Je vais essayer de récuperer une version antérieure de mon VI, sinon ça sera recompilation forcée

Sebastien DEVISSCHER - Nerys
0 Compliments
Message 3 sur 11
3 838 Visites

Je viens d'essayer une version antérieure de mon VI sauvegardé avant l'apparition de mon problème et où tout marchait sans difficultées, j'ai le même bug. Et le Mass compile ne fait rien non plus.

 

Je met mon main sans les sous-VI

Sebastien DEVISSCHER - Nerys
0 Compliments
Message 4 sur 11
3 835 Visites
Pourriez-vous m'envoyer le .ctl associé?

Thomas B. | CLAD
National Instruments France

0 Compliments
Message 5 sur 11
3 829 Visites
voilà la def de type associée
Sebastien DEVISSCHER - Nerys
0 Compliments
Message 6 sur 11
3 816 Visites

Re-Bonjour,

 

Désolé, en utilisant votre .ctl seul, je ne reproduis pas le problème et je ne suis pas capable de faire tourner le projet complet en raison des sous-VIs manquants.

Vous serait-il possible de m'envoyer une version simplifiée du projet reproduisant le problème que je puisse faire tourner pour observer le plantage?
Je pense que la méthode à adopter et de simplifier le VI petit à petit jusqu'à ce que le problème disparaisse afin d'identifier quel composant fait planter LabVIEW, et ensuite de supprimer et recréer ce composant.
Vous pouvez aussi essayer de supprimer et recréer des commandes/indicateurs en face avant ou les définitions de type correspondantes.

 

Cordialement, 

Thomas B. | CLAD
National Instruments France

0 Compliments
Message 7 sur 11
3 806 Visites

J'ai essayé les methodes que vous avez proposé mais malheureusement elles ne resolvent pas le problème.

 

En supprimant petit à petit j'arrive à quelque chose qui marche mais sans arriver à identifier la source du problème. Je vous met le zip du projet au cas où vous soyez plus efficace que moi.

Sebastien DEVISSCHER - Nerys
0 Compliments
Message 8 sur 11
3 764 Visites
En cherchant je me rend compte que je n'ai plus mon blocage si je désactive l'intérieur de la boucle cadencée qui se trouve dans l'état d'Expérience, alors que le blocage intervient quand le flux de données se situe dans l'etat d'initialisation???
Sebastien DEVISSCHER - Nerys
0 Compliments
Message 9 sur 11
3 748 Visites

Bonjour,

 

Désolé pour le temps de réponse.

 

Le problème vient du fait que dans l'état  "Expérience", on a une structure événement dans une structure condition. Ceci est à éviter. Lorsque l'événement se déclenche (dans notre cas, il s'agit d'un événement "appui sur une touche du clavier") alors que la structure condition n'est pas dans le cas qui contient la structure événement, la face-avant se bloque.


J'ai isolé le phénomène dans le VI ci-joint.

 

CAR 30SCKPVI

 

Donc il faudrait réorganiser votre programme pour éviter d'avoir une structure événément à l'intérieur d'une structure condition.
Ou éventuellement utiliser les événements dynamiques pour activer ou désactiver la gestion de cet événement par programmation et ainsi éviter le blocage de la face avant.

 

Cordialement,

Thomas B. | CLAD
National Instruments France

0 Compliments
Message 10 sur 11
3 675 Visites