跳到主要内容

Edge 类别 — 网关专用节点

在面板的 엣지 类别中可以使用以下节点。

2026.05+ 节点包

node-red-contrib-plantpulse-edge 位于 image 内的 node/conf/plantpulse-edge-nodes/, entrypoint 在每次启动时以 node_modules/node-red-contrib-plantpulse-edge 创建绝对路径 symlink。 提供的节点:pp-tag-value-read / pp-tag-value-write / pp-tag-values-read / pp-tag-list / pp-opc-get / pp-opc-start / pp-opc-stop(共 7 个)。image 升级时自动更新。


1. 读取标签值 (pp-tag-read)

获取网关中某个标签的值。内部调用 GET /api/v1/tag/{tagId}/value

字段说明
名称(可选)节点名称
Tag ID要读取的标签(例如:TAG_TEST_00042)。留空则通过 msg.tagId 动态指定
Fresh勾选时直接从 PLC 读取(绕过缓存)。与 ?fresh=true 相同。平时请关闭(会增加 PLC 负荷)
Host / Port网关地址(默认 127.0.0.1:80 — 同一台机器保持默认即可)

输入(可选):

  • msg.tagId — 动态覆盖节点设置中的 Tag ID(同一节点可复用于多个标签)
  • msg.fresh — boolean,动态指定是否绕过缓存

输出:

msg.payload = {
tag_id: "TAG_TEST_00042",
value: "1234",
value_time: "2026-05-08 03:01:19.001",
value_read_status: "OK",
...
}
msg.statusCode = 200
msg.tagId = "TAG_TEST_00042" // 실제 사용된 ID
动态 Tag ID 模式 — 推荐

将节点设置中的 Tag ID 留空,改用 change 节点填充 msg.tagId = "TAG_..." 的方式最为灵活。同一个读取节点可复用于多个标签。


2. 写入标签值 (pp-tag-write)

向网关中的某个标签写入值。内部调用 POST /api/v1/tag/{tagId}/value

字段说明
名称(可选)
Tag ID要写入的标签。可通过 msg.tagId 动态指定
Value固定值(可选)。按 msg.valuemsg.payload → 节点 Value 的顺序优先生效
Host / Port网关地址

输出:

msg.payload = {
result: "SUCCESS", // 또는 "ERROR"
opc_id: "OPC_LS_TEST",
plc_address: "D1000",
value: "9999", // 사용자가 보낸 값
actual_read: "9999", // 드라이버가 write 후 즉시 read 한 결과
msg: ""
}
msg.statusCode = 200

支持的协议:HTTP / OPC-UA / Modbus TCP / MELSEC / S7 / LS XGT(XGI/XBC/XBM) / AB EtherNet/IP 均可。EIP 会因 PLC 固件/补丁版本不同而拒绝某些数据类型的 write,请先在模拟器中验证后再应用到实际设备。

写入操作存在风险

向实际 PLC 写入值可能会使设备动作。请先用测试标签模拟器 OPC 充分验证后,再应用到实际设备标签。write 权限仅用于与运维团队达成一致的标签。


3. 下一步