屏作为 主站,主动读取设备数据,并把控件操作写入设备。本节使用海岸泵站工程和 PLC 联调助手。
核心功能
- 多区域轮询与多从站配置。
- 数值显示、设定值写入和线圈控制。
- 查看请求、应答与实际读回。
1. 参数设置
在 工程 → 设置 → 工程设置 中配置通信参数。
波特率、数据位、校验位、停止位和接收回调统一见 6.1 DCBUS;本章串口联调使用 115200、8N1。

| 序号 | 参数 | 本例 | 作用 |
|---|---|---|---|
| 1 | 协议类型 | ModbusMaster | 选择当前工程使用的通信协议。 |
| 2 | 最多读取数 | 120 | 限制合并读取的数量;Modbus 字区按字,位区按 16 点组计。 |
| 3 | 读取间隔数 | 5 | 允许合并的地址空隙;是地址数量,不是时间。 |
| 4 | 写重试次数 | 3 | 写请求失败后的重试次数。 |
| 5 | 超时时间ms | 1000 | 发送请求后等待应答的时间。 |
| 6 | 间隔时间ms | 20 | 通信报文之间的调度间隔;不等于所有变量的刷新周期。 |
| 7 | 写寄存器命令 | 自动 | 自动选择写命令,或强制用 0x10 写保持寄存器。 |
| 8 | 离线读取优化 | 否 | 减少离线设备等待对其他从站轮询的影响。 |
| 9 | 同步画面 | 否 | 启用屏与设备的画面编号同步;本例关闭。 |
| 10 | 画面写入地址 | 未设置 | 屏切换画面时,将画面编号写到此地址。 |
| 11 | 画面取自地址 | 未设置 | 读取此地址中的画面编号,控制屏切换画面。 |
| 12 | 从站数目 | 1 | 配置设备数量;传统控件和 Lua 直接访问前 8 个从站。 |
| 13 | 从站01 | 1 | 第一个设备的实际站号;本例为 1,对应 Lua 索引 0。 |
| 14 | 从站01-0区最大地址 | 4095 | 线圈可访问的最大地址,须覆盖完整读取跨度。 |
| 15 | 从站01-1区最大地址 | 4095 | 离散输入可访问的最大地址。 |
| 16 | 从站01-3区最大地址 | 4095 | 输入寄存器可访问的最大地址。 |
| 17 | 从站01-4区最大地址 | 4095 | 保持寄存器可访问的最大地址。 |
| 18 | 字节序 | 默认大端 | 默认大端,或按设备重新指定整数、浮点数的字节顺序。 |
1.1 公共参数
“同步画面、画面写入地址、画面取自地址、字节序”也用于从站、三菱及自由协议设置,后续不重复解释。同步画面使用画面 ID;本范例关闭。字节序选择“重新指定”时,按设备分别配置 16/32/64 位整数和浮点数据;16 位数值、32 位数值分别占 1、2 个字。

| 序号 | 参数 | 作用 |
|---|---|---|
| 1 | 字节序 | 选择重新指定,展开各数据类型 |
| 2 | 短整型 | 16 位整数的两个字节顺序 |
| 3 | 长整型 | 32 位整数的四个字节顺序 |
| 4 | 单精度浮点 | 32 位浮点数的字节顺序 |
| 5 | 超长整型 | 64 位整数的八个字节顺序 |
| 6 | 双精度浮点 | 64 位浮点数据的字节顺序 |
| 7 | LW 字节序 | 保留默认,或跟随上方设置 |
2. 地址绑定
| 控件 | 工程地址 | 协议数值地址 | 功能 |
|---|---|---|---|
| 水温 | 3X0064 |
100 | 输入寄存器,读 FC04 |
| 液位 | 3X0065 |
101 | 输入寄存器,读 FC04 |
| 转速 / 低速 / 高速 | 4X0064 |
100 | 保持寄存器,读 FC03,写 FC06/10 |
| 水泵 / 启动 / 停止 | 0X0224 |
548 | 线圈,读 FC01,写 FC05 |
地址换算: 工程地址后缀按十六进制填写,0064=十进制 100,0224=十进制 548。0/1 区的单地址为 1 位,3/4 区为 16 位字;40001 等手册标签须先按设备规则换算。
第一个从站的实际站号设为 1;Lua 使用索引 0。最大地址须覆盖所读的完整区间。本例四区设为 4095。
3. 应用
- 打开 SeasideMaster,点击“运行”。模拟器串口副屏选择 工程通信(自动轮询),打开 COM2。
- 助手选择 Modbus 从站,站号 1,打开 COM3。
- 工况 A 显示水温 25、液位 65%、转速 40%;切换工况 B,变为 32、82%、70%。
- 在屏上按低速、高速及启停按钮,核对助手寄存器和请求应答。

普通控件直接绑定 PLC 地址即可,本例主站不需要 Lua 搬运数据。控件显示新值只说明本地输入已生效;设备执行还需核对应答或有效读回。
3.1 报文核对
以下报文字节为十六进制,末尾为 CRC 低字节、高字节。
| 操作 | 请求 | 正常应答 |
|---|---|---|
| 读取保持寄存器 100,值为 70 | 01 03 00 64 00 01 C5 D5 |
01 03 02 00 46 39 B6 |
| 写保持寄存器 100=70 | 01 06 00 64 00 46 49 E7 |
原报文回显 |
| 置位线圈 548 | 01 05 02 24 FF 00 CD 89 |
原报文回显 |
| 复位线圈 548 | 01 05 02 24 00 00 8C 79 |
原报文回显 |
4. 常见问题
| 现象 | 检查项 |
|---|---|
| 一直无应答 | 主从角色、站号、COM 配对及串口参数 |
| 读到别的值 | 数据区、十六进制地址和字节序 |
| 写后又恢复原值 | 设备或周期脚本是否覆盖该地址 |
| 显示为 0 | 0 可以是有效数值,结合通信记录判断 |
需要确认型号或具体项目?联系技术支持 ↗