我有一个有趣的问题(我希望如此)我正在尝试使用 IP、端口、机架和插槽的套接字连接在 Siemens S7 300 PLC 和我的 java 程序之间建立通信虽然我可以从套接字建立连接,但可以从特定的 DB 块,我从未在 Simatic Manager 中看到“已连接”,是不是因为我没有与 PLC 的 DB 连接?
有没有图书馆可以为我做到这一点?因为我想从 PLC 交换实时电报,我必须建立这个连接
请帮助!
您需要提供更多有用的信息。
下一个:
当您的 Java 连接到 PLC 时,它是直接连接的。SM Step 7 建立自己的连接,完全独立于您的 Java 程序。您是否尝试同步这些连接?您是否试图让您的 Java 连接显示为外部设备?
在不了解您的意图的情况下,很难给您具体的答案。根据我的经验,同步电报通常不是特别容易。可以做到,但我不认为你会免费找到一些魔法图书馆。
您可以使用libnodave访问 S7 300 DB ,在您的情况下使用libnodave-java。
看看: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 自动化链中。
您可以使用用 java 编写的 s7connector。这是github链接; https://github.com/s7connector/s7connector
如果您访问该链接,它会显示如何使用 ip、机架号、插槽号连接到 plc。您可以从 DB 中写入和读取数据。我还没有测试图书馆。现在,我也在寻找plc连接器。尝试图书馆后,我将更新我的答案。
我希望它会有所帮助。