Fluorescence Time-delay Measurement using an Oscilloscope

Currently, I'm examining fluorescence through scanning through wavelengths on a monochrometer and averaging the signal on the oscilloscope, storing it all in an array and graphing in the end. 
My goal is to time delay the value attributed to each wavelength in order to weed out rapidly decaying noise in my samples.  The light source will be chopped, and a trigger line feeds into the oscilloscope.
Can this be done either:
    through adjusting instrumental settings (I'm using a Tektronix 220, interfacing through GPIB)
    or through manipulation of a triggered output waveform using integration with specified boundaries relative to the trigger time?

Hello Matt G:
I'm not sure if your instrument can handle this. Have you looked through the manual or tried contacting Tektronix about it?
Regards,
Roland A.
Applications Engineer
National Instruments
Check out VI Roadshow

Similar Messages

  • How to measure time delayed measurement

    Hi All:
    I am using TDS3064 scope to measure time delay betwwen two channels (using IVI driver
    complience package 2.2 for scope IVI driver). I look through drivers, but not able to find
    delayed measurement function. Is there any alternate way to measure time delay betwwen two
    channels. If possible please provide me example. I am new to LV programming.
    Thanks
    DBhagat

    You have to understand something about IVI class drivers. To support portability, those functions that are common to a class are what you see in the driver. Some scopes might have the ability to measure time delay between trigger points on different waveforms but many don't. If there is such a function supported by your scope, then you can make a call to the instrument specific driver or a VISA Write/Read. Of course, you then loose the portability feature of IVI which, imho, is about the only reason to use IVI class drivers. What I would recomend is that you do a capture of both traces and then do an analysis of the raw data in LabVIEW. One way to do this is with Trigger Detection for 1 Channel (Analyze>Waveform Monitoring palette). Wire each channels data to the function and obtain the time for each trigger event. The function will return the time for each event that you can use to calculate the difference.

  • Time delay separate to while loop

    How would I be able to obtain data (pressure read in by DAQmx) that happened 2 seconds previous?
    I need to obtain the pressure difference from 2 seconds ago hence need the previous pressure with a 2 second time delay. When I try and do this the whole program delays by 2 seconds, even when I try separate the time delay through use of another time loop. 
    Any suggestions?

  • Use the LabView time delay in a while loop instead of using the instrument inherent time loop.

    I have a zes lmg500 that I use. It has the option of continues measuring data, with a user control cycle loop (still using a while loop but the delay is coming from the instrument). The problem is that the loop time is not constant. Can I use a very short time (100ms) as the instrument cycle time but use a longer time delay in the while loop that collect the data?
    I know many instrument offer the same abilities, so the question is relevant to all of them.
    Thanks for any help
    Solved!
    Go to Solution.

    Does that measurement VI have built-in wait functionality and a timeout?
    If not, then you are simply polling the VI at 1 kHz, but I suspect that this is not the case or your Waveform Chart probably wouldn't look as you expect (getting 0's put in everytime measurement data is not available).
    I expect that if you have the instrument set up to send data at a fixed time interval (i.e. 100 ms), all the data that it is sending you will end up residing in your serial buffer (or the instrument driver will have taken it out and put it in another internal buffer), so if you come back to read it 1 sec later, then you will have 10 data points to go through.  Whether you can read them all at once with the read VI or have to call it a whole bunch of times until empty I can't say.
    What is your objective?

  • Time delay probelm in data aquirsition of voltage measurement

    Hi,
    I am measuring voltage using NI DAQPad-6015. Without time delay loop, I can get the data. But what I want to do is to compare the data with that of following moment.
    The delay time loop is used to aquire the next moment data.  With this loop, it just stay at DAQmx AI Voltage. What's the problem?
    Attachment is my program. 
    Attachments:
    DriftTest.vi ‏79 KB

    Got it. It works. Thanks a lot. 
     BTW: what are the differences among Wait(ms), Wait Until Next ms Multiple , Time Delay?
    Alyssa

  • Ni scope measurement time delay

    使用niscope measurement  测量 time delay ,如何使测量更加准确,现在测出来的值的浮动范围很大,另,能不能提供其测量的具体算法编程

    The PXI 1031 is just the chassis and power supply.  It does not read anything.  So I am guessing that the 5105 is doing the measurements.
    What is the resistor value you are using to convert the current to voltage?  Have you verified that the resistor is actually close to the nominal value? Is the voltage in the current loop within the common mode range of the measurement device?  Do you have the loop grounded at two different points?  Does the pressure actually exceed 62 bar?  Does the current from the transducer actually go to 20 mA?
    Your calculation is correct for a 1-5 V input corresponding to 0-100 bar.
    You have several questions which all seem to be related to the same project.  Do you have a good overall plan for the total project? Did someone sit down and create a specification for the hardware and the software? Have the various subsystems been designed in detail before you started developing code and buying hardware?  Do you have a System Architect (Project Manager, or other title) who has a good overall idea of how this thing is supposed to work?
    Without that you will likely continue to be frustrated and not too productive.
    Lynn

  • Using more than one time delay in a thread

    Hello,
         I need to use two non-consecutive time delays in a thread. My thread typically proceeds as follows:
    1. Tell an oriel MS257 to change wavelengths
    2. Time delay #1 to give the MS257 time to change
    3. Tell HP 4156C to start sweeping
    4. Poll the 4156C until sweeping is complete
    5. Time delay #2 to give 4156C time to load data
    6. Read/parse/save data
    My problem is that the second time delay seems to start counting immediately after the first one - it does not wait for the sweeping to complete before counting. My VI is attached. It's a bit messy - organizational tips are also welcome!
    Thanks,
    Ying 
    Solved!
    Go to Solution.
    Attachments:
    TFTmeasure.vi ‏115 KB

    Looking into the sources show: Cleanup is a nice tool (even thought it is far from perfect )
    Well, nevertheless, from the wireworking, it seems alright that the second Time Delay express VI should indeed wait for the loop to finish. Therefore, i am wondering why it is skipped. And the only reasonable explanation: You have an error on the error cluster.
    So please debug into it using highlight/probes on the error cluster to make sure that you are not running into issues here.
    hope this helps,
    Norbert
    CEO: What exactly is stopping us from doing this?
    Expert: Geometry
    Marketing Manager: Just ignore it.

  • How can you build time series measures in OBIEE without using TODATE AGO fu

    How can you build time series measures in OBIEE without using TODATE and AGO function?
    Please provide steps to build time series
    measures in OBIEE without using TODATE and
    AGO function. Dashboard results not storing
    in cache when using TODATE and AGO functions.
    eventhough its cached users queries not
    hitting cache because queries doesn't match
    exact date time when using TODATE and AGO
    functions. so I want to build queries using
    sysdate and some simple calculations. Please
    send your inputs/ideas for my questions..
    Thanks in Advance

    This can be using Msum function in answers. Use the following formula, here dollars is my metric. Change the formula based on your metric.
    Msum("Sales Measures".Dollars ,2) - "Sales Measures".Dollars
    the report will be cached and better performed compared with time series. check ti
    - Madan Thota

  • Urgent: Please help. how to solve the time delay during buffer read and write using vc++

    I need to continuously acquire data from daqmx card, write into a file and at the same time corelate (in terms of time) the data with signals from other instruments. The current problem is that there is time delay during read and write data into buffer,thus causing misalignment of the data from multiple instruments. Is there a way to solve  the delay? or Is there a way to mark the time of the data acquisition in the buffer?  If I know the starting time (e.g. 0) of data acquisition and sampling rate (e.g. 1kHz), can I simply add 1ms to each data sample in the buffer? The current code is shown below.
    void DataCollectionWin::ConnectDAQ()
    DAQmxErrChk(DAQmxCreateTask ("", &taskHandle));
        DAQmxErrChk(DAQmxCreateAIVoltageChan(taskHandle,"Dev1/ai0,Dev1/ai1,Dev1/ai2,Dev1/ai3,Dev1/ai4,Dev1/ai5,Dev1/ai16,Dev1/ai17,Dev1/ai18,Dev1/ai19,Dev1/ai20,Dev1/ai21,Dev1/ai6,Dev1/ai7,Dev1/ai22","",DAQmx_Val_Cfg_Default,-10.0,10.0,DAQmx_Val_Volts,NULL));
      DAQmxErrChk(DAQmxCfgSampClkTiming(taskHandle,"",1000.0,DAQmx_Val_Rising,DAQmx_Val_ContSamps,60000));
      DAQmxErrChk (DAQmxRegisterEveryNSamplesEvent(taskHandle,DAQmx_Val_Acquired_Into_Buffer,50,0,EveryNCallback,NULL));// Every 50 samples the EveryNSamplesEvent will be trigured, to reduce time delay.
      DAQmxErrChk (DAQmxRegisterDoneEvent(taskHandle,0,DoneCallback,NULL));
      DAQmxErrChk (DAQmxStartTask(taskHandle));
    int32 CVICALLBACK EveryNCallback(TaskHandle taskHandle, int32 everyNsamplesEventType, uInt32 nSamples, void *callbackData)
     DAQmxErrChk (DAQmxReadAnalogF64(taskHandle,50,10.0,DAQmx_Val_GroupByScanNumber,data,50*15,&read,NULL));
       //memcpy(l_data,data,6000);
      SetEvent(hEvent);
    l_usstatus_e[0]=g_usstatus[0];// signals from other instruments that need to be corelated with the data from daq cards.
     l_optstatus_e[0]=g_optstatus[0];
     if( read>0 ) // write data into file
       //indicator=1;
     for (i=0;i<read;i++)
     {  //fprintf(datafile,"%d\t",i);
      fprintf(datafile,"%c\t",l_usstatus_s[0]);
      fprintf(datafile,"%c\t",l_usstatus_e[0]);
            fprintf(datafile,"%c\t",l_optstatus_s[0]);
      fprintf(datafile,"%c\t",l_optstatus_e[0]);
              fprintf(datafile,"%.2f\t",data[15*i]);
     //   sprintf( pszTemp, "%f", data[6*i]);
     // pListCtrl->SetItemText(0, 2, pszTemp);
        //pWnd->m_trackinglist.SetItemText(0, 2, pszTemp);
         fprintf(datafile,"%.2f\t",data[15*i+1]);
         fprintf(datafile,"%.2f\t",data[15*i+2]);

    Hello kgy,
    It is a bit of a judgment call. You should just choose the board that you think has the most to do with your issue. For example, this issue was much more focused on setting up your data acquisition task than the Measurement Studio environment/tools, so the MultifunctionDAQ board would have been the best place for it. As for moving your post to another board, I do not believe that is possible.
    Regards,
    Dan King

  • Can you use time delay to take photos on 4s

    Is it possible to use time delay to take photos on the 4S iphone?

    Yes, but not with the bundled Photo app.
    Try this https://itunes.apple.com/au/app/gorillacam/id342972390?mt=8

  • Using time delay for displaying tooltips

    Hi guys, hope you are all fine,
    I have a little problem, i need to use time delay for displaying a tooltip for a specific amount of time but i don't know what code to use.
    Can you please give me a hand? I also try to find out the right way on how i can use tooltips when using a Jpanel and paintComponent. I amcurrently using setXORMode but this is not too efficient.
    Thanks guys,
    Regards,
    John.

    Ok guys, for any other who need this info, you get time delay by this:
    try {
    Thread.sleep(time);
    } catch (Exception e) {}
    // in "time" you put an integer value which represents milliseconds

  • DAQ AO to AI time delay

    Hallo,
    I'm working on an academic control project, where I need to read (ni9215) 3 or 4 channels very fast,
    process the data and write them back (ni 9263) via usb-chassis 9172. To check the accuracy and time
    delays I tried a loop from AO to AI (only one channel) and generated a step, saved the timestamp of the
    step and checked, when the step was readed in the written measurement log. I doesn't see andy difference
    in using two VI's to read and to write or combining them in one VI, so I added images of two VI's.
    While comparing the timestamps of the sampled step and the log file, i noticed time delays of about 200ms
    from output to input. So my VI's are times too slow for my control purpose... anybody knows, what to try?
    In this VI I read data with 500hz, 10 samples to read and 10 samples/channel. The read timeout is set to
    default, but if I set it to zero, strange (negative) times are written to the measurement log... I tried
    to change from N samples acquisition to single sample acq, but it didn't speed up the VI.
    Thanks for answering!

    Hi IoInNBlack,
    first of all thank you for posting in this forum.
    I think you should synchronize your input/output operation, otherwise I don´t understand how you can take the timestamps and consider them
    reliable for your evaluation. I suggest you to modify the LV example here attached with timestamps and file I/O to build up your test and see what results you get then. Consider also that  20 ms are necessary for the acquisition of the samples and then you have add the time necessary to manage the file I/O.
    Best regards.
    Andrea P.
    Message Edited by pxchellone on 07-06-2009 09:23 AM
    Attachments:
    Multi-Function-Synch AI-AO.vi ‏35 KB

  • Estimate time delay during execution

    Hi, everyone.
    Currently, I have a VISA program for reading signals from a GPS receiver. From the program, I want to measure time delay of execution, i.e. time delay between start and end as shown in the jpg. Are there any vi in LabView facilitating this purpose? Thanks a lot.
    Regards,
    yukfai88
    Solved!
    Go to Solution.
    Attachments:
    VISA.vi ‏12 KB
    Estimate delay.jpg ‏54 KB

    See attached VI and below screenshot which shows how to use it in your code. Just one solution...
    Attachments:
    Elapsed time LV80.vi ‏27 KB

  • Impulse trigger to create a time delay of x ms to perform an action for y ms

    Hello all,
    Here is what i'm trying to do:
    I'm measuring an audio signal when a sound level is above a certain value Y (controllable) i need to wait a few ms (around 900ms) to get pass the main sound compound. Yhen i need to filter the next few ms (around 500ms) of data and do a FFT of that part of the filtered data only once until Y is reached again.
    I can do all this with saved data but i'm struggling to do it as it occurs without saving the data.
    I have everything in place i just need to know in general how to use an impulse trigger to a create time delay of x ms to perform an action for y ms.
    Do you have any ideas how i can achieve this?
    Thank you in advance,
    Frederic.

    Hi Frederic,
    I've looked at your program and I have a few questions. What is the purpose of the Two While Loops that simply have a Case Structure that nothing in the false case and a Wait (ms) function in the true case? As it stands if these loops go into the false case then there is nothing to slow down the execution so the will try to run as fast as possible and not give the processor any time for other tasks which may explain why your computer goes so slow whilst this is running. This also applies to the While Loop where the false case says "If its not time to write the measurement file, do nothing."
    I believe that what you want to look at is a Producer/Consumer(data) Pattern, where you have one loop that generates your data (producer), in this case reads in the sound data, and then a processing loop (consumer) that will do the Fat's and log data to a file etc.
    More information about this can be found here: http://zone.ni.com/devzone/cda/tut/p/id/3023
    Hopefully this helps you a bit. Let me know any questions you have.
    James W
    Controls Systems Engineer
    STFC

  • Two HP3458A synchronou​s triggering - time delay

    Hi,
    I would like to get time difference between synchronous triggering 2 HP3458A instruments. Expected time is in nanoseconds or microseconds. Find eclosed VI. Whole project includes reseting both HP3458A, settling parameters, getting data, calculating mean and errors. Which subVI should I use for highest accurate time measurements? And where (Before or/and after Read)? I think Get Date/TIme are not useful for this purpose.
    Best,
    Kristina.
    Solved!
    Go to Solution.
    Attachments:
    Meas Stat 3458(2 mean values-GPIB functions).vi ‏24 KB

    Dennis_Knutson wrote:
    Your question has nothing to do with NI hardware or software. You can measure the delta t between the separate trigger pulses if you use a very good scope and connect the two cables into two channels. You would obviously need to make the length of the two trigger cables as identical as possible. Any other delay would be within the two different instruments. What do the specs say about the delay between receiving a remote trigger and starting the measurement? Have you asked agilent? I don't of a way to actually measure this without getting inside the instrument itself. For minimal delay between two channel measurements, you should have chosen a single instrument with multiple channel inputs that are simultaneously sampled. Wasn't that a discussion in your lab?
    They're using LabVIEW so the question is certainly relevant. And I suspect trying to trigger the two instruments at the same time.

Maybe you are looking for