08-11-2017 07:40 AM
@JÞB wrote:
For Ben
CLD is orange with a "+" glyph Yellow on Black
CLED is orange with a "+" glyph Black on Yellow
Both have the word "Developer" in Black
Ryan is sporting right- you just need a better field guide to observe them in the wild.
Even after reading that, I will have a 50/50 chance of recognizing one vs. the other which would be the same odds as if I had no idea in the first place.
Ben
08-11-2017 08:57 AM - edited 08-11-2017 09:02 AM
@Ben wrote:
@JÞB wrote:
For Ben
CLD is orange with a "+" glyph Yellow on Black
CLED is orange with a "+" glyph Black on Yellow
Both have the word "Developer" in Black
Ryan is sporting right- you just need a better field guide to observe them in the wild.
Even after reading that, I will have a 50/50 chance of recognizing one vs. the other which would be the same odds as if I had no idea in the first place.
Ben
I didn't design them. Look on the bright side, at least you now know for sure that you will be uncertain in the future. Isn't that progress?
08-11-2017 10:16 AM
My little joke about those kind of 50/50 things is that if I know nothing and am not careful my odds are 50/50 of getting it right. As I pay attention and try to be careful, the odds go down...
(This is especially the case where there are multiple 50/50 junctions in series, such as polarity and sign-convention things where any even number of wrong choices still looks right at the final output).
-Kevin P
08-20-2018 10:39 AM - edited 08-20-2018 10:41 AM
I like channel wires and am in the process of updating my templates using them.
Today I encountered the problem of a broken 'event messenger channel' vi that has a typedef'd cluster at its element input terminal. When loading my project, it was complaining about the typedef, but I can't recall the exact message.
I manually deleted and rebuilt the channel wire endpoints, which at first seem to work. But closing and reloading my project again showed a broken 'event messenger channel' vi.
Eventually I undid the typedef and now it seems to work. It is not clear to me why this is.
Good to know that I can safely delete the ChannelInstances folder, however my coworkers are somewhat less experienced and should not be confronted with a broken channel wire vi.
08-20-2018 05:04 PM
A number of suggestions to the Channel Developers have been made, including
Bob Schor
08-21-2018 05:49 AM
@Bob,
Thanks for clarifying things.
However, it makes me feel a bit uncomfortable now.
- zapping a folder (Channel Instances), for the right LabVIEW version, even more confusing with multiple development PC's and multiple developers
- be careful with Type Defs for Clusters
Just when I thought channel wires will clean the diagram a bit, are easy to create and easier to follow .......... 😞
08-21-2018 08:47 AM
Well, I use Channel Wires a lot -- one Project spawns up to 24 Clones, each of which has four independent parallel routines running a Channel equivalent of a QMH (I call it a Channel Message Handler), with perhaps a dozen channel wires running among and between them. It hasn't been deployed in full force (we are currently running up to 6 Stations (clones), but when you count the top level VI, that's on the order of 80 Channel Wires working away.
I find the "metaphor" (meaning the visual appearance) and the ease of use of Channel Wires particularly appealing. I use mainly Tag, Messenger, and Stream Channels in their "vanilla" formulation (no Aborts, no Schedules). Even when things get cranky (and I swear a bit at NI), I've managed to get things (eventually) loaded by deleting the ChannelInstances folder and reloading the Project. For this "Big" Project (and especially for LabVIEW 2017), I had to load the Project "slowly", not try to load the Top Level VI first (which tries to pull many other things into memory). There does seem to be some "order issues" in the way things get loaded, which have been brought to NI's attention, but for non-Mega Projects, I've had no serious problems (other than having the same-named TypeDef with different Definitions, usually a Cluster, in different Projects, requiring nuking ChannelInstances).
Bob Schor
08-23-2018 06:04 AM
I like the appearance and ease of use as well !
I even consider it a completion of my idea underpass (subway) for data exchange between parallel loops.
Idea is simple, the right implementation a very different matter.
NI did a very exhaustive job on asynchrnous data transfer between parallel loops!
I will use channel wires only in fairly small applications and hope NI will resolve the remaining (small) issues with them.
08-23-2018 07:34 AM
@donkdonk wrote:
I will use channel wires only in fairly small applications and hope NI will resolve the remaining (small) issues with them.
I would say that any Project with <100 VIs and <25 TypeDefs, with perhaps a dozen Channel Wires, should be no trouble. The only possible problem could come with having two Projects with the same-named TypeDef but a different definition of the Types, but if you know about deleting the ChannelInstances Folder and are patient for the 5-10 seconds LabVIEW needs to rebuild the Channel Wire Instances, you'll be fine (and if you do still run into a problem, please post it here and let me know -- I'm very "invested" in this feature).
Bob Schor
08-29-2018 11:26 AM
@Bob
Thanks for being interested. I have the same thoughts and warm feelings about the potential of channel wires.
I meant to say that all my projects are relatively small, so I can use channel wires without problems.
I probably just ran immediately into this typedef issue (I used to have a typedef'd cluster on my channel input) and may have another project with same named type def open.
It was the first time I actually was going to use channel wires for a serieus template we use for all our projects, therefore it made me a bit nervous. Now I know the cause, I am more relaxed about using them.