Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

triggering uses

hi I am a physics student with little back ground in LABVIEW. Please help me set up the follow application. I have to set up a program to receive signal from analog input. The data wooulld be control by external PFI0 triggering port. I am using NIDAQ 6062 E and  BNC-2110. My problem is to make the program receive only one data after the triggering was received. The time of the data has to be specified after the trigger signal was received ( the time could be in micro second ) . I am having difficulty setting up the application. Anybody has an idea please help me
 thank you very much
0 Kudos
Message 1 of 12
(4,966 Views)

You can see the following kb:

http://digital.ni.com/public.nsf/websearch/878BD3188B1CD64686256F8C0060CCAB?OpenDocument

How Do I Use a Digital Trigger in LabVIEW to Start and Stop Acquiring Data?

You can use start trigger and set the number of samples you want to acauire after the trigger.

0 Kudos
Message 2 of 12
(4,952 Views)
thank you ... is it possible that I can specify the time for the acquisition after the trigger was received.
0 Kudos
Message 3 of 12
(4,949 Views)

Yes, You can set sampling frequency and number of samples.

Number of samples / Sampling frequency = Sampling Time

0 Kudos
Message 4 of 12
(4,948 Views)
I was working with the application that you gave me before. It seemed very useful except the source for the stop triggering signal. Can I use an internal clock to determine the time to stop the acquisition ? I only use the PFIO port as the start of triggering signal.  I also encounter another difficulty with my application. I set up a function which change the frequency of the post triggering data into the time ( just take 1 devide by frequency) But then the application seems to work only with 0.01 sec which is not up to what I need. I need the time to be adjustable in the scale of  0.000001 or microsecond...please help me
0 Kudos
Message 5 of 12
(4,920 Views)
Hello mynameislam,

If I understand you correctly you are trying to acquire data for a specific period of time?  In other words, you want to have the start trigger and then acquire data for some pre-determined set of time afterward?   If that is the case, you can use zenith's idea of determining the sample time by dividing the number of samples to acquire by the rate specified.  In other words, if you want to acquire 100 us of data, you could specify a rate of 1Mz and 100 samples.   It may appear that the program takes longer to run, as it takes longer than a millisecond for Windows to update.  You would only need to use the shipping example Gen Mult Volt Updates-Int Clk VI and specify the rate and number of samples.

If this is not what you are interested in, post again and we'll help you out further.

Regards,
Micaela N
National Instruments
0 Kudos
Message 6 of 12
(4,904 Views)
Thank you for helping me.  Finally I had been able to acquire the data the way I want to. But there was still minor problem with the saving data process. First I put my data into a matrix by building matrix function. The using loop condition to get the element saved. But suppose I have 2 post and pre trigger data, which means I would have 4 data )per 1 element in the matrix.. Can I one specific data and save it into matrix form  or is it possible to graph those matrix ( I can't graph it now because one element has 4 data)
thank you
0 Kudos
Message 7 of 12
(4,902 Views)
I think you are asking how to graph the data returned from your DAQmx read.  When you return data from a DAQmx read VI, you can create a waveform graph which will automatically graph the data.  You shouldn't need to manipulate the data and as long as the X-Scale is autoscaled (you can check by right-clicking the graph and selecting X-Scale, Autoscale X-Axis should be checked) you shouldn't have trouble seeing the data returned. 

Let me know if that doesn't answer your question!

Regards,
Micaela N
National Instruments
0 Kudos
Message 8 of 12
(4,887 Views)
Hi everyone
 Finally I have been able to set up a program to do measurement. I think my application is not the best way to solve the problem. So if you have a better way please help me.
Here is my attached program 
0 Kudos
Message 9 of 12
(4,848 Views)
You would probably find that you have better performance if instead of creating, using, and destroying the task each iteration, you only start and stop the task as shown in the attached VI.  If you could comment your code it would be easier for us to understand what you are trying to accomplish.

Regards,
Micaela N
National Instruments
0 Kudos
Message 10 of 12
(4,828 Views)