LabVIEW Channel Wires

cancel
Showing results for 
Search instead for 
Did you mean: 

Channel Wires Entering and Leaving a Structure

The channel wire was created as a tag channel for a Boolean stop.

Parallel Loops and Channels.png

This was the most intuitive way for me to try and use a stop channel wire to stop multiple loops. The above VI is broken with error:

Error Message.png

If I rewire the diagram like below, the compiler doesn't complain and the VI runs (stops) as expected.

Parallel Loops and Channels_Single Exit.png

but, this doesn't seem any more semanitcally meaningful than my first attempt and seems to put precedence to the middle loop (which I do not intend). Grappling with the error details (specifically the 'meaningless for a channel to pass through a structure'); why is this considered 'passing through' when the subVI has write and read endpoints? Is this a case of overly zealous compiler error checking?

Doug
NI Sound and Vibration
0 Kudos
Message 1 of 27
(12,787 Views)

"seems to put precedence to the middle loop"

Actually, it does just the opposite.  In your first (incorrect) example the middle loop was special in that it had two connections, one to each of the other loops.  Both of the other loops only had a single connection.

In your second (correct) example all the loops are exactly the same.  Each has a single connection and they are all joined on the top level diagram.  Perhaps you will see it more clearly if you create a subVI from each loop.

0 Kudos
Message 2 of 27
(9,777 Views)

Another way of thinking about it is in the first example you had two channels, one between the top and middle loop and one between the middle and bottom loop. The connection in the middle loop tried to wire two channels to the same terminal which is similar to wiring two source terminals to the same sink terminal in synchronous dataflow.

0 Kudos
Message 3 of 27
(9,777 Views)

I am trying not to see the channel crossing the loop boundary as a connection (LV hiding the tunnel seemed to reinforce this interpretation). Admittedly, I am still working on my channel vision.

It was exactly trying to view the loop as a subVI that led me to my initial diagram. When I put the third loop in a subVI (because it had no control to initiate a stop), and do a little rearranging, I get the following:

Stopping Parallel SubVI.png

the subVI has only one terminal for the stop channel, but I wired it through that middle, vertical terminal.

Slave subVI FP with Connector Pane.png

Doug
NI Sound and Vibration
0 Kudos
Message 4 of 27
(9,777 Views)

Yep, the subtlety of the tunnels is definitely something we'd love feedback on. If you would have wired the middle loop like a "black box" in your first example by wiring from the outer tunnel "across" the structure to bottom loop it would have worked. But given the tunnels aren't shown it wouldn't be possible to tell the two situations apart with the way things are currently implemented.

0 Kudos
Message 5 of 27
(9,777 Views)

By the way, we tried a number of different views for the "fake" tunnels on structures and none of them seemed to make things any cleaner. I'll talk to the group about posting those mockups to see what everyone thinks.

0 Kudos
Message 6 of 27
(9,777 Views)

I did try wiring the outer tunnel across/over the structure. But the channel wire shown was under the structure, and (funny enough) it didn't look right to me.

Doug
NI Sound and Vibration
0 Kudos
Message 7 of 27
(9,777 Views)

I never saw any of those "fake" tunnel mockups, so sorry if this has been already suggested and rejected; but what about something like one of these?  You could call it a flyover bridge, or something similar.  Of these, I personally think I like #2 the best.

Channel_Wire_Tunnels_Mockups.png


~Tim
Message 8 of 27
(9,777 Views)

Yes, that was one of the better options we looked at.  We felt it might help the users who are new to channels but would quickly become excessive noise once they are more familiar.  It might be possible to have it as an option (like wire dots and red Xs).

0 Kudos
Message 9 of 27
(9,777 Views)

The channels do not really go into and out of a structure.  That is why we thought of making them sort of a 3D object that went over the structure and then extends down to the interior of the structure.

I am still not sure why AQs favorite channel cannot have two independent sources in a structure and two independent receiving loops.  Is that unique to AQs favorite wire, or is that a general channel issue?

LabVIEW ChampionLabVIEW Channel Wires

0 Kudos
Message 10 of 27
(9,777 Views)