0

我需要搜索和组织有关什么是 PLC4X、PLC4X 和旧系统的差异(例如:PLC 协议 - 网关 - 用户应用程序)的信息,但我发现的大部分内容都是关于如何使用 API。我想弄清楚:

  1. PLC4X 在 SCADA 系统中的确切作用是什么?网关?api?两个都?
  2. 如果PLC4X的角色只是统一API,需要支持PLC4X的网关吗?
  3. 将 PLC4X 应用于传统 SCADA 系统之前/之后有什么区别?
  4. PLC4X 可以防止数据遗漏吗?

SCADA 中的 PLC4X

传统 SCADA 系统

如果你用上图回答我的问题,我会更容易理解。

4

1 回答 1

3

我是 Apache PLC4X 项目的发起人,所以我想我可能有资格在这里为您提供帮助。

PLC4X 本身不是网关,但您可以使用它来构建一个。将其视为使用各种协议与各种 PLC 进行通信的通用驱动程序。我们已经实现了一个 API,它定义了许多通用操作:

  • 订阅
  • 浏览(尚未实现)
  • 调用函数(尚未实现)

有了这个,您可以实现一个独立于最终使用的协议的程序。这允许轻松地与各种不同的硬件进行通信,并且允许迁移现有硬件而无需更改软件。

如果您正在寻找 100% 实现给定 PLC 本地协议的所有功能的东西,那么 PLC4X 也不是您想要的。

现在 PLC4X 在 Java 上得到最好的支持。通常,您需要的只是 Java 8 或更新的 VM。如果您想使用我们的被动模式驱动程序以及未来的现场总线驱动程序,例如 ProfiNet 和 EtherCat,您还需要 libpcap。

现在,我们也在努力提供其他语言的驱动程序:

  • Go(可能会以最快的速度成熟,因为这是我目前 90-100% 的时间都在做的事情)
  • C(可能会慢慢成熟,因为 C 真的不好玩,我在 Go 上投入更多时间)
  • Python(是 PLC4X 社区正在努力的一项举措)
  • C++(由于缺乏贡献者,倡议目前停滞不前)
  • C#(由于缺乏贡献者,倡议目前停滞不前)

关于你的问题 3,我有点不确定,因为两者是完全不同的东西。如果您只处于传统 SCADA 系统和兼容 PLC 的世界中,那么我根本看不到使用 PLC4X 的意义。当您想将现代 IT 系统引入包含传统 PLC 的系统时,PLC4X 表现出色。最新一代的 PLC 有时已经支持 MQTT,在这种情况下,我也没有看到使用 PLC4X 的优势。不幸的是,在接下来的 10 到 20 年里,我们将不得不在车间使用大量被认为是“遗留”的机器,使用遗留协议。

如果您现在想做最先进的机器学习、预测性维护、黄金批次分析……(所有很酷的工业 4.0 流行语),PLC4X 目前可能是您弥合传统 PLC 之间差距的最佳和最便宜的选择世界和现代 IT 系统。

我希望我设法回答了你的问题。

于 2020-11-09T10:05:19.887 回答