Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation since 05/24/2021 in all areas

  1. Does it help to re-ask the question as "where should LabVIEW have a future?" It is not difficult to name a number of capabilities (some already stated here) that are extremely useful to anyone collecting or analyzing data that are either unique, or much simpler, using LabVIEW. They're often taken for granted and we forget how significant they are and how much power they unlock. For example (and others can add more): FPGA - much easier than any text-based FPGA programming, and so powerful to have deterministic computational access to the raw data stream Machine vision - especially
    5 points
  2. Yes, I don't assume you use many new features of LabVIEW from the last 10 years if you still develop in LabVIEW 2009.
    3 points
  3. NI didn't say they would be porting NXG features to 2021, but to future versions of LabVIEW. Technically such a promise would have been unfulfillable, since at the time the NXG demise was announced, LabVIEW 2021 was basically in a state where anything that was to be included in 2021 had to be more or less fully finished and tested. A release of a product like LabVIEW is not like your typical LabVIEW project where you might make last minute changes to the program while testing your application at the customer side. For a software package like LabVIEW, there is a complete code freeze except
    3 points
  4. I used to think the future of LabVIEW was bright. I thought CompactRIO was amazing and thought everyone would want to use it for all kinds of control systems. LabVIEW was just intuitive to me, jobs and well paying contractor gigs were plentiful and hitched the first decade of my career to it. Got to do some interesting things but decided it wasn't such a smart idea to be locked to the fortunes of one company, whose decisions didn't really make sense to me. Yes LabVIEW will be around in the same way LISP is. 20 years from now people will reminisce about visual programming and how advanced it wa
    2 points
  5. I don't have these numbers. What I know is that a few years ago, NI noticed that their sales figures were starting to flatten. For a company used to have high two digit growth numbers year after year this is of course a very alarming signal. 😀 They hired some consultants who came to the conclusion that the traditional T&M market NI was operating in simply didn't have left much more air in it to continue to support the growth NI had been getting used to. And strategic decisions were made behind the scene. Not to much of that has been openly communicated yet, but the effects have been quite
    2 points
  6. LINX now is supported on commercial applications starting in 2020 BTW. Your opinion is valid, and you have reasons for it, but I think it might be a bit of forest from the trees situation here. LabVIEW tends to have a one or two major bullet points of new features with each release, with many smaller improvements that are less noteworthy. Some of these aren't very applicable to me and I don't see the benefit of the update, but I can still recognize that a bunch of effort was put into a making it into the release, and makes me think NI isn't sitting idle. I know I made a list like this
    2 points
  7. Hi! I found this discussion while doing research on test automation framework. There is an open source project for test automation that I also found while researching called OpenTAP. It is an open-source test sequencer that is well document and has a pretty decent community. Its extendable and has a .NET core. There is another one called OpenHTF that was created by some Google engineers that is a Python test framework, but it has limited documentation. I don't know if this helps because I have limited software and testing knowledge, but this is what I've found.
    2 points
  8. There is and it is called Interapplication Communication. Which one to use depends on the platform and your familiarity with a specific method. - File IO (multiplatform, trivial to setup, difficult to manage as you have to deal with concurrency of two applications trying to access the same file) - DDE (Windows only, ultra ancient and much older than legacy, don't ever use it if you can help it) - Shared memory (super high throughput, complicated to use, pretty different APIs and methods on each platform) - (D)COM (Windows only, complicated to use from anything else than C(
    2 points
  9. @The Q started such a thing on the LabVIEW Wiki: https://labviewwiki.org/wiki/Text-Based_terminology
    2 points
  10. Has anyone here successfully migrated from TestStand to some open source automation frameworks? In our hardware test we have a lot of things happening in parallel and so far I haven't found reliable alternative for TS.
    1 point
  11. OK, summing UP, I found three different solution: 1) Using AcroPDF Activex Object 2) Using Ghostscript 3) Using Sumatra PDF And that's all. Thank you
    1 point
  12. This is a 3rd party (and free) solution I've used the past, successfully. Download Sumatra PDF from the website and install. You can use it to print from the command line. . Sumatra Print.vi
    1 point
  13. View File Y Controls Support - Version 2.0.2.0 Installer.zip Installs support for Y Controls. Requires LabVIEW 2019 or later. Submitter paul_cardinale Submitted 05/19/2021 Category General LabVIEW Version Not Applicable License Type BSD (Most common)  
    1 point
  14. Hi folks, Long time reader, 1st time poster (old account got deleted? couldn't recover it) LabVIEW and coffee? Heck yeah, any day. You'll see my spaghetti code come to life. 😄 No, but seriously ... I've always been a big fan of LabVIEW, and ever since NI discontinued their motion offerings, I was really sad for a while. (Maybe because motion was also my specialty as a systems engineer at NI. 🙁) Back in the day, NI had great motion products that worked well with LabVIEW. They worked great for pick-and-place systems, automatic positioning, test systems where you need to mov
    1 point
  15. It turns out that the two day event is actually four hours, so not much room for non-marketing content. Registration is now open.
    1 point
  16. And how would you suppose should your client, who wants to use this library on a cRIO-9064 (just to name one of the currently still possible options which are Windows 32-bit, Windows 64-bit, Pharlap ETS, VxWorks, Linux 64-bit, MacOS X 64-bit, Linux ARM) recompile it without having access to the key? Sure with asynchronous encryption you don't have to publish your private key but then you are still again in the same boat! If you want to give a client the possibility to recompile your encrypted VIs (in order to not have to create a precompiled VI for each platform and version your clients may wa
    1 point
  17. Saw this example code - LabVIEW programmers should feel right at home
    1 point
  18. Just saw Nintendo announce this programming game, and a few comments comparing it to LabVIEW. It looks pretty cool, and a fun intro to graphical programming. I don't have a Switch, otherwise I'd probably pick it up. https://www.nintendo.com/games/detail/game-builder-garage-switch/
    1 point
  19. I've discovered a bug. It appears to be a bug in LabVIEW. Here is what I believe is happening: Hiding inside each instance of a Y Control is an instance of "C: ... \LabVIEW xxxx\resource\plugins\Y Control\Ability Manager\Y Control Ability Manager.XCTL". When LabVIEW loads an instance of a Y Control that depends* upon another Y Control, there are 2 instances of "Y Control Ability Manager.XCTL" that need to be initialized: One for the outer Y Control and one for the inner Y Control. The "Init" ability of the Xctl for the inner Y Control gets called first, and it works OK. However when the "I
    1 point
  20. This very much depends on the used font. Not all fonts specify glyphs for all these attributes. If it doesn't, the attribute request is simply ignored and the font is drawn in the basic form. LabVIEW doesn't draw these texts, it just passes the request to Windows GDI (or Unix XWindows, or MacOS Quartz) and tells it to do its work).
    1 point
  21. I also think that it is the strategic staff that is leading labview in the wrong direction. the concept of labview is certainly unique and has its justification. the strategic decisions are simply the wrong ones. the management should be fired and a few innovative engineers should be left to make the decisions. there are enough new technologies waiting to be implemented with labview.
    1 point
  22. Queues, Notifiers, DVRs and similar stuff, even when seems to be exposed from labview.exe in some form, is totally undocumented. Of course, you could try to RE those functions and if you're lucky enough, you could use few, maybe. But it will take a significant effort of you and won't become worth it at all. To synchronize your library with LabVIEW, you'd better try OS-native API (like Events, Mutexes, Semaphores or WaitableTimers on Windows) or some documented things like PostLVUserEvent or Occur of Occurrence API. To be honest, there are more Occurrence functions revealed, but they're undocum
    1 point
  23. Functionally, dequeueing a SEQ is analogous to reading the DVR in "In Place Element" and analogous to locking a mutex. The 2 LabVIEW code paths above are analogous to this C++ code snippet: // Global variable and mutex std::mutex mtx; int* globalvar = new int; // 1a. Initialize shared resource ("Obtain Queue") int main() { // 1b. Initialize shared resource ("Enqueue Element") *globalvar = 0; // 2. Lock shared resource ("Dequeue Element") mtx.lock(); // 3. Modify shared resource ("Increment") *globalvar += 1; // 4. Unlock shared resource ("Enqueue Element")
    1 point
  24. Reentrant: Roughly also "Reentrant", although... LabVIEW VIs are non-reentrant by default, C/C++ functions are reentrant by default. Unlike LabVIEW, there is no setting to force C/C++ functions to become non-reentrant -- you simply code them in a way that makes them reentrant. In LabVIEW, non-reentrant VIs are impossible to run multiple instances simultaneously. In C/C++, non-reentrant functions are unsafe to run multiple instances simultaneously (it's possible; you'll just break things). Single element queue: Depends on how you use it. I
    1 point
  25. This is for a quick drop plugin, and I'm getting my references from the panel selection list. Generally, I use a "To more specific class" to get specific class reference type and thus the appropriate methods or property nodes, based on the ClassName. The ClassName I'm getting is "Property". The problem I was having is that I couldn't find the specific class I needed for the "To more specific class" function. The answer is, Generic->GObject->Node->Growable Function-> Object Function->Property. From there you get the PropertyItems[] list via property node and iterate thr
    1 point
  26. Looks great! Thank you for the suggestion. Should advise this to my son - he might like it.
    1 point
  27. Found a solution : https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z0000019Ru8SAE&l=fr-FR Luckily, my colleague has the same laptop with similar NI softs installed so he sent me his tdtable.tdr file and then it all works fine again.
    1 point
  28. Hi Makrem, my guess is that your top-most VI is set to be "modal". https://labviewwiki.org/wiki/VI_class/Front_Panel_Window.Behavior_property To change the behavior, go to the VI's properties and chose "Windows Appearance". Then select the "default" behavior.
    1 point
  29. yes it is : https://www.ni.com/fr-fr/support/documentation/bugs/19/labview-2019-sp1-bug-fixes.html
    1 point
  30. The file still exists, only the link above is dead.
    1 point
  31. That looks cool! My eldest is the right age but has literally zero interest in this kind of thing, my younger one is much more into this but right now is a bit too young.
    1 point
  32. Version 1.5.4

    941 downloads

    Package for working with JSON. Uses high-speed text parsing, rather than building an intermediate representation as with prior LabVIEW JSON libraries (this is much faster). Allows easy working with "subitems" in JSON format, or one can convert to/from LabVIEW types. Uses the new "malleable VIs" of LabVIEW 2017 to convert to any LabVIEW type directly. JSON text makes use of a form a JSON Path notation, allowing easy and rapid access to the subitems of interest. Requires LabVIEW 2017 and install by VIPM 2017 or later. Original conversation about JSONtext. On the LabVIEW To
    1 point
  33. Version 1.11.3

    8,896 downloads

    Introductory video now available on YouTube: Intro to SQLite in LabVIEW SQLite3 is a very light-weight, server-less, database-in-a-file library. See www.SQLite.org. This package is a wrapper of the SQLite3 C library and follows it closely. There are basically two use modes: (1) calling "Execute SQL" on a Connection to run SQL scripts (and optionally return 2D arrays of strings from an SQL statement that returns results); and (2) "Preparing" a single SQL statement and executing it step-by-step explicitly. The advantage of the later is the ability to "Bind" parameters to the sta
    1 point
  34. There are lots of design decisions with C++, C#, and Java that in hindsight are poor, but I don't feel like the author focused on the problematic parts, and maybe confused/conflated encapsulation and abstraction. In my opinion, this style of OO can be best described by: the ability to bundle data (something like a struct or record) and operations on that data (methods, which are essentially functions with an implicit "this" argument) into classes the ability to extend classes via inheritance, and automatically and irrevocably get subtype polymorphism, which can be ad-hoc thr
    1 point
  35. Version 1.0.0

    678 downloads

    Hi everyone, Since GRBL standard is open source, I decided to post my Library that I used in LabVIEW to interface a standard GRBL version 1.1 controller. Not all GRBL function has been integrated, but this is a very good start. Enjoy and let me know your comments. Benoit
    1 point
  36. Two ways to do what the OP is asking. 1. VI Server world: Children have a static link to their parents and Parents have a dynamic link to their children. This means that once a class is loaded into memory, the parent knows about the child. According to the documentation this will NOT work in the runtime environment, but i've used this several times when making IDE Tools. 2. Runtime Reflection: The following code will also give you an array of all of the children loaded in memory, but this time it uses less VI Server so it will work in the runtime environment. I use this when using a
    1 point
  37. .NET to the rescue... http://msdn.microsoft.com/en-us/library/system.diagnostics.process.start.aspx Launch Windows File.vi (LV 2012)
    1 point
  38. Have you heard that joke about UDP? You might not get it... (But seriously; just subscribing here for the emails out of interest on this topic)
    1 point


×
×
  • Create New...

Important Information

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