04-14-2011 07:50 AM
Bonjour.
Est-il possible d'incrémenter une variable à chaque éxécution ? C'est à dire que Labview garderait en mémoire la valeur n et qu'à l'éxécution suivante, il me ressorte la valeur n+1
Nicolas
04-14-2011 10:17 AM
Oui.
Tu peux utiliser un "Action Engine" ou mieux reconnus sous le terme de "Functional Global Variable".
Le concepte est simple. Tu as une boucle avec un "shift register" qui est non-initiale'. Chaque fois que l'application l'appelle, il se souvient de la derniere valeur. Tu pourrais donc avoir au sein de ton logiciel (si tu utilises un "State Machine"), un etat qui s'occuppe de contenir la derniere valeur. Et tu peux l'incrementer chaque fois que tu appelles cet etat.
La solution la plus simple est d'incorporer un "Action Engine" a ton code. Tu peux faire une rechercher sur ce terme. Il y a quelques exemples de disponibles.
Cependant, des que tu fermes ton application (exe) ou tu fermes LabVIEW, la valeur en memoire est perdu.. Si tu veux maintenir cette valeur meme si LabVIEW est fermer (ou ton ordi est fermer), je suggere que tu sauvegarde la derniere valeur dans un fichier.
04-15-2011 05:18 AM
Bonjour,
Merci d'avoir posté sur le forum NI.
Ray.R a raison, tu peux utiliser les Functional Global Variable. Voici un lien qui pourra t’aider.
http://decibel.ni.com/content/docs/DOC-2143
Tu peux aussi ouvrir un fichier qui contient la variable, l’incrémenter, la sauvegarder puis fermer le fichier.
Cordialement
Samuel G.
Samuel G. | GEMESIS
Certified LabVIEW Architect
Certified TestStand Developer
04-15-2011 09:23 AM
Tu peux aussi verifier ce lien qui discutte les "Action Engines"
http://forums.ni.com/t5/LabVIEW/Community-Nugget-4-08-2007-Action-Engines/m-p/503801