Trigger restarts on DAQ board

Hi.
I'm doing data acquisition with a DAQ board, the USB-6251 model.  I need something like the sample VI "Acq&Graph Voltage-Int Clk-HW Trig Restarts.vi", except I need the trigger to restart much more efficiently.  When I run that sample VI (and my own adaptation which is attached) I can only get trigger rates of about 30 Hz, and trigger that comes in within 30 ms of the previous one is just ignored.  I need it to handle trigger rates of up to 1 kHz. Does anyone have any ideas, or is there another way to go about it that will avoid this problem?
Thanks,
Jeremy
Solved!
Go to Solution.
Attachments:
Restarting trigger.vi ‏25 KB

I think to get the response you want, you will have to use your Trigger signal to start generate the correct number of clock signals from a Counter.  See example 'Gen Dig Pulse Train-Finite-Retriggerable.vi'
Use Example 'Cont Acq&Graph Voltage-Ext Clk.vi' to actually do the acquisition.
For a test, set up as follows:
Set the Rate/Frequency to the same value.
Set the Number of Pulses/Samples to Read to the same value.
Set the Counter(s)/Clock Source to the same source
For the Gen Dig Pulse Train-Finite-Retriggerable.vi set Counter(s) to ctr0
For the Cont Acq&Graph Voltage-Ext Clk.vi set the Clock Source to Ctr0Out
Run the Cont Acq&Graph Voltage-Ext Clk.vi first and then quickly start the Gen Dig Pulse Train-Finite-Retriggerable.vi
You should see the acquired signal from whatever input you have connected.  I was able to do this without changing either example program.  Once you see it work, you can combine the two into one vi.
Message Edited by rpursley8 on 07-07-2009 04:19 PM
Randall Pursley

