通讯组件
通讯组件用于让 iScene 与外部 PLC / 模拟器 / 设备进行数据交换,位于场景设置窗口的"📡 通信组件"分组。点击分组右上角"+"按钮可添加三类通讯组件:PLCAPI、ModbusRTU 主站、ModbusRTU 从站。
每个通讯组件以卡片形式展示:卡片头部可编辑名称,并带有类型徽章(PLCAPI / ModbusRTU主站 / ModbusRTU从站);点击卡片可选中,右上角按钮可删除(无通讯组件时置灰)。
1. PLCAPI(📡)
PLCAPI 通过浏览器 postMessage 消息与父页面(如 PLC 模拟器宿主页)通信,协议为 plc-variable-protocol v1.0。适用于以 iframe 嵌入 iScene 的场景,由父页面负责运行 PLC 程序并同步变量。
连接状态
- 卡片状态栏显示 已连接 / 未连接 状态点与 变量数;
- 通过心跳机制保活:每 5 秒发送一次心跳,10 秒无响应计为一次失败,连续 3 次失败判定通信中断。
PLC 变量绑定列表
- 支持 导入变量表、添加绑定、清空绑定 批量操作;
- 每条绑定将 PLC 变量映射到场景组件变量,绑定后可在列表中实时查看变量值;
- 未绑定映射的变量显示"未绑定"。
API Modbus RTU
PLCAPI 通讯组件内还可启用 API Modbus RTU,由父 PLC 指定逻辑口接管 Modbus RTU 通信:
| 配置 | 说明 |
|---|---|
| 启用开关 | 启用后接管父 PLC 指定逻辑口的 Modbus RTU 通信 |
| 角色 | 从站 / 主站 |
| 端口 | Port0 / Port1 |
| 从站地址 | 如 1,3,5~10(单地址、逗号分隔或区间) |
| 轮询(ms) | 主站模式生效,≥50 |
| 变量绑定 | 组件变量与寄存器的映射(添加绑定 / 清空) |
2. ModbusRTU 主站(🔌)
主站通过浏览器 Web Serial API 连接串口设备,主动轮询读写从站寄存器。
串口配置
| 配置 | 选项 |
|---|---|
| 串口 | 下拉选择,可"+"弹窗添加新串口 |
| 波特率 | 9600 / 19200 / 38400 / 115200 |
| 数据位 | 8 / 7 |
| 校验 | 无 / 偶 / 奇 |
| 停止位 | 1 / 2 |
| 轮询周期 | ≥50 ms,主站按该周期轮询从站 |
配置完成后点击 连接串口 建立通信,运行中可点击 断开。
串口变量绑定
- 点击"添加绑定"配置变量与寄存器的映射,支持"清空";
- 每条绑定包含:
- 数据区(功能码):coil → 01 读 / 05 写;discrete → 02 读;holding → 03 读 / 16 写;input → 04 读;
- 寄存器地址:0 起始;
- 读写权限:只读 / 只写 / 读写。
3. ModbusRTU 从站(🔌)
从站通过浏览器 Web Serial API 连接串口设备,响应主站请求,无需主动轮询。
串口配置
与主站相同的串口配置项,另外需设置 从站地址:
- 从站地址支持单地址、逗号分隔或区间,如
1,3,5~10; - 每条绑定还须设置各自的从站地址(1~247),主站请求匹配到该地址才会响应;
- 从站响应功能码:01 读线圈、02 读离散输入、03 读保持寄存器、04 读输入寄存器。
串口变量绑定
与主站一致:添加绑定,映射组件变量到寄存器(数据区 / 寄存器地址 / 读写权限)。
浏览器要求
- ModbusRTU 主站/从站依赖 Web Serial API,需在支持的浏览器(Chrome / Edge 等)中使用;
- 以 iframe 内嵌运行时若浏览器不支持串口,面板提供**"在新标签页中打开"**按钮,可在独立标签页中连接串口。
变量绑定的通用机制(绑定权限、双向同步、跨组件同步等),见 PLC 变量绑定与通信。