NOR-6289 DAQ latency for the generation of digital signals

What I want to achieve is less than 1 second latency between the update of several digital waveforms and see these values appear on the digital output pins.  For example if I have 16 digital output channels in my task and I am writing 127 samples for each channel at a rate of 1 every 10 ms sample, then I update the waveforms in Labview that are sent to each channel, I do not see the new values on the pins of the output for about 21 seconds.  FIFO size onboard for the 6289 is 2 047 samples.  At this point, I guess this latency is unconstitutional by the FIFO on board - but I could be wrong.

If the FIFO on board is shared by all channels in a task, a sample of each waveform is generated to the output every 10 ms, then I would expect latency (2 047 samples/16 channels) * 10 ms/sample = 1.27 seconds.  However, I still see latency of approximately 21 seconds. Is there something fundamental about the FIFO on board I'm misunderstanding? Or is there something going on in the PC buffer which adds this latency?

I enclose my VI for reference. NOTE: The attached VI only has 2 channels for simplicity again it shows the same latency as the example on channel 16. I had a loop analog acquisition as well to monitor outputs from the digital PIN.

Thanks in advance.

The FIFO is not per channel, each line is a little and FIFO stores all of port 0 as a single sample (the lines that are not used in your job are hidden and not updated).  If your sample of 2047 THAT FIFO clocked @ 100 Hz will take roughly 20,47 seconds to build completely.  There is also a FIFO in the software (the size of it is configurable) which stores data before their transfer to the device.  The pilot will always try to keep the complete material if there are data to generate, FIFO which is good to prevent cost overruns but bad for latency.

If I have LabVIEW 2013, I have not installed on this PC and so I can't watch your VI.  I'll try to give some suggestions anyway...

