Affichages temps-réel de signaux : dossier n°203380

Comme convenu suite à notre entretien téléphonique, voici le code de mon application.
Voici un résumé des fonctionnalités attendues :
- acquisition des données (PCI-4472 et PCI-4474),
- affichages temps-réel (f(t), FFT, ...)
- affichages post-traitement
- multi-fenêtrages des affichages...
Pour l'instant, la partie acquisition est codée et j'essaie de récupérer en temps-réel la f(t)... Je viens de changer mon graphe déroulant en graphe simple mais j'observe toujours un sinus "très découpé"...
De plus, j'aimerais avoir quelques conseils et observations sur ce qui est déjà fait (je commence avec Labview et reprend un code écrit par un autre...), notamment en ce qui concerne le multi-threading et la gestion
des priorités.
D'avance merci !
Amandine DAZARD
Attachments:
Nouveau_dossier.zip ‏375 KB

Bonjour,
Je ne suis pas sur qu'une DLL créée avec LabVIEW puisse être executée sur LabVIEW RT... à voir.
Pour cela je vous invite à vérfier que votre DLL est exécutable sur un système RT en regardant le lien suivant :
How Can I Verify that My DLL is Executable in LabVIEW Real-Time?
Version.dll fait partie de l'API Windows pour avoir des informations sur les versions de fichiers de DLLs ou d'exécutables, mais il est probable que ces fonctions ne soient pas implémentées dans le système RT de LabVIEW type Pharlap ou VxWorks.
Cordialement,
Da Helmut

