08-18-2005 07:24 AM
08-18-2005 09:22 AM
08-18-2005 10:02 AM
Even though you posted in the wrong forum, I'll answer your question since I'm the one that said I like the way that LabVIEW will override whatever has been set in MAX.
First, you can configure things in MAX and test how they work and then simply import those settings into LabVIEW. Second, code should always be protected. I build executables or password protect my VIs so that nothing can be modified. If you don't, you're simply asking for trouble. Lastly, Your comment about reloading the MAX configuration doesn't wash if some bozo with enough privileges to modify MAX does so accidentaly and doesn't know how to restore it or doesn't know where the backup is. So, in the meantime, until the responsible engineer is contacted, the entire test system is down. If the system is down during normal working hours and the engineer is local, maybe the cost of the downtime can be limited to a few thousand dollars of lost productivity. If it's during off hours (nights or weekend) and the engineer is still local, then the cost goes up. If the test system is located a couple of continents and several time zones away, the cost goes way, way up. Having to deal with this sort of issue on a daily basis, I'm glad NI made my life a little bit easier.
08-18-2005 11:17 AM
Thanks for the quick response. Sorry about posting in the wrong forum, I thought I had put this in the DAQ forum but must have made a mistake.
Your point about the settings in MAX is a good one with a pertinent example, thanks for that.
But I would like to reiterate the point that a task based on a single NRSE ai global channel should not default to differential within MAX, at lest without an explicit warning that it was doing so. It took me an unnecessary amount of time to track this down, and I can see no benefit of this behaviour.
Do you have any comments on that particular point?
08-18-2005 11:40 AM
08-18-2005 04:59 PM
08-20-2005 06:50 PM - edited 08-20-2005 06:50 PM
HI probably-
@probably wrote:
I have ai0-ai7 set up as NRSE, as they share a common GND which I have connected to aisense. I have four other signals to collect, which also share a common ground (but possibly different from GND). My thought was that to prevent any gnd offsets, I would measure these as differential mode. So I set them up on ai8-ai11 (I assumed that ai12-ai15 would be the other terminal on each of these signals). However, you can't do this: a mixture of differential and NRSE is not allowed on the same connector. Setting the four up on ai16-ai19 allowed me to measure them in differential mode. I presume this is because of the way the multiplexer works on the input amplifier?btw, I've found this forum tool pretty good, apart from accidentally pressing tab to get a space, then return by accident and submitting a partial post 🙂
A mixture of NRSE and differential channels is certainly allowed on the same connector. The problem arises in the placement of channels. In differential mode the channels are connected on two seperate channel input pins; the positive pin goes to pin ai[X] and the negative pin goes to pin ai[X+8] where X is the channel number specified for differential input. So, on a card (or a single connector on a two connector card) you can only create differential channels on the first 8 analog input channels. Differential input channels on ai8-ai15 are not allowed because there isn't an [X+8] pin to access.
If you arrange your four differential channels somewhere in the first 8 inputs (i.e. ai0-ai7) and the NRSE channels anywhere else you will be able to acquire all signals in the same task on the same connector at the same time.
EDIT: I forgot to mention one caveat that might be obvious but is still worth mentioning- using a differential channel on a pair of inputs reserves the second pin. So, if you create a differential channel on ai6 for instance, both ai6 and ai14 will be reserved. This means that you will not be able to use ai14 for NRSE input.
Hopefully this helps-
Message Edited by Tom W. on 08-20-2005 06:52 PM
08-23-2005 02:34 AM
Thanks for that note Tom, I'll reassign the physical channels appropriately to allow me to do this. That's actually very helpful in my application!
It seems like only one possible algorithm for deducing the second input for the differential input. If I've got ai0-ai7 as NRSE, you'd think that the software would be clever enough to note that if I asked for ai8 with differential, it'd pair this with the next available free input, e,g. ai9. Or at least give me a warning on how to do this.
Or is it something more subtle than that, such as the ai0 and ai9 connectors being part of a twisted pair in the connection cable (SHC68-68EPM)?
08-23-2005 02:39 AM
btw Tom, seeing as you are officially part of NI, do you have any comments to make on this issue of tasks based on NRSE defaulting to differential I was talking about earlier in the thread?
08-23-2005 01:34 PM
Hi probably-
The reason the pairs are split across eight inputs is a hardware design of the board itself- there is no way to change this in software and was just a standard NI decided upon a long time ago and has worked hard to stick with. The driver is smart, but not smart enough to overcome the hardware layout and setup.
I just attempted to replicate your global channel/task situation in MAX and did not see the same effect. I created two global channels on ai0 and ai1 with NRSE terminal configuration and made sure to save both after making setting changes. I then created a voltage input task and added both global channels. They remained as NRSE and the connection diagram correctly showed connections into ai0 and ai1 and then pin 62 (AISENSE) for both channels. I am using NI-DAQmx 7.5, so perhaps you should take this opportunity to upgrade if you haven't already.
Hopefully this helps-