Création d'alarme multi-voie​s

Bonjour je débute sur Lab-View et bien entendu plein de questions se posent, pour ne pas faire un post à ralonge je me contenterai d'une seule pour l'instant
- Je fais l'acquisiton d'une trentaine de voies de mesures en temps-réel cadencé à 2Hz.
- Chacune de ces voies possède des valeurs limites (min et max) configurables en début d'essai.
- En cours d'essai je dois avertir l'utilisateur du dépassement de ces dernières.
J'ai créé un sous-VI pour la comparaison et l'affichage du dépassement, seulement pour effectuer cette comparaison sur l'ensemble des voies je suis obligé de le recopier par autant de comparaison que je souhaite faire.
Actuellement, je renseigne les limites dans le VI principal qui me sert aussi pour l'acquisition et l'affichage, pour extraire les voies du signal je passe par l'outil "désassembler des signaux" et je multiplie mon sous-VI pour la comparaison, ce qui me parait extrêment lourd.
Comment simplifier cette opération ? Le problème étant de "promener" toutes mes valeurs de limites et de les associées à chacune des voies de mesures sans créer un sous-VI à 30 entrées et/ou 30 sorties et créer une boucle qui me permet de sélectionner la voie de mesure correspondante.
J'espère être clair dans mes explications et merci par avance pour les indications que vous pourriez me fournir, partant de pas grand chose je prends toutes les sources de conseils

Bonjour,
   Vos explications sont claires :-)
    Si vous souhaitez "promener" les valeurs des limites avec les données de chaque voie (donc des données de différents types : tableaux 1D de doubles ou waveform + 2 doubles), je ne vois que la solution du cluster : un cluster rassemblant les données et leurs valeurs limites associées.
   Pour condenser le tout, vous pourriez créer un tableau de 30 éléments, dont chaque élément correpondrait à 1 voie (données+limites). Vous pourriez alors modifier votre sous-VI pour qu'il prenne en entrée non pas une seule voie mais le tableau de 30 voies. C'est le sous-VI qui serait alors chargé d'effectuer une boucle sur le nombre de voies et d'extraire pour chacune d'elles les différentes composantes (données 1D + limites) afin de faire les comparaisons. Le tableau de données serait un peu lourd, mais vous n'auriez qu'un seul appel à faire à votre sous-VI. A noter qu'utiliser cette technique brisera tout parallélisme des calculs sur les différentes voies (si toutefois votre sous-VI était réentrant...); celles-ci ne seront traitées que les unes après les autres.
   Cette solution offre une plus grande compacité de votre code, mais diminura probablement les performances de votre application en terme de rapidité de calcul... Pour optimiser le temps de calcul, penser à utiliser le polymorphisme des fonctions de comparaisons dans labVIEW (vous pouvez comparer un scalaire à un tableau)!
   Cordialement,

