le 05-28-2009 03:26 AM
Bonjour à tous,
Me voila en tant que nouveau sur ce forum, et j'ai envie de dire nouveau avec le logitiel Labview.
je vous présente mon problème rapidement:
je possede une carte d'acquisition de signaux appelée NI USB-6009,
je récupère une trame d'une liason I2C (SDA) et par un petit programme tout simple sous labview j'affiche sur un graphe cette trame.
mon problème est là, je n'arrive pas à récupérer toute la trame entière sur le raphe et surtout la voir défiler à l'écran!
je pense que c'est un problème d'échantillonage ou un truc du style... c'est un peu dur...
Pouvez vous m'aider à revoir mon programme afin de récupérer une belle trame pour la décoder.
je vous en remercie par avance.
Donat.
Résolu ! Accéder à la solution.
le 05-28-2009 03:40 AM
le 05-28-2009 03:47 AM
merci beaucoup pour votre réponse!
Je vous envoie mon programme fait sur labview 8.5.1.
merci encore.
le 05-28-2009 03:59 AM
Bonjour,
Tu utilises les graphes simples donc seulement ce que tu envois est affiché. Utilise dans ton cas les graphes déroulant qui possèdent un historique. (attention par défaut le buffer d'historique est à 1024 points pour le modifier click droit sur le graphe -> longueur d'histroique ).
Sinon tu peux créer un registre à decalage et construire un tableau dans la boucle puis l'envoyé à tes graphes simples. Le plus simple si tu débute c'est la première solution.
N'hesite pas à ouvrir l'exemple graphe pour bien comprendre les différences.
le 05-28-2009 04:05 AM
Bonjour Grégoire,
Merci beaucoup pour votre réponse!
je vais tenter vos conseils et vous tiens au courant.
merci encore pour votre aide.
Donat.
le 05-28-2009 06:51 AM
OK c'est presque parfait et merci encore.
vous trouverez si joint le programme labview que j'ai changé;
Mais je n'arrive toujours pas à sinchroniser les trois graphes et pourtant je suis à la même échelle...
de plus je ne comprends pas pourquoi les courbes ne défilent pas devant mes yeux!
Y'aurait-il un moyen d'y parvenir? Je pense que c'est avec le nombre d'échantillons que le périphérique prend et sa vitesse...
Mais là-dessus je ne suis pas très doué? Pouvez-vous m'aider?
Par avnce merci.
Donat.
le 05-28-2009 07:08 AM
Première chose pourquoi 3 graphes en FA puisque les 3 vont afficher 3 courbes ?
Synchroniser ? ils sont synchrone puisqu'ils doivent afficher la même chose en même temps.
Après placé un DAQmx express de cette façon et configurer comme tu l'as fait n'est pas judicieux puisqu'à chaque tour de boucle tu réinitialise le périphérique ( voir les notes sur la programmation DAQmx sur ni.com)
Ta vitesse d'acquisition est de 10000 échantillons/sec et tu lis 100000 points donc à chaque tour de boucle les graphes affichent 10 points supplémentaires et cela toute les 10sec environ ( et dans ce cas le timeout devrait etre mis legerement supérieur à 10sec).
Après attention à ce que tu veux faire car tu veux faire. Je te conseille vivement de lire le tutorial sur DAQmx et tu auras toutes les réponses sinon ouvre les exemples d'acquisition et notamment Acq&graph voltage Int clk et continuous Acq&Graph Voltage Int clock ( le dernier étant ce que tu veux faire).
le 05-28-2009 08:34 AM
Oula... euh oui... Alors on va reprendre dès le début et je vais essayer de mieux m'expliquer. En fait je dois réaliser un programme sous labview pour vérifier une trame, la décoder puis la conparrer à une autre qui doit etre identique. si elle ne l'est pas, alors l'appareil que je vérifie est deffectueux. dans ce cas là, il faut que je l'entre dans l'ordi via le périf: NI USB 6009, petite carte d'accisition.
J'ai trois graphes différents afin de séparer les trois courbes. Sur chaque graphe il n'y a qu'une seule courbe. Les deux autres je ne les affiche pas. elles sontcachées la premiere courbe correspond à l'horloge de l'i2c la deuxieme courbe correspond à trame que je veux récupérer et la troisième à un drapeau.... en fait pour la troisième je veux juste voir comment elle réagit face au deux autres. que veut dire : " FA"
alors je veux bien croire que ma configuration n'est pas bonne, mais je comprends pas bien alors! comment la configurer? il faudrait que je mette simplement les courbes avec le DAQmx dans la boucle? car en fait je ne veux que les courbe qui change. et c'est vrai que je n'ai pas pensé une seconde que les parametres doivent etre activé qu'une seule fois
je n'arrive pas à trouver les notes et le tutorial sur les DAQmx pouvez vous me donner le lien?
Peut etre qu'un jour je vais pouvoir enfin m'en sortir seul avec ce logiciel qui est normalment moins complexe que d'autre!! en tout cas je vous remercie beaucoup pour votre aide. Donat. |
le 05-28-2009 09:00 AM
Tu n'as pas besoin de cacher tes courbes utilises la fonction séparer les signaux dans express-> manipulation > dessassembler des signaux tu redimensionne pour avoir 3 sortie et tu les branche une par une à tes 3 graphes donc 1 courbe par graph.
Voici un lien pour utiliser les fonctions DAQmx :http://zone.ni.com/devzone/cda/tut/p/id/2835
FA = Face Avant
Simplement mettre seulement la fonction Read dans la boucle.
Je te joins en attaché un cours.
le 05-28-2009 09:19 AM
Ok merci beaucoup!
Sur 53 pages je pense que je vais trouver mon bonheur!!
Je vais potasser tout ca et essayer des petits programmes pour vraiment m'y mettre et comprendre.
car je suis complaitement larguer!!
alé courage Donat!
merci encore de vos réponses et de votre soutient
j'aurais surement encore besoin d'aide!
Donat.