Why a task of analog input shows shape of different signal than DAQmx Test Panel?

I have a DAQ SMU-6363multifunction material. I need to view CHA and CHB with an encoder. I had connected CHA ai4 + and CHB ai5 + thanks to a SCC-68 in differential mode box. I provide + 5V from the power supply of the PXI-4110 of the encoder. I have connected ai4 - and ai5 - to the MASS of the power of the encoder on SCC-68 screw terminals.

PROBLEM: When I create a TASK acquires of ai4 and ai5 at the same time, the shape of the signal is distorted. See picture attached.

If I look at signals with an outer scope touch screw terminals, the signals have the form correct and without distortion.

Also, if I look at one of the signals with Test DAQmx Panel I n MAX, I know the form correct and without distortion.

I have also included a snippet of my code.

Is something wrong with my SMU-6363?

Only one channel at a time on the 6363 acquisition would give you the sampling frequency of 2 MHz.  However, the rate of the overall sample is only specced to 1 MHz, due to the time constraints of the used multiplexer compaction.

What you see, it's probably due to ghosting, and it should happen in the test panels as well if you measure two channels at once.  This happens if you don't leave enough time for the channels to settle after multiplexing.  Here is a table of specifications of 6363 which indicates the time of settling for various source impedances:

In your first picture as an attachment, the error is about 500 mV on a stage of 5V.  It would be 10 per cent, or 100 000 ppm.

The same image, I see that you set a frequency 200 kHz 2 channels sample clock.  Thus, the sum of 400 kHz to 2.5 would allow us to decide between channels.

Looking at the chart above, (2.5 US, 100 ppm k) is off the chart, but if extrapolate you the curves we could wait for your source impedance is somewhere around 5-10 kohm.  Is this correct?  If you have a link to the datasheet for your encoder, I'd be happy to take a look.

You do not see the error at 40 kHz 2 channels because it allows up to 12.5 US (1/80 kHz) for the settlement - in fact, DAQmx as default 11 us maximum convert the 6363 period when you buy slow enough to allow the time of settling in this case would be so 11 US.  If you had to, you can reduce the clock rate to convert manually via a property node DAQmx Timing if 11 that we by default does not allow enough time for your application.  The maximum conversion period which by default is DAQmx is the inverse of the maximum speed of the overall sample (in your case, 1 / 1 MHz = 1 US) + 10 to the United States.

Article ghost link above has some suggestions to eliminate ghosting, the most likely solution for you would be to implement a voltage follower if you need to acquire higher rates than allows the regulation of the multiplexer in view of your signal source.  The voltage follower allows to considerably reduce the impedance as seen at the entrance of the DAQ card.

Best regards

Tags: NI Hardware

