[英]Is there a way i can develop a Python GUI to control LabVIEW VIs?
我正在為測試平台設置一個基於Python3構建的軟件,當前這些平台使用National Instruments cRIO硬件和其他NI硬件。 系統在Windows計算機上運行。
為了控制這些硬件,我們將需要基於LabVIEW構建的VI和子VI。 我知道LabVIEW帶有自己的用戶界面,但是我仍然想用python開發我的GUI,因為將來並不是所有的鑽機都將使用NI硬件或LabVIEW。 將來可能會有MATLAB插件。
我已經看過在線教程,可以在LabVIEW VI中使用python函數,但是對於我來說,可以使用LabVIEW VI和在Python上構建GUI的參考點有沒有?
提前謝謝你的幫助。
最靈活的體系結構是根據需要進行的通信類型使用TCP / IP,UDP和Web服務的某種組合。 這也使您可以靈活地在cRIO(或其他設備)與主機PC之間移動I / O代碼的不同部分,因為無論您是要與其他設備還是在同一台計算機上進行通信,相同的協議都將起作用。
《 NI CompactRIO開發人員指南》的第4章很好地介紹了這些選項,但總結如下:
LabVIEW中提供了所有示例,一旦您了解了基礎知識,就應該能夠實現通信的相應Python端,而不會遇到太多麻煩-並且類似地,將來可以用MATLAB或其他方式代替LabVIEW代碼(如果您真的必須)。
請記住,在過去的幾年中,Web服務的功能在LabVIEW中已經發生了很大變化,因此,如果您在線查看任何示例,請檢查它們是否具有最新功能。
另外,我自己對此沒有經驗,但是您可能想研究ZeroMQ ,它具有可用於Python , LabVIEW和許多其他語言的綁定。
我同意最好的選擇可能是直接實現基於TCP / IP的通信,但是如果您想要更簡單的方法(尤其是如果您的通信采用“在此處運行VI的一組指令,然后運行該VI,然后給我結果”),您可能想看看
尤其是,Wiresmith工具使用TCP / IP連接到您指定的VI(或exe),然后可以使用簡單的VI將消息寫回到控制台。
我最近在SCons(基於Python的構建系統)中使用了該工具,並發現它非常有用,但是它可能比完整的測試系統簡單得多。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.