string constants, waveform charts and microsoft
Hi, I don't want to even think about what happened during the crashes, but I
can give you a way to plot only the points you want in real time.
You will have to use an XY graph, and keep track of your own x-values
(generate them using the iteration terminal of a loop, or number of seconds,
or whatever works for your application.)
Place the XY graph terminal INSIDE the while loop, and use two separate
shift registers - one shift register will maintain an array of x-values,
while the other will maintain an array of y-values. (use a third shift
register to maintain a second set of y-values as you mentioned).
I assume you have some criteria for points that you wish to plot, for
example, "all points with y greater than 0.5". Use your specific criteria
to generate a boolean that can be wired to a case structure. Wire the shift
registers so that they pass through the case structure. In the true case,
use a build-array for the x-values and another build-array for the
y-values. Each of these build-arrays should have two input terminals. Wire
the left side of each shift register to the upper input of a build-array,
and change that upper input terminal to array input. Wire the new data
point coefficients (x to one build-array, y to the other) to the lower
input of each build-array, and confirm that the lower inputs are element
inputs. Thus in the true case, you append a coefficient to the 1-D array
that is riding around on the shift register. In the false case, just wire
your shift registers straight through and the 1-D arrays remain unchanged.
Finally, use a bundle to assemble the x-coefficient and y-coefficient arrays
into the XY graph terminal.
This description is written for a single curve on an XY-plot; you'll have to
modify it (using that third shift register that I mentioned) for two
curves. Hope this helps. Good luck!
Quote:
> Hello all-
> I am running Labview 5.1 on a Celeron 466 with NT 4.0 and a
> PCI-GPIB-488.2 and PCI-MIO16XE-50 DAQ card.
> Yesterday my NT machine crashed hard, so hard that the vi that was
> running was altered when I finally got the machine running again (it
> took me three tries and a sys admin guy to get it booted).
> When I reloaded the vi and ran it I found that some of the string
> constants within the program had been changed. However, if you looked
> with your eye, the acutal string hadn't changed, but the computer's
> interpretation of that string was not the same as in the pre-crash days
> (if determined this using probes and highlighted execution options). I
> found that all I had to do was delete the terminal and then create
> another constant and enter the correct (read "same") string to make the
> vi run properly. Any plausible explanations (other than the usual
> microsoft voodoo ?) This happened in several, but not all, string
> constant instances within the vi.
> The other post-crash difference is the behavior of a particular waveform
> chart. This vi reads two DC voltages for each data point. However, the
> data points of interest are not always consectutive, meaning that we
> often skip some points. Example: 0,1,2,3,4,13,14,15,16,17,30,31,32.
> We wish to plot these data points, *real time* on a point-by-point basis
> as a function of data point. Before the crash I simply bundled each
> voltage into a cluster and sent the cluster to a waveform chart and the
> waveform chart displayed a scatter plot of data vs. point in the desired
> manner, i.e. two voltage points for each data point where we collected
> voltages and no voltage points where we didn't collect voltages (in the
> above example points 5-12 and 18-29). Now labview plots the data
> consecutively (as a waveform chart is supposed to work).
> It would seem as though before the crash either a) my waveform chart was
> not working as spec-ed or b) I was coding it differently than I thought
> I was and now things are behaving as they are supposed to. In either
> case, any suggestions on how to achieve my desired display? Waveform
> graphs will do what I want, but only once the whole data set has been
> collected and I need this data real time.
> For both situations all of my six backup copies of this vi behaved in
> exactly the same way.
> Thanks in advance.
> -Mike
> ------------------------------------------
> Michael D. Wojcik
> Department of Chemistry
> University of Idaho
> Moscow ID USA
> 83844-2343
> ------------------------------------------
> Sent via Deja.com http://www.deja.com/
> Before you buy.