LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Best approach in LabVIEW for a simulating a large nozzle array (1000+ booleans)?

Hi!

 

I'm looking for some design advice on how to approach a relatively simple function but with what feels like a particularly difficult (labourious) implementation.

 

I'm looking to simulate an array of nozzles but am unsure of the best way to approach it in LabVIEW. What I was planning on doing was having an array of booleans for each row, which would save to an XML file to be processed by the hardware - fine. However, some nozzle arrays can exceed 2000 nozzles. Rather than copy and pasting, is there a more efficient way to generate this? To go through and name each control would be a nightmare!

 

I'm less worried about the horizontal width of the VI as this can be horizontally scrolled so fitting onto a single screen isn't essential

 

I suppose this could this be done with an image control with 4px x 50px where the pixel values are read and written and an appropriate value of 1/0 could written to the XML. However, this would be limited to clicking on a single pixel which wouldn't be so easy

 

Aidan85_0-1608036839384.png

 

The only value I need to store for each is either on or off. 

 

What is the best way to approach this from a design perspective? Image included is representative of what I am trying to achieve, before actually writing any code.

 

Any input from and advice would be greatly appreciated.

 

Thanks for your time.

 

0 Kudos
Message 1 of 5
(1,619 Views)

Hi!

 

To be honest, I have no idea what exactly the problem is.

Are you looking for a 2D array like this? (I used a classic boolean control, which looks like a big pixel)

 
 

 

2020-12-15 15_13_00-Window.png

 

 

0 Kudos
Message 2 of 5
(1,594 Views)

@Aidan85 wrote:

Hi!

 

I'm looking for some design advice on how to approach a relatively simple function but with what feels like a particularly difficult (labourious) implementation.

 

I'm looking to simulate an array of nozzles but am unsure of the best way to approach it in LabVIEW. What I was planning on doing was having an array of booleans for each row, which would save to an XML file to be processed by the hardware - fine. However, some nozzle arrays can exceed 2000 nozzles. Rather than copy and pasting, is there a more efficient way to generate this? To go through and name each control would be a nightmare!

 

I'm less worried about the horizontal width of the VI as this can be horizontally scrolled so fitting onto a single screen isn't essential

 

I suppose this could this be done with an image control with 4px x 50px where the pixel values are read and written and an appropriate value of 1/0 could written to the XML. However, this would be limited to clicking on a single pixel which wouldn't be so easy

 

Aidan85_0-1608036839384.png

 

The only value I need to store for each is either on or off. 

 

What is the best way to approach this from a design perspective? Image included is representative of what I am trying to achieve, before actually writing any code.

 

Any input from and advice would be greatly appreciated.

 

Thanks for your time.

 


Why wouldn't a 2D Boolean Array work for this?

 

You don't have to label every Boolean in the array, since arrays are indexed by row and column.

========================
=== Engineer Ambiguously ===
========================
0 Kudos
Message 3 of 5
(1,578 Views)

I was also thinking of a 2D picture control that is just a giant image.  I thought this might be useful because I'm wondering if you are planning on toggling them on and off, and with the 2D picture control you can capture a Mouse Down event, and then dragging around can turn them on and off.  Of course at this point we are starting to approach what a paint program would be and that got me thinking that might be a fine solution if the user is turning them on and off.  Just have them draw it in a picture, or load the picture on the front panel to display it.

0 Kudos
Message 4 of 5
(1,574 Views)

To drastically reduce the absurd amount of horizontal scrolling that would be required for that many booleans in a row, my two cents is that you should put an enum somewhere (top left is first spot I thought of).

 

The enum has values:

1-100

101-200

201-300

...

1801-1900

1901-2000

 

The rows of booleans on the front panel become 100 long, and changing the enum changes which 100 get displayed. Could also add hotkeys to display the previous 100 (ALT+F1 etc.) or next 100 (ALT+F2 etc.).

Redhawk
Test Engineer at Moog Inc.

Saying "Thanks that fixed it" or "Thanks that answers my question" and not giving a Kudo or Marked Solution, is like telling your waiter they did a great job and not leaving a tip. Please, tip your waiters.

0 Kudos
Message 5 of 5
(1,567 Views)