Similar Messages

  • Graphe + (affichage temps réel) des données d'un tableau

    bonjour,
    voila j'ai un léger probleme avec mon vi ,
    j'ai deux tableaux , un avec la température et un avec le temps, lorsque j'execute mon eurotherm reagit bien 50°C pendant 30 secondes
    pas de souci.
    cependant je voudrai que ceci s'affiche en temps réel sur un graphique déroulant ou xy or celui-ci réagit bizarrement
    et je ne sais pas comment faire pour le faire bien apparaitre
    j'utilise une fonction assembler por assembler les 2 tableaux contenant la température et la durée cependant ca ne amrche pas comme je veux ejk vous joins mon vi, voyez si vous pouvez y a pparter des modifications.
    merci d'avance
    Attachments:
    température=f(temps).vi ‏46 KB

    Hi,
    thanks to post your questions in english, otherwise you can post any questions you want in french in the french community of the forum.
    Please also try to avoid creating several treads for the same question. This tread is transfered to the link below:
    graphe + (affichage temps réel) des données d'un tableau
    Regards,
    ClémentG

  • Affichages multiples et temps réel de signaux

    Je dispose d'un vi d'acquisition d'un signal (+s voies et 2 cartes PCI-4472
    et PCI-4474) qui me génère un tableau de waveforms en sortie (DAQmx).
    Je veux écrire différents vis d'affichage (f(t), FFT, XY,...) de ce signal
    et qui devront être en temps réel. (sachant que d'autres affichages de
    post-traitements seront ensuite faits à partir d'un fichier de sauvegarde
    des données). Cette solution a été retenue car je ne vois pas comment faire
    de multi-fenêtrage sans ça... (mais on peut peut-être !).
    Cependant, à l'affichage, j'ai l'impression de perdre des informations ??
    Voici en pièce jointe, un vi simple qui reprends plus ou moins mon problème
    (décalage de la courbe simulée dans le graphe déroulant).
    Quelle architecture me con
    seillez vous ?"

    Hi Gnou
    Please find this document regarding to your question.
    http://www.ni.com/white-paper/12558/en/
    You should also be able to change the IP adresse in the ".aliases" file located in  your project folder
     

  • Ajout d'un affichage dans Labview Signal Express

    L'ajout d'un affichage (quand il ne s'agit pas d'un graphe par exemple ajout d'un affichage "Thermomètre") dans Labview Signal Express est impossible et conduit à la fermeture du logiciel, quelqu'un a-t-il une solution pour remédier à ce problème ?

    Bonjour yj55,
    Ce problème effectivement n'est pas normal.Avez-vous un message d'erreur qui s'affiche? Est-ce un problème que vous n'aviez pas du tout avant?
    Vous pouvez par exemple tenter de faire une réparation de Labview Signal Express
    Cordialement
    Mathieu B
    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;}
    Forum Aéronautique, Spatial et Défense. Avec la participation exceptionnelle de Bernard DUPRIEU, Res...

  • Graphe en temps réel par tableau de valeurs

    Bonjour,
    Je cherche à programmer une IHM en liaison avec un microcontrolleur.
    Une des fonctions à réaliser est de recevoir les données envoyées par le microcontrolleur, de les traiter et de les afficher.
    J'ai du mal au niveau de l'affichage pour l'instant, et je me demandais si vous pourriez m'aider.
    Le protocole mis en place est la réception d'un tableau de maximum 20 valeurs toutes les secondes.
    Ce que je n'arrive pas à effectuer est l'affichage "temps réel" des valeurs. C'est à dire que je souhaite actualiser l'affichage du graphe avec les nouvelles valeurs reçue, ainsi qu'en affichant en abcisse le temps t et non pas le nombre de valeurs.
    Ce n'est peut-être pas très clair donc je vous link mon VI test à ce propos.
    Su ce VI je génère des valeurs aléatoires que je traite. Ensuite j'essaye de les envoyer par array de 20 sur mon graph.
    Les problèmes rencontrés sont :
    _ Les nouvelles valeurs sont rajoutées "à gauche" du graph, c'est à dire au niveau du 0 de l'axe des abcisses et pas "à la suite" du graph précédent
    _ Les valeurs de mon tableau se remplissent également dans le mauvais sens : la dernière valeur du tableau correspond à l'index 0 alors que je souhaiterais le contraire
    Merci d'avance pour votre aide.
    Résolu !
    Accéder à la solution.
    Pièces jointes :
    concatenate graph v1.0.vi ‏21 KB

    Voici les résultats que j'obtiens en cherchant graph XY dans l'aide. Cf pièce jointe.
    Mon logiciel est en anglais, mais je ne pense pas que les exemples soient différents d'un language à l'autre.
    Les seuls VI proposés ayant comme nom graph XY sont ceux permettant de mettre un graph dans Excel ou Word, ce qui n'est pas ce que je recherche.
    Cet exemple ne serait-il pas présent sur ma version de Labview ?
    Pièces jointes :
    forum labview01.png ‏56 KB

  • Envoyer un signal pendant une duree T

    Bonjour,
    Je souhaite envoyer des signaux
    de fréquence f donnée avec une Fe=10*f, pendant une durée T bien
    déterminée!!
    J'ai quelques soucies pour géré le temps pendant
    lequel le signal est généré...
    Voici ma fonction d'envoie:
    void Signal(int f){
    int32 error=0;
    TaskHandle taskHandle=0;
    float64 data[1000];
    char errBuff[2048]={'\0'};
    bool32 done=0;
    int i=0;
    int32 written;
    int Freq=1000*f;
    int Fe=100*Freq;
    for(;i<1000;i++)
    data[i] = 5.0*sin((double)i*2.0*PI*Freq/Fe); // /!\ Formule pour une fr�quence F!!!
    /*/ DAQmx Configure Code
    DAQmxErrChk (DAQmxCreateTask("",&taskHandle));
    DAQmxErrChk (DAQmxCreateAOVoltageChan(taskHandle,
    "Dev1/ao0", //The physical name of the channel
    "", //The name to associate with this channel
    -10.0, //10v minimum
    10.0, //10v maximum
    DAQmx_Val_Volts,
    NULL));
    DAQmxErrChk (DAQmxCfgSampClkTiming(taskHandle,
    "", // external clock source line or use "" for internal clock
    Fe, // expected rate of external clock or actual rate of internal clock
    DAQmx_Val_Rising, // acquire on rising or falling edge of ticks
    DAQmx_Val_ContSamps, // continuous or finite samples
    1000));
    /*/ DAQmx Write Code
    DAQmxErrChk (DAQmxWriteAnalogF64(taskHandle,1000,0,1,DAQmx_Val_GroupByChannel,data,&written,NULL));
    /*/ DAQmx Start Code
    DAQmxErrChk (DAQmxStartTask(taskHandle));
    printf("Generating voltage continuously\n");
    /*/ DAQmx IsDone Code
    DAQmxErrChk (DAQmxIsTaskDone(taskHandle,&done));
    J'ai
    tenter de changer les parametres de la fonction NIDAQmWriteAnalogF64()
    mais sans succès.
    Une idée? Merci d'avance!

    Bonjour Paul,
    Une génération finie te permettrait de générer un nombre d'échantillons fixe et déterminé au préalable et ceci à une fréquence (Fe=10*f) connue et donc tu auras une génération qui aura une durée fixe est déterminée. Dans ton exemple, la generation et continue eet donc ne peut être arrétée que par une erreur ou la décision de l'utilisateur (décision logicielle).
    Cordialement,
    Jérémy M. | Certified LabVIEW Developer
    Design Engineer - LinkedIn - Contact
    Don't forget to give Kudos to good answers.
    N'oubliez pas de donner un compliment aux bonnes réponses.

  • Comment utiliser le même graph

    Bonjour,
    Voici mon problème: j'ai une structure condition avec plusieurs états. Dans chaque état, une boucle while tourne et permet d'afficher en temps réel un signal d'acquisition.
    Sur la face avant j'ai donc N graphiques correspondant chacun au signal d'acquisition correspondant à mes N conditions. Bien entendu une seule condition est active à chaque fois et les autres graphiques n'affichent donc rien.
    Est-il possible d'utiliser un unique graphique qui serait une espèce de "graphique global" à la manière des variables globales ?
    Merci d'avance.
    Résolu !
    Accéder à la solution.

    Merci pour cette réponse rapide.
    Je me trompe peut-être mais je ne pense pas que ceci puisse résoudre mon problème.
    Le problème est que les graphs affichent en temps réel (ils sont dans la boucle while), le cluster de tableau fonctionnerait si les graph étaient à l'extérieur du while non ?
    Pour résumer, j'ai une machine à état à l'intérieur de laquelle il y a une boucle while pour chaque état, et à l'intérieur de chaque boucle while, un graph.
    En gros je change juste la source de données affichées pour chaque état et j'aurais juste voulu avoir 1 seul graph au lieu de X graphs (X états).

  • Cadencement et synchronisation

    Bonjour à tous,
    J'ai un bout de code destiné à permettre la synchronisation d'une cible temps-réel au signal GPS et à générer une horloge qui prend le dessus sur le 10MHz natif du fonc de panier du chassis PXI Express.
    Mon système comprend:
    - une carte PXI-6682H pour la synchronisation au GPS,
    - une carte PXIe-6674T pour l'asservissement de l'horloge du fond de panier du PXIe par une qui soit asservie au GPS.
    Le but du programme est de lire un horodatage (à partir de niSync Read Trigger Time Stamp.vi) correspondant au temps de lancement du programme, et vis-à-vis duquel toutes les autres opérations vont se baser. Lorsque je génère une horloge dont la fréquence est de l'ordre de quelques Hz à quelques milliers de Hz (jusqu'à 10kHz par exemple), j'arrive à lire l'horodatage recherché en fixant un timeout plus ou moins conséquent, suivant la fréquence de l'horloge générée.
    Cependant, le but ultime est de faire correspondre chaque tick d'horloge à un échantillon acquis par un DAC. Et comme la fréquence d'échantillonnage requise est relativement élevée (100kHz), l'idée était donc de générer une horloge qui ait une telle fréquence. C'est à ce niveau que les choses se compliquent puisqu'une erreur (-1074118582) se produit au niveau de "niSync Read Trigger Time Stamp.vi". L'erreur persiste même lorsque je rallonge considérablement le timeout de ce VI (jusqu'à 10 min tout de même!).
    Bref, le code est plus parlant q'une suite de phrases (voir la pièce jointe).
    Si quelqu'un aurait déjà rencontré ce problème, je suis très curieux de connaître, le cas échéant, la solution qui aurait été implémentée.
    Bien cordialement,
    Hervend
    Pièces jointes :
    Trouble with niSync Read Trigger Time Stamp.zip ‏154 KB

    J'ai considéré en autant que possible, mais je n'ai pas de Windows 7, mais Windows Vista Home Premium. Dans la recherche de mon ordinateur, j'ai trouve le fichier libxml2.dll, mais je ne peux pas trouver un fichier nommé Applesyncpref.exe sur mon ordinateur Vista n'importe où.
    La seule chose que je sais faire lorsqu'il y a des problèmes avec iTunes, consiste à désinstaller à l'aide de http://support.apple.com/kb/HT1923 d'iTunes et veillant à tous les composants sont supprimés. Installez la dernière version, puis vérifiez que vous utilisez correcte si vous disposez de système d'exploitation 32 bits ou 64 bits. Si cela ne fonctionne pas, il y a un couple de threads qui explique comment installer une version plus ancienne d'iTunes, outre la 9.1.
    Faites-moi savoir si vous rencontrez des difficultés supplémentaires et je vais essayer de les aider. Traduit avec Bing Translator.

  • SCXI-1125 overvoltage criterion

    Hello all,
    I am going to use a SCXI-1125 module with SCXI-1327 terminal block to condition thermocouple signal. Estimated signal range is about 0-50mV.
    The problem is, since the thermocouple bead must be attached directly to a resistance heater, on which current flows at 100Hz with certain duty cycle, it is expected that part of the heating voltage(no more than 1V) will be imposed on the thermocouple bead. We can manage in LabVIEW so that no overlap exists between data acquisition and heating.
    I use an oscilloscope to measure the voltage from the thermocouple wires. Surprisingly, at the end of each current pulse, there seems to be a negative peak voltage. The duration of the peak is about 0.02ms out of every period, which is 10ms. Magnitude of the peak varies between 1V to 20V.
    I look into the manual of SCXI-1125, which says when measuring voltage larger than 5V the 100:1 attenuator on the terminal block (for example, SCXI-1327) should be applied. But when I tried this way, the temperature signal suffered from large noise, maybe due to its very low nature.
    If I bypass the 100:1 attenuator, is there possibility to damage SCXI-1125? I wonder whether the peak voltage or the continuous voltage should be avoided. The manual doesn’t provide parameters such as “input current during overvoltage condition”.
    Any suggestion would be greatly appreciated.
    Su

    Lynn,
    Thank you for your very fast reply. In fact our heater was fed by two 12V lead-acid batteries in series and the averaged power input is ragulated by an IGBT module, and the two electrodes which stretches the heater are floating-connected rather than grounded. The thermocouple wires are also ungrounded.
    During the run, I think there is no large external interference(such as a welding machine or other on/off operated device) nearby. Once I recharged the batteries beside the apparatus and interference as large as 1 V appeared. In other case no descernable random interference seems to exist.So maybe the problem is from the inner of our device?
    The png file named "nonoverlap" shows the voltage signals every 50 samples for a period, during sampling no current flows. The png file named "temp" is the temperature signals corresponding to the previous voltage signals, every data is the result of the average value of the 50 samples mentioned above. The last file named "interactive" is the voltage signals every 150 samples in a period, with each last 100 samples overlapping with the heating pulse. You can see two peak signals in the beginning (the data before the first negtive peak come from a previous run).
    Best regards,
    Su
    Attachments:
    Nonoverlap.PNG ‏50 KB
    Temp.PNG ‏31 KB
    Interactive.PNG ‏35 KB

  • Affichages multiples temps-réel d'un signal

    Je dispose d'un vi d'acquisition d'un signal (+s voies et 2 cartes PCI-4472 et PCI-4474) qui me génère un tableau de waveforms en sortie (DAQmx).
    Je veux écrire différents vis d'affichage (f(t), FFT, XY,...) de ce signal et qui devront être en temps réel. (sachant que d'autres affichages de post-traitements seront ensuite faits à partir d'un fichier de sauvegarde des données). Cette solution a été retenue car je ne vois pas comment faire de multi-fenêtrage sans ça... (mais on peut peut-être !). Cependant, à l'affichage, j'ai l'impression de perdre des informations ??
    Voici en pièce jointe, un vi simple qui reprends plus ou moins mon problème (décalage de la courbe simulée dans le graphe déroulant).
    Quelle architect
    ure me conseillez vous ?
    Attachments:
    test.vi ‏174 KB

    Bonjour,
    Il est fortement déconseillé d'utiliser plusieurs boucles While en parallèle.
    En effet, dans votre exemple, vous perdez plusieurs données lors de l'exécution.
    Je vous propose une solution à votre exemple : Utiliser une seule boucle While pour les 3 affichage.
    Cf. Fichier joint.
    Sanaa TAZI
    Application Engineer
    National Instruments
    Attachments:
    Exemple.vi ‏161 KB

  • Dossier TEMP et Adobe Master Collection et Windows 7(64)

    Bonjour et merci d'avance pour votre précieuse aide.
    J'ai fait l'acquisition de la Master Collection d'Adobe, mais impossible de la faire fonctionner correctement.
    A savoir que certains logiciels Photoshop, Indesign, Bridge exige d'être démarré en tant q'administrateur.
    La contrainte en utilisant ce mode de lancement et que je perd certainse fonctionnalités.
    Dans le cas contraire, désactiver sous Windows l'UAC régle l'ensemble des problémes, mais cela constitue une faille de sécurité.
    Ou encore, si je modifie le dossier de travaille de Photoshop vers un autre disque, celui-ci fonctionnera sans le mode ADMIN.
    Mais impossible de faire un cliquer/glisser depuis Illustrator vers Photoshop par exemple.
    J'ai installé la suite à plusieurs reprise déjà.
    Avec ou sans "mode administrateur", avec ou sans Adobe Cleaner. Aprés un formatage complet du systéme.
    Tout les produits Adobe sont mise à jours, ainsi que systéme.
    J'ai passé des heures durant sur les forum anglais et mon probléme ne semble pas être exception.
    Certains de ces logiciels utilisent la racine du %systemroot% pour créer leurs fichier de travail.
    Ce qui va de soit pose probléme pour Windows, ce disque étant protégé.
    Ma variable d'envionnement temp est correcte
    %userprofil%\appdata\local\temp
    Avec tout les accés possible à ce dossier.
    Quels solution me reste-t-il ?
    Encore merci,

    Bonjour et merci d'avance pour votre précieuse aide.
    J'ai fait l'acquisition de la Master Collection d'Adobe, mais impossible de la faire fonctionner correctement.
    A savoir que certains logiciels Photoshop, Indesign, Bridge exige d'être démarré en tant q'administrateur.
    La contrainte en utilisant ce mode de lancement et que je perd certainse fonctionnalités.
    Dans le cas contraire, désactiver sous Windows l'UAC régle l'ensemble des problémes, mais cela constitue une faille de sécurité.
    Ou encore, si je modifie le dossier de travaille de Photoshop vers un autre disque, celui-ci fonctionnera sans le mode ADMIN.
    Mais impossible de faire un cliquer/glisser depuis Illustrator vers Photoshop par exemple.
    J'ai installé la suite à plusieurs reprise déjà.
    Avec ou sans "mode administrateur", avec ou sans Adobe Cleaner. Aprés un formatage complet du systéme.
    Tout les produits Adobe sont mise à jours, ainsi que systéme.
    J'ai passé des heures durant sur les forum anglais et mon probléme ne semble pas être exception.
    Certains de ces logiciels utilisent la racine du %systemroot% pour créer leurs fichier de travail.
    Ce qui va de soit pose probléme pour Windows, ce disque étant protégé.
    Ma variable d'envionnement temp est correcte
    %userprofil%\appdata\local\temp
    Avec tout les accés possible à ce dossier.
    Quels solution me reste-t-il ?
    Encore merci,

  • Affichage de temps erroné dans un fichier txt

    Bonjour,
    Voici mon souci, j'écris un tableau de données de mes différentes voies dans un fichier txt. Lors de la lecture de ce fichier avec un vi, l'affichage de l'echelle de temps est erronée, hors je ne vois pas d'info de temps dans mon fichier txt, cela doit venir de là. Mais comment mettre l'info de temps dans le fichier de txt pouvant permettre l'affichage identique à l'acquisition? A savoir que j'arrive à mettre une colonne de date et heure  mais cela ne fonctionne qu'a basse fréquence et comment traiter ces données lors de la relecture pour avoir le bon temps sur mon graphe déroulant?
    Merci pour les solutions et exemples

    L'exemple "Read from text file.vi" est fourni avec votre version de LabVIEW, par contre le lien que je vous ai mis propose un certain nombre d'exemple certain en LV 8, d'autre en LV 7 et certain en LV 6.
    N'hésitez pas à mettre à jour  votre version de LabVIEW, ou à indiquer sur le forum qu'elle exemple (avec le lien) souhaitez vous et pour qu'elle version.
    Cordialement,
    Christophe S.
    FSE East of France І Certified LabVIEW Associate Developer І National Instruments France

  • No signal when temp goes to 90

    Can someone explain why my crap phone gets no signal when we have a heatwave? Every time the temp gets to 90% I get no service?! I hate this phone!

    This might be BS; but, while I was in line at the Apple Store one of the Genius Bar guys told us that the new iPhone had a heat sensor that will shut itself off if the temperature gets too hot. Surely 90 isn't too hot; however, to a thermal sensor it might be quite a bit hotter than the ambient heat. Still, sounds like a problem with that sensor.

  • Décaller un signal dans le temps

    Bonjour,
    Dans ma programmation, je récupère deux signaux provenant de deux détecteur selfique installé à 180° l'un l'autre avec un rotor ferromagnétique en leur milieu.  
    Les signaux que je récupère sont en opposition de phase. J'aimerais pour les comparer entre eux, que les signaux soient en phase. Mais je n'arrive pas à faire ce bout de programmation... 
    J'ai déjà essayé en rajoutant Pi au signal en passant par sa FTT, mais celà ne marche pas car mon signal n'est pas purement sinusoïdale. Sur le programme en pièce jointe il y a le complexe conjugée pour déphasé, celà marche mais a des moments il se désynchronise (cf Essai).
    Merci d'avance pour vos réponses et d'avoir pris le temps de lire ceci.
    Cordialement Julien.
    Pièces jointes :
    Programme.docx ‏67 KB
    Essai.docx ‏43 KB

    Bonjour,
    si vous passez par des waveform, il est possible d'utiliser la fonction "aligner des waveforms".
    Cordialement
    Cordialement
    L.MICOU

  • Comment mesurer le temps d'évolution d'un signal dans un graphe et comparer ce temps mesuré avec une valeur connue?

    Pour mon application, je suis obligé de mesurer le temps d'évolution d'un signal acquis (de t1 à t2) par une entrée analogique d' un module NI 9203, et comparer cette valeur avec une valeur connu afin de juger si ce temps d'évolution est correct ou non.
    J'espere que vous me donner un exemple qui figure la situation citée ci-dessus.

    Hello.
    To get an answer on this part of forum you should post in English. Another possibility is to post on the french forum here.
    Could you explain us more which problems you have? Could you attach your code and explain to us where are you bloked? It should be helpfull.
    Thanks in advance.
    Best Regards. 
    Message Edité par R_Duval le 04-23-2008 12:14 PM
    Romain D.
    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;}
    NIDays 2010 : Conférence mondiale de l'instrumentation virtuelle
    >>Détails et Inscription<<

Maybe you are looking for

  • SQL query to populate the records, the maximum processed should be less than 10 records per week.

    Dear All, I have a requirement, to write a SQL query to populate the records which are inserted less than 10 no of records. The tables has the cretaed_date column and along with other key column which will have unique values. Ex1:  The user might hav

  • Can't import backed up address book after hard drive crash

    I had a hard drive crash that sent my G5 into the shop. In the mean time I used my laptop and added info to address book, then transferred that info onto the new hard drive on the G5 when I got it back from the shop. So now I have a current address b

  • Photoshop Elements 9 Layer Mask Difficulties

    Hi, I am trying to use the Photoshop Elements 9 layer mask tool but every time I brush over my image to hide sections of it, the image merely becomes faded-out, as if I were using a brush with a low opacity. However, my brush opacity is at 100%, as i

  • Capture Debit Memo in J1iin

    Can somebody tell me how to capture Debit Memo in J1iin ?

  • Communication With remote server

    Hi, I have Plumtree enviroment setup and would like to access service on those machine with my local Desktop computer, would like to create some portlets on my local machine without effecting the environment. What should I install on my computer so I