第三章 OPC UA與産業更新
3.1 OPC UA對于控制層的意義和構想。
OPC 為不同控制器之間以及控制器和MES/管理
系統之間的通信打下了堅實的基礎。
大量的控制器(PLC)和MES系統廠商隻專注于自己的專業領域,而OPC UA提供了一個縱向通信來打通這一點,并提供了标準的接口,且更加安全、實用。
控制器層面所有的相關内容都可以被認為是面向服務控制(SoA-PLC)的基本準則。而控制器的實時性通常由釋出-訂閱模式來實作。
由于TCP/IP協定的資料完整性需要通過重發來保證,是以缺乏PLC所需要的實時性。(現在機器人行業常用的ROS1通過UDP協定來實作釋出訂閱,ROS2則利用DDS來實作)
其中的難點在于:
實時域(PLC)與非實時域(OPC UA)之間的資料傳輸要如何定義接口與傳輸方式。
PLCopen:控制層映射及功能塊
PLCopen國際組織根據不同的國際标準,針對控制器設計定義了許多重要元件(如運動控制)。
他們也釋出了兩個技術規範:
- 《PLCopen OPC UA資訊模型》:如何在OPC UA環境中描述IEC 61161-3 所定義的資料類型、功能塊和資料結構等。(也就是OPC UA到IEC 61161-3 的映射)
- 《PLCopen OPC UA UA IEC 61161-3用戶端》:如何利用PLCopen功能塊以用戶端角色發起 OPC UA通信
功能塊:
OPC UA 釋出-訂閱模式
用戶端-伺服器模式更适合非實時、異步的資料通信。
實時通訊通常使用基于以太網的現場總線協定,如EtherCAT等。此時資料傳輸模式為釋出-訂閱模式。
OPC UA正在對标準的釋出者-訂閱者通信模式進行擴充, 以便同時支援典型的、标準的OPC UA資料呈現,以及目前所欠缺的實時加密的1:n通信方式。新的标準在工業4.0架構中同時支援基于UDP\IP的資料傳輸(實時)和基于其他協定(AMQP\MQTT)的資料傳輸(非實時)。
當不同廠商的控制器采用UDP\IP協定進行資料交換時,它所帶來的好處:
隻要通信部份在控制器固件的實時域内實作,系統就自然獲得了資料交換的實時性。
OPC UA确立标準,不同廠商控制器都需要資訊交換,可實作更簡單便利的實時通訊。
行業資訊模型
OPC UA在控制器領域内還支援所謂的行業伴随标準。
OPC UA元模型(metamodel)的基礎上定義用于描述特定應用領域内的專用資料類型、執行個體和關系。可以從原來的行業标準–映射到OPC UA伺服器中。
典型示例:
- OPC UA ADI(分析儀裝置內建,Analyzer Device Integration)标準
- AMI(自動識别、資料采集以及移動資料通信)協會的AutoID标準
無需對裝置做更多配置(定義行業相關資料類型和方法),就可直接對其進行通路。
借助OPC UA特定應用域模型的确立,長久以來讨論中的即插即生産(plug-and-produce)理念才有可能成為現實。
控制器層面的兩個可能性:
- 通過控制器模拟這些裝置
- 為控制器添加額外的用于與行業裝置通信的庫函數。
OPC UA以XML格式描述行業伴随标準,且類型和執行個體的編碼位于節點集合内。OPC UA伺服器可以友善地加載或者導入這些資訊模型。而控制器廠商隻需要确定規則,将節點集合内的資料點與控制器上的實際資料點連結起來。
UA-Nodeset
上述行業伴随标準開源可下載下傳:UA-Nodeset
每個标準下有這些檔案:
- .NodeSet2.xml - The formal definition of the Nodes defined by the specification;
- .Types.xsd - The XML schema for the DataTypes defined by the specification;
- .Types.bsd - The OPC Binary schema for the DataTypes defined by the specification (obsolete);
- .NodeIds.csv - A CSV file containing the NodeIds assigned to Nodes defined by the specification;
通常如其名稱所述,為節點、類型的節點集合,偶爾也有資訊模型檔案。不同領域互相還有引用。
例如Robotics的Nodeset就需要依賴于DI的Nodeset。
<UANodeSet xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" LastModified="2019-05-06T00:00:00Z" xmlns="http://opcfoundation.org/UA/2011/03/UANodeSet.xsd">
<NamespaceUris>
<Uri>http://opcfoundation.org/UA/Robotics/</Uri>
<Uri>http://opcfoundation.org/UA/DI/</Uri>
</NamespaceUris>
<Models>
<Model ModelUri="http://opcfoundation.org/UA/Robotics/" Version="1.0.0" PublicationDate="2019-05-06T00:00:00Z">
<RequiredModel ModelUri="http://opcfoundation.org/UA/" Version="1.04" PublicationDate="2019-05-01T00:00:00Z" />
<RequiredModel ModelUri="http://opcfoundation.org/UA/DI/" Version="1.02" PublicationDate="2019-05-01T00:00:00Z" />
</Model>
</Models>
基于SoA-PLC的TwinCAT概念
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIiNx8FesU2cfdGLwczX0xiRGZkRGZ0Xy9GbvNGLwIzXlpXazxSM5clYxkzViVnRykVQClGVF5UMR9Fd4VGdsATNfd3bkFGazxycykFaKdkYzZUbapXNXlleSdVY2pESa9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZwpmLlRjZ2ADN4YGZ1UTMxQzMiZDZ5QjNjRjYzUDNhNTMjFzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
此現代控制器能夠與其他基于OPC UA的控制器或控制系統無障礙資料交換和互操作。
控制器為核心,主要任務為實作實時邏輯處理和控制相應的輸入輸出信号。
資料由實時域采集,opc ua向外部提供。
基于軟PLC概念(控制器核心運作于通用PLC和實時作業系統平台)
- 最内層的工程化、診斷、檢測等借助OPC UA服務。
- 提供自定義類型和高附加值功能(提高語義層面互操作性)
- 最外層(傳輸層),具體的資料通信,分為兩種形式:基于TCP/IP的用戶端-服務端,基于UDP的釋出訂閱模式。包括網絡安全保護機制。
控制器中的opc ua的現狀和未來
獨一無二,資料通信、基于類型的系統和網絡安全技術的整合。
3.2 西門子控制器中的opc ua
管理層:制造執行系統(MES)
操作者:資料采集于監視控制系統、工程結構、能源管理
控制層:PLC、HMI、工業PC、通信、運動控制、CNC數控
現場級:電源、工業辨別、分布式輸入輸出、電機驅動器、工業控制器
OPC UA可以與PROFINET在同一線纜上并行。
OPC UA與現有裝置更新
- 快速大規模移植
- 漸進式移植并支援更多現有協定
- 基于OPC UA網關實作系統移植。