0

我正在使用libnodaves7netplus向我的 simatic s7-300 读取和写入数据块。
一切正常,但我想了解 libnodave 或 s7netplus 是如何工作的,以便我可以基于普通的 tcp/ip 套接字在 c++ 或 c# 中实现类似的东西,只是为了好玩。
在图书馆网站或源代码本身上,我找不到任何关于它们是如何实现的信息,只是它们使用的是 tcp/ip 套接字(我知道在 libnodave 中你也可以使用其他方式,但现在我只关注 tcp/ip )。
在我对其他网站的研究中,我发现我可以使用 open tcp/ip 或 modbus tcp/ip。
但是我真的找不到任何与 simatic s7-300 相关的规范,这些规范告诉我如何建立连接或发送什么来开始数据传输......
请不要理解我的错误。
例如,对于 modbus tcp/ip 本身,我可以找到规范,但如果我想从数据块 17 读取 10 个字节或向数据块 1 写入 3 个字节,这些规范并没有告诉我要向 plc 发送什么。

所以我的问题是,在 tcp/ip 之上,我必须与我的 plc 交换来自 pc 的数据以及在哪里可以找到与 simatic s7-300 相关的确切规格?

4

1 回答 1

0

与西门子 PLC 的通信协议在 Snap7 站点上进行了描述。 http://snap7.sourceforge.net/siemens_comm.html

(也许更好地使用Snap7而不是 Libnodave 来支持更新的 PLC!)

于 2016-07-27T09:48:48.433 回答