Similar Messages

  • DAQ board no longer showing up in MAX, nor elsewhere.

    I can no longer see my DAQ board in MAX, nor LabVIEW 7.1. It's a PCI-6023E, which was working fine last week.
    I tried reinstalling MAX through the Control Panel >> Add/Remove
    Programs, but it is not there. In "Add/Remove Programs", II click on
    "National Instruments Software", but that causes my computer to hang.
    I tried downloading the latest NI-DAQ, but it thinks it has nothing to
    install. I explicitly use it to remove LabVIEW 7.1 support, then
    re-install it, but my DAQ board is still invisible.
    How can I communicate with my DAQ board again?

    Hello Bmihura,
    There is a utility called MSIBlast that can be used to remove software
    from your computer when the Add/Remove Programs does not work. 
    For future reference, it sounds like some portion of your National
    Instruments software has become corrupted during an installation. 
    It is important to strictly follow installation procedures outlined at
    http://www.ni.com/support/install/
    .  Also, if your device does
    not show up in MAX, it probably is a result of an incorrect driver
    installation, and not a problem with the MAX program.
    The first thing you will want to do is remove the hardware from your
    computer.  Then, to get the MSIBlast utility, copy and paste the
    following in an Internet Explorer web browser window:
    ftp://ftp.ni.com/outgoing/
    Find MSIBlast.exe and drag and drop it onto your desktop.  To run
    the utility, simply double-click on the executable.  In the dialog
    box, make sure you have 'Show NI Installers Only', and you should see
    a list of National Instruments software installed on your
    computer.  Go through the list and select the components that you
    wish to remove and click the 'Uninstall' button.
    Once you have uninstalled all of the software that you could not
    uninstall through Add/Remove Programs, restart your computer and verify
    that everything was uninstalled through Add/Remove Programs.  At
    this point, if you chose to uninstall LabVIEW, that should be the first
    thing to reinstall.  Otherwise, go ahead and reinstall DAQmx
    8.0.  I would recommend re-downloading it from our website here
    just in case the installer became corrupted during the download
    process.  After the driver is installed, now is the time to power
    down your computer and physically install your hardware in a spare PCI
    slot.  When you restart your computer, Windows should recognize
    new hardware and you should allow the wizard to install the driver
    software automatically.
    I hope this helps, and if you have any further questions you can either
    reply to this post or directly contact an Applications Engineer by
    calling 1-866-ASK-MYNI.
    Regards,
    Travis Gorkin
    Applicaitons Engineering
    National Instruments
    www.ni.com/support

  • How to generate a pulse of 5 V -ve polarity in synchronis​ation with a 10 v input using PCI 6251 DAQ board

    HI
    I want to generate a 5V -ve polarity pulse to trigger my IEEE 1394 camera using an PCI 6251 (scb68 pin E) device, furthermore I am reading a standard Vsync signal from a SVGA port which is 10 v.
    Now I want to synchronise the image capture of an IEEE 1394 camera with the Vsync signal so that camera is triggered to capture at every 4th Vsync signal (which is 50HZ.). Presently I am able to read the Vsync signal and also generate the -5 v signal But the Daq board generates a continues -5v signal while I want a 1 ms pulse (for every 4th Vsync).
    Also this 5 v signal is generated even if the vi is stopped running.
    Can anybody guide me so this problem can be solved.
    Thanks a lot in advance
    Shri

    You can use the Write function, that is you can use the 10 volt signal as a trigger for the task, and when you get this trigger, the task starts and generate (writes) a waveform you defined in an array ("data", in the example).
    Something like this..
    DAQmxCreateTask("",&taskHandle);
    DAQmxCreateAOVoltageChan (taskHandle, clokSource, your_sampling_freq, -10.0, 10.0,
    DAQmx_Val_Volts, "");
    DAQmxCfgSampClkTiming (taskHandle, clockSource, SAMPLING_RATE,
    DAQmx_Val_Rising, DAQmx_Val_FiniteSamps,
    samp_to_read);
    DAQmxCfgAnlgEdgeStartTrig (taskHandle, input_channel, DAQmx_Val_RisingSlope, 9.0);
    DAQmxWriteAnalogF64 (taskHandle, 1000, 0, 10.0,
    DAQmx_Val_GroupByChannel, data, //data contain a pulse
    &samp_per_channel, 0);
    DAQmxStartTask(taskHandle);
    // and then you create a loop....
    For example you can specify data to be like this:
    data[0] = -5;
    for(i=1;i<1000; i++){
    data[i] = 0;
    Tell me if you need more help.....
    bye

  • DAQ board for acquiring analog pulses

    Hi.  I'm using the USB-6251 DAQ board, and I'm trying to record analog Gaussian curve-ish pulses into LabVIEW.  Except when there is a pulse, the analog input channel is at 0V.  Right now, I've got the trigger working to start acquisition at the beginning of the pulse, but I can't figure out how to stop acquisition when the pulse is over.  I've been using the DAQ Assistant, with an Analog Window start trigger, set at the range 10m to 10 V.  Is that the right way to do it?  I can't get any reference trigger to work to stop the acquisition however.  It's set to acquire 5k inputs at 1 kHz and always goes for the full 5 seconds instead of stopping.
    Thanks in advance for helping!

    Not exactly.  It's still picking up pulses separately, but it's including the empty space afterwards (as in, if the pulse lasts only 10 ms, it still acquires data for the full 1 second).  Preferably, it would stop acquiring data when the voltage is outside the analog window.
    I attached the VI as it is right now, with just a start trigger and no reference trigger.  I'm unsure how to configure the reference trigger to have it stop the acquision once the voltage is outside the window again.
    Thanks for your help!
    Jeremy
    Attachments:
    DAQ integration.vi ‏90 KB

  • Hi. Can use events to look out for input switches from any DAQ board?

    I tried using events to detect signals from input switches Advantech PCL-8181L, but it seems no response.
    I have read an article about the events that user controls can trigger and some external IO cannot.
    Is there any one know how I can get the program to monitior them all the time without using event function?

    Astroboy,
    I am not sure that I have a complete understanding of your question. Are you attempting to use LabVIEW Events (Functions >> Application Control >> Events) with your Advantech DAQ board? This will not be possible. Could you expand upon the functionality you are trying to achieve?
    Spencer S.

  • Synchronisation of frame grabber and DAQ board

    I want to aquire images and analog voltage signals at the same time, and synchronised, using a NI PCI-1428 Camera Link frame grabber and a NI PCI-6014 DAQ board. Can this be done using the RTSI trigger functions? I know that the frame grabber supports this, but what about the DAQ board?
    How about synchronising a NI-board with a non-NI frame grabber?
    Thanks a lot!
    Peter

    Hi, Peter,
    No, the PCI-6014 DAQ board does not support RTSI. However, most of the low-cost E-series NI data acquisition cards do support RTSI, such as the PCI-6024E or PCI-6036E, so you might consider using one of those boards instead.
    If you decide to go that route, there is a useful tutorial that describes the signals that can be routed over RTSI for NI DAQ and IMAQ boards:
    Developer Zone Tutorial: Synchronizing Motion, Vision, and Data Acquisition
    as well as several example programs:
    Developer Zone Example: Integra
    ting IMAQ and DAQ with Single Display
    Developer Zone Example: Low-level Triggered Ring (with DAQ-supplied triggers)
    As for a non-NI frame grabber, that would really depend on what support the frame grabber has for timing and synchronization. You could route a trigger signal or scan clock out over the PFI pins on the PCI-6014, but you would need to see if the frame grabber is designed to receive these types of signals.
    I hope that helps!
    Best regards,
    Dawna P.
    Applications Engineer
    National Instruments

  • Interrupt daq board

    Hello,
    i need a daq board, with interrupt lines, to trigger interrupt handlers.
    Does it exist?
    What name NI gave to these interrupt lines?
    Any information are welcome about interrupts and boards DAQ.
    Thanks

    I don't really understand your question.
    Do you want to trigger an acquisition or generation process on a board or would you like to interrupt your CPU via IRQ lines at low-level ?
    Input and output line of our board are not directly related to interal IRQ lines. however acquistion or generation process can use internal IRQ to achieve oprations but it is transparent for you as NI-DAQ driver handles IRQ and DMA mechanisms for you.
    Lets look at : http://digital.ni.com/devzone/conceptd.nsf/webmain/139dfa3645b29be586256865004e742a?OpenDocument
    You will have a brief idea of how you can use our board.
    Regards
    Salissou ISSA
    Applications Engineer
    NI France

  • How can I acquire data in a PCI DAQ board using a SCXI rack?

    Hello.
    I have an acquisition system that consists in:
    · 3 PCI DAQ boards:
    - PCI-MIO-16-E-1
    - PCI-6052-E
    - PCI-6034-E
    · 3 cables to connect PCI boards and SCXI modules
    · 1 SCXI chassis:
    - SCXI-1001
    · SCXI modules + terminal blocks:
    - 4x SCXI_1121 + SCXI_1320 (for voltage analog inputs)
    - 1x SCXI_1520 + SCXI_1314 (for strain gauges)
    - 1x SCXI_1530 (for accelerometers)
    I have been trying to acquire different signals (specially voltage signals that are easier to reproduce) but I haven't been able to do it. I can't read anything from MAX or LabView. I have tested the PCI boards with a SCB68 terminal block (without any SCXI component) and they work properly. Problems appear when I use the SCXI chassis and the SCXI modules. I don't know if there is a problem with the hardware or it is a wrong configuration.
    I guess channels in the SCXI modules correspond to analog input channels in the PCI board they are connected to, but I don't know if I have to read data from analog input channels of the PCI boards or from SCXI channels that appear in MAX (I have tried both posibilities, but they don't seem to work).
    I don't know if I have to use Differential, RSE or NRSE configuration. I have tried all of them. Sometimes I only read noise, sometimes signal is fixed in a limit value (maximum or minimum, it depends), sometimes it's fixed in a value near zero,... I have changed connections and configuration options so many times I can't exactly say when one thing or another happens.
    I have tested only one PCI board with only a SCXI module in order to avoid interaction and confusion. Nothing.
    I think I have tried changing almost every option in MAX, but it doesn't work.
    I'm sure I'm missing something and solution is quite simple, but I can't find it.
    Can anybody explain to me how to connect and configure my system to read any signal? I only need a few steps or highlights. Maybe some clues about what the problem can be.
    Thanks!

    I have several comments and suggestions:
    A) Have you "added a device" in MAX and actually added the SCXI chassis? This step is necessary to get the chassis to work. Click on "add a device" and choose the 1001 chassis . Do this for one DAQ card and one module only initially. The Set Up wizard should walk you through the configuration. If you are unable to add a chassis within MAX, I suspect the chassis is not working correctly.
    B) Once configured, you can examine the SCXI channels in MAX as follows:
    1) Open the DAQ card in MAX and Open the Test Panels
    2) For the SCXI channel to view, use the following convention OB0!sc(n)!md(m)!ch where the letter (n) corresponds to the chassis number in MAX (usually = 1), the letter (m) corresponds to the module number (slot) where the module is located in the chassis, and (ch) represents the channel(or channels) you wish to view. So presuming chassis ID=1, and a module in slot 1, and you wish to view channel 3, you would type the following in the channel field for the DAQ card channel to view:
    OB0!sc1!md1!3 (note OB0!sc1!md1!3:6 will display channels 3 through 6)
    All of the SCXI channels for a given DAQ card are multiplexed through channel 0 of the DAQ card, Channels 1 and up are not used, hence the initial three characters in the SCXI call refer to "On-Board Channel 0 (OB0)"
    C) For the subsequent set up, it will be necessary to first add the additional modules to the chassis (when powered off). Then open MAX and update the chassis. (If you get an error then simply delete the chassis reference in MAX and add a new chassis). You will then be required to set the interface mode of each module as either parallel or multiplexed. In parallel mode, you associate a distinct module with a distinct DAQ card in the host PC. For those DAQ cards that will address multiple modules, you must first configure the modules to be in adjacent slots in the chassis and then assign the first module to the cabled DAQ card - then all of the modules assigned to that DAQ card should be configured in "multiplexed" mode.
    D) Once the chassis has been properly configured, you can click on each module and set the gains, filters, and terminal block types.
    I hope that this helps to get you started.

  • Connecting more than one sensor cable to screw terminal to collect more than one signal in single DAQ board channel?

    I don't know if this topic is being posted in the correct location. I am new to LabVIEW and the hardware associated with it. I am using an NI 9237 DAQ board for a senior design project in engineering and I was informed that I can make multiple connections to a single screw terminal which in turn will connect to one channel of the DAQ board. To give the specifics, I have two pressure transducers and would like to connect them to the same screw terminal and channel on the DAQ board yet separate them when acquiring data in the VI. Does anyone know how to do this? I know is is essentially knowing what pins do what on the screw terminal but I can't find this anywhere. I am currently doing the job with two screw terminals and two of everything else (RJ50 adapters, etc.). I would appreciate any input. Also, please let me know if I am posting in the wrong board and if possible, which board I should be posting to.
    Thank You,
    bsteinma

    bsteinma,
    What you may have heard is that you can measure multiple signals on the same task, not on the same channel.  By tying both of these signals to the same channel, both signals will compete to drive the line.  The channel on the card will only interpret this garbled signal and you will get no useful data.  If you are new to wiring up hardware, I recommend configuring a task within Measurement and Automation Explorer and then clicking on the tab along the bottom of the page titled, Connection Diagram.  This will show you what electrical connections to make.  Then, in LabVIEW you can read multiple signals (channels) and manipulate each signal how you would like.  
    As far as boards go, you will generally find an answer where ever you post, but the Multifunction DAQ board is a great place to post when you have questions regarding hardware (like your 9237).  
    Cole R
    Applications Engineer
    ColeR
    Field Engineer

  • How do i read out the actual voltage range of the daq board as calculated by labview based on my input voltage range

    I am somewhat new to DAQ so I hope I describe this well enough, but I have encountered a requirement for my VI that I am not sure how to obtain from LabVIEW. It is my understanding that when using a DAQ board (I'm using a PCI-6034 E) you can specify the voltage range you expect from your measurements, and then the software calculates the actual voltage range it will be measuring to ensure that you get the best resolution in your range that you can given the voltage step size, etc. of the equipment. I know how to extract the voltage input that I enter into the virtual channel, but I was wondering how I can extract the actual voltage range that the hardwar
    e/software is using based on its own calculations from my input. Can anyone help me with this?

    If I understand correctly, you want to retrieve the actual gain value (and, therefore, usable input range) used by your DAQ card for a particular measurement.
    I think there's a good KnowledgeBase entry with your solution entitled "Programmatically Determining the Gain Used by a DAQ Device". Here's the URL:
    http://digital.ni.com/public.nsf/3efedde4322fef19862567740067f3cc/c93d3954ec02393c86256afe00057bb0?OpenDocument
    Regards,
    John Lum
    National Instruments

  • I want to run my program with continuous aquisition and write data to file when a button is pressed and get the most recent samples from the DAQ board.

    This is an update to a question I asked earlier. I am still trying to solve the problem. I have included a zip file with a library file. The file to open in pj_pushbutton.vi. I have placed comments explaining the issues and problems in this vi and the subvi's.
    When I push my button to write the data to file I think it is writing the data that has already been stored in the buffer and writing to file all at once. I want the data that is taken from the DAQ board from the time that I press the Write File button. How do I do this?
    Attachments:
    pj_pushbutton.zip ‏692 KB

    Hi,
    1. In AI read, you need to set the Read/Search option to "Relative to End of Data".
    2. Next you should not start AI Read VI until you press the Write to File. I am attaching an example VI below. Please see if it helps.
    Regards,
    Sastry V
    applications Engineer
    National Instruments
    Attachments:
    MostRecentAcquiredData.vi ‏97 KB

  • How to play a wave file through the DAQ board?

    Hi there,
    we want to play a wave file that is saved on the harddrive via the DAQ board. Means we want to connect a amp to the analog output of the DAQ to amplify the sound and play it through a speaker.
    We couldn't find any VI that does that. Can anybody tell us how to play a wave file, or perhaps even send us a VI that can do that?
    Thanks a lot for your help
    Martin - Physical Optics Corporation

    Hi Martin,
    The only example that I could find on how to do this was using our
    older Traditional DAQ drivers version 6.9.3.  If you're using Traditional
    DAQ drivers, the vi can be found here. 
    The example reads a 8-bit mono .wav file (an example .wav file is included in the .zip file) and writes it to the analog out of your DAQ card.  I've updated the
    example to work with our newer DAQmx drivers and attached it here.  
    I hope this helps,
    Paul C.
    Message Edited by Paul C. on 08-14-2007 05:47 PM
    Attachments:
    daqmx_wav_file_to_ao_output.zip ‏27 KB

  • DAQ Assistant in subvi not updating output to DAQ board with each call...

    Hi All,
    I am calling a simple subvi that creates a user-defined number of pulses with "Square Waveform.vi."  This square wave (with the given total number of pulses) is then used as an input to a DAQ Assistant controlling an analog output signal on a NI USB-6259 DAQ board.  I am using Labview 8.5 right now.
    However, each time I call this subvi from my main program, the output I measure from the DAQ board is identical to whatever I set in the first call (i.e., if i created two pulses in the first call, I get two pulses on every call, regardless of the input I feed to the subvi).  The multiple calls to this subvi are made in sequential frames in a stacked sequence.  I believe stacked sequences are frowned upon by good labview people, right?  But putting that aside for the moment...
    The "#-of-pulses" input I give to the subvi is updated in a subvi front panel number indicator and a graph of this waveform.  Just not in the real output I measure from the board.  Why is the hardware output being asserted (with the original input value) before this new number can reach the DAQ Assistant?
    The sloppy fix to this is just to put that square wave creation code in my main program each time I need it.  This does work and fixes my problem.  However, I would like to use subvis to keep things clean.
    I am not a good Labview programmer, but have used this software for a number of projects and am stumped by this.  Any ideas?
    Thanks,
    John

    Hi John,
    I am running your code over here and seeing
    the same results.  I believe the problem is that the DAQ Assistant is
    being called inside a loop (really a sequence structure, but
    nonetheless more than once).  Sometimes it is difficult to troubleshoot
    the DAQ Assistant in cases like this--it is trying to be "smart" and
    seems to be avoiding re-configuring its parameters inside the loop. 
    This is intended to improve loop speed for when customers are
    performing continuous operations.  In this case, it is performing a
    finite generation, and the number of samples generated appears to carry
    over from one loop iteration to the other.
    It sounds
    like you have discovered one workaround for this already: putting a DAQ
    Assistant in each frame of the main VI.  Two other options that come to mind are:
    Use the lower-level DAQmx functions inside
    the sub VI.  Here you will have explicit control over when the task is
    created and cleared, and when parameters are set.  You can find
    examples of how to use the DAQmx API in the Example Finder at:
    Help >> Find Examples... >> Hardware Input and Output >> DAQmx
    Write
    a consistent amount of samples to the DAQ assistant by "zero-padding"
    your signal.  For example, instead of writing [10, 1010], try writing
    [1000, 1010].  In this case, it wouldn't need to reconfigure the number
    of samples to generate.
    One lesson to take away here is
    that the DAQ Assistant is good for basic functionality, but for more
    advanced control over the execution and configuration of your task you
    should learn to use the lower-level DAQmx functions.  In this case it
    sounds like the problem is actually a bug.  I'll file a bug report, since the DAQ
    Assistant is not checking for waveform timing changes even though your
    timing is set to Use
    Waveform Timing.
    Thank you for pointing out this odd
    behavior--out of curiosity which version of DAQmx are you using? 
    -John
    John Passiak

  • Do I need to buy a PGIA to utilize my basic multifunction DAQ board?

    I was reading through the manual of the NI PCI6014 basic multifunction DAQ board. In the section connecting analog input, there were multiple references made to a PGIA. However, I could not locate it the connector pin diagram. I was wondering if it was an external device that I would have to purchase to enable me connect my analog input.

    Greetings,
    No, your NI 6014 contains the PGIA (programmable gain instrumentation amplifier). I think that Figure 3-1 (NI 6013/6014 Block Diagram) in the user manual for the NI 6014 may clear things up for you. It illustrates how all of the analog input channels (ACH0-ACH15) are multiplexed through the board's PGIA.
    Good luck with your application.
    Spencer S.

  • Does the academic version of Labview 8.5 allow running AT MIO 16e-1 DAQ board?

    I just bought the academic version of Labview 8.5.  I have an AT MIO 16E-1 DAQ board.  I have installed the Labview software.  Then I installed the Legacy NiDAQ 7.4.  I put in the board and MAX recognizes it.  Windows detects the board twice.  The first time is installs automatically.  The second time there is an error.
    I can't find the instrument driver/VIs in the Labview functions pallette for the AT MIO board. 
    Thanks.

    Hello Test11111,
    In order to use Traditional NI-DAQ devices in LabVIEW you need to know the device number as given in the Measurement and Automation Explorer.  Unlike the IMAQ or NI-DAQmx devices, Traditional NI-DAQ devices do not auto-populate in the channel controls or constants.  The good news is that if the device shows up in MAX and the test panel works there then your device is working properly.
    There are some Traditional NI-DAQ example VIs available through the NI Example Finder.  To access these examples open LabVIEW and go to Help» Find Examples...  Then in the top left select Directory Structure; the "daq" folder contains all of the Traditional NI-DAQ examples organized by device and function (analog, digital or counter I/O).
    I hope this helps, and please post back if you're still having trouble.
    Cheers,
    Brooks

Maybe you are looking for

  • Change GL Account and 'SET' EXKN

    I get the syntax error 'Null Value' where the code is commented below when trying to use the chosen interface. I am trying to change and  'SET' the value of  LS_ACCT-SAKTO, in the GL Account Number.  I know it thinks the interface doesn't exist. Is i

  • Display KM image in JSP

    Hi All, I have image in KM folder. I want to display it in JSP as a html image. I am able to access the image using below code. <% try {      IUser sapUser = componentRequest.getUser();      com.sapportals.portal.security.usermanagement.IUser ep5User

  • Multi-Image support for command File- Place

    It would be quite time saving . . . "Value Add" to be able to select multiple images in Bridge and be able to do File->Place->Photoshop. This would create an automation loop such each image that was selected in Bridge would be place by the user conse

  • How to: Subscripts and superscripts in Pages for iPad?

    I have a little problem with Pages on my iPad; I must realize a scientifical report and I need to use subscripts and superscripts. Are they present in Pages??? How can I attive them? Thanks. Best Regards Enrico Catanzani

  • Picture in Picture (Mask) Problem

    Hey guys, I'm using a technique to mask out a watermark in a video I've been editing in iMovie. I created a black box over a transparent background in photoshop and exported it as a bunch of different image file formats. I drag it into iMovie 09 as a