Valeurs des variables
Bonjour,
Je vous expose mon problème, nous possédons une installation qui communique avec un automate qui nous retourne des données par le biais d'une passerelle modbus/ethernet. Ensuite en utilisant le Gestionnaire de systèmes distribués NI, je remarque que les valeurs que je lis (F400504 et F400506 par exemple) ne correspondent pas aux valeurs que je lis sur le logiciel modbus doctor.
Reprenant ce projet à l'abandon et étant débutant, je souhaiterais quelques éclaircissement.
Cordialement.
Bonjour,
Je ne connais pas Modbus Doctor et je supose que pour retrouver les variables ModBus de votre automate via le Gestionnaire de systèmes distribués NI, vous utilisez le module DSC, que je n'utilise pas non plus. Malgré tout ça je pense que les différences de valeur lues sont dues au fait que le Gestionnaire de systèmes distribués NI affiche un Float alors que ModBus Doctor doit afficher la table ModBus de manière brute. En effet, le protocole ModBus ne gère que les booléens et les mots de 16 bits. Les valeurs flottantes sont donc obtenues par combinaisons de mots de 16 bits en fonction de règle défini par l'automate. Il y a donc de fortes chances que les données soit correctes des 2 côtés ou alors que le flotant affiché par le Gestionnaire de systèmes distribués NI ne soit pas converti correctement.
Cordialement,
Olivier JOURDAN
SAPHIR | Certified LabVIEW Architect | Topaze on NI Community | LabVIEW add-ons on NI Community | Follow me on Twitter
Similar Messages
-
Bonjour,
Je cherche le moyen le plus fiable et simple pour enregistrer et récupérer des valeurs de variables numériques entre deux exécutions d'un logiciel créé avec Labview 2009.
Cordialement
PhilippeUne fois l'executable fermé, on perd les valeurs de variable partagée? Comment peux t on les stocker automatiquement à la fermeture de l'exe et les récupérer à son ouverture? Il y a toujours la solution de les enregistrer sur un fichier texte mais je n'ai pas l'impression que cela soit la solution la plus usuelle. J'ai vu qu'il y avait la possibilité d'allouer les clefs de registres à la création de l'installeur. Est ce que ces clefs de registres peuvent servir à stocker des données de configuration pour mon logiciel comme des variables numériques?
Cordialement,
Philippe -
Bonjour,
Je travail sous TestStand 3.5 ET LabView 8 et je désirerai accéder en lecture et en écriture à des variables que j'ai créées au niveau des utilisateurs. Je m'explique, dans TestStand j'ai créé pour l'utilisateur par défaut 2 variables, NbBon et NbMauvais. Maintenant lorsque je crée un utilisateur les champs NbBon et NbMauvais apparaisse au même titre que PassWord ou bien encore FullName. Maintenant je désire écrire et lire les valeurs de ces champs à partir de LabView, comment puis je faire ???
Merci de toute l'aide que vous pourrez m'apporter.
Will WLes variables globales sont stockées dans le fichier "StationGlobals.ini" du répertoire "ini" de TestStand. Pour sauvegarder les variables de manière durable, il faut sauver ce fichier. La plus simple des méthodes est d'utiliser la méthode "Engine.CommitGlobalsToDisk()". Vous trouverez ci-joint le VI modifié de façon à sauvegarder les valeurs sur disque.
Cordialement,
Attachments:
Access Prop.vi 25 KB -
Problème avec des variables globales
Bonjour,
J'ai un problème avec mon sous VI, où j'utilise des variables globales. Le problème est comme suit: même si j'initialise les valeurs de mon programme mon sous VI s'exécute avec les premières valeurs que j'ai entré au début (même si je change les valeurs avec lesquelles je travaille).
Merci pour votre aideci joint le vi principal : essai, et le sous VI paramètres
Pièces jointes :
Essai.vi 200 KB
Paramètres.vi 23 KB -
Utilisatio​n des variables
Bonjour,
Je viens vous demander quelques conseils pour l'utilisation des variables : Faut-il préférer des noeuds de propriétés par rapport aux variables locales ? pourtant il me semblerait que la première nécéssite une référence + un noeud de propriété alors que la second il n'y a seulement une seule variable. D'après qq infos la première solution est préconisée, et vous que pensez-vous ?
Résolu !
Accéder à la solution.salut si tu cherches des infos sur locale VS noeuds de propriétés VS terminal, je te conseille la lecture de
blog : Techniques Programmation avancée LabVIEW : Gestion des données FGV – AE - vers DVR
ou Technique de programmation avancée : gestion des données sous LabVIEW de la locale vers la DVR
ou LabVIEW noeud bloquant - Thread User Interface - Root Loop - priorité - interruption
GSXR100045 a écrit :
Faut-il préférer des noeuds de propriétés par rapport aux variables locales ?
Pour modifier juste la donnée dans un même diagramme (dans l’ordre) : terminal / variable locale / nœud de propriété.
Le nœud de propriété va engendrer des lenteurs car dans thread UI (le ratio est de l'ordre de 100 à 300 x plus lent en écriture). Par contre le nœud de propriété peut permettre de faire un value signaling + chainage erreur.
Quand vous mettez à jour une commande avec la même valeur plusieurs fois de suite, une variable locale ou un terminal de commande ne redessine pas la commande sur la face-avant à chaque fois (ce qui est le cas avec le noeud de propriété).
Il y a des duplications des données avec locale ou noeuds de propriétés.
Bonne lecture
A+
Luc Desruelle | Voir mon profil | LabVIEW Code & blog
Co-auteur livre LabVIEW : Programmation et applications
CLA : Certified LabVIEW Architect / Certifié Architecte LabVIEW
CLD : Certified LabVIEW Developer / Certifié Développeur LabVIEW -
Equivalence des variables automates M251 sous labview Modbus
Bonjour,
Je cherchais à savoir les équivalence pour accéder au variable d'un automates Modicon M251 via le protocole ModBus de Labview.
Je connais déjà ces équivalences :
- 0XXXXX : %M
- 1XXXXX : %I
- 3XXXXX : %IW
- 4XXXXX : %MW
Mais je ne connais pas l'équivalence des variables %IX et %QX, si quelqu'un peut me renseigner ?
Cordialement,
Nathan -
Comparer deux chaine contenant une valeure numerique variable
Bonjour à tous,
je cherche une maniere simple de comparer deux chaines contenant une valeure numerique variable au milieux mais sans tenir compte de cette valeure. Par exemple les chaine suivante :
Debut_chaine_00_Fin_de_chaine
Debut_chaine_01_Fin_de_chaine
Debut_chaine_02_Fin_de_chaine
comparées avec une chaine de reference me renverrai "true" si le format de la chaine est reconu soit "Debut_chaine_" une valeure numérique sur 2 digit et " _Fin_de_chaine" ou False dans le cas contraire.
Aurriez vous une idée pour ce genre de fonction ?
Merci
Sébastien
Résolu !
Accéder à la solution.au lieu de "supérieur à -1", tu peux utiliser directement "supérieur ou égal à 0"
(c'est juste pour faire le malin )
[0-9][0-9] == [0-9]{2} -
Probleme pour dupliquer des variables dans le projet
Bonjour à tous,
J' ai un soucis que je n'ai pas rencontré dans le passé concernant la duplication de variables dans mon projet Labview...
Avant je faisais un petit CTRL + clic , glisser déposé, mais dans mon projet actuel des fois ça marche et des fois ça ne marche pas , j' imagine qu'il y' a des restrictions ou autre.
Je peux bien entendu les créer manuellement mais là il s'agit de plusieurs dizaines de variables qui pour la plupart ne diffèrent que par le nom. Je gagnerai mon temps à les dupliquer et juste les renommer par la suite.
Avez vous des idées sur le problème ?
Merci d' avance.En fait c'est vraiment au niveau du projet
Voir le jpg : Je voudrais copier par exemple toutes les variables "KEPCO_BOP_WOOB1_ xxxxxx" et les renommer en "KEPCO_BOP_WOOB2_ xxxxxx" .
Si je selectionne tous et je fais ctrl + clic droit pour dupliquer à un autre endroit, j'ai la fleche de la souris avec le petit " + " à coté et je fais un glissé déposé mais rien ne se passe.
Pour l' instant je m 'en sors en créant à chaque fois une nouvelle variable mais c'est beaucoup plus long surtout si je dois répéter l' opération 100 fois.
Pièces jointes :
Capture.JPG 60 KB -
Bonjour
J'ai le tableau de points suivants
X
121 150 139
Y
174 125 133
les coordonnées réelles de ces point sont 5, 6, 7 en X et 10, 20 en Y (les valeurs données dans ce tableau étant les intensités à chaque points.
Je cherche à rentrer automatiquement sur un graphe 3D les valeurs limites (minimum et maximum) des axes X et Y.de sortes qu'en lisant le graphe, je puisse lire directement à quelle coordonnées est le point le plus intense.
J'ai bien essayé de jouer avec les proprietés du graphe, mais lorsque j'arrive à avoir mon graphe avec les " bonnes echelles " mes points se retrouvent complêtement à l'extérieur de mon repère orthonormé X, Y, Z.
Je travaille sous labview 7.1.
Merci de prendre connaissance de mon problème.
EdouardHi,
My problem is resolved, I have worked with the method nodes and the property nodes.
Please find 2 VIs.
The first VI show you what i had before to find the solution, the second show you what I had needed.
Best regards
Edouard
Attachments:
graph 1.vi 20 KB
graph 2.vi 105 KB -
Chargement des Variables (Flash 6, 7, 8)
Bonjour � tous,
Il y a un mystere que je ne comprends pas.
Je charge une liste de variable dans le m�me dossier
avec la commande
suivante:
loadVariables("Id.db", "_root");
Cela fonctionne parfaitement avec l'apercu avant publication
flash ou bien
sous un mode .exe mais en mode html rien, nada !
Quelqu'un aurrait il la gentillesse de m'expliquer pourquoi
ou ce que je
fait de faux. Je ne pige rien � ce truc
Je vous remercie d'avance
Cordialement
R�gineOups! J'ai trouv� il s'agissait de l'option
acc�s aux fichiers locaux et non
� l'acc�s au r�seau uniquement.
Merci � tous et bon Week-end
R�gine
"R�gine" <[email protected]> a �crit dans le
message de
news:e72kca$eju$[email protected]..
> Bonjour � tous,
>
> Il y a un mystere que je ne comprends pas.
>
> Je charge une liste de variable dans le m�me
dossier avec la commande
> suivante:
> loadVariables("Id.db", "_root");
>
> Cela fonctionne parfaitement avec l'apercu avant
publication flash ou bien
> sous un mode .exe mais en mode html rien, nada !
> Quelqu'un aurrait il la gentillesse de m'expliquer
pourquoi ou ce que je
> fait de faux. Je ne pige rien � ce truc
>
> Je vous remercie d'avance
> Cordialement
> R�gine
>
> -
J'aimerais lire ou modifier des variables globales sur TestStand à partir de LabVIEW
Bonjour,
J'utilise LabVIEW pour lancer TestStand et j'aimerais avant de lancer la sequence, modifier les variables globales sous LabVIEW.
Pourriez vous m'indiquer comment faire?
Merci,
Cordialement
Résolu !
Accéder à la solution.Bonjour,
En cherchant un peu dans l'API de TestStand (TestStand API Poster : http://www.ni.com/pdf/manuals/372844b.pdf)
On trouve :
Typically, you use the PropertyObject class to get or set the values of custom step properties, sequence local variables,
sequence file global variables, and station global variables.
Ce qui donne :
Cordialement,
Da Helmut
Pièces jointes :
TestStand Globale.vi 11 KB -
Voir variable en temps réel en mode operator
Bonsoir,
J'aimerai savoir comment récupérer la valeur des variables à chaque instant des étapes de mes séquences de tests lorsque je suis en mode operator et en mode pas à pas.
D'avance je vous remercie,
Cordialement,
NelsonDuplicate: http://forums.ni.com/ni/board/message?board.id=4170&message.id=32316
Aurélien J.
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 30 juin au 25 août, embarquez pour 2 mois de vidéo-t'chat ! Prenez place pour un voyage au coe... -
Last week I stumbled upon having the options to show the bind variables to a sql statement. I can no longer find how to get back to this. Can someone guide me to the spot?
Regards,
Joethere are intresting undocumented dbms_xplan.display_cursor options for bind values and I guess these strange data inside v$sql.bind_data is input for these options, like;
dbms_xplan.display_cursor(sql_id, 0, 'basic +PEEKED_BINDS')
dbms_xplan.display_cursor(sql_id, 0, 'ADVANCED')
dbms_sqltune.extract_binds(bind_data) http://optimizermagic.blogspot.com/2008/02/displaying-and-reading-execution-plans.html
http://arkzoyd.blogspot.com/2007/04/valeurs-des-variables-bind-sans-10046.html
SELECT t2.*, t1.sql_id, t1.elapsed_time
FROM (SELECT *
FROM v$sql b
WHERE b.bind_data IS NOT NULL
AND b.parsing_schema_name NOT LIKE 'SYS%') t1,
TABLE(dbms_xplan.display_cursor(t1.sql_id,
0,
'basic +PEEKED_BINDS')) t2;
SELECT dbms_sqltune.extract_binds(bind_data) bind, sql_text
FROM v$sql
WHERE sql_id = '07w3mujspwj2q';If somehow I can guarantee v$sql.bind_data to be published for each bind value and kept stored in AWR I guess I will be able to handle this problem, still investigating :)
Thank you for your intrest. -
Faire une action lors de l'apparition de fenêtre modale !
Bonjour,
Je travail sous LabView 8 et TestStand 3.5 et je cherche à effectuer une action bien précise, qui est d'allumer une LED, lorsqu'une boite de dialogue modale apparait. Je ne gère pas l'apparition de ces boites de dialogue car, en faite j'execute une sequence TestStand à partir de mon interface opérateur, et cette sequence affiche des boites de dialogue modale au fur et à mesure de son déroulement. Comment je dois procéder pour allumer cette LED lorsque TestStand affiche une boite modale ??
Si vous savez comment faire, merci d'avance !
Will WBonjour,
Pourquoi ne pas passer par des variables glogales.
Tu utlises une variables globales (booléens)dans tes pas de test labView qui sont lancés par LabView.
Dans ces pas, avant de lancer la fenêtre modale tu passes cette variable à vrai.
Dans le programme de ton interface utilisateur, tu lis en permanance la valeur des variables glogales que tu affiches dans tes leds
Johan G.
NIF
.NIDays2008 {font-family:Arial, Helvetica, sans-serif; font-size:12px; color: #065fa3; font-weight: bold; text-decoration: none; text-align: right;} .NIDays2008 a, a:hover {text-decoration: none;} .NIDays2008 a img {height: 0; width: 0; border-width: 0;} .NIDays2008 a:hover img {position: absolute; height: 90px; width: 728px; margin-left: -728px; margin-top:-12px;}
>> Avez-vous entendu parler de NI Days ? -
Initialisation des entrées,sorties et graphe( valeurs par défaut) à chaque exécution
bonjour je suis en stage, et j'aimerai savoir comment initialiser mes entrées , sorties et mes graphes aux valeurs par défaut que je leur ai donné.
cordialementSi tu utilises un Loop a l'interieur de ton programme, tu peux les initialiser a l'exterieure (gauche) du Loop (boucle?).
Je recommende de ne PAS utiliser des variables locales.
Est-ce que tu as une partie de ton code disponible que tu pourrais attacher a ta reponse?
De cette facon je pourrais verifier ton code.
R
Message Edited by JoeLabView on 07-10-2008 11:13 AM
Maybe you are looking for
-
CPU A Is hotter then the other
i check my iStat a lot and my system monitors and I have noticed that my Mac Mini has 2 CPU A's and the second one is always about 10 degrees or more hotter than the other one and everything else that is measured. It says CPU A and CPU A and the seco
-
Internal Order's Planning change history
Hi Experts, As per our requirement, we want to track changes made in Internal Order (Tr .code KO02) whenever changes made in only planning (not in Master data for which we are able find change documents). Also for Planning changed history we are able
-
I am in the process of implementing machine based 802.1x to my company. I have 2 radius servers and 1 CA. The machines get their certificates via group policy. The group policy is working fine and everyone has been issued their certificates that are
-
We have just started to roll out the curves to a group of 20 at our company. One of them took their phone to Verizon to copy their contacts from their old Moto Q and was told that the firewall needs turned off on the phone. I have tried to do so on
-
CS6 Project With H.264 Video Wont Open in Premiere CC
I wonder if some one can explain to me that on the same exact system where both CS6 & now CC live, i cannot open Certain .MOV files, i believe they are H.264, in Premiere Pro CC where they Open just fine in the CS6 Prekiere Pro? Has this happened to