gpt4 book ai didi

java - 如何连接到plc并获取数据

转载 作者:行者123 更新时间:2023-11-29 05:35:07 25 4
gpt4 key购买 nike

我需要将 OPC 服务器嵌入到 eclipse RCP 应用程序中,但我不知道从哪里开始。我正在使用 opcua4j 作为示例来创建服务器,但无法弄清楚如何连接到远程 PLC 设备。

我的问题是如何在给定客户端 IP 地址的情况下使用 OPC 从服务器与远程客户端通信?

Ps:关于opc ua java编程最好的教程/书是什么?

最佳答案

这可能会让您对 OPC 服务器的工作感到失望,我不太确定您知道多少,如果我转述的话,很抱歉。 OPC 服务器轮询而不是请求/回复通信方式。它轮询标签而不是设备。

检查此链接以获取 Java - OPC Deve - http://www.opcconnect.com/java.php#javacom

OPC 101

您将需要开发:

  • channel
  • 设备
  • 变量

每个 channel 指定两件事。指定的两个方面是: 1. 物理介质(网络适配器,例如标准以太网设备或串行端口) 2. 使用的协议(protocol)(MODBUS、Allen Bradley、GE-Fanuc 等)。这意味着每个 channel 都不能在不同的介质或协议(protocol)上托管设备。

设备该字段指定了一些内容。这些是:

  1. 地址。这可以是一个 IP 地址(对于以太网通过的协议(protocol)——例如 IDEC 串行封装协议(protocol)),或者是一个用于串行通信的标识号,例如 Profibus 或 Modbus ASCII/RTU。
  2. 驱动程序特定信息 - 这可能包括指定 CPU 型号或正在使用的 I/O 卡。这因司机而异。

变量是定义“标签”的地方。

  1. 标签名称
  2. PLC 地址。例如 M1 或 RW1 或 49075(虽然特定于驱动程序)
  3. 数据类型—— boolean 型、字型等。

每个标签或过程变量都有数据和元数据。这可以包括变量、上次更新、标签的健康状况等、工程单位。

最后

我实际上并没有编写自己的 OPC 服务器,但以上内容可能会有所帮助。我不确定上面的 Java SDK 提供了多少,但请考虑您的应用程序的安全性。

是否可以运行 OPC 服务器,轮询数据,然后您的应用程序与 OPC 服务器接口(interface)?这有助于避免(至少)与 OPC 混淆。您可以获得基于 Java 的 OPC 服务器,而不是在任何平台上运行,而且我相信大多数服务器都有 API,或者至少有一种方式来传递数据。

编辑

查看软件包 Pi ( http://www.osisoft.com/ )。这可能有助于解决这个问题。

关于java - 如何连接到plc并获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19796184/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com