0

我有一个有趣的问题(我希望如此)我正在尝试使用 IP、端口、机架和插槽的套接字连接在 Siemens S7 300 PLC 和我的 java 程序之间建立通信虽然我可以从套接字建立连接,但可以从特定的 DB 块,我从未在 Simatic Manager 中看到“已连接”,是不是因为我没有与 PLC 的 DB 连接?

有没有图书馆可以为我做到这一点?因为我想从 PLC 交换实时电报,我必须建立这个连接

请帮助!

4

4 回答 4

2

您需要提供更多有用的信息。

  • 你用的是哪个通讯模块?这些模块中的任何一个?
  • 您尝试使用哪种协议?你连接到哪个端口?
  • 您是否使用 Java 打开原始 TCP/IP 套接字?如果没有,您使用的是哪些 Java 库?
  • 我不是西门子专家,但我不知道您所说的“DB Blocks”是什么意思。(不要缩写“DB”​​)

下一个:

当您的 Java 连接到 PLC 时,它是直接连接的。SM Step 7 建立自己的连接,完全独立于您的 Java 程序。您是否尝试同步这些连接?您是否试图让您的 Java 连接显示为外部设备?

在不了解您的意图的情况下,很难给您具体的答案。根据我的经验,同步电报通常不是特别容易。可以做到,但我不认为你会免费找到一些魔法图书馆。

于 2013-08-22T20:06:22.760 回答
1

您可以使用libnodave访问 S7 300 DB ,在您的情况下使用libnodave-java

于 2014-04-09T08:11:05.937 回答
0

看看:Snap7 - Step7 以太网通信套件

Davide Nardella 的优秀工具 LGPL3。

概述

Snap7 是一个开源、32/64 位、多平台以太网通信套件,用于与 Siemens S7 PLC 进行本地接口。部分支持新 CPU 1200/1500、旧 S7200、小 LOGO 0BA7/0BA8 和 SINAMICS 驱动器。

尽管它旨在克服 OPC 服务器在工业设施中传输大量高速数据时的限制,但它可以很好地扩展到基于 Linux 的小型 arm 或 mips 板,例如 Raspberry PI、BeagleBone Black、pcDuino、CubieBoard、UDOO 和阿杜诺云。

客户端、服务器和合作伙伴三个专用组件允许您将基于 PC 的系统最终集成到 PLC 自动化链中。

于 2015-03-28T11:58:57.550 回答
0

您可以使用用 java 编写的 s7connector。这是github链接; https://github.com/s7connector/s7connector

如果您访问该链接,它会显示如何使用 ip、机架号、插槽号连接到 plc。您可以从 DB 中写入和读取数据。我还没有测试图书馆。现在,我也在寻找plc连接器。尝试图书馆后,我将更新我的答案。

我希望它会有所帮助。

于 2018-06-10T13:05:54.607 回答