Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

Setting Voltage Range on PXI-6025E

I am using a PXI-6025E card channels AI0 and AI8 differentially.
Since the card is 12-bit I only get around a 4.88mV resolution from
-10 to +10V. How do I change it, so that I am getting unipolar (0 to
10 volts) and my resolution is 2.44mV. MAX doesn't really seem to
give me the option to change it (for testing purposes) and I really
can't seem to do it programatically. I've tried a lot of NI examples,
but none seem to do it, unless I am missing something. Some VI's say
enter a low and high limit, but that doesn't seem to actally change my
4.88mV resolution.

I am trying to fix a problem where my voltage seems to jump around in
increments of ~4.88mV, but my volt meter stays very constant. I did
try averaging over 1000samples as wel
l. I need as much resolution and
consistency as I can get. Any suggestions would be greatly
appreciated.
0 Kudos
Message 1 of 3
(2,342 Views)
Hello,

Let me see if I can clear this up for you.

There are two ways to approach channel configuration. One way is to create a Virtual Channel in MAX, and then let it handle the gains and scaling for you. If you go this route, when you enter the channel name in an example, the example will then ignore your input limits (if set to zero) and device number. It ignores them because MAX already has this information according to how you defined your Virtual Channel. Here is a test you can do to convince yourself. Create one Virtual Channel named "10-10 Analog Input". When you create the channel, on the units and range page, set the Range min to -10 and the Range max to 10. Then create another Virtual Channel named "0-10 Analog Input". For this channel set the Range min to 0 and the Range max to 10. You now have two channels where one will have a code width of 4.88 mV and the other a code width of 2.44 mV.

Close MAX and go into LabVIEW. I'm assuming you have LabVIEW 6.1. Launch the Example Finder: Help>>Find Examples... and search for "analog". One of the examples you should find is Acquire N Scans.vi. Open this example. Before you run it go to the diagram and open AI Config.vi. Then go to its diagram and open AI Hardware Config.vi. With this subVI open run Acquire N Scans.vi with your two different Virtual Channels. Notice that when you use 10-10 Analog Input, the gain and scale multiplier on AI Hardware Config.vi are set to 0.50 and 4.88E-3 respectively. Now try the 0-10 Analog Input channel. The gain and scale multiplier should be 1.00 and 2.44E-3 respectively. Now try changing the input limits on Acquire N Scans.vi. This should affect the gain and scale multiplier.

If you don't want to use Virtual Channels, you can directly enter a channel number. In this case you will need to set the device number correctly. You will also need to set the input limits. If you leave them at zero, a default setting (device dependent) will be applied. Try grounding your input channel when you try these tests. You should be able to see the code width changes if you set your y-axis scaling fine enough.

Best Regards,

Doug
0 Kudos
Message 2 of 3
(2,342 Views)
Unfortunately, the 6023E, 6024E, and 6025E Low-Cost E-Series do not have a Unipolar setting (0V - 10V). They only have the Bipolar setting (-10V - 10V) and 0.5, 1, 10, and 100 gains. The "high" and "low" limit settings in LabVIEW are only for specifying the gain. LabVIEW just uses these limits to select the closest gain for you.

You are getting what we call quantization error. You can improve this by increasing your gain, but you will shrink your range in the process. Averaging is also another great way to overcome this. Your only other option would be to go with any one of the E-Series cards that can be configured for Unipolar or Bipolar mode. Your NI-Sales representative will be able to help you select the best device for your application.

Best Regards
,

Russell
Applications Engineer
National Instruments
www.ni.com/support
0 Kudos
Message 3 of 3
(2,342 Views)