Similar Messages

  • Acquisition multi-voies simultanée avec convertisseur A/D NIUSB6211

    Bonjour,
    Je souhaiterais faire l'acquisition de plusieurs paramètres de manières simultanée grâce à différents appareils tous branchés sur les différentes voies d'un convertisseur A/D NI USB 6211.
    Mais j’y arrive pas ...et je suis désespéré !!! A titre d’exemple, je  joins le petit vi  suivant où j’ai essayé de faire l’acquisition sur deux voies (ai1 et ai3) en mettant les sous-vi d’acquisition en série...Mais je croyais récolter un signal sur un tableau 2D...et je n’ai qu’une seule dimension, c’est comme si les deux signaux s’additionnaient...Mais je n’arrive pas à les avoir séparé sur deux colonnes différentes ou deux lignes séparées sur un graphe.
    Merci de votre aide
    Pièces jointes :
    ESSAI ACQUISITION PLUSIEURS VOIES.vi ‏23 KB

    Bonjour et merci,
    Effectivement, je ne le savais pas, mais on peut mettre plusieurs voies sur une entrée (je suis débutant). Mais du coup j'ai un deuxième problème. J'ai branché sur la voir ai1, un générateur de signal (un signal périodique sinusoidale) et j'ai sur la voir ai3 un piezo qui est censé me donner un signal si je tape dessus et me garder le signal si je maintiens la pression dessus...
    SI je fais ces manips dans MACS, en sélectionnant les voies, pas de problème, j'ai bien mes deux signaux qui répondent parfaitement...mais je dois être en acquisition continu pour le sinus et "à la demande" pour le capteur piezzo.
    Dans le vi Labview, en rentrant les deux voies ensemble, je suis obligé de me mettre en acquisition continue et bizarrement je récupère bien mon sinus (qui n'affiche pas le signal du piezzo) mais hélas, le signal de mon piezzo apparait avec le sinus....J'entends que j'ai le signal du générateur sur lequel vient se surimposer le signal du piezzo quand je tape dessus...Il me faut éliminer le sinus et là je ne sais comment faire. J'ai essayé comme dans mon vi précédent de rentrer les deux voies d'acquisition en série mais je ne peux choisir de mesure "à la demande"...J'ai le choix entre mesure finie et en continue mais je n'ai pas "à la demande"...
    Par ailleurs, pour le moment, je pourrais utiliser les variations du sinus contaminant comme test de déclenchement du piezzo sur la voie ai3 (celle du piezzo) mais...le signal n'est que ponctuel. J'entends par là que si je tape sur le piezzo, j'ai un signal qui apparait et qui disparait. Normal. mais si je tape sur le piezzo et que je maintiens la pression, alors que je devrais maintenir la variation de tension en ai3, je n'ai qu'un signal transitoire exactement comme quand je ne fais qu'une tape rapide sur le piezzo...je pense que c'est lié au mode d'acquisition et au fait que j'ai le sinus contaminant ...
    J'ai encore besoin d'aide.
    merci

  • Problème d'aquisition multi-voie

    Bonjour, Je souhaiterais faire l'acquisition de 3 tension simultanément à l'aide du NI USB 6259 (série M en USB). J'ai utilisé les vi NI DAQmx mais lorsque je lis la tâche (contenant 6 voies de mesure), j’ai un déphasage entre les voies qui correspond peut-être au multiplexeur. Je souhaiterais compenser ce déphasage, comment dois-je faire ?  
    Cordialement
    Attachments:
    ess vi.vi ‏72 KB

    Bonjour,
    Sur les cartes de série M, il n'y a qu'un C A/N, le déphasage que vous observez dépend donc de votre fréquence de signal et de votre fréquence d'échantillonnage. Si cette dernière est trop faible (par rapport aux fréquences de vos signaux) le déphasage est visible.
    Quelle est la (les) fréquence(s) des signaux que vous acquièrez?
    Quelle est votre fréquence d'échantillonnage?
    Je ne pense pas qu'il y ait de moyen logiciel de compenser ce déphasage.
    Au niveau matériel:
    une carte de série S possède plusieurs C A/N ce qui peut résoudre vos
    soucis si vous etes limité par la fréquence trop élevée de vos signaux.
    cordialement
    Flo
    Open Diagram First

  • Multi-month view and birthday alarm

    Hi Everyone,
    I'm really itching to start using the open iCalendar standard. I keep checking out iCal from time to time and I'm getting more and more tempted. But without multi-month and year view, any calendar is quit useless for my needs. My present calendar app lets me set ANY date range to display and print. This allows an overview over an entire project. I find it difficult to understand how Apple created iChat with such a fundamental omission in the first place and still has not fixed it after such a long time.
    Its also a nuisance that iCal for some inexplicable reason does not allow an alarm to be set for birthdays. How can this be? Is this not one of the key reasons for using a calendar?
    Can anyone tell me how I can get Apple's sympathetic ears?
    Cheers leofredo
    PowerBook G4   Mac OS X (10.4.3)   iMacG5 and G3

    Hi leofredo,
    I had the same problem few days ago (http://discussions.apple.com/thread.jspa?messageID=1196594#1196594) and a good solution was given by John. Here's the link: http://discussions.apple.com/thread.jspa?messageID=1031926&start=10
    Read till the end and I hope it will be as usefull as it was for me.
    Best wishes
    Xavi
    Power Mac G4   Mac OS X (10.4.3)  

  • Alarm not working since 01-01-11

    We have two 3g iPhones and since we moved into 2011 neither of the alarms activate at the set time. The countdown timers work ok.

    I Would like to add our discust at this product my wife and I have 2 x 3g phones on the recomendation of orange to suite our contract we where told there here the business and never fail 2 days into the new year and my wife is late for work as the alarm did not go off.
    yes there are morons out there saying get an normal alarm clock well what is the phone supposed to be multi functional.
    I am due back on duty on friday and had we not found this out who knows what could have happened on friday
    there are rumours there is a fix that will work tomororow but having seem the result of today confidence in the fix
    NIL
    My work collegues have been trying to convince me to go to MAC PC,s and laptops Not a chance after this.
    NEVER again will I Purchase any item linked to this a product

  • Setting multiple alarms

    Can multiple alarms be set on the same day?

    See if MyAlarm will work for you
    http://www.berryreview.com/2007/07/03/myalarm-mult​iple-blackberry-alarms-for-free/
    If someone has been helpful please consider giving them kudos by clicking the star to the left of their post.
    Remember to resolve your thread by clicking Accepted Solution.

  • Alarme timer

    Bonsoir à tous, 
    Je rencontre une difficulté au niveau d'un timer pour la gestion d'une alarme en fonction d'une température. 
    Pour cela, j'ai implémenté avec une machine à états permettant de réaliser tout ce que je souhaite en fonction de la température relevée. 
    Néanmois, j'ai un état stabilisatation qui se déclenche lorsque ma température a atteint la température de consigne spécifié par l'utilisateur. 
    Mon problème se situe au niveau de l'initialisation car le timer n'est pas remis à 0 à chaque fois et donc le temps est considéré atteint alors que ce n'est pas le cas ! 
    Si quelqu'un trouve une erreur, merci de me l'indiquer 
    Cordialement
    Pièces jointes :
    Alerte_Alarme.zip ‏98 KB

    J'ai "dézippé".
    Je vois 7 VIs ... ou est le "Main" ?
    ... dans quel VI se trouve ton problème ?

  • Existe t'il une fonction DAQMX qui permet de vérifier si des voies digitale sont utilisée par un autre task ?

    Bonjour, 
    Je travaille actuellement sur une amélioration qui permet de vérifier l'etat des relais de puissance sur nos bancs de tests. Pour cela j'utilise du multi threads pour eviter de perdre du temps de test. Or dans certain cas le DAQMX ce met en défaut à cause d'un probléme d'utilisation des voies digitales. C'est pour cela que j'aimerai pouvoir insérer une fonction qui permet de vérifier si les voies digitales sont déja utiliser par autre task au lancement de mon thread. Cette fonction existe t'elle ? 
    Merci de votre soutien.
    Cordialement
    CHEVALIER Kevin

    Hello Kevin@VALEO,
    You're in a English section of the forum. Please write in English is you expect an answer. Otherwise, you can post your question in the French section here.
    Regarding your question, why don't you use the Create Task function in order to test if a task already is using the digital channels? If the function sends the specific error which indicates your digital channels are already in use, you'll know it.
    Please don't hesitate to post a simple example which demonstrates the error you meet, eventually attach a screenshot and give us details if you wish more help.
    Regards,
    Jérémy C.
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Travaux Pratiques d'initiation à LabVIEW et à la mesure
    Du 2 au 23 octobre, partout en France

  • DAQmx : tâche multivoies ou plusieurs tâches à une voie ?

    Bonjour,
    Mon projet utilise un module PXI-6512 (sorties numériques) pour piloter une trentaine d'instruments, chacun étant relié à une seule voie de sortie et recevant une commande de type marche/arrêt suivant la valeur booléenne sur la voie. Le code lui-même tourne en LabVIEW Real-Time, comme application autonome sur un contrôleur PXI-1036.
    Il est bien sûr possible de créer une tâche DAQmx avant chaque envoi de commande et de la supprimer après. Mais la suppression de la tâche libère l'accès à la voie. Or, je préfère réserver la ressource par une tâche DAQmx pour empêcher tout accès malencontreux via le réseau (par exemple avec un panneau de test sous MAX... problème déjà évoqué dans un autre fil).
    La question est donc la suivante : pour l'allocation de la mémoire du contrôleur PXI, vaut-il mieux maintenir pendant l'exécution du programme une tâche DAQmx incluant une trentaine de voies ou une trentaine de tâches correspondant chacune à la commande d'un matériel ? La première solution impose de récrire pour chaque commande le tableau entier des valeurs de sorties plutôt qu'une seule valeur correspondant à la commande modifiée, mais ce n'est pas un problème ici.
    Merci d'avance,
    HL

    Merci pour cette réponse... mais je ne suis pas certain de ce qu'il faut en conclure en pratique
    J'avais bien sûr noté que la création de tâches parallèles (chacune incluant une seule voie de sortie) implique celle d'autant de buffers, à maintenir durant toute l'exécution du code pour les raisons expliquées dans le message initial (réservation des voies). Mais comme la taille de chaque buffer est alors plus faible que celle du buffer nécessaire à une tâche unique incluant (et réservant) toutes les voies de sortie, la question était de savoir ce qui est le plus efficace en termes de gestion de mémoire du PXI (étant rappelé que, dans ce cas précis, le fait d'avoir à renvoyer toutes les valeurs de sortie à chaque modification d'une seule voie ne pose pas de problèmes de performances).
    Merci d'avance,
    HL

  • Multi-Function-Synch AO-Write Dig Chan.vi

    Bonjour,
    Ce post est en rapport étroit avec ce dernier :
    NI Discussion Forums : La communauté française : Discussion de produits NI : Le terminal source à co...
    Où on m'avait suggéré un exemple montrant une sychronisation de deux tâches d'acquisisitions (1 analogique + 1 numérique) Multi-Function-Synch AI-Read Dig Chan.vi J'ai donc reproduit cet exemple en transformant les tâches d'acquisitions en tâches d'écritures... Et là, surprise, cela ne marche qu'à moitié : seule la voie analoqique sort un signal.
    Je vous joins une copie d'écran de mon diagramme, en espérant que vous pourrez me dire ce qui peut bien m'échapper.
    Merci d'avance pour toute aide.
    Cordialement,
    Pièces jointes :
    2011-07-25_121438.png ‏36 KB

    Bonjour,
    Effectivement, merci de me l'avoir signalé, mais il ne s'agit que d'une faute de recopie... En ayant correctement défini deux tâches de sortie (numérique et analogique), seule la sortie analogique fonctionne. Je précise que je dispose d'une carte ni USB-6259. Dans mes recherches je suis tombé sur ce post qui explicite un point des caractéristique de cette carte :
    "622x, 625x and 628x M Series DEvices all have correlated digital I/O on port 0, meaning they must use an external sample clock." - John Passiak -
    Qu'en pensez-vous ? Est-ce pour cela que j'ai tant de mal à faire avec le numérique ce que je fais très facilement avec l'analogique ? Est-ce pour cela aussi que je ne peux pas candencer une horloge d'échantillonnage avec OnBoardClock pour source ?
    M. Passiak cite ensuite les 621x et 623x : Est-ce que j'aurais rencontré les mêmes ennuis avec l'une de ces cartes ?
    Cordialement,
    Pièces jointes :
    2011-07-26_171439.png ‏62 KB

  • Synchronis​ation acquisitio​n sortie ttl

    Je n'arrive pas à synchroniser le déclenchement de mon appareil (déclenché à partir d’une sortie compteur +5V que je récupère via le SCXI-1180) avec le début de mes acquisitions (sur voie analogiques). Je voudrais le faire de manière la plus précise possible (à la mili seconde près).
    Pour cela j’ai mis dans une boucle séquence mon sous VI de création de l’impulsion sur une sortie compteur à +5V avec le sous VI AI START. Mais la synchronisation n’est pas parfaite et en plus je reçois un message d’erreur : Aucun transfert en
    cours pour la ressource spécifiée.
    Attachments:
    Programme.JPG ‏151 KB

    Bonjour,
    Vous voulez synchroniser la génération d'un pulse sur une sortie compteur avec une acquisition analogique bufférisée finie.
    Pour plus de précision, la meilleure méthode est de déclencher l'acquisition analogique sur un trigger numérique externe.
    Ce signal numérique de trigger corespondra à votre sortie compteur ce qui permettra d'avoir une parfaite synchronisation entre les 2 tâches.
    Concrètement, si vous avez une carte DAQ MIO Serie E ou S utilisant le chip DAQ-STC, vous pouvez relier la sortie du compteur "OUT X" à l'entrée "PFIO" (= AI Start Trigger).
    Les exemples LabVIEW à utiliser sont:
    * Acquire N Scans Digital Trigger.vi
    * Generate Single Pulse.vi
    Bonne continuation.
    Matthieu Gourssies
    National Instruments

  • DVD Player: multi-region or not?

    I have just had my original ailing CD/DVD drive replaced by a new one: Pioneer DVD-RW DVR-107D. I inserted a new DVD to watch — a definitely European one — and a message came up, showing Region 1 (which is, I believe, North America), asking me to select a region and warning me that I would only be able to change the region four more times. I was alarmed: my old drive never asked me and was obviously multi-regional. So I ejected the DVD without selecting a region and without playing the DVD and inserted a DVD (again a European one) that I had played before on my old drive. It played with no questions asked. I then went back to the first DVD, and it, too, now played with no questions asked.
    I am confused and worried. Has the drive and/or DVD software set itself to a particular region? Presumably not Region 1, because I can now play European DVDs.
    Or is my drive (details as above) in fact multi-regional and was the message asking me to choose a region a red herring? I should be very grateful for any information or guidance.

    I now realize that this region business is a matter of the DVD player included in my computer, not anything specific to the optical drive. The fact that I received a message that this was the first time I was opening the player and asking me to choose a region must have been because, in trying to sort out earlier computer problems, I had used first Onyx and then DiskWarrior to optimize my hard disk, which may have created new links between the player, the optical drive and other components. I also now realize that VLC will play DVDs and is, apparently, non-regional. So my problem has been solved even if, in the future, I may want to play DVDs from other regions.

  • Erreur suite à la création d'un .exe

    Bonjour à tous,
    Je travaille depuis quelques temps sur Labview, notamment sur un système d'acquisition d'images.
    Mon système fonctionne normalement quand il est sous la forme de VI.
    J'ai souhaité créer une version en .exe de mon VI afin de pouvoir l'envoyer à des collègues  sans qu' ils puissent modifier des paramètres qui les empecheraient de bien faire fonctionner le programme.
    Malheureusement, alors que la création du .exe semble avoir fonctionné correctement, j'obtiens cette erreur quand je lance l'acquistion après avoir ouvert le .exe : 
    LabVIEW: Fenêtre de type Null.
    Le VI de niveau principal "XXX" a été arrêté à l'objet unknown sur le diagramme de "YYY".
    Je suis très étonné car le syystème fonctionne très bien quand ce n'est pas sous la forme de ce .exe.
    Avez vous une idée ? Il m'a semblé que c'était peut être que lors de la création du .exe il ne reconnaissait pas un élément, et du coup capotait de manière générale ensuite. Mais je ne peux aller voir le diagramme du .exe, c'etait le but du jeu de ne pas pouvoir le faire si vous voyez ce que je veux dire ... ^^
    Merci ! 

    Bonjour,
    Afin de pouvoir exécuter un exécutable, il faut que le run-time de labVIEW (téléchargeable sur le site internet de National Instruments) soient installés. En fonction de votre application, des run-time ou dll supplémentaires peuvent être requis.
    N'hésitez pas à consulter ce document qui explique comment générer un installeur (chapitre 5) : Un installeur permet d'intégrer les run-time et autre logiciel nécessaire au déploiement de votre application : http://www.ni.com/white-paper/3303/en/#toc5
    Pouvez-vous transmettre le code d'erreur ou rapport d'erreur si vous rencontrez encore des difficulités pour le déploiement de votre appication ?
    Cordialement
    Guillaume D

  • Any possibility to define variable limits for alarms

    Hi,
    I need to define variable LO and HI limits for alarms. That is, these LO and HI limits should be linked to different tags.
    In the tag configuration editor, we can only give constant values to the LO and HI limit fields. Is there a way to associate tags to these fields, instead of constant values?

    Hi helene.
    My implementation to this was to use the tag Attribute VI's and have a seperate program that checks that the current HI or LO value with that of a tag storing my HI set point and another Tag Storing my LO Set point. If there is a diffrence in value, the appropriate alarm level gets changed to match the current value.
    How are you changing your values? I have a slider on the front panel that triggers and event on change to update the tag.
    However a point you may or may not have noticed is that if you change the LO or HI value using the Tag Attribute VI's on one computer, this change is not carried across to others. You will have to programatically run the update program mentioned above continuously on every computer running the system
    This is a very large mine field that you will have to take extra care of. Think about what would happen on startup of the various clients, will there be a point when your computers fall out of sink with each other? will the current alarm set points be reatined when the computer is shut down and restarted?
    I sent a very long time coming up with some solutions for all these problems. Which way you chose to do this depends on:
    Number of computers
    Frequency of limits changes
    Number of tags you wich to change
    Whether you system is server client or multi server based.
    Let me know If you want to know more.
    Later
    Phil McD

  • Emailing alarms to different adresses?

    i was wondering if it would be possible to have ical email alarms to email addresses other than the owner of the login account.
    in my case; i need to set up the planning for a small department ( <10 ) and i could do this easily in ical with a different calander for each employee. it would be nice if i can assign email addresses to use for alarms for each calander so that each emplyee receives an email for thier own events.
    on a related note: is it possible to have ical automaticaly ignore weekends in multi-day events?
    i would like to set up events that last several days, but only for working days.
    i know i could set up two events, that i would prefer it to be a single event and not two separate ones only because of the weekend...
    thanks

    As the number is small, it is do-able. You will have to add the email address for each of the employees to your card as if it were one of your addresses. When setting an alarm, select the one you want from the drop down list of "your" email addresses. I don't think you can make the address selection automatic on a per-calendar basis.
    I don't see any way to omit days in a multi-day single event.
    AK

Maybe you are looking for

  • How to Copy a Long Column in PL/SQL

    Hello. Can anyone tell me how to copy a table that contains a long column? I am using Oracle 8.0.5 SQL Worksheet with the following code that generates an ORA-06502: PL/SQL: numeric or value error. CREATE TABLE "Tmp_CB_REPORT"      CB_RPT_ID NUMBER(3

  • Can't access photos after upgrade to iPhoto 11

    I upgraded OSX to 10.8.2 and iPhoto from 9 to 11. Using Library Manager, I opened the first "old" iPhoto library and followed the screen instructions to upgrade it for iPhoto 11. A message came up stating that there were some errors in the library, s

  • "Download Error" in Creative Cloud App

    Help! Creative cloud no longer shows the apps that need to be updated. It just gives me this message "Download Error. Press retry to try again or contact customer support." Every time I click on "Reload Applications," it just gives me the same messag

  • Suggestion for not picking up the same record

    Hi All, I have a plsql procedure that picks up the records from the same table from multiple threads. Different threads should not pick up the same record. Current Logic: I am locking the row that has been picked up the current thread and the next th

  • How do you unlock items?

    I have a couple of items in the trash that are locked and will not 'trash'. How do I unlock them? I cannot even get them back out of the trash.