Switch Hardware and Software

cancel
Showing results for 
Search instead for 
Did you mean: 

Connecting channels with PXI-2530B

Solved!
Go to solution

I am in the learning stages with NI DAQ modules and am working with the PXI-2530B Mux using LabWindows/CVI. I am using the Dual 64x1 and wanting to connect a channel off each bank to check continuity. I see in the examples of how things work scanning channels and using the DMM to read. Have a few questions regarding the Connect function.

 

If I were to use the Connect function to connect channel0->channel64, etc for what is required. I will then need to set the scanlist for each seperate bank and this scanlist will send channel0 and channel64 to the DMM, channel1 and channel65 to DMM, etc together?

0 Kudos
Message 1 of 13
(8,771 Views)

Hey Trey,

 

In the 1-wire Dual 64x1 multiplexer topology, each multiplexer is mutually exclusive of the other.  You mention connecting channel 0 to channel 64, which is unclear because in the 1-wire Dual 64x1 multiplexer topology, you cannot internally connect channel 0 to 64; channels 0 through 63 route to com0 and channels 64 through 127 route to com4 in the above topology (you can manually close relays to achieve this on the 2530B, but it's not part of the official topology).

 

If you are in fact trying to connect channel 0 to 64, my guess is you've externally connected com0 to com4, in order to make a sparse matrix?

 

If you're using the DMM to make a series of 2-wire measurements, then I'd recommend using the 2-wire 64x1 multiplexer topology.  With that topology, connecting "channel 0 to com0" will internally connect both the positive and negative 2-wire channels to your DMM's differential leads... that's probably what you're trying to do. 

 

Let us know and we can definitely help out.  Have a great day!

 

 

-John Sullivan
Problem Solver
0 Kudos
Message 2 of 13
(8,769 Views)

Also, if you do want to use the dual 64x1 topology, you can close relays on each of the multiplexers as quickly as possible using a single ampersand between successive terms.  For example: "ch0->com0 & ch72->com4" connects those channels as quickly as possible when the trigger arrives.  Notice I didn't say "at the same time" 

 

If you want to close multiple relays as part of one call with just a single trigger, but want to enforce a particular order, you can use a double ampersand.  For example: "ch0->com0 && ch72->com4" connects ch0, then connects ch72, in that order.  

 

Curious: What kind of measurements are you making?

-John Sullivan
Problem Solver
0 Kudos
Message 3 of 13
(8,768 Views)

Sorry, thought I specified. I am looking to measure continuity which is the reason for the dual 64x1 topology. I have 50+ wire groupings and each wire per dual wire group will go on each bank(com0 and com4) in the topology. I am then using the DMM with each channel of the pair going to +/-(from each bank) to measure. That is the reason I asked about the connect function to measure the correct pairs each time but I am not familiar with the switch module. Thanks 

0 Kudos
Message 4 of 13
(8,758 Views)

I could not find an edit button so I will post again.

 

"you can close relays on each of the multiplexers as quickly as possible using a single ampersand between successive terms.  For example: "ch0->com0 & ch72->com4" connects those channels as quickly as possible when the trigger arrives."

 

What I have is 50+ dual pair wires. These wire pairs will all be checked for continuity in one pass through. There are no wire pairs that are individually selected, once the scan starts, all groupings are checked and stored. I am thinking, the switch will receive an external trigger(from the DMM, to procede from the ';') after one pair is read in. The switch will then connect next two pairings then trigger the DMM to read immediately. DMM will then send another trigger. Since channels cannot be connected "at the same time" there will be a min delay, at the switch, before triggering the DMM. Will be using Break Before Make also. I am away from my work comptuer so I am thinking this through without the code near me so forgive me if I am confusing.

 

 

0 Kudos
Message 5 of 13
(8,745 Views)

Hi TreyB,

 

The example below:

 

https://decibel.ni.com/content/docs/DOC-12517

 

Allows you to setup the task and using John S's notation for the scan list, should allow you to measure continuity between pairs of wires with your DMM.

 

Also, for more information on the scan list:

 

http://zone.ni.com/reference/en-XX/help/375472F-01/switch/scan_list/

 

Sunaina K.
Product Marketing Manager for CompactRIO & TSN

Making the intangible, tangible
0 Kudos
Message 6 of 13
(8,718 Views)

I am using LabWindows as I believe the example above is LabView. I think I have an idea of how this will be done now as John S explained that they cannot be closed at "the same time" referring to two channels, each of them being on seperate banks. I will use the notation of:

 

 "ch0->com0 & ch64->com4";  "ch1->com0 & ch65->65"; etc

 

along with Break Before Make to try to accomplish what it is I am doing.

 

A side note question. Could you give me a little better description of niDMM_FetchMultiPoint? Will this array will store all resistance values for each channel pair or will it store the number of measurements for that specific channel pair? I am wondering if I can use this command to retrieve all measurements for all channel pairs or will I have to iniaite/fetch with seperate commands in a loop to grab all resistance values for each?

 

Thanks

0 Kudos
Message 7 of 13
(8,716 Views)

Hey Trey,

 

To clarify, yes, the 2530B can connect any combination of relays (up to 64 simultaneously) by using the independent topology.  Note that you must manually connect the internal building blocks by closing interconnect relays to create your mux.  If you're always going to be scanning, you can also continue using the 1-wire dual 64x1 and just place the switch in "NO ACTION" mode.  Keep in mind that in no action mode, all connections persist until explicitly disconnected (e.g. ~ch0->com;)... I'd recommend installing series current-limiting resistors in your system until you're satisfied you understand the syntax.

 

The DMM is going to store all measurements from all channels sequentially in a 1D array, so you'll need to parse the array for your channels.  When you fetch, the DMM will return a 1D array of the measured values.  We can store up to 100,000 measurements on the DMM, so if you're concerned about loop rate, you can only check it every 100,000/N cycles.  If you're measuring 16 points, setting the number to fetch to 16 will return one data point for each channel... or you could fetch all the data and parse it after up to 6250 cycles. There's a Fetch and Graph Waveform Example that integrates NI-Switch and NI-DMM and the parsing:
C:\Users\Public\Documents\National Instruments\NI-SWITCH\examples\CVI\niSwitchDMMSwitchHandshaking

 

That's a good starting point if you haven't seen it already.  Let us know if you have any questions.

-John Sullivan
Problem Solver
0 Kudos
Message 8 of 13
(8,709 Views)

A problem, not really related to the original post but very similar. I am now having problems connecting random channels within the independent topology. For example, if I wanted to connect channel 16 with channel 48 what would be the best way to acheive this?

 

I am using test stand, along with cvi, and have tried the connect function(so the switch would find it's own path) using independent topology with no luck. For testing purposes, I initialize the switch and run the CanConnect function to check random channels and it always returns '3' which I believe is PATH_UNSUPPORTED and nothing connects. Only when I use a channel on the 'correct' com will it return PATH_AVAILABLE. Seems I might be missing something with this in which I thought I had it mostly understood.

0 Kudos
Message 9 of 13
(8,566 Views)

Trey,

 

The default for independent mode is to allow us to connect any channel to any COM channels, but not any channel to any other channel. What you are seeing is expected for the default settings on an independent configuration. The reason that this is expected is because all channels (ch0:127) and all COM channels (com0:7) are set as endpoint connections. When all channels and COM channels are set as endpoint connections, the system thinks that we cannot use these channels as configuration channels. 

 

What we can do would be to set all internal and external "COM" channels as configuration channels. This allows us to use these COM channels as steps along the route. The VI below demonstrates this.

 

Snapshot Image.PNG

Frank,
National Instruments
Software Group Manager
0 Kudos
Message 10 of 13
(8,545 Views)