標籤:

MES在汽車製造中的應用之架構篇(5) -- Kepware OPC產品介紹

本章介紹在業內應用最廣泛的OPC產品:Kepware

OPC Server及其插件。

1. 什麼是OPC

OPC即OLE for

Process Control,用於過程式控制制的OLE。

而OLE即Object Linking

and Embedding,對象鏈接與嵌入。

比如WORD中插入一個EXCEL表格,就利用了OLE技術。

圖3.5-1 OPC的作用

如圖3.5-1所示,OPC的作用是將PLC數據塊(Data

Block)轉換成MES(通過OPC客戶端)能夠直接讀寫的內存變數(Tag)。

一般來說,如果PLC要和上位系統通信,通常會把數據存儲在專用的介面數據塊中,並且為每個數據塊規劃好專有結構,如:

但是這些數據塊的地址是無法被MES直接訪問的。

而經過OPC映射後,這些PLC變數和一般的IT伺服器內存變數在形式上已經沒有了區別,OPC伺服器能夠直接對這些PLC變數進行讀寫操作。

而我們可以在MES上部署OPC客戶端,對這些變數進行訪問和讀寫。

目前OPC協議主要有兩種:OPC

DA和OPC UA。

OPC DA即OPC Data

Access,這個協議基於微軟的DCOM技術實現,已經用了很多年,非常成熟,但是只能部署在WINDOWS平台。由於DCOM的限制,OPC DA的安全性不高,配置也較繁瑣。

OPC UA即OPC Unified

Architecture,是跨平台的,可以部署在LINUX+JAVA環境下,但是目前應用還不是很廣泛。

2. DataLogger

DataLogger是Kepware的一個插件,能夠將OPC變數的值自動記錄到資料庫中。

對於一般的PLC數據採集需求來說,這個插件已經足以滿足了,它只需要一些簡單的配置,不需要任何的代碼開發。

數據存到資料庫里以後,可以通過編寫資料庫存儲過程或者應用層邏輯,來對數據進行業務處理。

比如我們要對一個舊工廠的衝壓車間實施PMC,採集設備狀態信息,那麼我們可以利用OPC DA + DataLogger來採集數據,然後在資料庫里編寫觸發器和存儲過程來對數據進一步處理。

3. ODBC Driver

DataLogger只能對資料庫進行寫操作,不能進行讀操作,因此數據只能從PLC向MES上行傳輸。

但某些時候,我們需要讀資料庫。

比如我們要對焊裝車間增加訂單下發和時間同步功能,那麼我們可以利用ODBC Driver插件來實現。

ODBC Driver把資料庫作為一個設備進行管理,調用ODBC引擎實現資料庫連接和讀寫操作。

我們可以建立兩個介面表,一個用於存儲當天工單,一個用於存儲時間同步信號。

OPC伺服器通過這兩個表來讀取信息,然後將數據通過OPC DA寫到PLC中。

4. Advanced Tags

Advanced Tags是一組插件,這裡介紹應用較多的Link Tag。

Link Tag能夠將一個變數的值自動寫入另一個Tag。

這裡介紹兩個應用案例。

案例1:PLC通信。如區域A進行裝配,區域B執行檢查。當區域B檢查出現問題時,通過ANDON系統通知到區域A PLC。由於區域A和區域B之間距離較遠,且工藝上沒有數據交互。因此,我們可以在不增加硬體設備(如耦合器)的情況下,通過OPC DA + LINK TAG來實現2個區域PLC之間的通信。

案例2:PLC數據上傳到MES。DataLogger儘管能夠寫資料庫,但是它有一個很大的限制:只能增加行記錄(INSERT)。而ODBC DRIVER能夠更新介面表(UPDATE)。因此我們可以通過OPC DA來監控PLC變數,再通過LINK TAG將PLC TAG映射到ODBC DRIVER對應的介面表。詳細實現,可參考我的文章《通過KEPWARE ODBC DRIVER和ADVANCED TAG 實現資料庫和PLC的雙向通信》。

5. IoT Gateway

IoT Gateway即Internet of

Things Gateway物聯網網關。

Kepware以插件的形式提供了4種網關:

- MQTT客戶端

- REST客戶端

- REST伺服器

- ThingWorx網關

前3種都可以很方便地配置使用。

MQTT即Message Queuing Telemetry Transport,是一種專門用於遠程窄帶網路的消息隊列服務協議。比如在一些機加車間,網路信號不穩定,那麼我們可以在不改造網路的情況下,利用此客戶端來採集PLC數據。

REST即Representational State Transfer可重新表達的狀態遷移,是一種應用較廣泛的實時可靠的IT信息傳遞方式,目前在很多場合取代了Web Service進行部署。

REST客戶端能夠偵測PLC變數,一旦發生變化,則自動調用MES REST伺服器,將數據上傳給MES。比如AVI系統的車輛過站記錄,能夠通過REST客戶端實時上傳。

REST伺服器提供了一個監聽器,將PLC變數暴露出來,MES可通過REST客戶端來執行特定的指令。如MES要凍結某個工單,則可通過REST調用將信息實時寫入PLC。


推薦閱讀:

MES在汽車製造中的應用之架構篇(7) -- 松耦合與緊耦合
MES在汽車製造中的應用之業務篇(11) -- 打刻、加註、塗膠防錯

TAG:MES |