协议支持
EMS Simulate 支持多种工业通信协议,可模拟服务端和客户端两种角色。
协议概览
| 协议 | 服务端 | 客户端 | 默认端口 |
|---|---|---|---|
| Modbus TCP | ✅ | ✅ | 502 |
| Modbus RTU | ✅ | ✅ | 串口 |
| IEC 60870-5-104 | ✅ | ✅ | 2404 |
| DL/T 645-2007 | ✅ | ✅ | 8899 |
Modbus TCP/RTU
基于 pymodbus 库实现,支持:
- 功能码 03: 读保持寄存器
- 功能码 04: 读输入寄存器
- 功能码 06: 写单个寄存器
- 功能码 16: 写多个寄存器
- 功能码 01/02: 读线圈/离散输入
- 功能码 05/15: 写单个/多个线圈
服务端模式
模拟从设备(Slave),响应主站轮询请求。
客户端模式
模拟主站(Master),主动轮询从设备。
IEC 60870-5-104
电力系统标准通信协议,基于 c104 库实现。
支持的 ASDU 类型
| 类型 | 说明 |
|---|---|
| M_ME_NC_1 (13) | 测量值短浮点数 |
| M_SP_NA_1 (1) | 单点信息 |
| C_SC_NA_1 (45) | 单点命令 |
| C_SE_NC_1 (50) | 设定点命令短浮点数 |
DL/T 645-2007
国家电网智能电能表通信协议,支持:
- 电能数据读取
- 需量数据读取
- 事件记录读取
- 参数设置
数据标识
采用 4 字节 BCD 编码的数据标识符,如:
00010000- 正向有功总电能02010100- A相电压