用于工业物联网和自动化的 Apache Kafka、KSQL 和 Apache PLC4

由于单一系统和专有协议,数据集成和处理是工业物联网(IIoT,又名工业 4.0 或自动化工业)中的巨大挑战。Apache Kafka、其生态系统(Kafka Connect、KSQL)和 Apache PLC4X 是以可扩展、可靠和灵活的方式实现端到端 IIoT 集成的绝佳开源选择。

这篇博文涵盖了挑战的高级概述以及解决问题的良好、灵活的架构。最后,我分享一段视频记录和相应的幻灯片。这些提供了更多细节和见解。

IIoT/工业 4.0 的挑战

以下是 IIoT/工业 4.0 的一些主要挑战:

  • IoT = IIoT:自动化行业不使用 MQTT 或其他标准,但速度慢、不安全、不可扩展且专有。
  • 产品生命周期很长(数十年),不需要简单的改动或升级
  • IIoT 通常使用不兼容的协议,通常是专有的,并且只是为某个特定供应商构建的
  • 自动化行业使用专有且昂贵的整体架构,这些整体架构不可扩展且不可扩展
  • 机器和 PLC本质上是不安全的,没有身份验证、没有授权、没有加密

这仍然是自动化行业的最先进技术。产品生命周期如此之长,这并不奇怪,但仍然非常令人担忧。

IT与自动化行业融合的演变

构建开放、灵活、可扩展的平台的需求巨大。从业务和技术角度来看,有很多机会:

  • 降低成本
  • 灵活性
  • 基于标准
  • 可扩展性
  • 可扩展性
  • 安全
  • 独立于基础设施

那么,如何从传统技术和专有的工业物联网协议转向云、大数据、机器学习、实时处理?如何构建可靠、可扩展、灵活的架构和基础设施?

用于端到端 IIoT 集成的 Apache Kafka 和 Apache PLC4X

我想您已经知道了:Apache Kafka是实时事件流事实上的标准。它提供

  • 开源(Apache 2.0 许可证)
  • 世界规模
  • 即时的
  • 持久存储
  • 流处理

Kafka Connect 支持 Kafka 与其他系统的可靠且可扩展的集成。Kafka Streams 允许编写标准 Java 应用程序和微服务,以使用轻量级流处理 API 持续实时处理数据。最后,KSQL 使用类似 SQL 的语义支持流处理。

用于 PLC 集成的 Apache PLC4X(西门子 S7、Modbus、Allen Bradley、Beckhoff ADS 等)

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 集成管道。有了这个,您可以构建一个单一的架构和基础设施

  • 使用 PLC4X 和 Kafka Connect 的传统 IIoT 连接
  • 使用 Kafka Streams/KSQL 进行数据处理
  • 使用 Kafka Connect 和任何其他接收器(数据库、大数据分析、机器学习、ERP、CRM、云服务、自定义业务应用程序等)与企业的其他部分集成

由于 Kafka 将生产者与消费者分离,您可以使用来自任何应用程序的 IIoT 机器传感器数据 - 有些可能是实时的,有些可能是批量的,有些可能是用于 Web 或移动应用程序上的人机交互的请求响应通信。

Apache PLC4X 对比 OPC-UA

有点题外话:如何在 Apache PLC4X(IIoT 开源框架)和 OPC-UA(IIoT 开放标准)之间进行选择。简而言之,两者是不同的东西,也可以是互补的。这是一个比较:

OPC-UA

  • 开放标准
  • 开放标准的所有优点和缺点(与不同供应商合作;采用缓慢;不灵活等)
  • 供应商往往执行不力
  • 需要 PLC 之上的应用服务器
  • 每台设备都必须进行改造,使其能够使用新协议并使用通用客户端与这些设备进行通信
  • 通常为了读取数据而过度设计
  • 在现有 PLC 上激活 OPC-UA 支持会大大增加 PLC 的负载
  • 每台机器的许可费用

Apache PLC4X

  • 开源框架(Apache 2.0 许可证)
  • 通过实现驱动程序来提供统一的 API,以便按照大多数工业控制器本身理解的协议与它们进行通信
  • 无需修改现有硬件
  • 不会增加 PLC 的负载
  • 无需支付许可证即可激活 OPC-UA 支持
  • 驱动程序根据规范或逆向工程协议实现,以获得完全 Apache 2.0 许可
  • 适用于 OPC-UA 的 PLC4X 适配器可用 ---> 两者可以一起使用!
相关推荐
AC赳赳老秦9 小时前
DeepSeek 私有化部署避坑指南:敏感数据本地化处理与合规性检测详解
大数据·开发语言·数据库·人工智能·自动化·php·deepseek
安科瑞刘鸿鹏1711 小时前
工业自动化系统中抗晃电保护的协同控制研究
运维·网络·嵌入式硬件·物联网
大厂技术总监下海13 小时前
数据湖加速、实时数仓、统一查询层:Apache Doris 如何成为现代数据架构的“高性能中枢”?
大数据·数据库·算法·apache
橙露13 小时前
电机的分类及优缺点全解析:从原理到应用的深度指南
自动化
SmartRadio16 小时前
进一步优化CH585M的低功耗模式
c语言·开发语言·单片机·嵌入式硬件·物联网
Jason_zhao_MR16 小时前
V2G 实战:SECC GreenPHY 通信开发方案
嵌入式硬件·物联网·嵌入式·边缘计算
我送炭你添花17 小时前
Python与串口:从基础到实际应用——以Pelco KBD300A模拟器项目为例
开发语言·python·自动化·运维开发
线束线缆组件品替网17 小时前
Bulgin 防水圆形线缆在严苛环境中的工程实践
人工智能·数码相机·自动化·软件工程·智能电视
鸠摩智首席音效师17 小时前
如何在 Apache 中排除特定的代理 URL 请求 ?
apache
我想吃烤肉肉18 小时前
Playwright中page.locator和Selenium中find_element区别
爬虫·python·测试工具·自动化