04-10-2024 08:54 PM
Python, with an open mv library can do an lot on a small inexpensive platform. That's the direction I am telling folks to go for machine vison applications, and there are a lot of good deep learning platforms out there that leave NI in the dust. My license is frozen, and permanent. I have no faith that LabVIEW or it's vision libraries will improve to a point where I will need to rent a license.
NI hardware is seeing supply delays, which is also frustrating..
Still, its frustrating, I would rather pay maintenance, and get excited about new features in the vision toolkit and tools for streamlining LabVIEW code.
04-15-2024 05:27 AM
Yes, I am exploring Python for vision applications as well. In addition, my applications need to talk to PLCs and SQL databases. Can Python do this as well and can you create decent usable GUIs in Python?
Thanks
Simon
NSG European Technical Centre, Hall Lane, Lathom, UK, L40 5UF
Email: simon.aldred@nsg.com
Tel: 01695 54377
04-15-2024 10:22 AM
I would say that Python wins easily over LabVEW for SQL, The Database Toolkit is pretty limited compared to the plethora of python modules like sqlalchemy. There are also several PLC modules like PyComm3 and other created by Siemens, etc.
LabVIEW is the definitive winner when it comes to easily making GUIs though. You can have complex graphs, charts, plots and indicators displaying live data in minutes. It comes at the expense of style and fancy options, but that's not a big deal unless you need to impress people. I prefer to let my data speak for itself and don't waste time making it pretty.
Python has good options for GUI, but besides the built-in Tkinter, which is klunky and looks 20 years old, you need to learn a separate package. You can display right to webpages with Dash, use the fancy libraries of Qt, or try Kivy, which is an XML based GUI system that allows you to build for many different platforms that all run the same python code. It looks pretty good, but there is a bit of a learning curve.
Of course, another python advantage is that all of these choices are FREE, so you can just try them out and see what you like.
04-15-2024 11:02 AM - edited 04-15-2024 11:05 AM
And let's not forget LabVIEW's other superpower - Multitasking.This is something you can achieve in Python using an add-on framework - I've seen the 'Twisted' framework used successfully for an application that had to monitor multiple products in real time. But again it involves a learning curve and an extra degree of complexity. It's up to you to decide if the new cost of LabVIEW makes it worth jumping through the hoops to use a different tool set.
I completely agree with the comments about programming SQL in LabVIEW. I've done this, and MongoDB too. It's possible to write fairly complex DB applications, but it's not something LabVIEW easily lends itself to out of the box (and some might argue, why should it? - LabVIEW was designed to be a test & measurement tool after all).
04-15-2024 11:11 AM - edited 04-15-2024 11:13 AM
I haven’t seen any environment that makes use of DBs a breeze. The problem is not so much the access library, they are not that much different, but the correct dealing with DBs, especially also setting them up correctly including correct relationships. I never had trouble getting data out of DBs in LabVIEW but getting them correctly setup can be another story. Of course if you only have oneor two tables it’s quiteeasybut you could use even Excel for the backend then. 😀
As to using tkinter with multiple threads, the choice is very simple: Just don’t try it. It’s a drama!
04-15-2024 11:50 AM
@rolfk wrote:
... especially also setting them up correctly including correct relationships. I never had trouble getting data out of DBs in LabVIEW but getting them correctly setup can be another story....
You've heard of the phrase "The key, the whole key, nothing but the key, so help me Codd."
04-15-2024 11:59 AM
I have decided to switch development to .NET and C#. Relatively easy to make applications. Most hardware comes with libraries that are compatible (Aerotech in my case). Database connections are relatively easy, and everything is very fast.
04-16-2024 03:51 AM
@rolfk wrote:
I haven’t seen any environment that makes use of DBs a breeze. The problem is not so much the access library, they are not that much different, but the correct dealing with DBs, especially also setting them up correctly including correct relationships. I never had trouble getting data out of DBs in LabVIEW but getting them correctly setup can be another story. Of course if you only have oneor two tables it’s quiteeasybut you could use even Excel for the backend then. 😀
https://www.reddit.com/r/ProgrammerHumor/comments/135ewen/excel_is_a_database_change_my_mind/
😉
04-22-2024 04:49 AM
I have been using LabVIEW since version 1 in the late 1980's. It has never been my main job but I have always used it for data acquisition, prototyping user interfaces, data analysis and algorithm development alongside my main roles in electronics and software development. I have been an advocate over the advantages of LabVIEW everywhere I have worked, despite the concerns over the cost, those employers invested in the tools.
In 2012, I set up my own company, invested in a full professional LabVIEW development license and carried on introducing it to my clients - they have also been using it ever since - although the price was a tough one. For my own one-man company it was a colossal investment.
However when it came to 2023, I had to make a decision - carry on paying the subscription or just quit with my perpetual license. I decided that if I needed the technical support, I would be stuck so I paid for the subscription.
And guess what - I daren't install or develop with the subscription software so I have stayed with 2022. I never even installed 2023 despite having paid for it; I can't take the risk of being tied into the huge price and my clients have all said the same. And I am neither recommending or developing with anything later than LV 2022. No new clients are being introduced to it and I am recommending software tools that don't involve being tied in.
Access to tech support I can manage without but I can't afford to be held to ransom over access to software I wrote last year for a client if I haven't paid this year's subscription. "Yes, I can fix that bug but let me tell you how much the subscription is going to cost".
I reluctantly took the decision not to renew my software license this year. It's the first time I haven't updated my software (or my employer's) in over 30 years and my clients, as a result are doing the same. The small companies, consultancies and start-ups are no longer becoming advocates for LabVIEW and as a consequence will no longer be pushing it as a useful software tool.
Without a much lower cost way to stay in the game, I only see the number of users falling.
04-22-2024 07:05 AM - edited 04-22-2024 07:38 AM
Hi magicbean
So you are one of the not-so-many lucky one's having a LV 2022 Q3 version on a perpetual basis. I guess most got their perpetual LV versions stopped before LV 2022 Q3.
LV 2022 Q3 supports the LabVIEW AddOn concept. So you can install all the upcoming drivers. No need to upgrade LV. That is splendid.
So keep programming ..
Regards
PS : As you can understand, I had my YES hat on. Most will not have that hat. Most will only have access to LV 2021 SP1 as the last perpetual version. It was also a splendid version as NI finally gave us a myRIO/ELVIS upgrade. But the drivers issue will eventually bite most using LV 2021 SP1 in a few years from now. If they need support for new products, that is.