通过 RS485 实现 Profibus 或 MODBUS

通过 RS485 实现 Profibus 或 MODBUS

我们正在运行旧系统,其中有许多我们在市场上找不到的模块。所以我们正在寻找替代品。带有多个传感器的 S7-200 PLC 通过 RS485 对电缆进行通信。我们检查发现所有传感器都支持 PROFIBUS DP 和 MODBUS 协议。

我们尝试用腻子捕获一些数据包,这样我们就可以找到所使用的协议。

03 06 00 00 04 FD 2D 61 FE 03 06 00 00 04 FD 2D 61 FE 03 06 00 02 01 3B 85 93 E5 03 06 00 02 01 3B 85 93 E5 03 06 00 05 00 00 F8 03 06 00 05 00 00 98 A5 FE AC 18 60 C0 98 29 FF 03 06 00 05 00 00 98 A5 FE

看起来好像是重复传输了 9 个字节长的数据包,但这些数据包看起来既不像 PROFIBUS DP 数据包,也不像 MODBUS 数据包。

我们使用 putty 读取数据包有错吗?
或者系统协议可以是其他协议(如 Freeport)?

答案1

在更换 Modbus 或 Profibus 现场总线网络上的旧设备时,必须完全了解设备的配置方式,因为任何更改(例如节点地址、波特率、数据映射等)都会导致大量错误。除非可以找到完全相同的型号(以相同方式替换),否则几乎不可能在不更改主设备中请求的数据并确保正确的数据最终到达正确目的地的情况下更换设备。

另一个需要考虑的问题是,只有使用相同协议的设备才能同时存在于物理网络上。因此,如果网络上的任何设备只能使用一种协议,那么可以肯定地说,这就是正在使用的协议。确定正在使用哪种协议的最佳位置是主设备。主设备将配置为使用连接到网络的端口。

对于 S7-200,如果配置为 Modbus,则无论它是主站还是从站,都会使用“MBUS_”库块(主站为 MBUS_CTRL、MBUS_MSG 或 MBUS_INIT,从站为 MBUS_SLAVE)。此外,S7-200 上的集成端口根本不支持 Profibus-DP。即使有 EM-277 模块,它也只能充当从站。

如果同一 RS485 物理网络上有 HMI,则它可以充当主站(Modbus 或 Profibus)。进一步调查 HMI 配置可以揭示网络的性质。

相关内容