Discussions au sujet de NI LabVIEW

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

Utiliser un programme utilisant des commandes par RS 232 a remplacer par USB

Résolu !
Accéder à la solution

Bonjour je suis etudiant, actuelement en stage.

Je rencontre actuelement quelque probleme.

J'ai effectuer un programme qui genere des signaux et qui en acquiert a l'aide d'un DAQ en usb et des modules NI 9221 , NI 9263.

L'utilisation de ces modules ne me posent pas de probleme , meme si ma programmation ne doit pas etre optimal .

 

Mon probleme et que l'entreprise souhaite avoir un programme ou en face avant on entre le nom de l'utilisateur et un fichier Excel converti en .CSV ou sont defini les commandes permetant de tester des cartes electroniques simples .

L'entreprise ma fournit le programme qu'un etudiant a realiser il y a deux ans avec une communication en RS 232, son programme marche correctement . J'aimerais pouvoir modifier le programme de cet etudiant pour pouvoir y remplacer les commandes utilisable avec mes modules tel que :

- generation d'un signal carre : offset amplitude frequence rapport cyclique

- generation d'un signal continu : offset

- generation d'un sinus : offset amplitude frequence

-acquisition de tension : Moyenne , max , min

-....

 

Tous les parametre des signaux doivent se trouver dans le fichier .CSV.

Seul le nom de l'utilisateur doit etre entre en face avant et le lieu du fichier .csv correspondant a la carte a tester.

 

Comment peut on faire le lien entre les vi VISA et les vi DAQ ?

Quels sont vos conseil ? Repartir a 0 ou essayer de juste changer l'endroit ou sont definit les commandes , car le fichier .CSV sera exactement de la meme forme .

Quel est la meilleur solution pour comprendre un programme que l'on a pas crée pour pouvoir le modifier ?

 

Je vous met en lien le travail de l'etudiant d'il y a deux ans accompagne d'un fichier .CSV correspondant a une carte. " BoardTest EL3G_19042010_AZ.exe " dans le ZIP labview. Les fichiers de config ou de setting doivent necessairement se trouver dans le dossier Data

 

Le Vi que j'ai realise lui a tous les parametre des signaux en face avant donc je pense vite ne plus m'en servir , je vous le joint quand meme. " commande"

 

Merci d'avence

Cordialement
Julien

 

Tout télécharger
0 Compliments
Message 1 sur 25
4 287 Visites

Bonjour

 

Le code d'il y a deux ans est très propre. Il est partie sur une structure en machine d'état et cela le rend simple à adaptée.

Toutes les modifications doivent être réalisée dans "RS232_envoi.vi" pour rédiger les ordres vers votre code.

 

Selon moi voici ce qu'il vous reste a faire :

  1. Transformer votre propre code en machine d'état. Cela vas le rendre plus simple à lire et à adapter.
  2. Réaliser une commande de votre code à partir d'une FIFO. Modèle producteur/consommateur.
           Le producteur étant "RS232_envoi.vi" et le consommateur, votre code.
  3. Placer votre code en parallèle du précédent pour que les deux s'éxécute ensemble.

 

Nota :

Dans l'état actuelle, votre code est fonctionnelle mais n'est pas un programme finie.

Il est prévue pour s'exécuter une fois, puis s'arrêter. La cas typique d'un VI pour valider un principe de fonctionnement.

De plus n'hésitez pas à créer des sous-vi. Cela vas le rendre plus simple à lire. Actuellement vous répétez des commandes inutilement.

 

Salutations

EricC

Ingénieur d'Application / Développeur LabVIEW Certifié (CLD)
Application Engineer / LabVIEW Certified Developer (CLD)
0 Compliments
Message 2 sur 25
4 257 Visites

Bonjour, merci de votre reponse.

J'ai compris le fonctionnement du programme et je suis en train d'y ajouter les commandes que je devrais envoier par USB .

 

Etant donné que mes commandes ne seront pas les meme que cel communiquant par la RS 232 esque mon programme peut fonctionner ? sans avoir de conflit entre les commandes et leur communication ?

 

Comment puis-je affecter une voie a un DAQ a partir de Excel ? Il n'y a pas de soucis pour selectionner une valeur d'une case Excel mais comment definir "0" en "cDAQ1Mod2/ao0" par exemple .

 

Je compte bien crée des sous-vi une fois le principe/fonctionnement valider !

 

Cordialement

Julien

0 Compliments
Message 3 sur 25
4 249 Visites

Bonjours

 

Je ne suis pas certain de cerner le probleme

à partir du moment ou vous saisissez "cDAQ1Mod2/ao0" dans la code, qu'est-ce qui vous empèche de lire ce paramètre dans une case Excel (Ficheir CSV) ?

idem pour la valeur "0".

 

EricC

Ingénieur d'Application / Développeur LabVIEW Certifié (CLD)
Application Engineer / LabVIEW Certified Developer (CLD)
0 Compliments
Message 4 sur 25
4 244 Visites

En placant cDAQ1Mod2/ao0 dans la case excel tous fonctionne correctement ,cependant quand je mets "0" sur Excel mon programme ne fonctionne plus.

Je vais demander des precisions sur le cahier des charges , mais l'idee serait de juste metre la valeur "0" pour affecter a la voie cDAQ1Mod2/ao0 , comment puis-je faire , avec une chaine de caractere que je completerai ? "cDAQ1Mod2/ao" + "0" = cDAQ1Mod2/ao0

Comment puis-je realise ceci ?

0 Compliments
Message 5 sur 25
4 241 Visites

Essayer cette commande

New-2.png

 

Salutations

EricC

Ingénieur d'Application / Développeur LabVIEW Certifié (CLD)
Application Engineer / LabVIEW Certified Developer (CLD)
Message 6 sur 25
4 228 Visites

Évidement une fois que je le vois ca parait évident 🙂

Merci

Message 7 sur 25
4 224 Visites

Dans la parti analyse des resultat , dans la condition ANA par exemple, je ne comprends pas la condition ne marche que pour les entier pourtant c'est bien des reels qui sont defini.

Si j'impose une tension de 4.5 et que ma gamme et entre 4 et 5 aucun probleme la comparaison donne un resultat correct cependant si j'impose 4.5 et que je compare entre 4.7 et 5 le resultat sera aussi correct ...

Une idée ?

 

0 Compliments
Message 8 sur 25
4 214 Visites

Bonjour

 

Je me suis un peu perdu là.

De quoi parlez-vous ? Est-ce toujours la partie configuration par excel ?

Pourriez-vous m'envoyé votre vi qui fait le test ?

 

Salutations

EricC

Ingénieur d'Application / Développeur LabVIEW Certifié (CLD)
Application Engineer / LabVIEW Certified Developer (CLD)
0 Compliments
Message 9 sur 25
4 209 Visites

Je ne parle pas de la partie configuration , mais de la parti analyse des resultats.

J'essaye de m'expliquer de facon plus claire :

L'analyse ne fonctionne que entre deux entiers et j'aimerais qu'elle puisse se faire entre deux reels.

Je ne comprends pas les valeurs (max / min ) que je viens chercher dans mon fichier .csv sont bien de type double precision donc on devrait pouvoir analyser entre deux reels logiquement ?

Je n'utilise pas condition sur le separateur de decimal donc si je mets dans mon fichier .csv des valeur avec une virgule (par default en france) cela devrait fonctionner ?

Suis - je plus claire ?

0 Compliments
Message 10 sur 25
4 205 Visites