我有一个有趣的问题(我希望如此) 我正在尝试使用IP,端口,机架和SLot使用套接字连接建立西门子S7 300 PLC和我的java程序之间的通信 虽然我可以从套接字建立连接,从特定的DB块读取和写入,但我从未在Simatic Manager中看到“已连接”,这是因为我不能连接PLC的DB吗?
有没有可以为我做这个的图书馆? 由于我想从PLC交换实时电报,我必须建立这种连接
请帮助!!
答案 0 :(得分:2)
您需要提供更多有用的信息。
下一步:
当Java连接到PLC时,它直接连接。 SM Step 7建立了自己的连接,与Java程序完全分离。您是否尝试同步这些连接?您是否尝试将Java连接显示为外部设备?
如果不了解您的意图,很难给出具体答案。根据我的经验,同步电报通常不是特别容易。它可以完成,但我认为你不会免费找到一些 magic 库。
答案 1 :(得分:1)
对于 libnodave ,您可以使用 libnodave-java 访问S7 300数据库。
答案 2 :(得分:0)
看看:Snap7 - Step7 Ethernet Communication Suite
Davide Nardella的优秀工具LGPL3。
概述
Snap7是一个开源的32/64位多平台以太网 用于与Siemens S7 PLC本地连接的通信套件。该 新CPU 1200/1500,旧S7200,小LOGO 0BA7 / 0BA8和 SINAMICS驱动器也得到部分支持。
虽然它的设计目的是克服OPC的局限性 服务器在传输大量高速数据时 工业设施,它可以很好地扩展到基于Linux的小型设备或 推出Raspberry PI,BeagleBone Black,pcDuino, CubieBoard,UDOO和ARDUINO YUN。
三个专门的组件,客户端,服务器和合作伙伴,允许您 最终将基于PC的系统集成到PLC自动化中 链
答案 3 :(得分:0)
您可以使用用java编写的s7connector。这是github链接; https://github.com/s7connector/s7connector
如果您访问该链接,它将显示如何使用ip,机架号,插槽号连接到plc。您可以从DB写入和读取数据。我还没有测试过这个库。现在,我也在寻找plc连接器。在尝试了库之后,我将更新我的答案。
我希望它会有所帮助。