【问题标题】:Communication between JADE agents AND siemens S7 1200 PLCJADE 代理与 siemens S7 1200 PLC 之间的通信
【发布时间】:2013-04-05 15:55:24
【问题描述】:
我想了解如何让我的代理与 PLC(siemens S7 1200)进行通信。基本上,代理是在 JADE 中创建的,并做出一种决定,即他们将发送 PLC 的真假决定。如果为真,则 PLC 被激活或以其他方式激活。我听说过使用简单对象访问协议的概念,但不熟悉它(如果有人知道如何使用它,他们可以帮助我提供示例程序或链接我的程序的方法)。在 2013 年 4 月 8 日之前完成这项工作
【问题讨论】:
标签:
agents-jade
s7-1200
siemens
【解决方案1】:
我认为您在谈论 OPC。
OPC 是由 OPC 基金会保护和维护的“开放”标准。
每个 PLC 制造商都有一个 OPC 服务器,通过他们自己的协议与他们的 PLC 进行通信。可以下载、购买或创建 OPC 客户端。
简而言之 [S7-1200] cable S7 over ethernet cable [PC OPC Server intern OPC Protocol intern OPC Client ]
在您的情况下,您需要西门子为 S7-1200 提供的 OPC 服务器。 OPC 客户端将成为您的代理。 JADE 需要一个 OPC 库才能通过 OPC 进行通信。有关可能性,请参见 www.opcfoundation.org 的网站。
现在可以直接读写PLC了。
但是,您使用的是 S7-1200。西门子的新型微型自动化 PLC。这有一个新的内存布局,OPC 需要一些技巧才能使其工作。 (与旧 S7 PLC 中的直接寻址和 S7-1200 中的命名值有关)。以下来自西门子的常见问题解答将进一步帮助您
如何使用 OPC 将 PC 站连接到 S7-1200?
http://support.automation.siemens.com/WW/view/en/39960679
或者您可以尝试通过 TCP/IP 发送值。这需要对 PLC 重新编程。
CPU CPU 通讯
http://support.automation.siemens.com/WW/view/en/20982954
【解决方案2】:
我知道这有点晚了,但 libnodave 是一个用于与 Siemens PLC 通信的软件包。它也可以在 Java 中运行,这是一个很大的优势。我认为它不适合工业应用。我记得西门子有自己的库版本。谷歌一下就行了。