当前位置: 首页 > 知识库问答 >
问题:

如何为PLC创建复杂的nifi处理器?

濮阳默
2023-03-14

我想创建一个自定义的nifi处理器,这样我就可以读取s7 plc数据。为此,我想将这个项目的java代码:https://github.com/s7connector/s7connector转换为一个nifi处理器。

因此,我已经下载了mvn包类型,就像webiste告诉的那样:https://medium.com/hashmapinc/creating-custom-processors-and-controllers-in-apache-nifi-e14148740ea

问题是与web上的示例相比,s7 java代码太复杂了,所以...如何将此java代码转换为nifi处理器?

谢了!

共有1个答案

弓晔
2023-03-14

它与创建处理器无关,但PLC4X(用于工业物联网的通用协议适配器)为Apache NIFI创建了nar文件。你可以用它来实现你的最终目标。

步骤:

  • 在此处下载nar文件
  • 放入lib目录
  • 重新启动NiFi实例
  • 然后使用PLC4XSource处理器读取值。对于modbus,您可以将“modbus:TCP://10.0.2.238:502?slave=1”设置为connetion字符串,将“test1=holding-register:1”设置为address字符串。然后属性“test1”将包含保持寄存器1的值。您可以在这里获得关于S7的详细信息。
 类似资料:
  • 我正在构建一个自定义处理器来处理流文件,为了处理流文件,我需要从我的本地文件系统读取CSV文件。我创建了一个proerty描述符CSV_PATH,如下所示 现在我想在配置处理器时获取在UI中设置的CSV_PATH属性的值。我无法获得CSV_PATH值。另外,如果我在代码中硬编码filepath,那么我仍然无法从本地文件系统读取CSV。

  • 我一直在寻找如何将apache storm用作CEP的方法,但似乎有两个概念(流处理和复杂事件处理),在CEP中,您可以编写类似sql的查询,并在数据流上执行它们,如ESPER,但我在apache storm中找不到类似的东西,这是否意味着apache storm是一个数据流处理器而不是CEP?

  • 我正在经历JavaAWT 例如,在这篇文章中-如何求解三角方程cos(πθ/β)−cos(2πθ/β)=0? 用户给出了一些复杂的方程式,并展示了图形的外观。 但是我们如何为这个等式编写一个Java的程序来生成图形GUI作为输出呢? 有人能给我指一些文档或链接,让我了解如何用Java实现这一点吗? 提前感谢。

  • 我已经挣扎了几个小时想找到解决这个问题的办法... 我正在开发一个在线记分牌的游戏。玩家可以随时登录和退出。完成一场比赛后,玩家会看到记分牌,看到自己的排名,分数会自动提交。 记分牌显示球员的排名,排行榜。 记分牌在用户完成游戏(提交分数)和用户只想查看他们的排名时都使用。 这就是逻辑变得非常复杂的地方: > 如果用户已经登录,那么分数将首先提交。保存新记录后,记分牌将被加载。 用户可以随时登录和

  • 我有一个离散事件流进入我的系统,我需要根据每个事件的内容应用规则。另外,我想对这些流事件应用复杂的事件处理。 约束1.这些规则是用户提供的,并将动态更改。2.每当应用规则时,我不想重新启动我的系统。3.HA 4.只有成熟的开源解决方案 可能的方式...1.在Storm螺栓内运行Esper CEP 2。让口水流到Storm螺栓里 > 这会处理单事件规则和复杂事件吗?规则更改是否需要我的Storm重新

  • 我似乎无法创建一个自定义的DistributedMapCacheClientService(名为TestDistributedMapCacheClientService)供普通nifi处理器(如Wait和PutDistributedMapCache)使用。我可以让Wait和PutDistributedMapCache看到我的自定义服务,但处理器无法启动,因为nifi说我的nar“与AtomicDi