Discussions au sujet des autres produits NI

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

quadruple acquisition par rs232

Bonjour

Je dois acquerir les données envoyées en rs232 par 4 appareil biomedicaux. En utilisant des cables transformant le rs232 en usb je cable le tout à mon ordinateur mais alors que l'acquisition marche tres bien pour un appareil (programme d'acquisition basique pour une seule liaison), lorsque je regroupe les vi pour acquerir les 4 voies certaines liaison ne reçoivent rien meme en montant le temps d'attente RS232 a 15secondes. Certaines voies marchent, d'autres non, d'autres par intermitence ... je suis un peu perdu. Pourriez vous me confirmer que labview est capable de fair une telle acquisition et jetter un oeil a mon programme ci joint

Cordialement

0 Compliments
Message 1 sur 10
5 506 Visites

Bonjour,

Oui il n’y a pas de raison que cela ne fonctionne pas.

Si vous avez 4 ports série COM 4 ; 5 ; 6 et 7 cela doit fonctionner. (Vérifier qu’ils existent bien)

Plusieurs remarques,

Je ne vois pas de « write VISA » que des read. Vous êtes dans un mode dans lequel vos capteurs transmettent des données en permanence.

 

Il faut logiquement faire l’initialisation des ports COM et la taille du buffer voir un flush, puis boucler sur la lecture des données, et en dernier faire le close du VISA. Dans le code vous bouclez sur Init, taille buffer, Read et Close.

Luc

banniere Luc Livre NXG Champion.png

Luc Desruelle | Mon profil | Mon blog LabVIEW | Auteur livre LabVIEW : Programmation et applications - G Web
Certified LabVIEW Architect (CLA) & Certified TestStand Developper (CTD) | LabVIEW Champion

MESULOG - LinkedIn site | NERYS - NERYS Group
| directeur CEO MESULOG
| CODIR - NERYS group

0 Compliments
Message 2 sur 10
5 501 Visites

Bonjour,

 

tu pourrais commencer par paramètrer le "VISA Configure Serial Port" avec pour chaque port de com :

- baud rate

- data bits

- stop bit

- parity

- flow control

- terminal char

 

ta séquence ne sert à rien.

bon courage.

Philippe B.
Certified Associate Developer / Dépt Moyens d'essais

www.ingenia-system.com
0 Compliments
Message 3 sur 10
5 498 Visites
Une autre version du programme avec initialisation puis lecture dans la boucle mais qui fonctionne encore moins bien c'est pourquoi je suis resté sur la version envoyée precedement.
0 Compliments
Message 4 sur 10
5 494 Visites
phil_NTA le configure serial port n'as aucun parametre autour tout simplement car les liaisons RS232 utilisées ont les parametres par defaut de la boite et donc n'ont pas besoin d'etre renseignés.
0 Compliments
Message 5 sur 10
5 493 Visites
Si avec les valeurs par défaut tes 4 ports com sont bien paramètrés c ok !!
Philippe B.
Certified Associate Developer / Dépt Moyens d'essais

www.ingenia-system.com
0 Compliments
Message 6 sur 10
5 489 Visites

Ci joint VI modifié.

 

Bon courage

Philippe B.
Certified Associate Developer / Dépt Moyens d'essais

www.ingenia-system.com
0 Compliments
Message 7 sur 10
5 484 Visites

Bonjour

Tout d'abord merci pour le programme, l'aide est apréciée. Cependant ce programme, comme les autres ne fonctionne pas. Je ne comprend pas le pourquoi du comment du probleme car pour moi ces programmes sont correctement réalisés et les liaisons sont bien configurées. Si quelqu'un voit autre chose cette aide sera plus que bienvenue.

cordialement

0 Compliments
Message 8 sur 10
5 408 Visites

Bonjour,

A la lecture de ton post

[…] l'acquisition marche très bien pour un appareil (programme d'acquisition basique pour une seule liaison) […] -> tu as donc 4 vi’s autonomes pour tester tes 4 appareils, et 1 vi qui regroupe le code de pilotage des 4 appareils. 

Je me demande si le problème est logiciel ou matériel (par exemple usb auto-alimenté qui ne supporte pas les 4 appareils, problème de masse,…)

 

Branche les 4 convertisseurs USB -> RS232, et regarde dans le « panneau de configuration » -> « système », si il n’y a pas de problème sur les ports « COM »

 

Si le code marche très bien pour 1 appareil individuellement, as-tu réalisé les tests suivant :

Branche les 4 convertisseurs USB -> RS232, et test le code des 4 appareils avec le code des 4 vi’s autonomes les un après l’autre. (cela permet de savoir si les 4 appareils connectés en même temps provoque un problème) 

Si cela fonctionne, alors il faut faire le test avec le code qui regroupe le pilotage des 4 appareils, mais en désactivant à chaque fois le code de pilotage de 3 appareils dans le vi (open, read et close désactivés pour 3 appareils et pas que read).

Luc

banniere Luc Livre NXG Champion.png

Luc Desruelle | Mon profil | Mon blog LabVIEW | Auteur livre LabVIEW : Programmation et applications - G Web
Certified LabVIEW Architect (CLA) & Certified TestStand Developper (CTD) | LabVIEW Champion

MESULOG - LinkedIn site | NERYS - NERYS Group
| directeur CEO MESULOG
| CODIR - NERYS group

0 Compliments
Message 9 sur 10
5 402 Visites
Finalement, après quelques tests et changements de configuration, j'ai réussi à faire marcher le programme pour deux appareils (les 2 autres n'étant que rarement disponibles). Le problème venait du fait que je lui demandai de lire "n" octets (suffisamment pour avoir la valeur qui m'intéresse) alors qu'il faut demander de lire la trame complète sinon il y a un bug au second appel.

L.DMESU73, si je comprend bien ta derniere idée, il faut que je fasse un "open" et 3 "close" dans chaque sous vi afin de ne garder que la communcition qui m'interesse ouverte et non 4 en meme temps?

D'autres tests vont suivre dans les prochains jours, je communiquerai les résultats et les infos que j'aurai recueillis.

 

0 Compliments
Message 10 sur 10
5 398 Visites