如何使用 Apache NiFi 读取 Modubus TCP/IP 数据?

How to read Modubus TCP/IP data with Apache NiFi?

我在 Modbus TCP/IP 中有数据。我必须使用 Apache NiFi 读取可用数据。我不知道,必须准确使用哪个处理器(例如 GetTCP、ListenTCP、Plc4xSourceProcessor)。你能帮我吗? Apache NiFi 是否可行?

我真的不知道 Modbus TCP/IP 是什么,但基本上可以归结为您希望 NiFi 作为客户端还是服务器。

ListenTCP 创建一个 TCP 服务器,它正在等待某个客户端建立连接并开始发送数据。最常见的情况是像 syslog 这样的日志转发系统,它可以配置为通过 TCP 将日志转发到 host/port。

GetTCP 是一个客户端,它连接到一些 host/port 服务器,并开始读取数据。

Plc4xSourceProcessor 不是官方 Apache NiFi 代码的一部分,但快速查看它,它似乎更像是一个类似于 GetTCP 的客户端处理器,因为你给它一个连接字符串,告诉它连接到哪里。

Plc4xSourceProcessor 就是您要找的。 Apache PLC4X 项目提供了使用各种协议访问 PLC 的驱动程序。其中之一是 Modbus 协议。因此,如果您使用 Plc4xSourceProcessor 并配置一个 modbus 连接字符串并列出您要收集的地址,那么您将能够这样做。

几天前我刚好在我们的网站上写了 PLC4X-NiFi 集成文档:https://plc4x.apache.org/users/integrations/apache-nifi.html

我认为这会有所帮助。

克里斯