PLC - IT通信

时间:2013-08-14 12:20:38

标签: java sockets plc

我有一个有趣的问题(我希望如此) 我正在尝试使用IP,端口,机架和SLot使用套接字连接建立西门子S7 300 PLC和我的java程序之间的通信 虽然我可以从套接字建立连接,从特定的DB块读取和写入,但我从未在Simatic Manager中看到“已连接”,这是因为我不能连接PLC的DB吗?

有没有可以为我做这个的图书馆? 由于我想从PLC交换实时电报,我必须建立这种连接

请帮助!!

4 个答案:

答案 0 :(得分:2)

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

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

下一步:

当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连接器。在尝试了库之后,我将更新我的答案。

我希望它会有所帮助。