04-11-2014 09:19 AM - modifié 04-11-2014 09:20 AM
Bonjour
je rencontre un petit soucis sur Labview concernant un de mes projets, je m'explique :
Je souhaite que Labview reçoit par le port COM des mesures de températures de plusieurs capteurs sous la forme capteur1/capteur2/capteur3...etc
Actuellement j'arrive à communiquer avec mon port COM, et même à obtenir mes données de températures ! Mais je bloque sur l'affichage graphique, un graphe avec plusieurs courbes (une pour chaque capteurs bien sûr). Il y aura mon VI en joint.
Je me demande si c'est mon tableau 1D qui fait que mes données sont mal gérées par les graphes, ou alors s'il me manque une fonction...bref je suis perdu
Merci d'avance pour vos réponses
Cordialement
Lykaa
Résolu ! Accéder à la solution.
le 04-14-2014 02:21 AM
Bonjour Lykaa,
Merci pour ton post.
Avant toute chose, peux-tu nous fournir quelques chaînes de caractères issues de ton instrument s'il te plaît ?
Ainsi on pourra t'aider à découper puis convertir tes données pour en faire une graphe sympa !
N'oublie pas d'implémenter ton code de manière à ce qu'une erreur de communication stoppe la boucle While :
Un petit gestionnaire d'erreur en sortie ne fait jamais de mal non plus
le 04-14-2014 02:55 AM
Bonjour et merci de ta réponse
Pour bien résumer mon système : mon instrument fait l'acquisition de la température à l'aide de plusieurs capteurs, actuellement je stocke ces mesures sur une carte sd directement dans mon instrument, mais je souhaite avoir une visualisation en "temps réel" de mes mesures.
Actuellement j'envoie sur mon serial mes données comme ceci :
24.6/19.2/32.1
21.7/15.2/14.9
...etc
Je découpe donc mes valeurs avec "/", si ce caractère est trop contraignant je peux tout à fait en changer, je ne suis pas bloqué par ça.
Si je lance mon programme (je fais un test sur seulement deux mesures), mon tableau arrive à lire mes données, il s'actualise même !
Mais je n'arrive pas à dire à Labview : "Tu me fais une courbe avec la première ligne du tableau, puis une autre avec la seconde ligne, et à chaque nouvelle acquisition tu gardes les anciennes valeurs et tu traces les nouvelles, et etc...."
Parce que si j'insère un graphe, il me trace uniquement une courbe
Merci pour l'info sur l'erreur de communication ! C'est ajouté dans mon programme
J'espère avoir été clair, si besoin de plus d'informations je reste à disposition,
Cordialement
Lykaa
le 04-14-2014 03:40 AM
Le Graphe déroulant me semble être l'idéal !
Fais juste attention au séparateur décimal et ça devrait aller.
le 04-14-2014 03:53 AM
ça marche ! Merci beaucoup !
Je m'en veux de pas avoir trouvé cette solution qui parait "simple"
J'ai juste une petite question avant de clore ce sujet : est-il possible de faire une solution générique pour ce type d'application ? Je m'explique : ici c'est un test avec seulement deux mesures, mais si un jour j'ai 20 mesures, il va donc falloir que je modifie le code. Y a t-il une solution pour prendre en compte automatiquement les n nombres de mesures sans toucher chaque fois au code ?
Cordialement
Lykaa
le 04-14-2014 05:01 AM
Pas de quoi Lykaa !
En effet ce bout de code est relativement simple, cependant il faut tout de même savoir qu'il faut un cluster à un graphe déroulant pour permettre le multi-affichage, et ça tant qu'on ne le sait pas...
En revanche, pour la solution générique je conseille la boucle FOR auto-indéxée, ainsi si le tableau de chaînes contient 200 éléments, les 200 serant convertis, la fonction "Tableau en cluster" devrait finir le boulot :
Tiens nous au jus !
le 04-14-2014 09:27 AM
Tout fonctionne ! C'est vraiment génial !
Comme je souhaite avoir un programme généraliste, j'ai également rajouté une option permettant d'afficher ou non les courbes que l'on veut, pas très agréable de regarder un graphique avec 45 courbes !
Je vais améliorer le programme de base pour pouvoir avoir toutes les infos en temps réel dont j'ai besoin. Je te remerçie grandement pour ton aide
Je met en ligne mon programme pour le faire partager à ceux qui en auraient le besoin, et également une image du code et de l'IHM pour ceux qui ne possèdent pas LabView 2012
Merci encore et bonne après-midi !
Cordialement
Lykaa