由于单一系统和专有协议,数据集成和处理是工业物联网(IIoT,又名工业 4.0 或自动化工业)中的巨大挑战。Apache Kafka、其生态系统(Kafka Connect、KSQL)和 Apache PLC4X 是以可扩展、可靠和灵活的方式实现端到端 IIoT 集成的绝佳开源选择。
这篇博文涵盖了挑战的高级概述以及解决问题的良好、灵活的架构。最后,我分享一段视频记录和相应的幻灯片。这些提供了更多细节和见解。
以下是 IIoT/工业 4.0 的一些主要挑战:
这仍然是自动化行业的最先进技术。产品生命周期如此之长,这并不奇怪,但仍然非常令人担忧。
构建开放、灵活、可扩展的平台的需求巨大。从业务和技术角度来看,有很多机会:
那么,如何从传统技术和专有的工业物联网协议转向云、大数据、机器学习、实时处理?如何构建可靠、可扩展、灵活的架构和基础设施?
我想您已经知道了:Apache Kafka是实时事件流事实上的标准。它提供
Kafka Connect 支持 Kafka 与其他系统的可靠且可扩展的集成。Kafka Streams 允许编写标准 Java 应用程序和微服务,以使用轻量级流处理 API 持续实时处理数据。最后,KSQL 使用类似 SQL 的语义支持流处理。
Apache PLC4X在市场上的知名度不如 Apache Kafka。与 Kafka 相比,它还“只涵盖了一个利基市场”(当然,这是一个很大的市场),而 Kafka 可以在任何行业中用于许多不同的用例。然而,PLC4X 对于自动化行业来说是一个非常有趣的顶级 Apache 项目。
目标是开放 IIoT 世界到外部世界的 PLC 接口。PCL4X 允许垂直集成,并使用类似 JDBC 的适配器编写独立于 PLC 的软件,适用于各种协议,如西门子 S7、Modbus、Allen Bradley、Beckhoff ADS、OPC-UA、艾默生、Profinet、BACnet、以太网。
PLC4X 提供 Kafka Connect 连接器。因此,您可以利用 Apache Kafka 的优势(高可用性、高吞吐量、高可扩展性可靠性、实时处理)来部署 PLC4X 集成管道。有了这个,您可以构建一个单一的架构和基础设施
由于 Kafka 将生产者与消费者分离,您可以使用来自任何应用程序的 IIoT 机器传感器数据 - 有些可能是实时的,有些可能是批量的,有些可能是用于 Web 或移动应用程序上的人机交互的请求响应通信。
有点题外话:如何在 Apache PLC4X(IIoT 开源框架)和 OPC-UA(IIoT 开放标准)之间进行选择。简而言之,两者是不同的东西,也可以是互补的。这是一个比较: