LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

comment remplacer un registre à décalager par une variable globale

Bonjour tout le monde,

 

Je vous sollicite encore une fois par manque d'expérience....

 

Alors cette fois-ci j'ai un VI qui va acquérir une tension et faire la moyenne de celle-ci, mais mon problème est que j'utilise une boucle while avec un registre à décalage et d'après mon tuteur c'est à cause de cette boucle que je n'obtiens pas les résultats escontés.

Il m'a donc conseillé de supprimer ma boucle while et de mette une variable globale qui gère la période de moyennage à la place de mon registre à décalage. 

 

Le souci c'est que je ne connais ni d'adem ni d'eve cette variable...

 

Est-ce que quelqu'un aurait l'amabilité de m'expliquer un peu cmt ça fonctionne parce que je ne trouve pas mon bonheur dans les exemples et les autres sujets?

 

Et surtout est-ce la bonne solution?

 

REM: le VI a été créé par une autre personne je n'est fais que de modifier la partie moyennage, donc les autres variables globales ne sont pas de moi.

 

Merci d'avance!

Download All
0 Kudos
Message 1 of 4
(2,193 Views)

Bonjour à toi,

 

Tu trouveras ci-dessous un exemple d'implémentation d'une variable globale fonctionnelle :

 

Basic Functional Global Variable Example

 

J'ai regardé ton programme mais je ne suis pas sûr d'avoir bien compris ce qu'il devait faire, aussi je ne peux pas te conseiller entre les deux solutions, essaye avec la variable globale fonctionnelle cela sera de toute facon un bon exercice d'apprentissage.

 

Pour le reste du programme, il est en principe fortement déconseillé d'utiliser des structures séquences déroulées. Il vaut mieux, si on veut s'assurer du bon déroulement de son programme, utiliser une structure de machine à état ou bien tout simplement le flux de données, principe natif de LabVIEW :

 

Programmation par flux de données dans LabVIEW

Machine à états simple

 

J'espère que cela t'aidera,

Bonne journée,

M-Junior

 

0 Kudos
Message 2 of 4
(2,156 Views)

Merci pour l'exemple Marc-junior!

 

J'ai finalement trouvé la solution, il suffisait seulement de supprimer la boucle while avec le registre à décalge et mettre une variable hors de la boucle à condition.

0 Kudos
Message 3 of 4
(2,148 Views)

De rien, tant mieux si tu as réussi à résoudre la problématique. Je me permets un deuxième conseil. Dans un programme LabVIEW, il vaut mieux éviter d'utiliser des variables. Trop de variables entrainent un diagramme peu lisible et situation de compétitions possibles (plusieurs écritures simultanées sur la même variable entrainant une valeur fausse), comme précisé précédemment, il est fortement recommandé, lorsque cela est possible, de privilégier le flux de données pour passer des données entre plusieurs nœuds/fonctions.

 

Bonne journée et bon week-end,

M-Junior

0 Kudos
Message 4 of 4
(2,143 Views)