工業 4.0 和物聯網(IoT)都是需要設備和服務端之間具有高度聯網和強大通信能力的理念。從傳感器到 IT 層必須交換大量數據。基于 PC 控制技術的協議和標準使得它非常適合用于此項任務。推動物聯網和工業 4.0 理念可行的另一個基本因素是 SOA(面向服務的架構)PLC。通過 Web 服務訪問PLC 已經不是新技術了 — 那么什么是 SOA?在“SOA-PLC”中究竟什么才是新技術?以及它可以帶來什么附加值?
工業4.0 理念能夠實現高速、高動態的生產,需要設備和服務端之間具有合適的聯網和通信。它們彼此間必須能夠直接通信。傳感器、測量設備、RFID芯片、PLC 控制器、 HMI、MES和 ERP 系統都為企業提供重要的生產數據。在傳統的控制架構中,數據需要事件驅動或循環啟動,并總是響應“來自上層” — 即來自客戶端層的請求。下層總是用作服務器和應答機制:可視化,例如,可以從PLC 請求狀態數據或傳輸新的生產配方到 PLC。第一步是將電傳感信號轉換成數字信息。然后在PLC 內分配一個時間戳,并通過其它服務端將信息傳輸給 MES-IT 層(圖1)。
圖 1:未來,傳統的‘自動化金字塔’的層級結構將通過在所有層集成 OPC UA 的方式變為自動化服務網絡。設備和服務端相互間將通過調用 SOA 服務的方式直接“對話”
有了工業4.0,這種嚴格的層級分離和信息流自上而下的方法將開始軟件化和混合。在一個智能網絡中,每臺設備或服務都可以自主地發起與其它服務端的通信。
B2B – B2M– M2M
一般來說,所有在工業4.0 中定義的通信場景和IoT組可以從一個抽象的角度分成兩個通信架構環境:一方面是“硬實時”服務(即在自動化方面,如確定性 PLC 用于完成控制目的),另一方面是“軟實時”環境中的服務,例如在一個 IT 環境中(圖2)。
圖 2:在通信環境中,可以分成“IT”和“自動化”三個可能的通信轉換,不管是“硬”還是“軟”實時需求:“B2B”、“B2M”和“M2M”。
準確說,這將導致出現三個可能的通信轉換,正如工業 4.0 WG2 執行委員會定義的那樣:
1.“B2B”通信:兩個業務進程相互通信。示例:一個 ERP 應用程序與一個MES 程序交換信息。例如,HMI 和 MES、MES和 MES 或傳感器和云之間的交換可以在任何地方在幾毫秒到幾分鐘的時間內完成。
2.“B2M”通信:一個“軟實時”進程與一個“硬實時”進程通信。示例:一個業務應用程序與一臺機器交換信息。例如HMI 和 PLC 或 MES 和PLC 控制器之間的實時數據交換所需的時間從幾毫秒到幾分鐘不等。
3.“M2M”通信:自動化環境中的兩個進程相互間進行“硬”或“軟”實時通信。示例:一個機器人平臺控制器與一個手持式機器人控制器橫向交換控制信息。數據交換可以在一個從微秒到毫秒范圍內的確定性的硬實時周期內完成。另外一個示例:兩個控制器以橫向 — 高速(在“軟”實時中)、循環及獨立于現場總線的方式交換數據。
在這里,確定性可以看成是一個“服務質量(QoS)”,具有通信過程可能滿足或不能滿足的某些要求;這些要求會由一個保障期限定義,如100微秒的響應時間。
術語“M2M”已經被應用到移動無線通信中,在這里,M2M 指的是通過移動通信實現設備與IT 進程之間的連接。M2M 存在于使用 SIM 卡的技術。
不管是什么時期,最終都將定義為三個類別,事實是,在物聯網和工業4.0 中,通信將不再基于純數據和數據通信的互操作性。重點將會放在信息模型的交換上,即語義互操作性上。一個重要的因素將是傳輸的完整性和具體數據或服務訪問權限的安全性。所有這些要求都是OPC 統一架構(OPC UA)的重要方面。它包含一個描述語言和信息模型的通信服務。作為一個IEC 62541 標準,OPC UA 設計用于映射其它組織,如BACnet、PLCopen、IEC61850、AIM AutoID和MES-DACH,的信息模型。根據德國聯邦信息安全局(BSI),OPCUA 中集成的“安全性設計”比其它協議中的要好很多,由于它與工業 4.0 有高度相關性,因此正在當前的一個項目中進行評估。
由于標準化的數據整合,以及它們的結構和目的(元數據),OPCUA 特別適合用于機器間的分布式智能應用,而不需要更高級的智能或者中央知識。OPC UA 組件的功能可以升級并已可在傳感器層使用(例如風力發電機制造商Areva的當前傳感器內存使用,從240 kB閃存和 35 kB RAM 開始),直到SAP 系統。
PLCopen:PLC中的 OPC UA 客戶端功能
對于“啟動通信”任務,PLC 控制器必須有一個客戶端組件— 非常適合用作一個標準組件。2006 年 10 月,Beckhoff提議定義基于OPC UA 的PLCopen通信模塊。三年后,PLCopen和OPC UA 工作組在Beckhoff的主持下成立。2010年,OPC UA(服務器)的IEC 61131-3 信息模型的映射用作一個共同的規范。實際上,這意味著一個符合IEC 61131-3 標準的 PLC 程序可以使用不同廠商不同的專用工程工具加載不變的IEC。控制器通過 OPC UA 讓它們的數據和信息可以以語義上相同的方式在外部使用,例如用于可視化和MES/ ERP 任務。這顯著減少了工程工作量。例如,在帶有 20 個數據點的功能塊實例中,它現在足夠鏈接單個實例對象— 甚至可以為不同的制造商以相同的方式執行,而不是鏈接每個單獨的數據點到可視化掩碼或一個 MES 系統。
其它建設性的小組作業的成果是2014 年四月在采用PLCopen規范“OPC UA 的客戶端功能塊用于IEC61131-3”的形式下完成了下一步工作。通過這種方式,控制器可以在通信中發揮主動、引導作用,或用作常用分布式角色的替代方案(圖3)。
圖 3:PLCopen/OPCUA 客戶端模塊能夠實現獨立于現場總線的高速通信。集成有 OPC UA客戶端的TwinCAT PLC 啟動數據通信。
因此,PLC可以與其它控制器橫向交換復雜的數據結構或在 MES/ERP 系統內的OPC UA 服務器中縱向調用方法,例如,以檢索新的產品訂單或將數據寫入云服務器中。這樣可以讓生產線獨立運行(圖4)。
圖 4:用于方法調用的框圖
客戶在很早就意識到這些功能塊的潛力并從Beckhoff的實施中獲益。來自VogtlandWater and Wastewater Association 的SilvoMerz使用緊湊型CX9020 嵌入式控制器構成 300 個本地水管理系統間的智能網絡。實際的對象,如泵,在IEC 61131-3 PLC 控制器中建模成帶交互選項的復雜對象。因為 OPC UA 服務器集成在控制器中,這些對象可自動作為復雜的數據結構提供,用于實現與外部世界聯系的語義互操作性。其結果是構成一個分布式智能系統,可以獨立做決定,并傳輸信息給它的“鄰居”或為其自己的進程查詢狀態和進程值,以確保無故障的進程循環。有了標準化的PLCopen功能塊,設備可以獨立地啟動通信— 從 PLC 到其它作為 OPC UA 客戶端的工藝設備—而同時,能夠對它們的請求或作為 OPC UA 服務器的上位系統(SCADA,MES,ERP)的請求做出響應。SilvioMerz對該解決方案十分熱心,無論從技術還是商業角度:“先前專用的解決方案換成CX9020 和集成式 OPC UA 客戶端和服務器,從而節省超過90% 的初期授權成本?!?/span>
調用OPC UA 方法的一個實際方案已在 2013 年的漢諾威工業博覽會上向人們展示過了。Beckhoff的PLC 用作 OPC UA 客戶端并在公司iTAC的MES 系統中調用方法。一個RFID 代碼和過程數據作為輸入參數傳輸,在 MES 系統中注冊,檢查并分配“OK”或“失敗”等級。調用的方法確保性能和數據一致性(圖5)。
圖 5:無握手的高效通信:TwinCATPLC 通過一個 OPC UA 方法調用將RFID 信息傳輸給 MES 系統并將一個用于下一步驟的指令作為返回參數接收
SOA(面向服務的架構)PLC
通過在OPC UA 服務器中映射 IEC 61131-3 以及PLCopen功能塊的使用,PLC制造商已經奠定了重要的基礎。在其它設備中從 PLC 調用OPC UA 服務的選項是一個“B2M”方案的使能技術。例如,PLC 能夠在視覺/攝像頭應用程序或RFID 閱讀器中調用一個服務,與 PLC 直接通信,或者將大數據應用程序的數據傳輸給云。PLC 可以調用這些方法,但它如何能夠自行提供服務,并通過容易處理的方式?
TwinCAT 3 為實施IEC 61131-3、C++ 和MATLAB?/Simulink? 模塊提供了選項,將它們裝載到不同的 CPU 內核,并在不同的實時內核中運行這些模塊,同時確保它們相互間可以繼續可靠地交互。這一切的基礎是TwinCAT模塊語言,它描述了模塊的特性,例如關于過程參數或方法。
對于PLC 編程人員來說,實施工作是很簡單的:PLC 方法(可自由選擇的輸入/輸出參數)可以用作為一項在OPCUA 服務器中調用的服務,通過添加一個簡單的“Pragma”指令行集成在 PLC 控制器中。在IT 安全和允許集成到 OPC UA 協議中的基礎上,每個OPC UA 客戶端都可以瀏覽TwinCAT OPC UA 服務器并調用所需的服務,這些與操作系統和編程語言無關,確保數據一致性(圖6)。
圖 6:IEC61131-3 PLC 中的方法可以批準用于外部應用
優勢:SOA-PLC 中高效、數據一致的服務
目前,MES層和 PLC 之間的數據交換通常通過耗時的握手程序進行。例如,MES 系統將配方信號傳輸給控制器,然后PLC 確認準備就緒。一旦配方數據接收完畢,就確認傳輸。SOA-PLC 現在能夠在一次通信中將數據傳輸給控制器:數據值不再多次交換,而是作為一次服務通過輸入參數(配方)和輸出參數(通過PLC 確認)處理。換句話說,OPC UA 使得遠程過程調用(RPC)直接可用于編程PLC 功能塊。這將顯著縮短 PLC 和 MES 系統之間通信往返時間,并能夠帶來更高的生產能力。此外,它會大大降低車間和最高層之間數據鏈路的工程成本。
目前的狀況和未來前景
SOA-PLC 不僅僅是簡單地支持Web 服務(直到 PLC),通過 VPN 確保安全。它還包含了針對實時和歷史數據、報警和服務(方法)的面向對象的數據通信— 包括與所需的安全直到服務和數據層相應的安全鏈接,包括信息模型的建模能力 — 所有這些都基于國際IEC 標準。
現在,將OPC UA 服務器和客戶端功能集成到控制器中使得實施智能網絡成為可能,并同時確保服務層訪問權限的高安全標準。未來,信息模型的交換將變得越來越重要。那時,PLC應該不再需要通過帶過程數據的 OPC UA 將自己作為IEC 61131-3 控制器在外部世界中展示,而是作為一個電流表,例如,要符合由測量設備制造商協會制定的規范。嵌入式控制器中使用的操作系統將不再是從外部可見的;出于安全原因,所有的端口都將關閉— 設備將只能通過 OPC UA 提供其SOA 服務,確保服務和數據層的安全。除了數據和方法調用之外,“數據通過 OPCUA傳輸”提供了有趣的選項,不僅針對本地離線測量數據記錄,而且還針對其它任務,如設備管理。
圖 7:從 MES 調用方法到PLC 提高了先前耗時的數據握手機制的性能。
作為德國電氣、電子和信息技術委員會(DKE)工業4.0 標準化路線圖上唯一的 IEC 標準化 SOA 架構,OPCUA 具有將自己打造成為工業 4.0 和物聯網應用中數據和信息交換業界標準的潛力。因此,從傳感器到IT 系統的安全、橫向和縱向通信在今天已經是可行的了。Beckhoff在很早的時候就挖掘出了OPC UA 的潛力,如今可以提供集成有 OPC UA 客戶端和服務器的SOA-PLC,即使是最小的 CX 系列嵌入式控制器系統?;赑C 的TwinCAT軟件中的控制架構— 它可以在各種設備類別上運行— 可以與各種Beckhoff I/O 端子模塊和EtherCAT集成安全性能配套使用,這些都為滿足未來所有工業4.0 要求提供了一個理想的、性能可擴展的平臺。
作者:Stefan Hoppe, Beckhoff的TwinCAT產品經理,PLCopen和OPC 工作組組長,OPC 歐洲委員會主席
(審核編輯: 智匯胡妮)
分享