OPC與LabVIEW的通訊方式

更新 Nov 16, 2023

產品資訊

軟體

  • OPC Servers
  • LabVIEW OPC UA Toolkit

問題敘述

我想在LabVIEW中使用OPC通訊。我需要哪些軟體?

解決方案

您可以在LabVIEW中使用LabVIEW OPC UA Toolkit 、LabVIEW 資料​記錄​與​監​控 (DSC) 模組 或LabVIEW的內建功能使用OPC。LabVIEW與OPC互動的方法根據您使用的是OPC DA、OPC UA通訊協定以及您正在使用的LabVIEW版本會有很大的差異。
 

相關資訊

使用LabVIEW DSC 2013 - 2016或LabVIEW 2017 OPC UA Toolkit的OPC UA API與OPC UA Server通訊

從LabVIEW 2013到2016,LabVIEW DSC模組包含一個API可在OPC UA 伺服器(servers)和客戶端(clients)之間以程式化的方式通訊和交換數據。從LabVIEW 2017開始,OPC UA Toolkit從LabVIEW DSC模組獨立出來,成為一個獨立的LabVIEW工具包(toolkit)。請參閱Using OPC UA Servers and Clients (DSC Module or Real-Time Module)來取得更多的相關資訊。


使用共享變數(Shared Variables)讓OPC Server與LabVIEW DSC 8.0(或更高版本)通訊

從LabVIEW 8.0開始,LabVIEW DSC模組擴展了Shared Variable Engine(SVE)的功能,允許LabVIEW作為OPC DA client。 OPC server的功能則由單獨的NI OPC Servers軟體提供。請參閱Connect LabVIEW to Any PLC Using OPC來取得更多的相關資訊 。

使用Tag Engine讓OPC Server與LabVIEW DSC 7.1(或更先前版本)通訊

LabVIEW DSC Engine(Tag Engine)能幫您處理OPC的設定。由於LabVIEW Datalogging and Supervisory Control是一個OPC Client,所以在OPC模式下操作的效率比較高。如果您有超過30個I / O點,使用DataSockets的方式會犧牲效率。在30個I / O點內的情況下,您應該考慮使用LabVIEW DSC和Tag Engine。

由於LabVIEW DSC是OPC server,OPC client可以啟動Tag Engine。當OPC client啟動Tag Engine時,Tag Engine會載入當前的.scf檔。然後,Tag Engine可以載入該.scf檔中標記的的任何servers。但是,OPC client無法指定Tag Engine應該使用哪個.scf檔。Tag Engine將僅使用當前默認的.scf檔,因此您必須確保將正確的.scf檔設置為默認(default),以確保訪問正確的servers。

當您從作為OPC server的Tag Engine訪問數據時,client軟體(例如Lookout或其他OPC client軟體)將Tag Engine視為名為National Instruments.OPCLabVIEW的OPC Server,而.scf檔的名稱則顯示為OPC的項目名稱。


通過DataSocket與OPC Server通訊

DataSocket協議有一個OPC層,允許您使用DataSocket讀取和寫入OPC Server。從LabVIEW 5.1開始,任何版本的LabVIEW都可以作為DataSocket Client連接到OPC Server。

LabVIEW內建了一個演示上述流程的範例程式。要使用LabVIEW中的該範例程式,請到Help » Find Examples以打開LabVIEW Example Finder。一旦到Example Finder內,接著點擊Browse ,然後導引到Networking » DataSocket » OLE for Process Control (OPC) ,您將看到範例(Monitor OPC Items with DataSocket.vi)。

注意 :DataSockets無法與OPC Server 3.x通訊