Skip to main content

Edge Category — Gateway-Specific Nodes

The following nodes are available in the 엣지 category of the palette.

2026.05+ Node Package

node-red-contrib-plantpulse-edge resides at node/conf/plantpulse-edge-nodes/ inside the image, and the entrypoint creates an absolute-path symlink to node_modules/node-red-contrib-plantpulse-edge on every boot. Provided nodes: 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 total). Automatically updated on image upgrade.


1. Read Tag Value (pp-tag-read)

Retrieves a single tag value from the gateway. Internally calls GET /api/v1/tag/{tagId}/value.

FieldDescription
Name(Optional) Node name
Tag IDTag to read (e.g. TAG_TEST_00042). Leave blank to specify dynamically via msg.tagId
FreshWhen checked, reads directly from the PLC (bypasses cache). Equivalent to ?fresh=true. Normally leave off (PLC load)
Host / PortGateway address (default 127.0.0.1:80 — leave as is on the same machine)

Input (optional):

  • msg.tagId — dynamically overrides the node's Tag ID setting (reuse one node for multiple tags)
  • msg.fresh — boolean, dynamically specifies cache bypass

Output:

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
Dynamic Tag ID Pattern — Recommended

Leaving the node's Tag ID blank and populating msg.tagId = "TAG_..." with a change node is the most flexible approach. The same read node can then be reused for multiple tags.


2. Write Tag Value (pp-tag-write)

Writes a value to a single tag on the gateway. Internally POST /api/v1/tag/{tagId}/value.

FieldDescription
Name(Optional)
Tag IDTag to write. Can be specified dynamically via msg.tagId
ValueFixed value (optional). Priority order: msg.valuemsg.payload → node Value
Host / PortGateway address

Output:

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

Supported protocols: HTTP / OPC-UA / Modbus TCP / MELSEC / S7 / LS XGT(XGI/XBC/XBM) / AB EtherNet/IP are all supported. Depending on PLC firmware/patch level, EIP may reject writes for certain data types — verify on a simulator before applying to live equipment.

Writes Are Dangerous

Writing a value to a live PLC can set equipment in motion. Verify thoroughly with a test tag or a simulator OPC before applying to a live equipment tag. Use write permissions only on tags agreed upon with the operations team.


3. Next Steps