LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

NI-Switch & NI-DMM Handshaking (Which Measurement is Which Connection)

Solved!
Go to solution

I'm trying to implement the code from the Scanning with a DMM - Handshaking (NI-SWITCH).vi example from Example Finder. 

 

My question at this point is how to record the data such that the resistance measurement taken before the switch moves onto the next connection in the scan list is recorded as a measurement taken on Channel 0, or Channel 1. If I'm scanning through 10 channels, how do I know or set up my code such that the measurements being taken can be attributed to a specific connection? 

 

In the example it's just taking all measurements and spitting them out to a single chart. 

 

How could I implement it so that each Ch0-10 has it's own signal in the chart as it scans through?

 

2017-02-24 13_27_45-Switch - Scanning with a DMM - Handshaking (NI-SWITCH).vi Block Diagram on Multi.png

0 Kudos
Message 1 of 6
(4,240 Views)

Maybe, it's possible to use some of properties of this scan mode for switch - when it'll go to new position, send trigger signal, and DMM will measure. Honestly, I didn't use NI Switch in such a mode, so I'm not sure in such a method.

But what I can suggest - is to create simple state machine, where you will have states like "Switch MUX", "Measure DMM". You will not use Switch scan mode, but use "single" switching between MUX channels. You can specify in this case array of channels to switch between, and then transition logic: Select channel to switch -> Switch MUX -> Measure DMM -> Process Result -> Go back to channel selection, etc.

 

Will such approach is OK for you?

 

Thanks,

 

logos_middle.jpg

0 Kudos
Message 2 of 6
(4,195 Views)

I would like to figure out how to use the handshaking mode if possible. I know it's a possibility, because they wouldn't make it possible to scan through them and handshake with a DMM if there wasn't a good way of separating the measurements to defined channels. It may just be # or samples or something but hopefully someone out there can help. 

 

Thanks,

 

Kellen

0 Kudos
Message 3 of 6
(4,171 Views)

Hi Kellen,

 

What switch module are you using, and what topology? You mentioned you're using 10 channels, but the card and topology will help determine what properties and settings need to be made.

 

Ideally, you should be able to just make one DMM measurement per switch, and then fetch the individual data points from the 10 channels and display them as separate points on your graph, and then update with the next data point after each scan is completed.

Jorr-El
Systems Engineer
Testeract: Automated Test Specialists
Message 4 of 6
(4,155 Views)
Solution
Accepted by topic author rkmadse

I'm using a PXI-2530B SWITCH with a PXI-4071 DMM. I am just going to a 2W 1x65 MUX configuration. Hoping to take rapid resistance measurements. 

 

What you are saying is that I just need to take care of this with providing a # of samples and then parse it out on my end. 

 

  1. So I define # of Samples (Say 4)
  2. Loop through only fetching 4 samples per iteration.
  3. Once I fetch those four samples I know that those belong to CH1
  4. Then I fetch another four samples I know that those belong to CH2
  5. Etc.

Is that correct?

I was thinking that might have to be the case and isn't a big deal. Just always wanting to make sure I'm not making something harder than it needs to be.

 

-- Kellen

Message 5 of 6
(4,145 Views)

Hi Kellen,

 

You are correct. The fetch function unfortunately doesn't have the same flexibility as the DAQmx Read function, which you can configure to store data in arrays, clusters, or waveform data types depending on the polymorphic instance you select for it.

Jorr-El
Systems Engineer
Testeract: Automated Test Specialists
Message 6 of 6
(4,134 Views)