Free Modbus Simulator(ModRSsim2)使用教程:免费的从站模拟与测试工具

Free Modbus Simulator(ModRSsim2)简介

Free Modbus Simulator(最新版本命名为 ModRSsim2)是一款 Windows 平台上的免费 Modbus RTU 和 TCP 从站(Slave/Server)模拟器,项目托管在 SourceForge:sourceforge.net/projects/modrssim2

ModRSsim2 是原版 “Free Modbus Simulator” 的一个分支(fork)和扩展版本,由社区开发者维护。使用 Visual Studio C++ 2010 编写,完整源码开源。它在原版基础上增加了更多诊断功能和脚本支持。

功能特性

  • 全地址空间模拟:支持四种 Modbus 数据类型(0xxxx 线圈、1xxxx 离散输入、3xxxx 输入寄存器、4xxxx 保持寄存器)的完整地址范围
  • 多设备模拟:可同时模拟多个不同的 Device ID(Slave Address)
  • 双协议:同时支持 Modbus RTU(串口)和 Modbus TCP(以太网)
  • 流量捕获:完整的字节级通信捕获和日志记录,带人工可读的解码描述
  • CSV 加载:从 CSV 文件批量加载寄存器初始值
  • 脚本环境:支持测试脚本,自动化修改寄存器值
  • HTML 自定义显示:可以使用 HTML 模板自定义数据显示界面
  • 完整源码:C++ 源码可用,便于二次开发

下载与安装

# 从 SourceForge 下载
# https://sourceforge.net/projects/modrssim2/

# 直接下载最新版本的 EXE 安装包,运行安装即可

安装后启动 ModRSsim2,主界面提供以下操作区:

  • 顶部菜单栏:配置、连接、脚本、日志等
  • 左侧设备树:管理模拟的多个从站设备
  • 中间数据区:显示和编辑寄存器/线圈的值
  • 底部日志区:显示通信流量和解码信息

创建 TCP 从站

  1. 菜单栏点击 Connection → TCP/IP
  2. 设置监听端口(默认 502)
  3. 设置从站地址(Device ID):1
  4. 在数据区选择 Holding Registers (4xxxx) 标签页
  5. 直接在表格中填入想要返回的寄存器值
  6. 点击 Start 按钮启动模拟

用 Modbus Poll 或 Modpoll 连接 127.0.0.1:502 测试,即可读取到设定的值。

创建 RTU 串口从站

  1. 菜单栏点击 Connection → Serial (RTU)
  2. 选择串口号(如 COM3)
  3. 设置波特率(9600)、数据位(8)、校验位(None)、停止位(1)
  4. 设置从站地址
  5. 点击 Start 启动

⚠️ ModRSsim2 使用串口时,该串口会被独占。不要同时用其他软件打开同一个串口,否则会出现”端口被占用”错误。

通信日志与诊断

ModRSsim2 的通信日志功能非常详尽,对于调试 Modbus 通信问题非常有价值:

  • 字节级捕获:显示原始的十六进制通信字节
  • 解码描述:自动解析每帧的含义(如 “FC03: Read Holding Registers from address 0, count 10″)
  • 时间戳:每条记录带有精确的时间戳
  • 日志导出:可导出为文本文件进行分析

CSV 批量加载寄存器值

如果你需要模拟一个有几十上百个寄存器的设备,逐一手动填写值是不现实的。ModRSsim2 支持 CSV 文件批量导入:

# CSV 格式示例(holding_registers.csv)
Address,Value,Description
40001,1234,A相电压(mV)
40002,1198,B相电压(mV)
40003,1205,C相电压(mV)
40004,850,A相电流(mA x100)
40005,830,B相电流(mA x100)
40006,845,C相电流(mA x100)
40007,1020,频率(Hz x100)
40008,500,有功功率(W)

菜单 → File → Import CSV → 选择文件 → 导入完成。

ModRSsim2 vs 其他免费模拟器

工具平台特点活跃度
ModRSsim2Windows全地址空间、通信日志、CSV导入、开源
ModbusPal跨平台(Java)Python脚本动态生成数据
Modbus SlaveWindows商业软件,功能最完善活跃
Unslave跨平台现代 UI,仍在开发中

总结

ModRSsim2 是 Windows 平台上最实用的免费 Modbus 从站模拟器之一。它虽然没有 ModbusPal 那样的 Python 脚本动态数据能力,但在静态模拟场景(按照已知的数据表模拟一个固定的从站设备)中更加简单直接。特别是它的通信日志解码功能和 CSV 批量导入功能,非常适合在 Modbus 主站开发阶段进行联调测试。

把这篇资料用于真实项目?

进入工具中心进行报文解析、CRC 校验和设备调试,或提交需求获取选型与接入建议。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注