使用OPC將LabVIEW連接到任何PLC

更新 Apr 4, 2023

環境

軟體

  • LabVIEW
  • LabVIEW Datalogging and Supervisory Control Module
  • OPC Servers

操作系統

  • Windows

NI LabVIEW軟體可以通過多種方式與任何可編程邏輯控制器(PLC)通訊。用於過程控制(OPC)的OLE定義了用於在控制設備和人機界面(HMI)之間傳遞實時工廠數據的標準。 OPC伺服器幾乎可用於所有PLC和可編程自動化控制器(PAC)。在本教程中,將學習如何使用LabVIEW通過OPC與聯網的PLC通訊。

本教程使用了LabVIEW資料記錄和監控(DSC)模組。該模組包括用於將資料記錄到聯網的歷史資料庫,實時和歷史趨勢,管理警報和事件,將LabVIEW Real-Time目標和OPC設備聯網到一個完整系統中的工具,以及為用戶界面增加安全性的工具。憑藉這些功能,LabVIEW成為用於工業控制應用程式的功能強大的HMI / SCADA軟體包。

使用NI OPC伺服器2012查看現有的PLC標籤

本節中的步驟適用於NI OPC Servers 2012,但是類似的步驟可用於NI OPC Server的早期版本。

  1. 選擇Start»All Programs»National Instruments»NI OPC Servers 2012»NI OPC Servers,啟動NI OPC Servers 2012 使用NI OPC Servers 2012,您可以創建,配置和查看與PLC相關的標籤。
  2. NI OPC Servers 2012應在已加載PLC模擬專案的情況下啟動。該專案模擬了NI OPC Servers 2012中已經創建和配置的PLC。

請注意:如果該模擬專案尚未加載到NI OPC Servers 2012中,請選擇File»Open…,然後瀏覽至C:\Program Files\National Instruments\Shared\NI OPC Servers\V5\Projects\simdemo.opf。該專案應如圖1所示。

圖1. NI OPC Servers 2012顯示模擬的PLC

  1. 通過展開“Simulation Examples”並選擇“Functions”來查看Sine標籤。標籤將填充在最右邊的視窗中。這些與PLC上的暫存器綁定的標籤可以由LabVIEW讀取。
  2. 查看PLC的OPC變數中的數據
    1. 在NI OPC伺服器2012,通過選擇Tools>>Launch OPC Quick Client,你可以用它來查看OPC標籤數據啟動Quick Client 。
    2. National Instruments.NIOPCServers.V5資料夾下,選擇Simulation Examples.Funtions 。這將選擇要監視的設備。
    3. 請注意,所有Sine標籤都填充在最右邊的視窗中,並使用模擬的正弦數據進行更新,如圖2所示。
圖2. NI OPC Quick Client顯示模擬的正弦OPC標籤

通過創建I / O伺服器將LabVIEW連接到OPC標籤

在本節中,您將創建一個連接到OPC標籤的LabVIEW接口,稱為I / O伺服器。 I / O伺服器會以您指定的速率自動使用當前標籤值更新LabVIEW。

  1. 在LabVIEWGetting Started視窗中,單擊File»New Project。這將打開一個新的LabVIEW專案。
  2. 如果“Context Help ”視窗被隱蔽,請按Ctrl + H以顯示該視窗。使此視窗保持打開狀態,以獲取有關鼠標下方項目的有用訊息。
  3. 在LabVIEW Project視窗中,右鍵單擊My Computer,然後選擇New»I / O Server ,如圖3所示。

圖3.通過LabVIEW專案創建新的I / O伺服器
  1. 在“Create New I/O Server Window”視窗中選擇“ OPC Client” ,然後單擊“Continue”。
  2. 從“Registered OPC servers”字段中選擇National Instruments.NIOPCServers.V5 ,並將Update rate (ms) 設置為100。這將創建一個從LabVIEW到OPC標籤的連接,該連接每100 ms更新一次。

圖4.配置OPC客戶端I / O伺服器
  1. 選擇OK。在項目 project explorer視窗中會自動創建一個庫來管理I / O伺服器。
  2. 通過從project explorer視窗中選擇File»Save All保存,將專案另存為OPCDemoProject,將庫另存為OPCDemoLibrary。

創建通過I / O伺服器連接到OPC標籤的共享變數

在本節中,創建綁定到OPC標籤的共享變數,使您可以在LabVIEW中本地存取PLC數據。使用共享變數,您可以在一台電腦或整個網絡上的LabVIEW應用程式之間共享數據。

  1. 創建綁定到PLC的OPC變數的新共享變數。
  2. a.在LabVIEW專案視窗中,右鍵單擊我的電腦,然後選擇New»Library。這將為共享變數創建一個新的庫,該庫用於連接到PLC的OPC變數。
           b. 右鍵單擊新創建的庫,然後選擇“Create Bound Variables…”。
           c. 在“Create Bound Variables”視窗中,通過從OPC伺服器向下瀏覽到模擬的正弦數據來選擇將共享變數綁定到的OPC標籤,如圖5所示。
圖5.選擇要綁定到共享變數的OPC標籤
  1. d.選擇所有正弦項,然後單擊“ Add”和“OK” 。這將創建綁定到PLC的OPC變數的共享變數,並將它們加載到Multiple Variable Editor中。
           e.在“Multiple Variable Editor”中,選擇“Done”。這會將新的共享變數添加到之前創建的庫中。

