问题:我有一台西门子 S7-1200 PLC,想通过 Modbus TCP 将数据采集到上位机(C# 编写)。PLC 端需要配置什么?上位机如何读取?
回答:S7-1200 固件版本 4.0 以上支持 Modbus TCP,需在 TIA Portal 中调用“MB_SERVER”或“MB_CLIENT”指令。作为服务器时,设置端口 502,定义保持寄存器地址映射。上位机使用 Modbus TCP 库(如 NModbus)连接 PLC IP 地址和端口,读取对应寄存器即可。注意:IP 地址需与 PLC 在同一网段,且 PLC 防火墙需放行 502 端口。

