Analog trigger with time information

I use PXi-6133 can capture analog signals (8 differential channels) at the rate of 2 MECH. / s. I am able to capture the data and the log in the file using the logarithmic function PDM. However, processing of data takes too long as all the data are about 300 MB (for 2 cards / 16 channels, 10 seconds of vesting period).

Order to reduce the amount of data, I think the sample just the data when it is in a voltage range I can specify (for example, sample channel 1 when the signal is less than 1V), sample 2 channel when the signal is less than 1V, etc.). I am able to implement analog triggering, but he didn't tell me when the event occurs (for example, there may be multiple triggers and I need to know when the trigger happens for example to 1.0001 s, s 2.1222 etc.).

Anyone could shed some light on this?

Thank you.

KT

Well, no worries, I hope that all goes well.

Tags: NI Hardware

Similar Questions

  • Player Code VITC/CTA time analog PCIe with ESXi

    Hello

    We have two PCIe analog LTC/VITC time Code Reader (Adrienne card) we would like to install on one of our virtual dedicated server

    My question is, how can make us it one of the Virtual hosts to recognized this card and use it or its automatically detects?

    Please advice

    Thank you

    You can't do work at all - random PCI cards may not have sent resources to a virtual computer.

    -Matt

  • I used my new 4 to Seagate Backup Plus on my laptop. He said he had to erase files to make it compatible with Time Machine. Now to 4 is full and cannot be recognized. What should I do?

    I'm on OSX El Capitan 10.11.3 and I've never used before to Seagate Backup Plus 4. I wasn't able to put the files using the Macbook Pro. It was purchased only a few hours ago.

    After plugging in, he asked if I would use it for Time Machine, and it should be deleted so that it is compatible with Time Machine. This is my first time to use an external hard drive on my laptop, and it is also my first attempt to use Time Machine.

    My external hard drive appears only on the disk utility now. Help, please.

    In the above image, you click the physical drive. It does not show the available space. You will need to click on the item "Untitled" below to see the space actually available. "Untitled" is the real partition on the disk.

    You can find information on the following link useful-> http://www.macworld.com/article/2990837/storage/how-to-format-a-startup-drive-in - el - capitan.html

  • How to structure the DMA buffer for SMU 6341 DAQ card for analog output with different frequencies on each channel

    I use the outgoing/incoming analog DDK with the DAQ 6341 SMU map.

    The examples, for example aoex5, show a single timer (method outTimerHelper::loadUI), but the example shows the DMA loaded with same size of vector data.

    There is a comment in the outTimerHelper:call rogramUpdateCount, which implies that memory sizes different pad per channel can be used.

    (the comment is: switching between the sizes of the various buffers is not used)

    Nobody knows what should be the format the DMA buffer for data from multiple channels with different frequencies?

    For example, we want a0 with a sinusoid at 1 kHz and a1 with a sine wave of 1.5 Khz.  What looks like the DMA buffer?

    With the same frequency for each channel, the data are interleaved, for example (ao0 #0, ao1 #0; ao0 ao1 #1, #1,...), but when the frequencies for each channel is different, what the stamp looks like?

    Hello Kenstern,

    Data are always intertwined since each card has only a single timing for each subsystem engine.

    To AO, you must specify the number of samples that will be released to the AO. You also specify the number of channels. Because he didn't is that a single engine timing for AO, each AO will be channel will be updated at the same time to update clock tick. Data will be interlaced exactly as shown in the example because each channel AO needs output at each tick of the clock to update. The data itself can change depending on the frequency you want to copy.

    kenstern wrote:

    For example, we want a0 with a sinusoid at 1 kHz and a1 with a sine wave of 1.5 Khz.  What looks like the DMA buffer?

    With the same frequency for each channel, the data are interleaved, for example (ao0 #0, ao1 #0; ao0 ao1 #1, #1,...), but when the frequencies for each channel is different, what the stamp looks like?

    In your example, you must come with an update rate that works for the two waveforms (sine waves of 1 and 1.5 KHz). To get a good representation of a sine wave, you need to update more than 10 x faster than your fastest frequency... I would recommend x 100 if possible.

    Update frequency: 150 KHz

    Channels: 2

    Then create you stamps that include complete cycles of each wave you want to produce based on the frequency of update. These buffers must also be of the same size.

    Buffer 1: Contains data for the sine wave of 1 KHz, 300 points 2 cycles of sine wave

    Buffer 2: Contains data for the sine wave of 1.5 KHz, 300 points, 3 cycles of sine wave

    You can Interleave them as before. When the data are performed through the ADC, they are out different sine waves, even if the AO channels are updated at the same speed.

  • Trigger with NOR-DAQmx in Ansi C/C++ and OR USB-6210

    Hello

    We need to read an analog signal each time a trigger signal it is does not know how to get the trigger to work. Here is the code that we have found so far:

    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

    ...
    DAQmxErrChk (DAQmxCreateAIVoltageChan (analogInputTaskHandle, "Dev1/ai0", "AI0', DAQmx_Val_Diff,-10, 10, DAQmx_Val_Volts, NULL));

    Int32 numSampsPerChan = 20;
    uInt64 sampsPerChan = numSampsPerChan;
    float64 timeout = 0; Time in seconds to wait for the function read String-> 0 try to read only once; -1 wait infinitely;
    bool32 fillMode = DAQmx_Val_GroupByChannel; Reading non-interlaced channel
    const uInt32 arraySizeInSamples = 20; Number of samples that are read
    float64 analogValuesFromDevice [arraySizeInSamples];
    sampsPerChanRead of Int32;
    bool32 * reserved = NULL;

    char startTrigger [256] = ' / PFI0/Dev1;
    int startEdge = DAQmx_Val_Rising; rising edge

    DAQmxErrChk (DAQmxCfgSampClkTiming (analogInputTaskHandle, "", 10000.0, DAQmx_Val_Rising, DAQmx_Val_FiniteSamps, 10));

    DAQmxErrChk (DAQmxCfgDigEdgeStartTrig (analogInputTaskHandle, startTrigger, startEdge));

    DAQmxErrChk (DAQmxStartTask (analogInputTaskHandle));

    DAQmxErrChk (DAQmxReadAnalogF64 (analogInputTaskHandle, numSampsPerChan, timeout, fillMode, analogValuesFromDevice, arraySizeInSamples, & sampsPerChanRead, reserved));

    DAQmxErrChk (DAQmxStopTask (analogInputTaskHandle));

    Frees the memory of the task
    DAQmxErrChk (DAQmxClearTask (analogInputTaskHandle));

    ...

    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

    This is the error message we receive.

    DAQmx error: relation to the outbreak of the reference or the beginning reading
    position of pre-trigger samples before the acquisition is completed.

    Wait until the acquisition is complete before reading or increase your reading timeo
    UT. Additionally, make sure that the equipment is set up and wired correctly, the signal for
    the reference trigger is correct, and that the reference trigger occurs during th
    e device is data acquisition.
    Property: DAQmx_Read_RelativeTo
    Value: DAQmx_Val_FirstPretrigSamp

    Task name: ReadAnalogInput

    State code:-200281

    Can you tell us how to expect the acquisition supplement or increase our reading timeout? We think these are the problems we face.

    Thanks for all your help.

    Update:

    We use is no longer a trigger, so it's resolved.

    We believe that we receive at the origin of the mistake because we weren't using a TTL signal.

  • Two tasks to trigger a simple analog trigger signal

    I use the 6351 and have two tasks:

    AnalogInputTask has 3 channels of I

    AnalogOutputTask has 1 channel AO

    When I created these two tasks to trigger a single digital channel, I have no problem. But when I want to use an analog trigger, I get error 50103 during the second task (no matter the order in which they are in) is engaged. Are there restrictions with the implementation of an analog trigger?

    The code looks like this:

    public AnalogInputChannel (config ConfigSettings, sweep of SweepSettings, SweepType sweepType)
    {

    AnalogInputTask = new Task();
    AnalogInputTask.AIChannels.CreateVoltageChannel (voltageChannelName, "detection of voltage", AITerminalConfiguration.Differential, -5, 5, AIVoltageUnits.Volts ");
    AnalogInputTask.AIChannels.CreateCurrentChannel (currentChannelName, "meaning current", AITerminalConfiguration.Differential, -15, 15, currentSense, AICurrentUnits.Amps ");
    AnalogInputTask.AIChannels.CreateVoltageChannel (irradianceChannelName, "Meaning the irradiance", AITerminalConfiguration.Differential, 0, 5, AIVoltageUnits.Volts);
     
    AnalogInputTask.Triggers.StartTrigger.ConfigureAnalogEdgeTrigger (sweepTriggerAIChannel, AnalogEdgeStartTriggerSlope.Rising, aiTriggerLevel);

    AnalogInputTask.Timing.ConfigureSampleClock (string. Empty, rate, SampleClockActiveEdge.Rising, SampleQuantityMode.FiniteSamples, length);
    AnalogInputTask.Stream.ReadAllAvailableSamples = true;
    AnalogInputTask.Stream.ReadWaitMode = ReadWaitMode.Poll;
    Reader = new AnalogMultiChannelReader (t.Stream);
    AnalogInputTask.Control (TaskAction.Commit);
    AnalogInputTask.Start ();
    }

    public AnalogOutputChannel (config ConfigSettings, sweep of SweepSettings, SweepType sweepType)
    {
    AnalogOutputTask = new Task();
    AnalogOutputTask.AOChannels.CreateVoltageChannel (vOutChannel, "voltage Source", -10, 10, AOVoltageUnits.Volts ");

    AnalogOutputTask.Triggers.StartTrigger.ConfigureAnalogEdgeTrigger (sweepTriggerAIChannel, AnalogEdgeStartTriggerSlope.Rising, aiTriggerLevel);
               
    AnalogOutputTask.Timing.ConfigureSampleClock ("", note, SampleClockActiveEdge.Rising, SampleQuantityMode.FiniteSamples, length);
    Writer = new AnalogSingleChannelWriter (t.Stream);
    Writer.WriteMultiSample (false, waveform);
    AnalogOutputTask.Control (TaskAction.Commit);  ERROR GETTING PAST HERE
    AnalogOutputTask.Start ();
    }

    Instead of I. StartTrigger, try to use the name of Terminal DAQmx "/ Dev1/AI/StartTrigger.

    Best regards

  • before trigger with four cards PXI-6115

    Hello

    I have a PXI-1010 chassis with four cards PXI-6115, labeled boards 3, 4, 5, 6, installed in it.  Each of these cards has 4 analog inputs (BNC inputs).  In my current system, all four boards fire off the coast of the entrance on first 3 analog.  I'm using an analog trigger mounted on Board 3, which then triggers a trigger digital beginning on the boards, 4, 5 and 6.

    Now, I would be able to take samples before firing.  I worked on this for a while and that seems to happen is that 3rd Chess Board properly triggers and takes samples of relaxation before, but plates 4, 5 and 6 are somehow trigger too late or early or something - they never record my test signal input of.

    Can someone help me understand where I'm going wrong here?  I enclose my VI and also a picture of the important part of my block diagram.

    Thank you!

    It could be that you connect the number of samples per channel in the clocks of the sample for tables 4, 5 and 6. This will ensure that the task creates a buffer on your PC that is large enough to accommodate all the samples you want to read.

    Also, why did you remove the structure of sequence? You need to ensure that the advice of slaves were armed in front of the master bedroom.

    Here is a link to an example similar to what you're trying to do. This example acquires the data at different speeds on different boards, but it seems that everything is identical to what you are doing. I think it might be useful for you: https://decibel.ni.com/content/docs/DOC-11698

    Jeremy P.

  • redeclenchables out initial varaible on each trigger with delay

    I'm trying to implement a redeclenchables generation digital pulses of the train on 6363 PCIe with LabVIEW with the additional feature of an initial delay variable.

    For example:

    -J' have a fixed pulse train

    -After the 1st trigger, it is generated without delay

    -2nd after trigger, there is a delay of 10µs

    -Each subsequent trigger increases the delay of 10µs

    I tried to do by writing new samples to the digital output, which include an initial delay. Since it merely controls how the buffering is managed this does not seem to work reliable with reboot and redeclenchables ouput.

    Is there another way to do this using a perhaps additional internal counter for the generation of delay?

    Thank you

    Christoph

    I would look at using an additional counter that your delay generator.  There is a counter property called

    Delay 'auto increment Count', which lets specify you such a regularly increasing.  Here is one

    DevZone article and example that should help get you started.

    The idea is that the extra meter comes between your initial trigger signal and the

    pulse train finish that you want to generate.  The additional counter made its own triggered impulse

    with time growing after the initial trigger and your finite pulse train gets triggered by

    This additional counter output.

    -Kevin P

  • Problems with timer

    repTimer = new timer (650, pattern.length);

    repTimer.start ();
    repTimer.addEventListener (TimerEvent.TIMER, chooseColor);

    To my knowledge, the above code should run chooseColor all ms 650 as many times as the items in the configuration table.

    private var: delay timer = new Timer (650, 1);

    public void chooseColor(evt:TimerEvent):void
    {
    for (var x: Number = 0; x)<>
    {
    If (model [x] == 0)
    {
    red.setImage (new red1());
    Delay.Start ();
    delay.addEventListener (TimerEvent.TIMER, Redoute);
    }
    If (model [x] == 1)
    {
    blue.setImage (new blue1());
    Delay.Start ();
    delay.addEventListener (TimerEvent.TIMER, blueOut);
    }

    }

    }

    And that the code should go in the table of the model and when the value is 0 or 1, set the image and then run redOut/blueOut all 650 ms.

    Essentially what this should do changes an image every 650 ms according to the values stored in the table model.

    However, it seems to make them all at once, can any1 point out what I'm doing wrong here?

    I don't quite understand what you're trying to do, but here's something that can help:

    You create a single instance of "delayed".  So whenever repTimer fires (and note that you asked so that he can produce a total of events "pattern.length"), you run through the loop times "pattern.length", and for each passage, you ask that the self-timer starts.

    You also add an event listener each time through, although I think adding the same listener for the event even more than once done anything.  However, this means that as soon as you saw the two modes 0 and 1, you will have a timer with two attached headphones.  All triggering events will trigger redOut both blueOut at that time.

    Also, I do not know the behavior of a timer that is already over, but it is possible call. start() on it again will simply trigger the TIMER event once more, immediately.  Or maybe it does nothing.  It seems to be undefined behaviors, based on reading the documentation.  It is certainly not what you want...

    You may want to create a new instance of the timer of delay for each pass through the loop.

  • Import database using 11 g is important all the packages with debugging information

    We are modernizing our database from 9i to 11g using imp/exp. The problem we see is that all packages/procedureas/functions are imported with debug information.
    It seems that imp utility changes import session to set PLSQL_DEBUG = TRUE. On the 9i database, objects are not compiled with debugging information, and we do a full import with parameters FULL = O and IGNORE = N.

    We found no information about this behaviour anywhere while we ask this is the default behavior, can it be changed so that the imported objects are not compiled with debug information and if not, what is the better and more effective way to drop all debug information on objects that have? We hoped to use DBMS_UTILITY.COMPILE_SCHEMA, but it recompiles objects preserve debug information on the objects that had them before running the command. We can EDIT the PACKAGE COMPILER on all packaging and it will solve our problem, but it will take a lot of time to recompile all our objects from our database is very large.

    Hello

    I just did a test of my own. Here's what I did:

    Database without active debugging:

    create or replace function scott.foo (in number) return number is
    Start
    return 10;
    end;
    /

    has ran exp then looked the dumpfile. That's what I saw:

    ALTER SESSION SET "_LOAD_WITHOUT_COMPILE" = PLSQL
    FORMAT71 CREATE FUNCTION 'FOO' bunch of non ascii here
    ALTER SESSION SET '_LOAD_WITHOUT_COMPILE' = NONE
    ALTER FUNCTION 'FOO' COMPILATION REUSE SETTINGS TIMESTAMP ' 2010 - 03 - 16:10:31:03'

    This resembles the exp has detected that the debug flag is not set and the function exported and recompiled it reset the compile time for the same time of the compilation of the source database.

    Then I did:

    ALTER session set plsql_debug = true;
    create or replace function scott.foo2 (in number) return number is
    Start
    return 10;
    end;
    /

    At this point, function foo was built without debug and function foo2 was build debug.

    I ran exp again and looked in the dumpfile. That's what I saw:

    ALTER SESSION SET "_LOAD_WITHOUT_COMPILE" = PLSQL
    ALTER SESSION SET NLS_LENGTH_SEMANTICS = 'BYTE' PLSQL_CODE_TYPE = 2 = PLSQL_OPTIMIZE_LEVEL "INTERPRETED" PLSQL_DEBUG = TRUE PLSQL_WARNINGS = "DISABLE: ALL" PLSQL_CCFLAGS = "
    CREATE FORMAT71 FUNCTION 'FOO2' - of the bunch of non ascii here
    CREATE FORMAT71 FUNCTION 'FOO' - lots of non ascii here
    ALTER SESSION SET '_LOAD_WITHOUT_COMPILE' = NONE
    ALTER FUNCTION 'FOO2' COMPILATION REUSE SETTINGS TIMESTAMP ' 2010 - 03 - 16:10:35:46'
    ALTER FUNCTION 'FOO' COMPILATION REUSE SETTINGS TIMESTAMP ' 2010 - 03 - 16:10:31:03'

    In this case, it seems that these two functions will be built with active debugging. I don't know what is happening in your case. You can contact the Oracle Support to see if they know about this problem and if they know of a work-around.

    Good luck

    Dean

  • How can implement you not with Tim Capsule and AirPort their simulation on the iMac?

    Hello

    How can implement you not with Time Capsule and AirPort their simulation on the iMac?

    I don't know what you're asking.

    AirPort Extreme is a wireless router.

    A Time Capsule airport is an AirPort Extreme with a built-in hard drive for data storage.

    An iMac is a Mac computer.

    An iMac is not a wireless router, so he is unable to perform the functions of a wireless router.

  • My Clickfree automatic backup drive has stopped working, with my iMac, what is the best replacement to use with Time machine

    My Clickfree automatic backup drive I had for many years stopped working with my iMac, what is the best replacement to use with Time Machine.

    I can't even reformat the drive to try to start over, then think its time I invested in a high today but don't know where start looking so any advise would be a great help.

    Thank you guys

    A lot of users on these forums recommend OWC (www.macsales.com) Mercury Elite Pro series JEP due to their durability, affordability and quality of construction. I have about 6 of them connected to my iMac and have never had a speaker to fail. When a hard drive fails, substitute is a 5-minute process to re - use the box. To help you get started, you can find the line to: https://eshop.macsales.com/shop/firewire/1394/USB/EliteAL/eSATA_FW800_FW400_USB

    You can find them in various ways and with a variety of configurations of connection so you can find the one that best fits your needs.

    Good luck!

  • How can I connect an Apple TV to an analog TV with 2 RCA Sockets?

    I have an analog TV with 2 jacks RCA - one for audio and one for video. Can I connect to an Apple TV box? Thank you.

    Maybe you should try to buy this part, just connect the red plug if your TV does not have one. Here is the link: B01F77KXC0/ref = sr_1_3 https://www.amazon.com/VAlinks-Composite-Transmitter-CONVERSION-Transmission/dp/? ie = UTF8 & qid = 146898...

  • Time Machine does not work with Time Capsule, after update of Yosemite to iMac 2011

    My Time Capsule features all work except when trying to access files with Time Machine. It is new and can be linked to an update in Yosemite. Tried rebooting both without success.

    You can mount the drive of TC in the finder?

    The old backup Time Machine may be usable via a direct opening so the sparsebundle to give it a try.

    If not, do you want to achieve... you want to migrate your files? Have you tried the migration assistant?

  • You need to reset and or change my old icloud account of moms on the phone with another. When I try to reset it with the information that we know that it says "blocked account"

    You need to reset and or change my old iCloud account of moms on the phone with another. When I try to reset it with the information that we know that it says "blocked account"

    ACCOUNT SAFETY CONTACT NUMBERS

Maybe you are looking for