請注意: LabVIEW DSC模組通過添加將數據,警報和事件直接記錄到數據庫的功能來增強共享變數,而無需編寫LabVIEW應用程式。

  1. 通過右鍵單擊庫並選擇Save As,在project explorer視窗中將新庫另存為OPCItems.lvlib。
  2. 通過右鍵單擊OPCItems庫並選擇Deploy部署共享變數。這將發布共享變數,使共享變數在網絡上可用於其他電腦,OPC客戶端和LabVIEW Real-Time PAC

現在,您可以通過共享變數在LabVIEW中本地訪問PLC數據。

使用Distributed System Manager查看共享變數

  1. 在Project Explorer 視窗中,選擇Tools»Distributed System Manager。這將打開一個視窗,您可以使用該視窗以各種方式(查看,部署,取消部署等)來管理共享變數。
  2. 在“Variable Manager”的“樹”窗格中,展開“ My Systems”類別下的localhost項目。右鍵單擊OPCItems庫,然後選擇“Watch List 以顯示共享變數,這些共享變數綁定到PLC的OPC變數。
  3. 共享變數將使用模擬的正弦數據進行更新。

請注意:Distributed System Manager是LabVIEW 8.6中的新增功能。 LabVIEW的早期版本通過轉到Tools»Shared Variable»Variable Manager,然後將共享變數拖到Watched Variables: window中來執行此操作。

在LabVIEW中使用OPC標籤數據

  1. 在project explorer中,右鍵單擊My Computer ,然後選擇New»VI。這將創建一個新的虛擬儀器或VI。 VI用於創建用戶界面和可執行的圖形程式碼。
  2. 默認情況下,您會看到Front Panel,這是VI的用戶界面。 LabVIEW具有許多內置的UI組件,例如圖形,圖表,刻度盤等,可用於構建功能強大,直觀的UI。選擇View»Controls Palette,或右鍵單擊Front Panel上的任意位置以呼叫控件面板。將滑鼠懸停在各個類別上,以探索LabVIEW中的UI組件。
  3. 通過選擇Express»Graph Indicators»Chart從Controls面板中選擇一個波形圖,並將其放置在前面板上,如圖6所示。
圖6.從Controls面板中選擇一個波形圖
 
圖7.放置在前面板上的波形圖
  1. 在VI中,選擇Window»Show Block Diagram 或按Ctrl + E以顯示Block Diagram。Block Diagram是您構建應用程式行為的地方。請注意Block Diagram上的圖標,該圖標代表Front Panel上的圖表。通過將數據傳遞到此終端,可以將其顯示在Front Panel的圖表中。
  2. 在project explorer中,展開OPCItems庫,然後選擇Sine1的hared變數。
  3. Sine1共享變數從project explorer拖放到VI的Block Diagram中。共享變數充當Block Diagram上其他終端的數據源。
  4. 選擇 View»Tools Palette,或按Shift +右鍵單擊以顯示工具選項板,其中包含用於構建Block Diagram的各種工具。默認情況下,您使用 Automatic Tool Selection工具,該工具會根據滑鼠的位置選擇適當的工具。
  5. 選擇“Connect Wire tool”工具,如圖8所示。此工具用於將終端接線到Block Diagram上。
圖8.選擇連接線工具
  1. 通過單擊Sine1共享變數,然後單擊waveform chart ,使用Connect Wire工具將Sine1共享變數連接到waveform chart ,如圖9所示。
將終端接線在一起
接線終端
圖9.連接Block Diagram項目

現在,當VI運行時,數據從共享變數流向波形圖。

  1. 從工具面板中選擇Automatic Tool Selection工具。
圖10.從工具面板自動選擇工具
  1. 通過選擇View»Functions Palette或在Block Diagram上的任意位置單擊滑鼠右鍵,打開“Functions”面板。 “Functions”選板包含數百個分析功能,控制功能和圖形化編程結構。
  2. 導航到Programming»Structures»While Loop,從“Functions”選項板中選擇一個while迴圈。選擇while迴圈後,將出現如圖12所示的鼠標。這使您可以將while迴圈包裝在一段程式碼中。
圖11.選擇一個While迴圈
圖12. While迴圈鼠標
  1. 使用while迴圈鼠標,通過單擊並拖動鼠標在共享變數和波形圖周圍放置while迴圈。現在,通過右鍵單擊“Loop Condition”並選擇“Create Control”,在while迴圈中創建一個Stop控件。這會在Front Panel 上放置一個“Stop”按鈕,允許用戶停止VI。
圖13.在共享變數和波形圖周圍放置一個While迴圈
 
while迴圈使其中的程式碼連續執行,直到被用戶或VI中的其他邏輯停止。
 
  1. 由於while迴圈是現在式的,它將盡可能快速地運行。Wait Until Next ms Multiple VI應添加到迴圈中,以使迴圈每隔設置的秒數執行一次,在這種情況下為100ms。
圖14.在While迴圈中添加timing
  1. 通過選擇Window»Show Front Panel或按Ctrl + E返回 Front Panel
  2. 單擊工具欄上的Run 按鈕以執行VI。
圖17.運行按鈕
  1. 部署完成後,單擊Deploy…視窗口上的Close。當應用程式開始執行時,您會在波形圖上看到Sine1正弦波。
圖18.完成的 Front Panel–在波形圖上顯示PLC數據

恭喜您!您已在LabVIEW應用程式中成功存取了PLC數據,因此可以在解決方案中合併強大的分析和控制功能。