Jump to content

Neil Pate

Members
  • Posts

    1,209
  • Joined

  • Last visited

  • Days Won

    116

Posts posted by Neil Pate

  1. On 9/3/2026 at 7:17 PM, Mads said:

    Going a bit off topic (ironically), but wading through those endless topic-shifting conversations on Discord feels like a step backwards....It is a nice tool for a public chat, but it makes things harder to find and follow 😞

    Yeah, the real-time aspect of it does necessarily mean a tradeoff in other places. The LabVIEW Discord is quite well laid out though with sensible channels so we can keep discussion targeted. Personally I value the real-time aspect higher than the formal structure of a traditional forum so I (and many others these days) are gravitating to that kind of technology. It's definitely not perfect though!

  2. 16 hours ago, ShaunR said:

    Discord is a poor support platform and I view Discord with the same contempt as IRC (and for similar reasons). If one thinks Lavag.org is a sub-optimal platform with little activity; answer the question or suggest posting the same question on NI.com. EtherCAT is a niche expertise and if you can't find help here or on NI.com, I very much doubt you will find it on your Discord server.

    IRC? Wow there is a blast from the past. Thank you for digging up some good old memories of many well spent nights spent at my university computer lab arguing with other randos on the internet about alien activity and other tin foil hat stuff 🤣
    I did not realise that is where all the LabVIEW developers had gone...

     

  3. 5 hours ago, Rolf Kalbermatter said:

    Both! NI's implementation of EtherCAT leaves a lot to be desired. As to Discord, it's not really the people on there but I just can't seem to manage and keep an overview on the various threads in Discord. Partly that is because I mostly look at it on mobile, but in a webbrowser on the PC it's not that much better, despite the bigger screen.

    It is a pity you don't get on so well with Discord, your presence over there is sorely missed.

  4. @Mahbod Morshedi no need to apologise at all. This is a journey for everyone and all the opinions here are given with absolute kindness in mind, just sometimes the message gets lost in text.

    If you add new features to your application, there is no need to make a new wire. Assuming you have some kind of core cluster you would just have a single wire through the whole application and you can add new stuff into this cluster. Now, that will start to get clumsy at some point (when it reaches what we sometimes call "megacluster" status). 

    To prevent this from happening it is normally better to try partition your application into independent things, (loops) that contain just the data they care about. Then each thing becomes simpler.

    Then you need to figure out how to communicate between these things and you go down a rabbit hole.

    Have you looked at one of the popular frameworks like DQMH?

  5. 20 hours ago, ShaunR said:

    I think you'll find the polymorphic VI is used to get the data back out again. One of the issues with LV is that it's very easy to get data into a generic form but it's a bugger getting it back out again due to strict typing. I used the polymorphic method for reconstitution when I created a JSON parser that encoded to string (the ultimate variant) and one chose a polymorphic instance as to how you wanted it back out (string, U64, DBL etc).

    yes but I think X means creating polymorphic instances for all the unique typedefs/clusters inside, so not just the normal primitives that you can create once and forget about. 

  6. 3 hours ago, X___ said:

    You are reinventing variant attributes and the corresponding primitives (see my post above).

    This being said, there is a lot of things to be commented on your code from a G-style point of view :-) but I'll leave that to others.

    As far as wrapping the Variant to Data primitive into a polymorphic VI, see my comment above as well. A nicety, but is this really worth the hassle?

    I have done that myself for a few common types (numerics, string, path, and array of such) and I find that very handy, but I wouldn't bother for types I use occasionally, and in particular, application-specific types. Just my opinion.

    yup, completely agree with this ^^^^

    I have done something similar in the past where I used a global variant as a data store, and then used attributes to store/get data (and some convenience VIs to convert to the known types). It was a bit of an experiment in a system that had many data generators (different interfaces to independent pieces of hardware) and several hundreds of data variables (tags) all communicated over OPC-UA, so had a fairly sophisticated method to set/get by name as I didn't want to deal with such a mega-cluster anywhere. It worked fine, but in the end I would not really recommend it for simple systems where you just dont want to make the proper data types.

  7. How do you look up the data in your array? Via --Tag?   If you are going to do that you might as well just use a map.

    But anyway, I am not a huge fan of this approach. I think better composition into clusters or objects will also make your wiring neater, more testable, scalable etc

    I do recognise the need for nice neat diagrams without wires going all over the place, but proper decomposition/architecture normally fixes this.

    So in general I would have to say you are not on the right track with this approach, but this is of course just my opinion.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.