From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

A lot of waveforms

Hello,

I have 28 waveform windows which are programmatically scaled according to my sample rate and voltage scaling. They display differential signals from 8 sources, which are also displayed in another tab.

All of this creates a lot of chaos in the diagram because every single waveform has its own set of property nodes (max, min, multiplier etc). This creates 36 such nodes and A LOT of wires. 

I am using subVI's but they are limited to the number of outputs. I still get lots of wires.

 

How can I make my diagram more, much more, compact? (see image and VI attached)

In OrCAD I'm used to label wires and place off-page connectors. Can I do this in LabVIEW ?

 

Thanks

Download All
0 Kudos
Message 1 of 6
(2,989 Views)

SSTBRG wrote:  I am using subVI's but they are limited to the number of outputs. I still get lots of wires.

Where are the subVIs you tried to make?  I see A LOT of duplicate code.  That is what you need to make into subVIs and then reuse the subVI.  For instance, make a subVI that does the indexing and subtracting for you and reuse it.  Another subVI would be where you figure out your max and min scales.  You could even pass in a reference to the control to set the max and min scales, further cleaning up your diagram.


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
0 Kudos
Message 2 of 6
(2,975 Views)

Along with generally utilizing sub-VI's, If you are finding yourself making several tabs that each have somewhat independent controls, display types and functionality, and you are having trouble with how large your main VI is becoming because of all the functionality you must support on the UI, you could make use of sub-panels to modularize it a bit.  

0 Kudos
Message 3 of 6
(2,958 Views)

Hi all, thanks for the replies.

I looked into it a little and I'll be glad to have your help:

 

My 'holy grail' would be to place the charts in a subpanel so that they won't be cluttered in my main VI,

and also place all the 42 or so property nodes in subVI's and connec these subVI's to the subpanels.

That will reduce my main VI clutter a lot. How can I do that?

 

Thanks

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

-In your main VI you can get Reference for all the Controls/Indicators and bundle with name(it'll be easy when unbundling) as cluster: https://zone.ni.com/reference/en-XX/help/371361J-01/glang/bundle_by_name/

-Passing reference to subvi: http://digital.ni.com/public.nsf/allkb/0F4EA104660C0AF38625726F0069B27E

Thanks
uday
0 Kudos
Message 5 of 6
(2,894 Views)

How many things do you need to see at the same time?

  • You have 8 base channels.  Do you need to see all 8 at once?  Could you have, say, two plots, one with all 8 channels and another with a single channel, chosen by, say, a slider going from 0 to 7, that shows a single selected channel?  That saves time and effort.
  • You plot differences between channels.  How many of these plots do you need to see at the same time?  Could you do a similar reorganization?  For example, if it is sufficient to see them one-at-a-time, you could have a single plot and choose "Channel 0 .. 7" as the base and "Channel 0* .. 7*" (where the stars mean that you don't allow the selection of the same channel as chosen before, so if you first choose Channel 3, the second choice lets you choose anything except 3).  These things are really easy to do, but you need to learn better LabVIEW Style, which involves multiple loops (like the Event Structure Loop), and the use of sub-VIs(!!).
  • If you have only a few plots, you could make a "Plot Setting" cluster that includes an X and Y "scale factor" (among other things).  If you know which plot you are trying to modify, you can use a reference to it to obtain its Plot properties, then use the modified Plot Settings cluster to update these settings.  [This works well in conjunction with a Value Changed Plot Setting Event, and something like a Queued Message Handler structure for your main loop].

Do you have any LabVIEW Gurus in your organization?  Someone who can work with you and give you pointers on LabVIEW Style and improving your LabVIEW Programming?

 

Bob Schor

0 Kudos
Message 6 of 6
(2,876 Views)