Similar Questions

  • USB-6212: software problem timed task of analog input

    Hi all

    I have unexpected behavior using a USB-6212.

    The code example shows that when I run in sequence two analog DAQmx to task, material entry first a timed, the second software timed, it happens that the first readings of data are all wrong and have the same value for all channels.

    The labour code is the following:

       GetCtrlVal(panelHandle, PANEL_HW, &Switch); 
        if (Switch) {
    // First Task: read 10 rows of values with hardware timing
            DAQmxCreateTask("", &htAI);
            DAQmxCreateAIVoltageChan (htAI, MX_DEV_AI, "", DAQmx_Val_NRSE, -10.0, 10.0, DAQmx_Val_Volts, "");
            DAQmxCfgSampClkTiming(htAI,"", SAMPLE_RATE, DAQmx_Val_Rising, DAQmx_Val_ContSamps, 1000);
            DAQmxRegisterEveryNSamplesEvent (htAI, DAQmx_Val_Acquired_Into_Buffer, SAMPLE_RATE, 0, RefreshCB, NULL);
    // Second Task:read 10 rows of values with software timing
        DAQmxCreateTask("", &htAI);
            DAQmxCreateAIVoltageChan(htAI, MX_DEV_AI, "", DAQmx_Val_NRSE, -10.0, 10.0, DAQmx_Val_Volts, "");
        for (i=1; i<=10; i++) {
            DAQmxReadAnalogF64(htAI, 1.0, 10.0, DAQmx_Val_GroupByChannel, AcqVoltRow, HW_AI_CHANNELS, &read, 0);
            SetTableCellRangeVals (panelHandle,PANEL_SOFT, MakeRect(i, 1, 1, HW_AI_CHANNELS), AcqVoltRow, VAL_ROW_MAJOR);

    A picture is worth a thousand words: analog inputs have been connected to a network of resistance have known values.

    The upper table contains timed material acquisitions, the lower the software timed readings... as you can see it the first line is the set of values of 0.13, totally wrong

    If the task of timed acquisition of software runs without the earlier (in my demo, that this can be achieved by the switch at the top right), the readings are correct!

    Y at - it something I am doing wrong?

    I also tried to run the program on USB-6009, but it seems to work properly.

    [LabWindows/CVI 2010 SP1 - driver OR-DAQmx 9.4 - Windows 7 x 64]

    This problem was corrected by NOR-DAQmx 9.5

    324044 NOR USB-621 x task HAVE request returns incorrect data after erasing a task HAVE stamped

  • Problem with a precision of analog input on PCI-6111


    I'm reading an analogue signal which varies from 0-11 V using a card of acquisition data PCI-6111.  The signal comes from a Tube set (PMT) which is part of a microscope configuration, so it is very important that the resolution of the analog input signal be as wide as possible generate quality images.  According to the data sheet for the PCI-6111, the analog input resolution is 12 bits, which should correspond to a sensitivity of ~2.686 mV for my voltage range.

    To test this, I set up a task to analog input with a 0-11 V voltage range to read samples of an analog output, which I wrote a simple waveform.  Since the 16-bit analog output resolution that I assumed that it would not limit the accuracy of this measurement.  I have attached the VI I used for this measurement below.  The analog input data are saved not truncated in a text file.

    Analyzing these data, I found that the real input sensitivity is ~9.766 mV, corresponding to levels of voltage exactly 1126,4 and ~ 10 bits.

    Is there a reason why the resolution of analog input is much lower that it is indicated on the card?  What are some of the ways I could improve the sensitivity of this measure?



    Sorry, when you mentioned the specs, I thought you already had them. If this did not come with your Board of Directors?

  • 9174 triggered output pulses and analog input synchronization


    I have a cDAQ 9174 with a 9215 analog and a 9401 module. I wonder if this configuration is suitable for my use: a trigger digital extern is sent to the system to trigger a task of analog input, trigger a generation of pulses, with another counter, count of trigger events. Using two counters on 9401, it seems I have no left Terminal at the entrance of my trigger signal. The trigger DAQmx vi does not show counters entries in the list of signals; and if I select a PFI line, an error that says that the line is already in use..., I missed a few obvious solution? I have change my 9401 to a 9402 did?

    Thanks for any help,


    Hi Vincent,.

    So, looks like you need a single line to use as input to trigger events and another line to use for a generation of pulse output.  This should indeed be possible, since the 9401 has 8 lines that are configurable nibble (i.e. lines 0:3 could be configured as inputs, while the 4:7 lines could be taken out, or vice versa).

    However, a big caveat with the 9401 is that the lines must be reserved before each task is started.  This is a limitation of the direction of the line is implemented in hardware and is common as customers when something they using the 9401.  Explicitly reserving your tasks before starting must correct the behavior if that is indeed what you see.

    Best regards

  • Integrate the outputs analog with analog inputs

    I have a program that displays 2 analog output waves and a separate program that captures the analog data through several materials of NEITHER. I need to integrate the program outputs analog in my analog input program.

    The program of analog output is fixed as "AO_Triggers_LowLevel.vi" and the analog input is fixed as "ExperimentDAQ.vi". When I try and integrate these programs I get 'error-200560 occurred at DAQmx waiting until the Done.vi' to my function to wait until it makes my task of analog input (background of the program). I think it is my mistake in the order that I'm wiring to the top of my son of error but I'm not sure. I watched several tutorials (Timing and synchronization features of DAQmx) but I'm totally stuck.

    Any suggestions are greatly appreciated. Thank you!

    Alberto M.

    I think I've fixed this problem. I extended my flat sequence structure to include the lines of task and error of my task outputs analog and things seem to work.  I'm still not sure about what caused my error and why it has solved the problem...

  • Continually acquire analog input, internal clock, break, Multiple device

    I have a PXI chassis with 6 cards SMU-6363.  I want to acquire data on the channels of each SMU-6363 map continuous AI, using the internal clock for timing.  I need to use a trigger to pause reading of a DI on one of the cards SMU-6363 for a break and to reactivate the acquisition.  I came across this example: https://decibel.ni.com/content/docs/DOC-12256/ , but keep getting error-201019 DAQmx start task "trigger break is not supported in a task to more devices.  To configure the start of break in a multi-device configuration, you must use no more than one device per task and route manually clock in demand signals. »

    The problem is that the configuration of I is made during execution by the operator.  Sometimes they want to acquire data on one HERE through all 6 cards SMU-6363, sometimes they want to acquire data on each channel of AI through all 6 cards SMU-6363.  What makes the task definition until manually route clock signals between devices for each rather difficult task.

    Is there a simpler way to solve this problem?

    Set a task to output counter - something like this:

    Next, configure your task of analog input to use the sample clock output of the meter:

    Best regards

  • Read the counter timeout in synchronized to count-analog input

    Ciao, Giovanni.

    The two tasks are run in parallel so there is no guarantee which task starts first.  I suspect that when you are away from the counter samples, it is because the task of analog input before starting the task of counter.  In this case, the task of counter would be ready to accept examples of clock and may be missing some edges of the clock at the time wherever he is started.

    One way to solve the problem would be to use the wires of the error in order to ensure the time started the task of counter in front of the task of analog input.  You can also use a sequence structure to do that.

    The counter is sampled on each edge of the sample clock HAVE no matter what you set the 'rate' of entry to the. When you use an "external" clock (external to the task that is), the driver uses just the entry rate to set some default parameters (size of buffer for example).

    If you have any questions, feel free to ask!

    Best regards

  • iMac with Thunderbolt - how to get the old analog inputs

    I hang up my old Mac Pro in 2005.  I used it to record video cameras and mainly music best of my plate rotating and stereo system - vinyl and CD disks via s-video and RCA cables and Firewire for Mac Pro.

    The iMac 27 "new is primary Thunderbolt and I can't find a Thunderbolt conversion box so I can enter my analog input RCA and S-video signals.  No indication on the Thunderbolt converters 'both ways' I can't exit analog in the iMAC, then the iMac as well?

    They certainly run Final Cut Pro X on the iMAC, then how people get their old media and music in the machine?

    I'm about to talk to the local Apple store, but the chances of finding someone who knows what they are talking about with the iMac, Thunderbolt and analog input is going to be a stretch.

    Al Donn

    You can probably use a converter DV firewire as a Canopus ADVC 110 http://www.bhphotovideo.com/bnh/controller/home?O= & sku = 349146 & gclid = CLSF0_qUnswC FQ8vaQod9VkFFw & is = REG & ap = y & m = Y & c3api = 187... and then an adapter firewire-crush.

  • Toggle the analog inputs and tasks of output on the same card in LabView


    I'm relatively new to LabView and am trying to find the best way to switch between reading and writing tasks on my PCI-6024E. It seems this would be a common thing to do, but I found no good documentation or any relatable example program. Basically, I would like to be able to monitor certain analog inputs and then write that some outputs if an entry is in accordance with certain specific conditions (say > 4 Volts voltage). It is my understanding that you can only signal (input and output) types associated within a single task in DAQmx. I also understand that you cannot have multiple tasks running at the same time on the same material/map, otherwise you get a: 50103 error 'The specified resource is reserved. Calendar is not really all that matters to me, but quite synchronous and effective would be nice.

    I have attached a sample program that shows more or less what I'm trying to do. I want to follow several analog input lines (AI0 AI1, AI2 and AI3 and) effectively at the same time. If certain conditions are met, AI3 > 4 Volts, then write 5 Volts for analog AO0 and AO1 outings. I also want to maintain output at 5 Volts up to AI3 falls below 4 Volts. Is there a better way to pass the task to read and write than what I've done here? In a sense, all I really do is toggle of a state machine if the required conditions are met and if start/stop tasks of reading/writing necessary.

    One last question, is there a way to display the four channels in the waveform graph using the 1 d NChan 1Samp mode so I can have a time chart and indicators?

    P.S. I'm under LabView 2011 on Windows 7. Your ideas and suggestions are appreciated.

    Thank you


    I also understand that you cannot have multiple tasks running at the same time on the same material/map, otherwise you get a: 50103 error 'The specified resource is reserved.

    This is incorrect.  You can't have two tasks of the same type running on a single card.  You can have an analog input and analog output task running simultaneously on the same hardware.

    You are right that each task can have only one type of task (entry or exit).  Discover DAQmx examples in the example Finder to get examples of synchronized input and output.

    PRO TIP: In the Finder of the example, go to the drop-down list in the lower left corner.  Pull down and select Add Hardware.  In the pop-up window, add your PCI-6024E to the right pane.  Click OK in this window.  Then in the main window of Finder example select your hardware from the drop-down list and check the filter results by the hardware.  The example Finder then only you will show examples that are out-of-the-box compatible with your hardware.  I am sure you can find something to fit your needs here.

  • Several analog inputs seem to change any of the other (details DAQ: 2120 BNC and 6062E)

    I use the BNC 2120 DAQ board connected to the data acquisition card 6062E to record two analog inputs. An entry is connected to ai0 and the other at ai1. Example vi: "Acq & graph int clk tension" has been used to measure the two entries with the value read NChan NSamp vi (channels being dev2 / ai0:1). The output is the top graph in the image. However, this seemed a bit strange to me that one of them should be modulating with a different frequency. When I record both entered individually (two in low pictures) they are indeed different since the entries shown in the top graph.

    Why this would be the case, and how can I overcome this to measure the real signals?

    Thank you!

    The E series card takes the samples as soon as possible. Thus, for example,.
    If you have 16 analog input channels but you only read of
    channel 0 and 1, the map will show the channels 0 and 1 right
    After and then wait 14 'ticks '. What's that little run-in
    the origin of the afterglow.
    I think you can get the card to wait a certain
    number of ticks with a property node. I have attached a screenshot. You
    can find the property node in the palette of functions >
    Measurement of e/s > NOR-DAQmx > node Timing. Expand it
    Property node so there's two entrances. The properties are in
    Left click on the node and going more > converted >
    Its properties delay units and sampling clock delay and delay that
    you want.

    If the phase is important so the above is not the best
    the option because it causes a delay in phase. So, if you need true simultaneous
    sampling, then you will need different hardware. The S series is everything
    simultaneous sampling.

    Or, rather than the Delay property and delay units, try the Rate property
    find more > converted > rate.

    If this is not
    work either, you can move the second signal source to, say, AI8 and
    Connect everyone to the ground. Readings for these, but just do not take into account
    the data. In this way the ADC will sag to the ground at the time where that can happen
    the second string in the way so that you should not see this frequency
    ghosting on the other channel.

  • Establishment of a reenclenchees analog input on M-series DAQ in LabWindows

    I am creating a task entry analog hardware triggering which will acquire N samples whenever I give a hardware trigger with an acquisition of data USB-6229. As far as I can tell from reading through previous posts, the Council does not natively takes in charge of responsibilities reset like that, I am supposed to create a counter that will be used for the internal clock for a second task (probably a task of acquiring continuous). My problem is that it is not at all clear how to do this. I tried to go to MAX and create output of meter, but all the options for the shutter button 'start' are grayed out. In addition, I don't know how to put the impulses in French - 1 pulse, continuous pulses, etc. Which of these counters will be hardware-redeclenchables? Documentation I've found so far for most of the offers with LabView and I can't really understand how tasks are configured based on the pictures that they show.

    Hi Paul,.

    Try the following DeveloperZone:

    DAQmx - I redeclenchables using redeclenchables counter

    I don't know why the files have names-ambiguous, in my opinion, the one you want is called 3018.zip.

    Best regards

  • R series analog input range

    Hi all

    I'm starting my first app using a card of RIO for the analog input and power (two PCI-7833).

    My previous experience with DAQ systems was on PC so I'm especially familiar with DAQmx. It is my understanding that DAQmx is not really being used on these boards, there is no DAQmx tasks to play with.

    So, my question is this: How can I dynamically set the range of the signal of the analog inputs so that I get the best possible resolution?

    What I want to say in DAQmx if I know that the input signal is only 1 V pk to pk I can put this beforehand in the task.

    Thank you!

    OK, a little further digging shows the input range is set to +/-10V, is this correct?

  • Test the analog inputs in a PCI-6013

    Hello. I m using a PCI-6013 OR DAQmx 9.1.1 with Labview 8.2 (sued) WinXP. The jury has undergone an immersion in water during a flood but was cleaned, recognized by WinXP and NIDAQmx.

    I have run the Measurement & Automation explore and use the test under option OR-6013 'Dev1' panels 'devices and Interfaces. Here, I can see that the digital and clock output work perfectly (I can change the State of the digital channels and duty cycle and frequency of the clock). The problem arises when you try to measure an analog voltage. I tried on several cases not all analog channels using NRSE and differential modes (switch accordingly connections).

    The signal comes from a (4 Hz, squares and sines, 5Vpp) signal generator via a CB-68LPR connector.

    I only see something comparable to the entrance of singal when you use differential inputs (signal connected by J57 and J23) AI7, but the signal I see comes with 100 mVpp instead of 5 Vpp (I can see changes in the shape, every time that I have spend of a sine, square, ramp...). I also tried connecting J23 AISENSE (J62) and AIGND (J67), to avoid the problems of floating source. The same thing happens when enter and set up the acquisition by the vicinity of data in the Explorer of Measurement & Automation. I m using the reach of the signal in the different ranges, tried with 04:55, -1 to + 1, 09:50... When you configure tasks NIDAQmx I choose to read different samples (100, 1000, 10000) rate (100 Hz, 1 kHz,...) and combinations. Anyway, the input signal is always 4 Hz. I checked the signal with an osciloscope and I see it perfectly.

    Is it possible to have the broken while the digital and general-purpose analog input clock outputs are OK? Y at - it a tip for the connections I should know about? Thanks in advance for any guidance!

    Thank you both, KateB and MarisolM for your answers.

    I made several the tests con señales DC y con señales senoidales, instalando placa en back different computers, y no obtengo resultados positivos, is spite of what el self-test selling well. Seems that the Plaça realmente esta fallando.

    I did several tests with DC signals and senoidal, installing the card in two different computers, without positive results, even if the self-test is OK. It seems that the Council really works hard.

    Are concentration cotización por su reparación. Gracias!

  • Analog inputs measures with NI6229 using the DAQmx driver


    I have four different analog inputs connected to ai0 to HW 6220 ai3. I read these values with a single task, all 4 channels assigned to this task. When ai0 reads 7V, I see 0.8 V ai1 too, but I expect to be measured 0V. If I just assign ai1 to the task and measure all 4 channels, then I measured 0V as expected (although ai1 contains 7V, I just don't measure it).

    Another comment 'funny', is that if I change the order in which I add channels to the task, measurement errors are different.

    However, when measured with a multimeter 4-channel show tensions as expected.

    Given that my calling task is can not block, I call the function

    DAQmxReadAnalogF64 with timeout = 0 and numSampsPerChan = 1.

    Any help is appreciated.

    Thank you

    Kind regards



    Thanks for the code snippet.

    When you call DAQmxReadAnalogF64 the first time and you set a value of timeout of 0, there is a chance that the acquisition is not yet initialized. This is the expected behavior and should not be a problem. If the timeout error died at the first call, you might ignore it or set a different expiration time for the first call only. In all cases, you should drop the first value and start with the second value.


  • How to synchronize the analog input and the output of two different USB data acquisition boards

    Hi all

    I have two tips very different USB NI USB 6008 case, which I use to acquire the data (analog input) and a USB of NI 9263 is a output analog only site I use to route a signal (in this case a square pulse). The reason why I use the outputs analog 6008 is because I need to deliver negative tension and need the full +/-10 v range.

    Looking at similar positions, I'm pretty sure that I can't use an external trigger or a common clock, I also tried to use the timed synchronization of the structures but no cigar.

    I'm including a quick vi I whipped showing how the jitters because of the lack of synchronization signal. The OD of the 9263 connects to AI in the 6008 in this example.

    I talked to a specialist in the phone and tols me that's not possible.

Maybe you are looking for