工业 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、IEC 61850、AIM AutoID和 MES-DACH,的信息模型。根据德国联邦信息安全局(BSI),OPC UA 中集成的"安全性设计"比其它协议中的要好很多,由于它与工业 4.0 有高度相关性,因此正在当前的一个项目中进行评估。
由于标准化的数据整合,以及它们的结构和目的(元数据),OPC UA 特别适合用于机器间的分布式智能应用,而不需要更高级的智能或者中央知识。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 年4月在采用PLCopen规范"OPC UA 的客户端功能块用于 IEC61131-3"的形式下完成了下一步工作。通过这种方式,控制器可以在通信中发挥主动、引导作用,或用作常用分布式角色的替代方案(图 3)。
图 3 PLCopen/OPC UA 客户端模块能够实现独立于现场总线的高速通信。集成有 OPC UA客户端的TwinCAT PLC 启动数据通信。
因此,PLC 可以与其它控制器横向交换复杂的数据结构或在 MES/ERP 系统内的 OPC UA 服务器中纵向调用方法,例如,以检索新的产品订单或将数据写入云服务器中。这样可以让生产线独立运行。
客户在很早就意识到这些功能块的潜力并从Beckhoff的实施中获益。来自Vogtland Water and Wastewater Association 的SilvoMerz使用紧凑型 CX9020 嵌入式控制器构成 300 个本地水管理系统间的智能网络。实际的对象,如泵,在 IEC 61131-3 PLC 控制器中建模成带交互选项的复杂对象。因为 OPC UA 服务器集成在控制器中,这些对象可自动作为复杂的数据结构提供,用于实现与外部世界联系的语义互操作性。其结果是构成一个分布式智能系统,可以独立做决定,并传输信息给它的"邻居"或为其自己的进程查询状态和进程值,以确保无故障的进程循环。有了标准化的PLCopen功能块,设备可以独立地启动通信--从 PLC 到其它作为 OPC UA 客户端的工艺设备,而同时,能够对它们的请求或作为 OPC UA 服务器的上位系统(SCADA,MES,ERP)的请求做出响应。Silvio Merz对该解决方案十分热心,无论从技术还是商业角度:"先前专用的解决方案换成 CX9020 和集成式 OPC UA 客户端和服务器,从而节省超过 90% 的初期授权成本。"
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 方法(可自由选择的输入/输出参数)可以用作为一项在OPC UA 服务器中调用的服务,通过添加一个简单的"Pragma"指令行集成在 PLC 控制器中。在 IT 安全和允许集成到 OPC UA 协议中的基础上,每个 OPC UA 客户端都可以浏览TwinCAT OPC UA 服务器并调用所需的服务,这些与操作系统和编程语言无关,确保数据一致性。
优势:高效、数据一致的服务
目前,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 服务,确保服务和数据层的安全。除了数据和方法调用之外,"数据通过 OPC UA 传输"提供了有趣的选项,不仅针对本地离线测量数据记录,而且还针对其它任务,如设备管理。
作为德国电气、电子和信息技术委员会(DKE)工业 4.0 标准化路线图上唯一的 IEC 标准化 SOA 架构,OPC UA 具有将自己打造成为工业 4.0 和物联网应用中数据和信息交换业界标准的潜力。因此,从传感器到 IT 系统的安全、横向和纵向通信在今天已经是可行的了。Beckhoff在很早的时候就挖掘出了 OPC UA 的潜力,如今可以提供集成有 OPC UA 客户端和服务器的 SOA-PLC,即使是最小的 CX 系列嵌入式控制器系统。基于 PC 的TwinCAT软件中的控制架构可以与各种Beckhoff I/O 端子模块和EtherCAT集成安全性能配套使用,这些都为满足未来所有工业 4.0 要求提供了一个理想的、性能可扩展的平台。
Stefan Hoppe, Beckhoff的TwinCAT产品经理,PLCopen和 OPC 工作组组长,OPC 欧洲委员会主席