將遠程前面板與LabVIEW可執行文件一起使用

更新 Dec 1, 2020

環境

軟體

  • LabVIEW Application Builder Module
  • LabVIEW

我想遠程查看和控制我的LabVIEW內置獨立應用程序。如何在未安裝LabVIEW開發系統的計算機上使用遠程前面板來操作LabVIEW構建的獨立應用程序?

此解決方案的實現使用依賴於稱為Netscape插件應用程序編程接口(NPAPI)的瀏覽器插件機制的Web技術。為了增強瀏覽器的安全性,谷歌瀏覽器從版本42開始不推薦使用NPAPI,從版本52開始不支持Mozilla Firefox,而從macOS Mojave 10.14開始提供Safari 12.1。 Internet Explorer是使用遠程前面板的受支持瀏覽器。

遠程前面板允許客戶端計算機查看和控制在服務器計算機上運行的VI的前面板。但是,如果將VI內置在可執行文件中,則必須完成以下步驟,遠程前面板才能正常運行:
  1. 創建一個LabVIEW項目。
  2. 通過選擇工具»選項»Web服務器(或Web服務器:配置)來啟用Web服務器。
  • LabVIEW 2009及更早版本:
    • 選擇啟用Web服務器,然後單擊確定
    • 允許訪問“高級設置”下的遠程”前面板
    • 請注意,默認的HTTP端口是80。
  • LabVIEW 2010及更高版本:
    • 選擇“啟用遠程面板服務器” ,然後單擊“確定”
    • 在“遠程面板服務器”下選擇“遠程前面板”。
    • 請注意,默認的HTTP端口是8000。
  1. 將您的源代碼添加到項目中。
  2. 為您的VI構建網頁:
  • 選擇工具»網絡發布工具...
  • VI名稱下拉菜單中選擇要發布的VI
  • 查看模式配置為嵌入式快照監視器,然後單擊下一步
  • 編輯文檔標題頁眉頁腳,然後單擊“下一步”
  • 確保將HTML文檔保存在您的 在\ LabVIEW \ www目錄中,單擊“保存到磁盤”
  • 請注意在步驟10中使用的文檔URL。
  1. 右鍵單擊“我的電腦” ,選擇“添加»文件” ,然後從\ LabVIEW \ www目錄中選擇HTML文件,將步驟3中的HTML文檔添加到Project Explorer。

  1. 通過右鍵單擊構建規範並選擇新建»應用程序(EXE),保存項目並構建可執行文件。選擇源文件類別。然後,將頂級VI放置在啟動VI下,並將HTML文件放置在Always Included下。單擊“生成” ,然後在生成完成後單擊完成”。

  1. 將可執行文件和所有生成的文件複製到目標計算機。注意:目標計算機必須安裝了LabVIEW運行引擎,並且必須與用於開發可執行文件的LabVIEW版本相匹配。
  2. 在目標計算機上,瀏覽到您剛剛複制可執行文件的目錄。在文本編輯器中打開.ini文件。在Mac OS上,這將是.app xx偏好設置文件,其中xx是LabVIEW版本。執行以下操作:
  • 驗證令牌WebServer.Enabled = True存在。如果找不到,請將其添加到文件末尾。

  • 8.6之前的LabVIEW版本:
  1. 添加或修改WebServer.RootPath,以便將其值設置為HTML頁面當前所在的目錄(應位於應用程序的數據目錄中)。

  1. 將更改保存到.ini文件並關閉。
  • LabVIEW 8.6及更高版本:
  1. 關閉.ini文件,然後在文本編輯器中打開niwebserver.conf 。創建該文件是為了處理LabVIEW 8.6中LabVIEW Web服務器提供的新功能。
  2. 如果您的應用程序目錄中沒有niwebserver.conf文件,請啟動您的可執行文件一次,並應將其創建。創建.conf文件後,關閉可執行文件。
  3. 在標有適用於默認服務器的指令的第二部分中有一個DocumentRoot標記。將默認的LabVIEW \ www替換為HTML頁面當前所在的目錄(該目錄應位於應用程序的數據目錄中)。不要包含html文件的名稱。

  1. 在目標計算機上運行可執行文件。
  2. 將步驟4中URL中的開發計算機的名稱替換為目標計算機的IP地址,並在與運行可執行文件的計算機不同的計算機上的Web瀏覽器中導航至該地址。現在,您可以遠程查看和控制LabVIEW可執行文件。

Additional Information

故障排除:

