LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Keithley 2700 RS232 Multiple Channel Help needed

hi, did you solve this problem?

0 Kudos
Message 11 of 31
(2,363 Views)

I have similar issue. I want to use two channels of 2700 to record some DC voltages continiously. I tried the Index Array function to seperate the two channel signals, but I found that, in each iteration, it transfers several data points to the Array, using  Index Array, it can only pick up the first two data points, the others are missing, so I think it is better to use "Decimate 1D Array", if data returned is in the array like this {ch1,ch2,ch1,ch2,...}.

 

The other issue is the setting of the "Multi-point (Buffer subset)", it should be  'Entire Buffer' or 'Direct' or "Automatic". After each iteration, the number of data points out from "Multi-point (Buffer subset)" is different, how to contro that?

 

Thanks a lot!

 

0 Kudos
Message 12 of 31
(2,351 Views)

That makes no sense. With the shift register and the Build Array, you are continuously appending to the array. The first run, you have 2 elements, the second run 4 elements, the third run 6 elements, etc. Your Index Array function belongs on the output of the Keithley Read function and no shift register should be used.

Message 13 of 31
(2,342 Views)

Yes. You are right. I actully did like that, but the same problem, it can just pick up the first two data points of each data series. And the time is not updated, it just records all the time related data (even last run).

0 Kudos
Message 14 of 31
(2,335 Views)

Hi PCASC,

 

If you could place an indicator on the output Keithley 2700 so I can see how the output is formatted and the output you expect to see written to the various files. With knowledge of the output format I should be able to reporduce and analyze where your code may be going wrong. 

Patrick H | National Instruments | Software Engineer
Message 15 of 31
(2,299 Views)

Hello!

 

I have the same problem. I cannot find how the data are stored in the array.

0 Kudos
Message 16 of 31
(2,188 Views)

Hello robert_silva,

 

I'm not familiar with Keithley, however, a simple way to check and see the output from the device would be to place an indicator or probe just after you read from it.  Also, be sure to check out the examples that ship with the Keithley driver.

Jesse S.
Applications Engineer
National Instruments
Message 17 of 31
(2,173 Views)

Another tip is to set up a known measurement.  Ex:  you are planning to read two voltage values continuously.  Get a 9V battery and two resistors (different values; say 1k and 3k) to build a voltage divider.  This way you know the voltage drop across each resistor.  Have the keithley measure these voltage values so that you can easily distinguish which values are which in your array.

 

If you know what you SHOULD be measuring it is far simpler to identify what you ARE measuring.

 

0 Kudos
Message 18 of 31
(2,165 Views)

Dear Jesse S.,

 

Thanks for your answer.

 

The array given by Multi-Point (Buffer Subset) depends of the cycle time.

 

For example, if I configure 4 channels (101:104) and if the cycle waits 1 second (delay time = 1 second), the size of the array will be 6, 7 or 8 (it is not a constant). The sequence is: 

     S1-CH1     S2-CH2       S3-CH3       S4-CH4       S5-CH1      S6-CH2      S7-CH3     S8-CH4

     S9-CH1     S10-CH2     S11-CH3     S12-CH4     S13-CH1     S14-CH2

     S15-CH3   S16-CH4     S17-CH1     S18-CH2     S19-CH3     S20-CH4     S21-CH1

 

Were S1 is the sample 1.

 

But if the cycle waits 2 seconds (delay time = 2 seconds), the size of the array will be 14, 15 or 16 (it is not a constant).

The sequence is: 

S1-CH3   S2-CH4   S3-CH1    S4-CH2    S5-CH3   S6-CH4    S7-CH1   S8-CH2   S9-CH3   S10-CH4   S11-CH1   S12-CH2   S13-CH3   S14-CH4     S15-CH1   S16-CH2

S17-CH3   S18-CH4   S19-CH1    S20-CH2    S21-CH3   S22-CH4    S23-CH1   S24-CH2   S25-CH3   S26-CH4   S27-CH1   S28-CH2

S29-CH3   S30-CH4   S31-CH1    S32-CH2    S33-CH3   S34-CH4    S35-CH1   S36-CH2   S37-CH3   S38-CH4   S39-CH1   S40-CH2    S41-CH3

 

I would like to store the data as such that:

  CH1        CH2         CH3        CH4

S1-CH1   S2-CH2   S3-CH3   S4-CH4

S5-CH1   S6-CH2   S7-CH3   S8-CH4

S9CH1    S10-CH2 S11-CH3  S12-CH4

 

Thanks for your support.

 

Download All
0 Kudos
Message 19 of 31
(2,163 Views)

Is the Multi-Point (Buffer Subset) the only way to receive data from the device?  Also, have you tried just using one channel at a time where you have a data input?  I'm guessing that if the channel receives no data in the time it acquires the buffer subset, it has the array be a reduced size.

Jesse S.
Applications Engineer
National Instruments
Message 20 of 31
(2,151 Views)