LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Can Qt be the GUI of LabVIEW?

Hi,

 

I have a LabVIEW program that use QMH to control multi-devices including NI-FPGA

I want to create a windows desktop application that uses Qt to build the UI and let LabVIEW be its backend (remaining the property of using QMW to control multi-devices). 

 

I know that Labview can be built as a DLL or web API, but I still have some questions. If anyone knows the answer or have any suggestion and reference, I will really appreciate it!

 

  1. Can this kind of LabVIEW program be built as a DLL or web API for Qt? So the LabVIEW can be as a backend. 
  2. If 1. is feasible, can we build a licensable installer for it? 
  3. Because I need to display a real-time imaging video on the user interface, which is captured from the Labview controlled camera, does anyone know which is the better way for Labview to connect the Qt to avoid the lag problem of the display?  Building DLL or Web API or other suggestions?
  4. If I choose WPF rather than using Qt to build the UI for my LabVIEW program, is this more practicable? Same questions 1-3 for WPF are needed for advising.

 

0 Kudos
Message 1 of 7
(4,427 Views)

各位版友好,

我現在有一個LabVIEW的程式,使用QMH架構控制多個儀器(包含使用NI-FPGA)。
想詢問有沒有人有經驗,將這種LabVIEW程式包成DLL、API或其他形式,使用Qt做介面控制,最後變成一個Windows桌面應用程式(可安裝)。

目前爬文有看到能將LabVIEW包成DLL或WebAPI,但有以下問題:

  1. 能不能包這種QMH架構控制多個儀器的,當作類似Qt的後端。
  2. 最後能不能跟Qt包成一個安裝檔,能licence出去。
  3. 因為有從儀器端將影像即時傳輸到人機介面的需求,不知道選擇包成DLL 和 WebAPI哪個比較不會有傳輸延遲的問題,還是有其他更好的辦法。
  4. 承3, 並考慮哪一種方法是對接Qt最可靠的方法,Qt的版本有沒有推薦?或有沒有相關教學與參考文件。
    5.會有什麼地雷是需要考慮的?

另外有查到LabVIEW和.Net的相容性比較高,以上問題如果將Qt換成WPF不知道可不可行,有沒有類似的經驗或參考文獻?

跪求高手解答!!!

0 Kudos
Message 2 of 7
(4,425 Views)

Hello!

 

One possibility would be to add a web service to your project so your LabVIEW application can communicate with any other application via web requests (e.g. REST API). Your UI would then be completely independent from LabVIEW and you can use whatever framework you like.

0 Kudos
Message 3 of 7
(4,379 Views)

Care to tell us why?

 

Everything you're asking for can potentially be done.

 

It won't be easy... A crude UI won't be that hard. Sharing large amounts of data between the GUI and LabVIEW might be hard.

0 Kudos
Message 4 of 7
(4,377 Views)

For large amounts of data you can use Websockets and stream it, shouldn't be a problem. But you're right the first question should be why you don't want to use LabVIEW for the UI.

0 Kudos
Message 5 of 7
(4,356 Views)

@Jens_S wrote:

[...] the first question should be why you don't want to use LabVIEW for the UI.


Or the other way around. When You have to implement the data transfer on both sides and have the know-how to do it in Qt, why not skip the middle-man and go full Qt?

 

Combining both feels like adding a lot of moving parts that are prone to break and will be extremely difficult to fix. Is this perhaps a XY-Problem ?

0 Kudos
Message 6 of 7
(4,326 Views)

@LLindenbauer wrote:

@Jens_S wrote:

[...] the first question should be why you don't want to use LabVIEW for the UI.


Or the other way around. When You have to implement the data transfer on both sides and have the know-how to do it in Qt, why not skip the middle-man and go full Qt?

 

Combining both feels like adding a lot of moving parts that are prone to break and will be extremely difficult to fix. Is this perhaps a XY-Problem ?


I don't disagree....

 

Qt isn't a programming language, but an API. So, you can make a LabVIEW application that uses Qt by calling the Qt API... Even LabVIEW (development system) seems to use Qt (IIRC for the shared variable browser or something like it).

 

That could be what OP is really asking. Can I use Qt as the GUI of LabVIEW. Not can I make a C? C++? application that uses Qt and calls LabVIEW.

 

From LabVIEW, using Qt will become problematic when it comes down to events. Qt events won't connect well to LabVIEW events. You do want the GUI to be event driven...

 

I really don't think we can give advice without understanding the reasoning. Too much is unclear.

Message 7 of 7
(4,321 Views)