Discussions au sujet des autres produits NI

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

Labview 7.1 Bug Labview?

Bonjour,

Vous trouverez ci-joint un extrait de code. J'ai un problème de calcul (normalement simple)

Je réalise l'opération 129 - 250, le résultat labview 429496.... !!!

 

Pourquoi ??

Merci

0 Compliments
Message 1 sur 4
3 077 Visites

Bonjour,

 

merci d'avoir posté sur les forums NI.

 

Votre problème vient simplement du fait que vous manipulez des entier non signés, c'est-à-dire qu'ils ne peuvent pas renvoyer une valeur négative (le bit servant pour le signe est alloué pour augmenter la valeur maximale permise par le type entier). D'où la valeur retournée aberrante.

 

Si vous pensez avoir affaire à des données négatives dans un programme, utilisez plutôt le type I32 et non U32. (clic droit sur la constante ou l'indicateur -> représentation -> I32)

 

Cordialement,

 

Eric M. - Senior Software Engineer
Certified LabVIEW Architect - Certified LabVIEW Embedded Systems Developer - Certified LabWindows™/CVI Developer
Neosoft Technologies inc.

Message 2 sur 4
3 066 Visites

Bonjour,

 

Merci de la réponse ,c'était bien le problème.

 

J'ai un autre soucis , il s'agit d'un problème d'arrondis voir lefichier joint.

dans un tableau j'extrait les 11 dernières valeurs, de ces 11 valeurs je prends la valeur max et la valeur mini.

Je fais le différence et la surprise :

derniere colonne : 23,39-22,82= 0,57   OK

avant derniere colonne : 26,530-26,460=0,0700016 ?? 

0 Compliments
Message 3 sur 4
3 057 Visites

Bonjour,

 

la précision d'un double dans la mémoire est ce qu'elle est. Par contre, l'affichage dans un indicateur tronque les décimales du nombre. Donc si la "vraie" valeur est 22.8300014, LabVIEW effectuera l'opération avec ce nombre, et non pas avec la valeur affichée (22.830 par exemple). Vous pouvez choisir d'agir sur le nombre en le tronquant (la palette numérique devrait offrir de quoi faire), ou simplement d'adapter le nombre de décimales affichées par l'indicateur. Pour cela : clic droit - propriétés - format d'affichage - décimales...

 

Cordialement,

Eric M. - Senior Software Engineer
Certified LabVIEW Architect - Certified LabVIEW Embedded Systems Developer - Certified LabWindows™/CVI Developer
Neosoft Technologies inc.

Message 4 sur 4
3 048 Visites