PROFINET和OPC UA是两种常见的协议,在自动化和过程行业应用中有一些重叠。一个网络的特定部分使用哪种协议通常可能会令人非常困惑。新工厂是否应该使用PROFINET或OPC UA来实现本地控制回路?自动化单元的性能数据是怎样的? 哪种协议最适合将实时生产状态传输到公司办公室?
要回答以上问题,您必须了解协议之间的一些低层次差异。PROFINET和OPC UA都交换相同类型的数据,但它们以两种截然不同的方式进行交换。PROFINET以严格控制的格式交换实时数据,旨在促进快速处理,最优化利用处理器,并允许控制环路以相对较短的循环时间(~1ms)在网络上运行。 但是,OPC UA几乎可以交换任何类型的信息。它是从顶部开始设计以实现灵活的通信,相对处理速度较慢,延迟较高,处理器运行损耗大。
从应用来看,两种协议有两个不同的作用。PROFINET通常用于现场设备和本地控制器之间的实时数据通信。相反,OPC UA通常用于控制器和更高级别的历史数据库,MES和SCADA系统之间进行通信。
OPC UA网络层次结构
PROFINET网络由控制器和设备组成。类似的,OPC UA网络由客户端和服务器组成。服务器提供一些数据,客户端使用数据。通常,这意味着PROFINET控制器也可以实施OPC UA服务器,将数据传输至OPC UA客户端,例如HMI,工程师站甚至云。
但是,当PROFINET设备实施了自己的OPC UA服务器时,这种明显的区别开始变得模糊,而PROFINET控制器除了服务器之外还需实施OPC UA客户端。从HMI或工程师站直接与现场设备的互连变得可能,自动化系统的清晰层次开始变得更加混乱。
这种混淆是有关OPC UA的核心。它是一种自动化协议吗?SCADA是一种协议吗?它能交换实时数据和信息吗?它能够替代PROFINET,Ethernet/IP,Sercos,EtherCAT或者其他基于以太网的自动化协议吗?每个问题的答案都是“可能”,但在某些情况下,“不太可能”是一个更好的答案。让我们来看看OPC UA和PROFINET在用例之间都做了哪些工作:
从数据上看,OPC UA并不是真正的实时控制协议。对于大多数运动控制应用来说,它实现控制回路的速度太慢了。因此,虽然您可能会看到OPC UA与PROFINET一起出现在IO设备的数据表中,但它的功能却扮演了截然不同的角色。 OPC UA非常适合将信息传输到更高级别的系统,但PROFINET构建了分布式I / O和控制的主干。