PYMODBUS:如何让主机与从机通信?

PYMODBUS: How to get master to communicate with slave?

我正在做一个项目,我有两个都安装了 Pymodbus 的 Debian 虚拟机。我正在尝试设置一个虚拟测试环境,在其中我可以在它们通信时从第三个 Kali VM 对两者执行各种网络攻击。不幸的是,我对 unix 和 PLC 编程还很陌生,很难让两者相互通信。理想情况下,主机应该向从机发送数据,然后从机更新一些信息并发回响应。有谁知道如何开始让这两者一起工作?我真的很茫然,我不知道从哪里开始。非常感谢,非常感谢。

我从这里得到了 pymodbus:https://pypi.python.org/pypi/pymodbus 文档位于此处:https://github.com/riptideio/pymodbus

P.S。我使用 pip 安装上面的 .whl 文件,但我看到其他人通过简单的 运行 命令安装 pymodbus,这让我担心我做错了。

您可以运行在一个 Debian VM 系统中进行测试。

1。 运行 server file,并设置ip和端口。

2。 运行client file,并连接到ip和端口。

也就是tcp/ip方法,你也可以用同样的方法做串口方法file.Just看上面文件中的注释。如果有任何问题,请告诉我。

服务器图片: 客户图片:

更新:

1.connect 本地两台PC network.Make 两台PC 肯定能互相ping通。 2.setsynchronous-server.py:

StartTcpServer(context, identity=identity, address=("0.0.0.0", 5020)) 这意味着监听来自所有 ip 的所有即将到来的连接请求。

3.setsynchronous-client.py(假设服务器pc ip为“192.168.1.10”,您应该将此ip替换为真实服务器ip):

client = ModbusClient('192.168.1.10', port=5020)

4.run 两个 py 文件,它现在应该可以工作了。