One way around this problem is to use non-regeneration (not sure if you're already or not) and to limit the speed at which you write to your task so that the FIFO is never complete (once the data is written to the device, you cannot remove it from the FIFO).  To limit the write speed, try to look at Total "samples per channel has generated" (I think it updates quite frequently on the useful USB devices) from the "current write Position.  Both are DAQmx writing properties.  Only write data to the task when the difference is less than a threshold.

You might consider the inverse would be output just at a faster pace with duplicate data.  For example, [1, 0, 1, 0] @ 100 Hz = [1, 1, 0, 0, 1, 1, 0, 0] at 200 Hz.

Best regards

Tags: NI Hardware

Similar Questions

  • How can I use internal clock case OR USB - 6259 BNC for the acquisition of digital data in my own big software?

    I want to integrate the ANSI C sample program ReadDigPort - ExtClk.c in my own big package.

    I want to use the internal clock of the BNC NI USB-6259 (.. 80 kHz 120 kHz).

    In the document:
    High speed M: Series Multifunction DAQ for USB - 16-bit, up to 1.25 MECH built-in BNC connectivity. / s,.
    is written:
    Or sample DI source clock: Any PFI, RTSI, HAVE sample or convert clock, AO, Ctr n out internal and many other signals sample clock
    The digital subsystem doesn't have its own dedicated internal synchronization engine. Therefore, a sample clock must be provided another subsystem on the device or from an external source.

    How can I use internal clock case OR USB - 6259 BNC for the acquisition of digital data in my own big software?
    With what other subsystem on the device can generate a source of the clock? How?

    It is possible to set a clock on an internal counter (for example ' Dev1/ctr0"):
    Creates channels to generate digital impulses that define the freq and dutyCycle and adds the channel of the task that you specify with taskHandle.
    DAQmxCreateCOPulseChanFreq (taskHandle, "Dev1/ctr0" units, clockName, idleState,
    initialDelay, freq, the duty cycle); works

    But it is not possible to drive this internal clock to a terminal (for example "/ PFI0/Dev1"):
    DAQmxErrChk (DAQmxCreateCOPulseChanFreq (taskHandle, "/ PFI0/Dev1", clockName, units, idleState, '))
    initialDelay, freq, the duty cycle); does not work: error DAQmx: measurements: type I/O of the physical channel does not match the type of I/O required for the virtual channel you create. Name of the physical channel: PFI0. Name of the virtual channel: clock

    The sample clock source can be derived from an external terminal (for example "/ PFI0/Dev1"):
    Sets the source of the sample clock, the sample clock rate and the number of samples to acquire or generate.
    DAQmxCfgSampClkTiming (taskHandle, "/ PFI0/Dev1", maximumExpectedSamplingRate, DAQmx_Val_Rising, ")
    DAQmx_Val_ContSamps, bufferSize); works. Acquire or generate samples until you stop the task

    But it is not possible to derive the internal counter of the clock (for example ' Dev1/ctr0"):
    DAQmxCfgSampClkTiming (taskHandle, "Dev1/ctr0", maximumExpectedSamplingRate, DAQmx_Val_Rising,
    DAQmx_Val_ContSamps, bufferSize); does not work. Error: Acquire or generate samples until you stop the task: make sure that the name of the terminal is valid for the specified device. See Measurement & Automation explore valid names of terminals. Property: Property of DAQmx_SampClk_Src: DAQmx_SampClk_ActiveEdgeSource device: Terminal Source Dev1: Dev1/ctr0

    Hi datafriend,

    using what it says is correct:

    Or sample DI source clock: Any PFI, RTSI, HAVE sample or convert clock, AO, Ctr n out internal and many other signals sample clock
    The digital subsystem doesn't have its own dedicated internal synchronization engine. Therefore, a sample clock must be provided another subsystem on the device or from an external source.

    This means that if you do not use an external signal as clock you can use the sample clock to HAVE it on board or at the output of the internal counter.

    There are also 2 ANSI C examples in this regard:

    http://zone.NI.com/DevZone/CDA/EPD/p/ID/4485

    http://zone.NI.com/DevZone/CDA/EPD/p/ID/4488

    So in both cases you have to use a fictitious task you need only for the generation of the internal clock (HAVE or CTR)

  • How can I get the COMPLETE serial number to display? This number shows except for the 4 last digits.

    How can I get the COMPLETE serial number to display? This number shows except for the 4 last digits.

    Hi Infogoddess,

    Thank you for using communities Support from Apple! If you try to find the serial number of your iPod touch or another Apple product, you can find information and the steps in the following articles useful:

    iPod: how to find the serial number - Apple Support

    Find the serial number of your Apple - Apple Support product

    See you soon

  • How ban you a computer for the software Adobe digital editions

    How ban you a computer for the software Adobe digital editions?

    ban the computer: ctrl-shift-D

    ban the device: ctrl-shift-E

    Unfortunately, the software designers ADE never attended a course on usability 101: no possibility of discovery.

  • How to check for the two first digits?

    Can someone please... There is demand to have a hidden field on the form that will be filled with data. It's going to be 6 digits long and could start with 02 or 04. I need to check on the DocReady event, for the first two digits. If the first two digits are 02, the presentation of the form will remain as it is. If the first two numbers are 04, I'll have to show two hidden subforms. Can someone please provide an explanation on how to check for the first two digits of field 6 digits and do some actions.

    Thank you very much

    No, only in the event: Exchange.

  • Can I synchronize compactDAQ and cards for the generation M Series DAQ waveform continues non-regenerating in RT

    Hello

    I use a M Series DAQ card (6229) multichannel and multipoint make reading and writing of waveforms, all synced to a clock generated on the 6229.  Now I need to extend that to a "remote" (10 m) location and I was planning to use the Ethernet (9188 or 9184) CompactDAQ chassis or maybe 9144 Ethercat slave.  Before I have buy and learn the hard way, I thought I would ask some advice:

    My questions are:

    (1) using the DAQmx can I access the IO on 9184 or transparent 9144 using a multichannel multipoint DAQmx task as I do for the PCI 6299 card?

    (2) are all of these chassis supported if I use RT on the host?

    (3) is the best way to synchronize and trigger the remote system to the host using a digital line between the 6229 plug-in and the chassis from a distance, and if so, how can I connect it to the chassis and set it as a sample clock?

    Any help would be appreciated.

    Hi AnthonV-

    You make perfect sense.  And, I am pleased to report that you can program your analog output task CompactDAQ to use a clock timed by material, like your M Series device.  In fact, it is possible (and perhaps even likely) that the same code of OR-DAQmx you use for M-series can be used directly on CompactDAQ also long that the AO, relaxation and sources of timing and similar channels can be updated to point to your CompactDAQ chassis.

    As I've mentioned before, please note that only the CompactDAQ USB chassis (except the cDAQ-9172) are compatible with the PharLap LabVIEW RT objectives.  I don't know if this will meet your needs for a > extension of 10 m from the host system.

  • the use of two meters: one for the generation of regenerable impulses, one as a counter

    I'm new on use the counters. I use an NI PCI-6110 multifunction data acquisition card. I want to count a digital input (on the connector of the PFI 2) pulse and also using the entrance to trigger another counter to generate impulses. So I configured the first counter (task 1) to generate digital pulses with PFI2 as a source of relaxation and redeclenchables award; and set up the other counter (task 2) to count the number of edges of the digital signal with.... But after the two tasks began, the first task was an error 50103 (or the possible reasons: NI Platform Services: the specified resource is reserved.) The operation could not be performed as indicated.) The block diagram is attached. Thank you.

    Your Board uses very-old-in-electronic-standards-DAQ - STC a smart meter that requires a little secretly * two * counters work together to make a finite pulse train.  He is not actually secret if you read the right parts to the right documentation, but it's not hard to miss if you are unsure you should look.  It has been a while since I've done a lot with these counters, but I have this nagging thought that they may not support redeclenchables finishes pulse train generation at all.  I would caution you to at least check this.

    In any case, it is the reason for the error.  The finite impulse generation task uses only the counter that you specify, but there was also this one to help.  A couple of new generations of smart meter (NOR-TIO, DAQ-STC2) continues to have this limitation, but the * more * recent it is no longer made.

    X series boards use the chip "NOR-STC3" that give you 4 programmable counters by the user instead of 2 * AND * everyone can generate pulse trains finish without using a help desk.  You may want a pair of them upward with your 6110, assuming that you need simultaneous sampling analog 6110's capabilities.

    -Kevin P

  • Generation of digital signals through external trigger pulse on PCI 6251

    Sir I want by NI 6251 because I read it has the ability to generate and acquire digital signals on port 0. I want to know that can I generate external clock wave triggering (providing impulses to a line on the acquisition of data)?

    Hi Ali211,

    Yes, you can use a source of sample for the digital input/output clock external clock. You can connect the external clock source to one of the lines PFI (PFI0-PFI15) and specify the source clock sample like this outer line of PFI.

    There are some shipping DAQmx examples that you can start with. Find the examples by clicking Help > find examples in LabVIEW.

    DAQmx continually reading digital channel with External Clock

    DAQmx channel External digital writing Clock

    Hope this helps.

    Chris G

  • Exe in error for the generation of reports and LV 8.6.1

    I created and installed a labview application in a PC (windows XP) when labview is not installed.  (already included NI_Excel.lvclass)

    I used a generation report (excel) to display the results.

    I am getting following error:

    Error code:-2147352573

    Member not found in NI_Excel.lvclass:

    I use MS office Excel 2007 SP1

    OR LabVIEW Run-Time Engine: 8.6.1.

    Report generation toolkit version: 1.1.3

    Search the website of nor and a 30-day eval copy. For use beyond this period, you will need to purchase a license (unless you have of course)

    compatibility can be found on the following link

    http://digital.NI.com/public.nsf/allkb/C9408B9F08D711E786256F3300701D01

    It may be useful

    TD

  • How to write data I read frequency bands in excellent using the tools for the generation of reports.

    Hi all

    I wrote the code to read data from the Analyzer of spectrum and also for writing in excel using report generation tools. When I run the program values get read and excellent sheet also opens but I don't see anything written in.

    So if anyone can help me in that I'm very gald. I am attaching the screenshot of my program and also attach file .vi. As I use the drivers you can see some of vi.

    Thanking you,

    Patricia

    @tobid,

    Thank you and sorry long back only I got my error and its job well now... again thanks and sorry that I have not mentioned here...

    Patricia

  • Page number of reset in Word RTF model for the generation of PDF Editor BI

    Hello!
    Apex Oracle 10.2.0.4, BEEP 10.1.X 4.0.2

    I was told to transfer this forum topic.

    Bills are created based on the Word RTF with BI Publisher files. Resulting file is a large PDF file, that has a lot of pages.
    Word RTF model is bundled in field BILLS.ID with the page break option. Thus, a BILLS.ID group can have one or several pages (according to the data).

    How to create the model RTF (for generation of PDF BI Publisher) with reset page numbers when changing the value of consolidation.
    Page numbers are at the bottom of the page in the format
    curr_group_page/total_group_pages
    where:
    -curr_group_page is the number of the current page group (defined with the BILLS.ID field),
    -total_group_pages is the total number of pages in a group (defined with the BILLS.ID field).

    I need to reset the numbering at each change of BILLS.ID (Group).
    Example:
    ID = 1 (4 pages)
    1/4, 2/4, 3/4, 4/4
    ID = 2 (1 pages)
    1/1
    ID = 3 (2 pages)
    1/2, 2/2
    ID = 4 (3 pages)
    1/3, 2/3, 3/3
    etc.

    How to achieve this type of numbering?

    Any help appreciated.

    Kind regards
    Damir Vadas

    P. S.
    Have found something like the number of page in publisher bi but I want to get this file on the mail if possible (to see the real value).

    Hello

    Use

    to reset the numbering of the pages for sections.

    Concerning
    Angelique

  • Preset for the generation of the entity and the subtype of losing

    Can I change the two options in

    Properties Entitiy subtypes->-> generation Entitiy and predefined subtypes

    and the change has some kind of effect. But when I save and reopen the model changes are lost. And during the next genius of strange things happen.

    Is it a bug in my model or a bug in the Modeler?

    It is not a property, it is preset functionality - legacy of the entity

    Philippe

  • Generation error message PDF: cannot open the file for the generation of a frame (Version 7.2) PDF book

    Hello

    I'm transforming a book in PDF and I get the error message unable to open a file (... < Filename > FM) and the dialog box unavailable fonts also appears. The tricky thing is that I converted the same book in PDF just a couple of days. Now, when I tried to do it again, I'm getting the above mentioned error message. I have tried if you deselect the file > Prefrences > General > remember checkbox missing fonts too. However, it did not help to generate the PDF file. I will be grateful if someone offers a workaround solution for this issue. Thanks in advance.

    Usually, deselection Remember lack of fonts work.

    The missing fonts message when you or FrameMaker opens the file. The solution is to open all the files in the book, or at least those with the "missing" font, clear the message for each file. Now print the book in PDF format, while keeping open files. It usually works because you already erased the messages of missing fonts.

  • Strange variation of duration for the generation of pulses

    Based on the example vi 'Gen dig Pulse Train-finishes-Dig Start.vi' I created a configuration, as shown in the picture. The rising edge to initiate the impulse is given by a 100 Hz signal by a function generator attached to Ctr1.

    How is there is a big gap in time measured to create the signal?

    Is this normal?

    I tried to synchronize a lamp with a spectrometer and a gap of 20 ms, it's too much.

    PS: I use a PCI-6602 with a block of connection BNC-2121


  • Latency for the calendar to blackBerry Smartphones

    I use the calendar app that came on the phone.  It takes SO much time opened the program, and then an another long wait until I can scroll to a date, or to add an appointment.  All other applications are very good.

    Does anyone else have this problem?  Is there a solution?

    I found a work around on the set of Crackberry.  It seems that this only happens to those of us who use the calendar view.  If you open the calendar, click options, click Calendar view and action, check "Show free time to the agenda" it solves the problem.

    Now the problem is I want to show the time, but that's another issue!

Maybe you are looking for