11-15-2007 02:31 PM
11-16-2007 05:49 PM - edited 11-16-2007 05:50 PM
If your concern is the “stray capacitance” you might consider changing to shielded cabling. Also refer to this DevZone article for more information: Field Wiring and Noise Considerations for Analog Signals. It seems that you are experiencing what we call, ghosting. One of the best resources to look will be: Troubleshooting Unexpected Voltages, Floating, or Crosstalk on Analog Input Channels. As you can see one of the solutions is to scan a ground channel between your channel of interest but as far as I know you can not read the same channel over and over again, and this is exactly what you are trying to do. There is a lot of good information in the Troubleshooting page C-1
I hope it helps any question please post back.
11-19-2007 08:00 AM
11-20-2007 01:38 PM
Unfortunately since there is one sample clock for all the analog inputs the DAQmx driver will not allow you to do multiple task at the same time, because there is only one timing engine for the 80 analog inputs the only way you can accomplish this is by starting and stopping the task every time you read a channel and the grounded channel. I’m sorry to inform that we don’t have an example that will handle this algorithm; mainly because, the solution for this problem should be more hardware oriented than software.
Some consideration to take: Have you checked if your source is low impedance? Like one of the article said: If multiplexed systems are driven by sources with high source impedance, you may see voltages from one scanned channel reflected on another scanned channel.
Reading the ground channel in between can be substituted by reducing the “sampling rate”, take a look at this knowledgebase for more information: How do I Increase Interchannel Delay Using NI-DAQmx or Traditional NI-DAQ (Legacy)?.
I hope it helps
11-29-2007 10:32 PM
05-13-2011 07:12 PM
Thanks, BradK, for the summary of how to do this. I interpreted your instructions to help me make a loop in LabVIEW 8.5 and finally got the errors out. In my case, I'm updating code from before DAQmx, where there was no problem putting a channel into a list multiple times. What finally cleared the error messages was to put my list of physical channels into a loop with indexing enabled. Inside the loop is the DAQmx function "DAQmx Create Channel (AI Voltage Basic).vi". I was also able to put in a array of voltage ranges. I used the loop counter to generate unique strings for the "name to assign" input (without this, the errors persist). To verify that my channels got into the task, I put in a Task Node (from NI-DAQmx>>Advanced>>I/O Constants), chose the property "Channels", and wired this to an indicator. The task output from this loop wires to the DAQmx Timing (Sample Clock).vi VI.
04-01-2016 07:17 PM
I found that the key is to give each channel a name (usually I just ignore that step), and that furthermore that name is unique. See attached image.
Does this work for you?