問:我收到404網頁找不到消息。
答:有幾個步驟來嘗試解決此錯誤。
  • 確保您使用的是計算機的IP地址而不是計算機名稱。有關說明,請參見下面的Q / A。
  • 為您的程序使用其他端口。您將要確保新端口已被使用。端口8010通常是一個不錯的選擇。有兩種更改端口的方法。
  1. 您可以再次創建程序,然後在設置中選擇新端口。
  2. 打開您在設置“遠程前面板”中的步驟8中編輯的niwebserver.conf文件。在該文件中,它說的是“監聽頂部”,旁邊是端口8000(或您當前選擇的任何端口)。嘗試將其更改為8010或您決定使用的任何其他端口。
在格式為http:// TargetComputerIPAddress:Port / VIname.html的鏈接中,您需要將“端口”部分更改為您選擇的新端口號。
  • 右鍵單擊可執行文件,然後選擇``以管理員身份運行''。
  • 打開防火牆設置,以允許可執行文件通過防火牆訪問。如果您使用的是Windows防火牆,則可以通過打開Windows防火牆來執行此操作。然後選擇“通過Windows防火牆允許應用或功能”。然後單擊“允許另一個應用程序”。然後瀏覽至可執行文件的位置,然後選擇程序以使其通過防火牆。
  • 暫時禁用任何防病毒軟件,以查看其是否阻止您的程序通過防火牆。
  • 如修改主VI並重建可執行文件後發生此錯誤,則需要從新項目重建可執行文件以使用遠程前面板。
問:瀏覽器中的前面板應位於一個空白框。
:VI是使用ActiveX控件顯示的。有兩種方法可以使用ActiveX查看前面板。
  1. 在Internet Explorer中打開鏈接。如果您在屏幕底部看到一個提示您啟用ActiveX的按鈕,請單擊“允許”運行。
  2. 打開谷歌瀏覽器,然後在Chrome應用商店中找到“ IE標籤”。按照說明正確安裝該擴展。使用IE Tab擴展名打開指向“遠程前面板”的鏈接。
答:您缺少適當的運行時引擎。目標計算機必須安裝了LabVIEW運行引擎,並且必須與用於開發可執行文件的LabVIEW版本匹配。
問:我在LabVIEW(64位)中開發了帶有遠程前面板的VI。我將其內置到應用程序(EXE)中。我將此遠程前面板託管在開發計算機上。在客戶端計算機上,我具有LabVIEW運行引擎(64位,與開發系統版本相同)。當我嘗試使用Internet Explorer連接到遠程前面板時,將顯示VI的背景。但是,所有控件都丟失。
答: Internet Explorer默認情況下以64位程序運行。但是,每個選項卡都作為32位進程運行。因此,請下載並安裝相應的32位LabVIEW運行引擎。
問:我可以採取哪些步驟解決“此頁面無法顯示”錯誤?
A.嘗試將URL從http:// TargetComputerName:Port / VIname.html更改http:// TargetComputerIPAddress:Port / VIname.html 。另外,請確認防火牆允許訪問LabVIEW Web服務器正在使用的端口。對於LabVIEW 2009及更低版本,默認端口為80。對於LabVIEW 2010及更高版本,默認端口為8000。
問:為什麼我會收到錯誤消息,指出“指定服務器拒絕了遠程面板連接”
答:通常,此消息是由於LabVIEW版本不匹配而導致的。確保目標計算機上的LabVIEW運行引擎的版本與開發計算機上使用的LabVIEW版本匹配。
:其他程序是否使用與LabVIEW相同的默認端口?
答:端口80是許多Web服務器的默認端口。確保系統上的其他程序尚未保留此端口。


將遠程面板與安裝程序一起使用:

要為安裝程序啟用遠程前面板,請應用相同的想法。創建一個網頁。在您的項目中包含網頁。生成可執行文件,並將網頁包含在支持文件中。創建一個安裝程序,並將可執行文件包含在安裝程序的源文件設置下的安裝程序中。生成並部署安裝程序。最後,更改.ininiwebserver.conf文件。


許可:

默認情況下,2011年之前的LabVIEW版本包含一個遠程前面板許可證。這意味著一次可以與可執行文件的遠程前面板建立一個連接。如果您擁有LabVIEW Professional Edition,則您將獲得五個遠程面板許可證。為了訪問這些附加許可證(或您可能已購買的任何其他許可證),需要構建一個安裝程序,其中包含可執行文件以及“附加安裝程序”下的LabVIEW Deployable License。要在2011年之前購買LabVIEW版本的其他許可證,請使用部件號781841-3599。 LabVIEW 2011及更高版本的版本不需要遠程前面板的任何許可證,因此無需在安裝程序中包含許可證。

注意:如果在同一台計算機上使用Volume License Manager,則LabVIEW Web服務器不能允許多個連接。這是因為遠程前面板許可證與批量許可證管理器共享組件。