le 05-14-2013 04:44 AM
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
Résolu ! Accéder à la solution.
le 05-16-2013 08:20 AM
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 :
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
le 05-17-2013 03:00 AM
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
le 05-17-2013 03:44 AM
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
05-17-2013 04:09 AM - modifié 05-17-2013 04:12 AM
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 ?
le 05-17-2013 04:29 AM
Essayer cette commande
Salutations
EricC
le 05-17-2013 04:44 AM
Évidement une fois que je le vois ca parait évident 🙂
Merci
le 05-17-2013 07:32 AM
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 ?
le 05-17-2013 07:57 AM
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
le 05-17-2013 08:27 AM
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 ?