关于我
在技术的海洋里,我是那位永远保持神秘的航海者。 你可以在我的博客里看到我对工业协议的热情与探索, 但真正的故事,只有在代码与实验中才能揭晓。
在技术的海洋里,我是那位永远保持神秘的航海者。 你可以在我的博客里看到我对工业协议的热情与探索, 但真正的故事,只有在代码与实验中才能揭晓。
这里将陆续发布我对 Modbus、工业物联网、AI系统等领域的深度拆解与实战经验。 目前内容正在酝酿中,敬请关注,未来会有更多精彩与惊喜。
Modbus 是工业自动化领域最常用的通信协议之一,本文将从协议概念、常见数据类型、主从模式、以及在 Python 中的实现等方面进行详细阐述。
Modbus 的通信模型是“主机-从机”。主机(Master)发起请求,从机(Slave)响应。主机可以一次请求多个从机,但一次只能与一个从机通信。
| 功能码 | 功能 |
|---|---|
| 01 | 读取线圈状态 |
| 02 | 读取离散量输入 |
| 03 | 读取保持寄存器 |
| 04 | 读取输入寄存器 |
| 05 | 写单个线圈 |
| 06 | 写单个保持寄存器 |
from pymodbus.client.sync import ModbusTcpClient
client = ModbusTcpClient('192.168.1.10', port=502)
client.connect()
# 读取从机 1 的保持寄存器 0~9
rr = client.read_holding_registers(0, 10, unit=1)
print(rr.registers)
client.close()
以上内容仅为 Modbus 协议的入门级概览,若想深入了解,可参考 Modbus 官方网站 或相关书籍。