Real-Time Visualization of Subscribed OPC UA Data in Node-RED

This Node-RED flow subscribes to multiple data points from an OPC UA server using OpcUa-Item nodes and displays them in real time on a dashboard. Ideal for monitoring several PLC variables simultaneously, the flow includes subscription handling and UI components like charts, gauges, and text elements to provide clear and interactive visual feedback.

[{"id":"1162685d7f7e2894","type":"inject","z":"a3771d5a74a10df6","name":"Subscribe Data","props":[],"repeat":"","crontab":"","once":true,"onceDelay":"","topic":"","x":1160,"y":160,"wires":[["f655652f24ae0961","cf84910894accb27","55ec83f51d0eea15"]]},{"id":"d591c7297c59dd16","type":"OpcUa-Client","z":"a3771d5a74a10df6","endpoint":"","action":"subscribe","deadbandvalue":"","time":"1","timeUnit":"s","localfile":"","localkeyfile":"","useTransport":false,"maxChunkCount":"","maxMessageSize":"","receiveBufferSize":"","sendBufferSize":"","setstatusandtime":false,"keepsessionalive":false,"name":"OPC UA Client","x":1560,"y":160,"wires":[["2e56b41ed5846a3e","cacced7341fd58aa"],[],[]]},{"id":"2e56b41ed5846a3e","type":"debug","z":"a3771d5a74a10df6","name":"Result Output","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1760,"y":140,"wires":[]},{"id":"f655652f24ae0961","type":"OpcUa-Item","z":"a3771d5a74a10df6","item":"","datatype":"Double","value":"","name":"Subscribe Data","x":1360,"y":160,"wires":[["d591c7297c59dd16"]]},{"id":"cacced7341fd58aa","type":"ui_text","z":"a3771d5a74a10df6","group":"","order":0,"width":0,"height":0,"name":"","label":"text","format":"{{msg.payload}}","layout":"row-spread","className":"","x":1730,"y":180,"wires":[]},{"id":"6616bcba72c20f51","type":"OpcUa-Client","z":"a3771d5a74a10df6","endpoint":"","action":"subscribe","deadbandvalue":"","time":"1","timeUnit":"s","localfile":"","localkeyfile":"","useTransport":false,"maxChunkCount":"","maxMessageSize":"","receiveBufferSize":"","sendBufferSize":"","setstatusandtime":false,"keepsessionalive":false,"name":"OPC UA Client","x":1560,"y":260,"wires":[["801a703d8508f377","9a4557d77284fb7c"],[],[]]},{"id":"801a703d8508f377","type":"debug","z":"a3771d5a74a10df6","name":"Result Output","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1760,"y":240,"wires":[]},{"id":"cf84910894accb27","type":"OpcUa-Item","z":"a3771d5a74a10df6","item":"","datatype":"Double","value":"","name":"Subscribe Data","x":1360,"y":260,"wires":[["6616bcba72c20f51"]]},{"id":"33c85da2fba23adf","type":"OpcUa-Client","z":"a3771d5a74a10df6","endpoint":"","action":"subscribe","deadbandvalue":"","time":"1","timeUnit":"s","localfile":"","localkeyfile":"","useTransport":false,"maxChunkCount":"","maxMessageSize":"","receiveBufferSize":"","sendBufferSize":"","setstatusandtime":false,"keepsessionalive":false,"name":"OPC UA Client","x":1560,"y":340,"wires":[["dd9cc60dfabfe31c","573a722e49f46d61"],[],[]]},{"id":"dd9cc60dfabfe31c","type":"debug","z":"a3771d5a74a10df6","name":"Result Output","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1760,"y":320,"wires":[]},{"id":"55ec83f51d0eea15","type":"OpcUa-Item","z":"a3771d5a74a10df6","item":"","datatype":"Double","value":"","name":"Subscribe Data","x":1360,"y":340,"wires":[["33c85da2fba23adf"]]},{"id":"9a4557d77284fb7c","type":"ui_gauge","z":"a3771d5a74a10df6","name":"","group":"","order":0,"width":0,"height":0,"gtype":"gage","title":"gauge","label":"units","format":"{{value}}","min":0,"max":10,"colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","diff":false,"className":"","x":1730,"y":280,"wires":[]},{"id":"573a722e49f46d61","type":"ui_chart","z":"a3771d5a74a10df6","name":"","group":"","order":0,"width":0,"height":0,"label":"chart","chartType":"line","legend":"false","xformat":"HH:mm:ss","interpolate":"linear","nodata":"","dot":false,"ymin":"","ymax":"","removeOlder":1,"removeOlderPoints":"","removeOlderUnit":"3600","cutout":0,"useOneColor":false,"useUTC":false,"colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"outputs":1,"useDifferentColor":false,"className":"","x":1730,"y":360,"wires":[[]]}]

Flow Info

Created 4 days ago
Rating: not yet rated

Actions

Rate:

Node Types

Core
  • debug (x3)
  • inject (x1)
Other
  • OpcUa-Client (x3)
  • OpcUa-Item (x3)
  • ui_chart (x1)
  • ui_gauge (x1)
  • ui_text (x1)

Tags

  • Subscribe
  • Dashboard
  • Visualization
  • IoT
  • PLC
  • Monitoring
  • SCADA
  • UI
Copy this flow JSON to your clipboard and then import into Node-RED using the Import From > Clipboard (Ctrl-I) menu option