Générateur de signal précis

Bonjour,
Je souhaite réaliser un générateur de signal.
J’aimerai pouvoir lire les données du signal contenues sur un fichier de type ASCII (texte).
Le problème est que les données ne sont pas à une échelle de temps égale et que l’on doit tracer des lignes ou courbes entre les points. Voici un exemple du contenue du fichier texte :
Temps
Amplitude
0
0
2
0
3
1,5
4
4
6
2,8
8
2,8
9
1
11
0
A l’aide du fichier on pourra donc générer n’importe quel type de signal avec une forme choisie. Lorsque j’essaye de lire un fichier il me trace 2 courbes et non une seule. Avez-vous une idée pour réaliser cela ?
(j'utilise la version 8)

Bonjour,
Pour réaliser votre application, vous pouvez vous aider des exemples suivant :
Ouvrir NI exemple Finder et lancer les exemples Read from Text File.vi et Write to Text File.vi dans Fundamentals ==> File Input and Output 
C'est VI  permettent:
 - D'ecrire des données fonction du temps dans un fichier texte (pour vous donner un exemple de mise en forme de données dans un .txt)
 - De lire des données ASCII et les afficher dans un graphique
Cordialement, 
Alexandre

Similar Messages

  • Génrateur de signaux

    Bonjour, 
    Je souhaite realiser un générateur de signaux qui s'ajuste en fonction d'un fichier codé ascii (fichier joint: "signaltest2"). J'ai regarder dans l 'aide mais je n'arrive pas à le réaliser. Comme dans l'exemple du fichier toutes les valeurs ne sont pas indiquées. Je souhaiterais avoir un résultat comme le montre la photo (fichier joint : "courbe.jpg"). Je travail avec labview 8.0, merci d'avance pour votre aide.
    Attachments:
    SignalTest2.txt ‏1 KB
    courbe.jpg ‏53 KB

    [DUPLICATE POST : http://forums.ni.com/t5/Discussions-au-sujet-de-NI/g%C3%A9n%C3%A9rateur-de-signaux/m-p/2530030]
    Jérôme Henrion | NIF - Application Engineer | PXI Captain
    Certified LabVIEW Developer

  • Connexion cluster-Graphe

    Bonjour,
    J'aurai voulu connecter un cluster (3 éléments) récupérant les données d'un générateur de signal avec un graphe oscilloscope. Apperemment ce n'est pas possible. Comment puis je faire afin de pouvoir afficher mes données dans ce graphe?
    Je vous remercie.

    Hello Anthony
    To get an answer on this part of forum you should post in English.  Translate you post for the others.
    Another solution is to post on the french forum here.
    Don't forget to attach your code, and tell us more about you problem. Where are you bloked etc...
    If you have an error message, attach a screen shot of it.
    Thanks.
    Regards.
    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<<

  • Rampe logarithmique et Nombre d'échantillons

    Bonjour,
    Voici mon problème, je genère des tableaux de valeurs pour ensuite générer une tension. Je définis ainsi une valeur minimale et une maximale comme ci-dessous :
    Min = 30hz
    Max = 100hz
    j'applique une échelle logathmique à ma rampe de valeurs allant de 30 Hz à 100 Hz. Lorsque j'ai 350 échantillons ma génération est " parfaite ", signal précis ( ( pas de trop grand bond entre les valeurs)  et rapide.
    Mon problème c'est que lorsque je change de valeur min et max comme ci-dessous :
    Min = 30 hz
    Max= 500 hz
    Si j'applique la même régle (( Max - Min ) x 5) j'obtiens 2350 échantillons et mon signal passe par beaucoup trop de valeurs, il est donc très ralenti... La raison c'est que ma "règle" ne vaut pas grand chose lorsque l'on souhaite l'utiliser dans un cas logarithmique. Quelqu'un peut-il me donner une relations qui me permettrait de générer un taux d'échantillons proportionnel d'une consigne à une autre? 
    Cordialement

    Non finalement j'ai résolu mon problème ! En faite dans la description du vi rampe on peut voir la formule qui lie le max le min et les n échantillons ^^

  • 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

  • Connexion CAN lente à la reception de données - File d'attente

    Bonjour,
    J'ai un problème dans la reception CAN. Je travail avec un IXXAT et je communique (j'envoie et reçois des trames).
    MAIS, il y a une création d'une file d'attente des données, c'est à dire, qu'au demarrarge de mon exe, les données affichées sont directes...
    Puis plus le temps s'écoule (15, 30, 60...secondes), les donnés se rafraichissent de moins en moins rapidement...
    Au bout d'1 minute de connexion, les datas ont pret de 5 sec de retard et découlent comme se elles étaient bloquées dans une file d'attente ...
    J'ai vérifié les param FIFO, ils sont à 1... donc normalement, ils n'ont pas d'influence sur mon programme.
    Y a t'il un autre paramètre a modifier afin de désactiver cette fonction ?
    Merci d'avance !

    Bonjour Eric,
    En fait, je réalise ma comm en 3 phases :
    -> Première séquence, j'ouvre ma comm (VI Config CAN)
    -> Deuxieme séquence, je lis et j'écris (VI Lecture Ecriture), et simultanément je éxécute les différentes actions avec mon programme global (piloter un DAQ générateur de signaux via un IHM)
    -> Troisième séquence, je ferme la comm (je n'ai pas joint le VI, c'est uniquement Close) en mm temps que la fermeture de mon programme.
    J'ai regardé la fonction Prod/Consommateur, j'ai tenté de la mettre en place, mais je n'ai pas reussi a retrouver ma lecture dynamique des trames CAN... mais peut être est-ce car je n'ai pas bien compris l'action de cette fonction? Comment la fonctionnalité file d'attente peut justement supprimer ma file d'attente que je ne veux plus avoir ?
    En ce qui concerne le programme "exemple", il fonctionne très bien. J'en conclu que c'est la réalisation de l'ensemble de ma boucle qui ralentit la comm et donc me fait avoir du retard?... J'ai tenté de mettre les 3 séquences dans ma boucle de réalisation générale du programme : je n'ai plus ce phénomène de retard, mais ma comm mets 1 à 2 sec à se rafraichir (je ferme et ré-ouvre une nouvelle connexion à chaque tour de boucle...) et ralentit enormément le programme global...
    Pièces jointes :
    Lecture ecriture.vi ‏153 KB
    ConfigCAN.vi ‏34 KB

  • Low voltage measuring

    Hello
    would measure a voltage in the order of 8.4 mVrms +/- 7% using the ni PCI-6143 card.  is that this choice will meet my needs?
    is that twisted wires are required to do this kind of measurement ?
    Thanks

    Hello Nebyl,
    First of all i'll suggest you to answer in french (as we're here in the french part of the forums). If you accidentally went to the wrong part of NI Forums, i'll ask you to post here (if my following answer doesn't answer your first question) : http://forums.ni.com/t5/Multifunction-DAQ/bd-p/250
    Pour résumer, vous auriez besoin de faire des mesures autour de 8 mVrms (+/-7%) avec la NI-6143, et vous hésitez à vous procurer un cable torsadé.
    La carte pourra sans aucun doute faire la mesure. Au niveau du bruit, votre carte NI-6143 possède 8 entrées différentielles, ce qui réduira déjà le bruit par rapport à une masse référencée. Ensuite, le besoin d'un câble de réjection de bruit naîtra probablement de vos conditions de mesure. Si vous réalisez vos mesures dans un environnement relativement perturbé par un champ EM, ou que votre capteur/générateur de signal est loin de votre acquisition (longueur de cable >2 mètres), vous aurez un bruit d'autant plus grand, et dans ce cas un câble torsadé sera de mise. 
    La carte NI6143 possède des accessoires adaptés à ce genre de mesure : http://www.ni.com/pdf/products/us/04_3512_301_101d​.pdf
    Enfin, je vous suggérerai de faire quelques tests sans câble torsadé, et voir si la mesure est satisfaisante.
    Eric M. - Application Engineering Specialist
    Certified LabVIEW Architect
    Certified LabWindows™/CVI Developer

  • Probleme compilation drivers SMJ100

    Bonjour,
    J'ai un problème concernant un drivers (Générateur de signaux SMJ100) quand je veux compiler il m'affiche cette erreur  Undefined symbol '_main' referenced in "c:\program files (x86)\national instruments\cvi90\bin\Msvc\cvistart.lib".
    Pourtant j'ai bien ajouté tous les fichiers sources aisni que les .h du drivers à mon projet labwindows CVI 9.0.1
    Es-ce un probleme de compatibilité je tourne sur une machine windows 7 64 bits?
    Merci d'avance pour votre réponse.
    cordialement
    Vincent
    Solved!
    Go to Solution.

    Bonjour,
    Oui, je dispose bien de la dernière version du drivers télécharger sur le site officiel de rohde&schwarz.
    J'ai ajouté tous les fichiers .c et .h ainsi que .fp au projet mais toujours la même erreur voir la pièce jointe.
    Je suis débutant en labwindows. Peut-être ai-je fait une erreur dans le chargement des fichiers (ils se trouvent tous dans le même dossier que mon projet)
    De plus j'ai une autre question concernant le type Visession je ne comprends pas, si ce type attends un chaine, valeur, booleen... Dans la documentation il parle de référence à des informations concernant la communication avec l'appareil. Que faut-il ecrire dans le instrument handle (type Visession)?
    merci d'avance pour vos réponses
    cordialement
    Vincent
    Attachments:
    erreur_compilation.png ‏1128 KB
    panneau_init.png ‏45 KB

  • Mesure période signal carré

    Bonjour,
    Je tiens d’abord à préciser que je  suis un novice en ce qui concerne Labview.
    Je développe une expérience pour la mesure des moments d’inertie. Pour cela, j’ai besoin de mesurer l’accélération angulaire d’une roue. J’ai acheté une « photogate head » qui délivre un signal carré de 5V lorsque la roue tourne ( style encodeur). La période de chaque cycle de ce signal me permettra de calculer la vitesse de rotation de la roue à un instant donné. Le nombre de cycle est limité (i.e. le signa n’est pas continu).  A partir du graph v=f(t), les étudiants pourront calculer l’accélération angulaire.
    J’ai acheté une carte d’acquisition NI-6008.  Avec Labview, j’arrive à acquérir un signal carré analogique provenant d’un générateur  ( avec le VI « lire » DAQmx) et à l’écrire dans un fichier.
    Avec le VI « mesure d’impulsion », j’arrive à mesurer la période et la durée d’impulsion, mais uniquement pour le premier cycle. Ce que je veux c’est mesurer la période pour des cycles allant de n= 1 à N et écrire un fichier (temps, période ou vitesse) afin de calculer l’accélération. J’ai essaye d’utiliser une boucle « For » sur l’entrée « numéro d’impulsion » du VI (mesure impulsion) mais sans succès.
    Que dois-je faire ?
    Est-ce que j’utilise une méthode correcte ou existe-t-il une solution plus simple ?
    Merci pour votre aide

    Bonjour Lou60,
    Grâce à Rodéric, il n'y a plus d'erreur au niveau de votre VI. Toutefois, comme il l'avait signalé auparavant, vous avez un problème de structure. En effet, pour réaliser la mesure N fois, vous devez inclure dans votre boucle for la fonction daqmx read, ceci afin d'acquérir de nouvelles données Je vous envoie un exemple qui doit convenir à votre application.
    Cordialement
    Nb: vous pouvez directement glisser l'image que je vous envoie dans le diagramme de LabVIEW
    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...
    Pièces jointes :
    mesure signal carre.png ‏49 KB

  • Envoyer un signal trigger sur une caméra déclenché lui-même par un premier signal (via carte PCIe-6321)

    Bonjour à tous,
    Voici mon problème :
    Concrètement je reçois un signal externe TTL à 10Hz , je dois capter une image d'un phénomène qui intervient quelques centaines de µs après le signal 10Hz (mais je ne sais pas exactement quand). J'ai un trigger disponible en entrée de la caméra très précis.
    Je dois pouvoir ajuster ce délai pour caler correctement la prise de l'image sur le phénomène à observer. Après plusieurs essais mon idée était de passer par l'intermédiaire de la carte DAQ PCIe-6321 que j'ai à disposition sur mon système.
    En fait je voudrais pouvoir synchroniser une sortie TTL de la carte sur le signal 10 Hz et ensuite pouvoir ajuster la fréquence de mon signal DO qui est envoyé sur la caméra.
    Je ne pense pas que ce soit compliqué à faire avec le DAQ c'est un peu fait pour ça aussi mais je me perd un peu dans les différentes fonctions, et je voudrais éviter de faire tout ça par soft avec tempo etc...
    Merci d'avance pour vos réponse.

    Doublon
    Paolo_P
    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

  • Calcul de vitesse à partir d'un signal de position filtré

    Bonjour,
    J'ai un système de caméras qui me donne la position (en Z) d'un point au cours du temps (en temps réel). J'aurais aimé filtrer le signal obtenu puis calculer la vitesse de ce point (toujours en temps réel).
    Pour la vitesse, j'ai trouvé ce sous-VI (j'en profite pour remercier son auteur) qui permet d'effectuer le calcul de la dérivée de la position avec l'aide d'un registre à décalage.
    Mon problème est que je ne récupère qu'une série de valeurs que j'affiche au fur et à mesure dans un graphique, mais pas sous forme de données dynamiques type signal que je pourrais filtrer.
    Je ne sais pas comment faire.
    Quelqu'un aurait-il une piste pour m'aider ?
    Merci d'avance,
    (Je précise que je débute en LabVIEW.)

    Bonjour,
    Voici un exemple (en pièce jointe) qui devrait répondre à votre attente :
    Cordialement,
    Message Edité par Maxime MULLER le 07-04-2008 06:10 AM
    Pièces jointes :
    exemple1.JPG ‏63 KB
    exemple.vi ‏19 KB

  • Meilleure carte pour signal BF

    Bonsoir tout le monde,
    Je ne m'y connais pas beaucoup en programmation mais j'ai tout de même quelques connaissance sur Labwindows. Suite à mon stage, je dois asservir un banc d'abrasion avec un logiciel sous CVI et pour cela j'ai juste à générer un signal (sinusoïdal ou carré peu importe) avec une amplitude comprise entre 0.1V et 10 V (cela importe peu aussi), seul la fréquence doit être réglable avec une précision de l'ordre du mHz et une plage d'utilisation de 0.01Hz à 10Hz. Elle ne doit être réglable que au début de la manipulation avant de lancer le logiciel, une fois en cour d'utilisation elle peut rester constante.
    Alors voila je voulais savoir si une carte NI avec une sortie analogique suffisais ou si c'étais plus compliqué que cela ?
    Merci de votre aide, en attente de vos réponse bonsoir !

    Bonjour,
    Le mieux est d'utiliser une carte multifonction avec entrées analogiques, sorties analogiques, E/S numériques et compteurs, typiquement les séries M ou X. Avec cela, tu pourras utiliser un compteur pour faire ta propre horloge de cadencement, éventuellement variable et très précise, pour cadencer tes sorties analogiques.
    Cordialement
    David S.| Certified LabVIEW Associate Developer
    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;}
    Journées Techniques LabVIEW 2012 : du 27 septembre au 22 novembre
    2 sessions en parallèle : Débuter a...

  • Multiplier un signal par une constante

    Bonjour,
    J'utilise deux cartes: une 4472 ou je récupère un signal analogique
    6527 ou je récupère un signal numérique sur 8 bits.
    Mon problème apparait quand j'essaie de les multiplier...
    Mon signal d'entré (prenons le cas d'une sinusoide) est correcte par rappport à la sortie de mon générateur, mais au moment ou mon signal est multiplié par la constante (calculée grace au 8 bits saisie mais constant) j'obtiens des discontinuité dans mon signal!! (le signal a des micros coupures!!)
    Fred

    If you multiply 8bit numbers, you must ensure that the result is still within the numerical range of U8 (0...255). You probably exceed the range with the multiplication result. Try to convert your data to U16 before multiplication and see if it looks any better.
    LabVIEW Champion . Do more with less code and in less time .

  • Piloter un générateur et récupérer les données sur un oscillo

    Bonjour,
    J'aurai besoins d'aide pour créer un programme. Je suis débutante et je n'y arrive pas.
    J'aimerais envoyer une sinus d'une amplitude connue à un générateur Tektronix AFG 3102 et faire varier la fréquence afin d'observer le signal de sortie, ceci grâce à LabVIEW. Le signal est envoyé sur un ampli op. On récupère les données (tension de sortie, déphasage) sur un oscilloscope Tektronix TDS 3034 toujours grâce à LabVIEW. Je voudrais récupérer le gain et le déphasage pour chaque fréquence afin d'obtenir un diagramme de Bode (amplitude et argument).
    J'utilise une liaison USB pour le générateur et une liaison RS232 pour l'oscilloscope.
    Pourriez-vous me dire comme faire mon programme, me donner des indication svp ?
    Merci beaucoup,
    Cordialement

    Bonjour,
    Alors voici ce que j'ai fait. Ce n'est pas grand chose, mais comme je débute, j'ai beaucopu de mal.
    le premier document est un programme pour piloter le générateur : fréquence, amplitude ...
    le deuxième, c'est un tableu de fréquence que j'aimerais envoyer dans le premier document pour prendre les mesures à ces fréquences spécifiques
    le 3ème est un exemple que j'ai récupérer pour récupérer les données de l'oscillo.  Cependant, je devrai réupérer un sinus, ce qui n'est pas le cas.
    Merci de votre aide,
    Sophie
    Pièces jointes :
    Générateur.vi ‏11 KB
    générateur 3.vi ‏11 KB
    oscillo.vi ‏29 KB

  • FFT pour un signal analogique en temps réel

    Bonjour,
    Je souhaite calculer la FFT d'un signal sortant d'un générateur de fonctions?
    Comment je dois le faire sur Labview? J'arrive pas à trouver les bonnes fonctions qui transforment ce signal qui est en temps réel en un signal manipulable par la fonction FFT disponible. sur la palette de fonctions de Labview.
    Merci d'avance pour toute remarque, aide ou suggestion.

    Greetings Sir,
    You can find many examples of the correct use FFT functions inside the LabVIEW Example files. The FFT functions come in two version,the 'default' and the 'point by point'
    The links above show the wiring options of each of these functions.
    Be aware that these vi's do not come with the LabVIEW Base version, they are available in the LabVIEW Full and onwards.
    Kind Regards,
    Wouter
    Applications Engineering
    National Instruments Belgium

Maybe you are looking for

  • Deleted and Changed tasks

    How to track deleted and changed tasks in Project Professional? OR is there a way to track the same when Project Professional is connected to Project Server?? Thanks, Siskin.

  • Firefox does not start. error message comes up saying firefox open.

    Fire fox cannot be started as error message comes up saying Fire Fox is open and should be closed. I have shut down and restart computer several time and it still shows Firefox is open and running.I even uninstalled Firefox and re installed it still

  • Why no shortcuts in the Notification center?

    Does anyone know why there's no shortcuts in the Notification center? (Bluetooth, volume, brightness ect.) Android has it on all there phones.

  • Unsupported URL error when trying to stream music on iPhone 5

    www.rawfm.com.au/m/apple.php?m-App both low bitrate and hi bitrate options give an error of "Unsupported URL" on iPhone 5 (not jailbroken). Worked fine on iPhone 4. Any ideas?

  • IPhone 4s won't charge on Windows pc

    This one has my head scratched!  I have an iPhone 4S for almost 2 years.  Recently, when I plug it into my Windows laptop, I get a low tone like an error instead of the happy little bling, and it doesn't charge.  Here's what I tried: Cord - different