LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

how to generate this plot

I am not sure how to go about generating this plot that I have in mind...
The current program only save the x and y data points from scope, but I would like to generate.
 
% of crosstalk vs. # of driven lines
 
So, let's say, there are maximum of 4 (enabled) driven lines, I hope to sequentially enable (from 1 to 4 in this case) pulse generators and save measured data and create the plot
is this something that can be done?
My couple of concerns...
1. there are 4,000 data points for each enabled driven line(s)...how to find the maximum value?
2. How they should be saved/formated for these max values to generate desired plot...
 
thanks,
 
0 Kudos
Message 1 of 16
(4,299 Views)
You could use a bar graph to represent the max xtalk on each channel. You could save the data in an lvm file.
 
 
Example attached in 7.1
 
David

Message Edited by David Crawford on 07-12-2006 04:21 PM

Message 2 of 16
(4,282 Views)

Hello David,

Thanks for your help.

Perhaps, I should be explain a little more to figure out how to apply your suggestion to the 'save data' case in the attached VI.

1. Although there are 8 pulse gens on the front panel. There are only 4 differential pair since two aggressors are used as a single differential pair.

2. The current 'save data' case only saves the data in text file format for any number of enabled aggressors on the front panel.

3. Having said #1 & 2, the real goal is to generate; % of crosstalk vs. # of "enabled pair(s)/channels "

I am not sure how to handle all the data collected for multipled enable pairs and create the plot...(like the attached)...

Perhaps, can this be done using Excel? (for saving data and drawing plot??)

 

0 Kudos
Message 3 of 16
(4,257 Views)
how should I modify the existing VI ('save data' case) to do the following.
 
1. save the waveform data based on 'N' number of differential pairs activated
   (max N= 4 differential pairs, aggressor1-2, 3-4, 5-6 and 7-8)
for example, if a user selects 3 pairs (aggressor 1-6 on the front panel), then VI will produce a text file with 4 columns:
x offset and y data (1 pair, 2 pairs and 3 pairs)...and generate a single plot showing %xtalk vs. # of differential pairs. plz see the attached excel file
 
2. generate a test report in excel format with data and graph shown in the attached file.
 
 
 
0 Kudos
Message 4 of 16
(4,212 Views)
I have attached three files
 
Graph FEXT.vi                                                - This demonstates how you might graph your data. It need the FEXT Data.xls to be in the same directory.
FEXT Data.xls                                                - This is a tab-delimited file that contains the four columns of data from the xls file you posted. Use this FEXT Data.xls
Simulate xtalk vs channel with xls save.vi     - This is the example I gave you earlier but now is saves in spreadsheet format.
 
I am reluctant to help you directly modify your code. I feel it would be best that you did using examples and hints to help you reach the solution.
 
Trying to teach you how to fish....
 
David
Message 5 of 16
(4,186 Views)
unfortunately, I could not open the attached VIs...
I only have v7.1...
 
I think it may be necessary to use a 'For Loop' to conduct test and generate data to save...
 
Since there will be N/2 number of data columns in a text file, do I need to feed N/2 to the 'For loop' to generate crosstalk data & save? (N can only be 2, 4, 6 and 😎
 
thanks!
0 Kudos
Message 6 of 16
(4,149 Views)

Here are the VI's in 7.1

Your for..loop should be the number of channels. So that be 1 to 4. In each iteration of the for .. loop you should setup the appropriate pulse generators and then make the scope measurement which will give you 1D array. You can the find the MAX of the 1D array within each iteration. You can use autoindexing to build the MAX(Scope[]) results and then save that to a file.

David

Message 7 of 16
(4,134 Views)
I am trying to do the following....
 
1. find # of 'enabled' aggressors
2. pass this constant (from 1) to for loop to find 'max' value for each number of enabled aggressors.
3. display graph and save data (as shown in attached format)
 
Q1. How can I obtain the value of 1?
Q2. How to save the data properly with axis info?
 
I am referencing to the 'display & save data' case in the attached VI...(case structure and for loop in the bottom of the case)
 
thanx
Download All
0 Kudos
Message 8 of 16
(4,105 Views)
You can count the number of enables like this
 
 
You could save the data like this
 
 
David

Message Edited by David Crawford on 08-02-2006 05:50 PM

Download All
Message 9 of 16
(4,091 Views)

I was able to follow the first suggestion, but not the second one. I couldn't find the 'write to text file.vi'

I may not have done this correctly since it is not showing the correct graph...

I wonder if the 2nd frame of the flat sequence is doing adaptive xtalk evaluation before it generates the '%xtalk vs. # of channels' (??)

 

0 Kudos
Message 10 of 16
(4,075 Views)