node-red-contrib-iiot-opcua - Test environment

v1.0.x Example test environment flow:

  • Server
  • ASO
  • CMD
  • Listener
  • Browser
  • Write
  • Response
  • Events
  • Read structure

you need the node-red-dashboard package

http://localhost:1880/ui/

[{"id":"d230b30f.0f76","type":"tab","label":"OPC UA IIoT Tests","disabled":false,"info":""},{"id":"b8fd427e.f195e","type":"OPCUA-IIoT-Write","z":"d230b30f.0f76","connector":"ff9e9c30.7f459","name":"","showStatusActivities":false,"showErrors":false,"x":450,"y":600,"wires":[["b55e8e34.edf49"]]},{"id":"8b65d2c3.30ddd","type":"OPCUA-IIoT-Inject","z":"d230b30f.0f76","injectType":"write","payload":"","payloadType":"date","topic":"","repeat":"3","crontab":"","once":false,"startDelay":"","name":"TestReadWrite","addressSpaceItems":[{"name":"TestReadWrite","nodeId":"ns=4;s=TestReadWrite","datatypeName":"Double"}],"x":170,"y":600,"wires":[["ab5972fb.7d159"]]},{"id":"b55e8e34.edf49","type":"OPCUA-IIoT-Response","z":"d230b30f.0f76","name":"","showStatusActivities":false,"showErrors":false,"x":580,"y":600,"wires":[["477d1872.229f88"]]},{"id":"ab5972fb.7d159","type":"data-generator","z":"d230b30f.0f76","name":"dGen","field":"valuesToWrite","fieldType":"msg","syntax":"json","template":"[{{int 1 65000}}]","x":320,"y":600,"wires":[["b8fd427e.f195e"]]},{"id":"1337b84a.34cd48","type":"OPCUA-IIoT-Browser","z":"d230b30f.0f76","connector":"ff9e9c30.7f459","nodeId":"","name":"","showStatusActivities":false,"showErrors":false,"x":540,"y":290,"wires":[["496ca5c1.11037c","9e3086cb.b44bd8"]]},{"id":"496ca5c1.11037c","type":"ui_template","z":"d230b30f.0f76","group":"ca04a238.d2743","name":"","order":1,"width":0,"height":0,"format":"<div layout=\"column\" layout-align=\"space-between\">\n    <div layout=\"row\" layout-align=\"space-around center\">\n        <div>{{msg.payload.endpoint}}</div>\n    </div>\n    <div layout=\"row\" layout-align=\"space-around center\">\n        <div>{{msg.payload.browseTopic}} with {{msg.payload.browserResultCount}} references</div>\n    </div>\n    <div layout=\"row\" layout-align=\"space-between center\">\n        <h1>Results</h1>\n    </div>\n    <div layout=\"row\" layout-align=\"space-between center\">\n        <select ng-model=\"item\" ng-options=\"item.displayName.text for item in msg.payload.browserItems\">\n            <option value=\"\">-- Root --</option>\n        </select>\n        <button ng-click=\"send({payload: {actiontype: 'browse', root: item}})\">Browse</button>\n    </div>\n    <div layout=\"row\" layout-align=\"space-between center\" style=\"margin: 0 auto;heigth:auto\">\n        <div layout-align=\"space-between\">\n        <ul ng-repeat=\"item in msg.payload.browserItems\">\n            <li>{{item.displayName.text}} ( {{item.nodeId}} - {{item.browseName}} )</li>\n        </ul>\n        </div>\n    </div>\n</div>","storeOutMessages":false,"fwdInMessages":false,"templateScope":"local","x":540,"y":240,"wires":[["1337b84a.34cd48"]]},{"id":"9e3086cb.b44bd8","type":"debug","z":"d230b30f.0f76","name":"","active":false,"console":"false","complete":"true","x":710,"y":290,"wires":[]},{"id":"6a509854.c75ad8","type":"OPCUA-IIoT-Inject","z":"d230b30f.0f76","payload":"","payloadType":"date","topic":"ns=0;i=85","repeat":"","crontab":"","once":true,"name":"Root","x":140,"y":290,"wires":[["1986a07.da2876"]]},{"id":"dccc1124.a343b","type":"OPCUA-IIoT-Server","z":"d230b30f.0f76","port":"55388","endpoint":"","acceptExternalCommands":true,"maxAllowedSessionNumber":"","maxConnectionsPerEndpoint":"","maxAllowedSubscriptionNumber":"","alternateHostname":"","name":"","showStatusActivities":false,"showErrors":false,"allowAnonymous":true,"isAuditing":false,"users":[{"name":"bianco","password":"royal"},{"name":"peter","password":"peter"}],"x":690,"y":100,"wires":[["69a9fc3d.e3c1c4"],["f0829046.be51b"]]},{"id":"ac7b8b89.9d88d8","type":"OPCUA-IIoT-Server-Command","z":"d230b30f.0f76","commandtype":"restart","nodeId":"","name":"","x":440,"y":150,"wires":[["dccc1124.a343b","6efd137f.e6919c"]]},{"id":"a8b26051.2e546","type":"ui_button","z":"d230b30f.0f76","name":"","group":"ca04a238.d2743","order":2,"width":0,"height":0,"passthru":false,"label":"Restart OPC UA Server","color":"","bgcolor":"","icon":"","payload":"","payloadType":"str","topic":"","x":170,"y":150,"wires":[["ac7b8b89.9d88d8"]]},{"id":"5fe47b47.4c03e4","type":"OPCUA-IIoT-Listener","z":"d230b30f.0f76","connector":"ff9e9c30.7f459","action":"subscribe","queueSize":10,"name":"","showStatusActivities":false,"showErrors":false,"x":720,"y":390,"wires":[["bc35ba46.01b338","db30a50.6bfaf58","1e5bdc1f.15d924","8df4a4bf.5e45e8","24165a54.1cc3a6","81c1ea03.ff0238"],["686a1379.cf492c","ec0602d1.e1408"]]},{"id":"60072aa3.241704","type":"OPCUA-IIoT-Server-ASO","z":"d230b30f.0f76","nodeId":"ns=5;s=TestFolder","browsename":"TestFolder","displayname":"Test Folder","objecttype":"FolderType","datatype":"","value":"","referenceNodeId":"ns=0;i=85","referencetype":"Organizes","name":"","x":450,"y":100,"wires":[["dccc1124.a343b","676bdd0f.9427b4","5f347126.0df74"]]},{"id":"1986a07.da2876","type":"delay","z":"d230b30f.0f76","name":"","pauseType":"delay","timeout":"3","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":380,"y":290,"wires":[["1337b84a.34cd48"]]},{"id":"eab7e15a.e579","type":"OPCUA-IIoT-Server-Command","z":"d230b30f.0f76","commandtype":"deleteNode","nodeId":"ns=5;s=TestFolder","name":"","x":440,"y":190,"wires":[["dccc1124.a343b","676bdd0f.9427b4","6efd137f.e6919c"]]},{"id":"d11dadb1.15e72","type":"ui_button","z":"d230b30f.0f76","name":"","group":"ca04a238.d2743","order":3,"width":0,"height":0,"passthru":false,"label":"Remove Test Folder","color":"","bgcolor":"","icon":"","payload":"","payloadType":"date","topic":"","x":180,"y":190,"wires":[["eab7e15a.e579"]]},{"id":"676bdd0f.9427b4","type":"function","z":"d230b30f.0f76","name":"Rebrowse","func":"msg.topic = 'ns=0;i=85'\nreturn msg;","outputs":1,"noerr":0,"x":700,"y":150,"wires":[["65fc22d.f2f65dc"]]},{"id":"e1aea36d.271f6","type":"ui_button","z":"d230b30f.0f76","name":"","group":"ca04a238.d2743","order":4,"width":0,"height":0,"passthru":false,"label":"Add Test Folder","color":"","bgcolor":"","icon":"","payload":"","payloadType":"str","topic":"","x":200,"y":60,"wires":[["60072aa3.241704"]]},{"id":"477d1872.229f88","type":"debug","z":"d230b30f.0f76","name":"","active":false,"console":"false","complete":"true","x":720,"y":600,"wires":[]},{"id":"3b386a54.9e90b6","type":"link in","z":"d230b30f.0f76","name":"","links":["65fc22d.f2f65dc"],"x":265,"y":260,"wires":[["1986a07.da2876"]]},{"id":"65fc22d.f2f65dc","type":"link out","z":"d230b30f.0f76","name":"","links":["3b386a54.9e90b6"],"x":825,"y":150,"wires":[]},{"id":"11fe5b95.d41c54","type":"comment","z":"d230b30f.0f76","name":"check - http://localhost:1880/ui/","info":"","x":450,"y":30,"wires":[]},{"id":"5f347126.0df74","type":"debug","z":"d230b30f.0f76","name":"","active":false,"console":"false","complete":"true","x":690,"y":60,"wires":[]},{"id":"69a9fc3d.e3c1c4","type":"debug","z":"d230b30f.0f76","name":"","active":false,"console":"false","complete":"true","x":860,"y":70,"wires":[]},{"id":"f0829046.be51b","type":"debug","z":"d230b30f.0f76","name":"","active":false,"console":"false","complete":"true","x":860,"y":110,"wires":[]},{"id":"a1ffafd2.d05f6","type":"OPCUA-IIoT-Inject","z":"d230b30f.0f76","injectType":"inject","payload":"","payloadType":"date","topic":"","repeat":"","crontab":"","once":true,"startDelay":"","name":"","addressSpaceItems":[],"x":210,"y":100,"wires":[["60072aa3.241704"]]},{"id":"6efd137f.e6919c","type":"debug","z":"d230b30f.0f76","name":"","active":false,"console":"false","complete":"true","x":690,"y":190,"wires":[]},{"id":"eaa2f80.c127208","type":"debug","z":"d230b30f.0f76","name":"","active":false,"console":"false","complete":"true","x":720,"y":500,"wires":[]},{"id":"aebc50b7.d76e8","type":"debug","z":"d230b30f.0f76","name":"","active":false,"console":"false","complete":"true","x":720,"y":540,"wires":[]},{"id":"7e774e9c.4f2a2","type":"OPCUA-IIoT-Event","z":"d230b30f.0f76","eventType":"BaseEventType","eventTypeLabel":"BaseEventType (i=2041)","queueSize":"1000","usingListener":true,"name":"Base Events","x":350,"y":520,"wires":[["2b568f92.69903"]]},{"id":"6361a6d2.16a6c8","type":"OPCUA-IIoT-Inject","z":"d230b30f.0f76","injectType":"listen","payload":"200","payloadType":"num","topic":"","repeat":"","crontab":"","once":true,"startDelay":"","name":"listen with 200 ms","addressSpaceItems":[{"name":"Tanks","nodeId":"ns=1;i=1000","datatypeName":""},{"name":"Server","nodeId":"ns=0;i=2253","datatypeName":""}],"x":160,"y":520,"wires":[["7e774e9c.4f2a2"]]},{"id":"2b568f92.69903","type":"OPCUA-IIoT-Listener","z":"d230b30f.0f76","connector":"ff9e9c30.7f459","action":"events","queueSize":"100","name":"","justValue":false,"multipleRequest":false,"metaDataInject":false,"showStatusActivities":false,"showErrors":false,"x":560,"y":520,"wires":[["eaa2f80.c127208"],["aebc50b7.d76e8"]]},{"id":"b40269d8.7bd768","type":"ui_gauge","z":"d230b30f.0f76","name":"","group":"3c019f1d.13858","order":1,"width":"0","height":"0","gtype":"gage","title":"TestReadWrite","label":"units","format":"{{value}}","min":"0","max":"65000","colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","x":1280,"y":330,"wires":[]},{"id":"ec0602d1.e1408","type":"OPCUA-IIoT-Response","z":"d230b30f.0f76","name":"","x":1062,"y":594,"wires":[["1c86c45.286c03c"]]},{"id":"d0526e99.7b82b","type":"ui_numeric","z":"d230b30f.0f76","name":"","label":"Sessions","group":"3c019f1d.13858","order":3,"width":0,"height":0,"passthru":true,"topic":"","format":"{{value}}","min":0,"max":"100","step":1,"x":1260,"y":384,"wires":[[]]},{"id":"1c86c45.286c03c","type":"debug","z":"d230b30f.0f76","name":"","active":false,"console":"false","complete":"false","x":1270,"y":594,"wires":[]},{"id":"1e5bdc1f.15d924","type":"OPCUA-IIoT-Result-Filter","z":"d230b30f.0f76","nodeId":"ns=4;s=TestReadWrite","datatype":"Double","withPrecision":true,"precision":2,"entry":1,"justValue":false,"withValueCheck":false,"minvalue":"","maxvalue":"","defaultvalue":"","usingListener":false,"name":"TestReadWrite","x":1082,"y":336,"wires":[["b40269d8.7bd768","b13f6acb.725598"],[]]},{"id":"bc35ba46.01b338","type":"debug","z":"d230b30f.0f76","name":"","active":false,"console":"false","complete":"true","x":1050,"y":230,"wires":[]},{"id":"686a1379.cf492c","type":"debug","z":"d230b30f.0f76","name":"","active":false,"console":"false","complete":"true","x":1052,"y":552,"wires":[]},{"id":"8df4a4bf.5e45e8","type":"OPCUA-IIoT-Result-Filter","z":"d230b30f.0f76","nodeId":"ns=0;i=2277","datatype":"UInt32","withPrecision":true,"precision":2,"entry":1,"minvalue":null,"maxvalue":null,"defaultvalue":null,"usingListener":false,"name":"Session Count","x":1082,"y":390,"wires":[["d0526e99.7b82b"],[]]},{"id":"db30a50.6bfaf58","type":"OPCUA-IIoT-Response","z":"d230b30f.0f76","name":"","x":1060,"y":280,"wires":[["9eec31b9.d54ee"]]},{"id":"9eec31b9.d54ee","type":"debug","z":"d230b30f.0f76","name":"","active":false,"console":"false","complete":"true","x":1250,"y":258,"wires":[]},{"id":"a425b7e8.985dd8","type":"ui_gauge","z":"d230b30f.0f76","name":"","group":"4efc5e41.c7488","order":1,"width":"0","height":"0","gtype":"gage","title":"FullCounter","label":"units","format":"{{value}}","min":"-100000","max":"100000","colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","x":1270,"y":456,"wires":[]},{"id":"24165a54.1cc3a6","type":"OPCUA-IIoT-Result-Filter","z":"d230b30f.0f76","nodeId":"ns=4;s=FullCounter","datatype":"Int32","withPrecision":true,"precision":2,"entry":1,"justValue":false,"withValueCheck":false,"minvalue":"","maxvalue":"","defaultvalue":"","usingListener":false,"name":"Full Counter","x":1072,"y":444,"wires":[["a425b7e8.985dd8","d583e767.a4ca48"],[]]},{"id":"81c1ea03.ff0238","type":"OPCUA-IIoT-Result-Filter","z":"d230b30f.0f76","nodeId":"ns=4;s=Counter","datatype":"UInt16","withPrecision":true,"precision":2,"entry":1,"justValue":false,"withValueCheck":false,"minvalue":"","maxvalue":"","defaultvalue":"","usingListener":false,"name":"Counter","x":1062,"y":498,"wires":[["5359cb4.512ac34"],[]]},{"id":"5359cb4.512ac34","type":"ui_gauge","z":"d230b30f.0f76","name":"","group":"4efc5e41.c7488","order":2,"width":"0","height":"0","gtype":"gage","title":"Counter","label":"units","format":"{{value}}","min":"0","max":"66000","colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","x":1260,"y":492,"wires":[]},{"id":"d583e767.a4ca48","type":"debug","z":"d230b30f.0f76","name":"","active":false,"console":"false","complete":"true","x":1250,"y":420,"wires":[]},{"id":"b13f6acb.725598","type":"debug","z":"d230b30f.0f76","name":"","active":false,"console":"false","complete":"true","x":1250,"y":294,"wires":[]},{"id":"b7b00a4b.da4428","type":"ui_button","z":"d230b30f.0f76","name":"Node Two","group":"3c019f1d.13858","order":2,"width":0,"height":0,"passthru":false,"label":"sub / unsub","color":"","bgcolor":"","icon":"fa-tachometer","payload":"{ \"interval\": 500, \"queueSize\": 1 }","payloadType":"str","topic":"","x":160,"y":410,"wires":[["33b5c7d2.989db8"]]},{"id":"72d0172e.43a9c8","type":"ui_button","z":"d230b30f.0f76","name":"Node One","group":"3c019f1d.13858","order":4,"width":0,"height":0,"passthru":false,"label":"sub / unsub","color":"","bgcolor":"","icon":"fa-tachometer","payload":"{ \"interval\": 1000, \"queueSize\": 1 }","payloadType":"str","topic":"","x":150,"y":356,"wires":[["73dd3549.893a1c"]]},{"id":"41c1a6d1.068938","type":"OPCUA-IIoT-Inject","z":"d230b30f.0f76","injectType":"listen","payload":"{ \"interval\": 500, \"queueSize\": 10 }","payloadType":"json","topic":"","repeat":"","crontab":"","once":true,"startDelay":"","name":"Start Abo","addressSpaceItems":[{"name":"Counter","nodeId":"ns=4;s=Counter","datatypeName":""},{"name":"FullCounter","nodeId":"ns=4;s=FullCounter","datatypeName":""}],"x":290,"y":470,"wires":[["5fe47b47.4c03e4"]]},{"id":"73dd3549.893a1c","type":"OPCUA-IIoT-Node","z":"d230b30f.0f76","nodeId":"ns=0;i=2277","datatype":"NodeId","value":"","usingListener":true,"name":"","x":300,"y":356,"wires":[["5fe47b47.4c03e4"]]},{"id":"33b5c7d2.989db8","type":"OPCUA-IIoT-Node","z":"d230b30f.0f76","nodeId":"ns=4;s=TestReadWrite","datatype":"NodeId","value":"","usingListener":true,"name":"","x":300,"y":410,"wires":[["5fe47b47.4c03e4"]]},{"id":"27a80456.dd4a9c","type":"OPCUA-IIoT-Inject","z":"d230b30f.0f76","injectType":"read","payload":"","payloadType":"date","topic":"","repeat":"","crontab":"","once":false,"startDelay":15,"name":"Server Info","addressSpaceItems":[{"name":"ServerStatus","nodeId":"ns=0;i=2256","datatypeName":""},{"name":"ServerDiagnostic","nodeId":"ns=0;i=2274","datatypeName":""}],"x":150,"y":680,"wires":[["59ce8490.a4208c"]]},{"id":"59ce8490.a4208c","type":"OPCUA-IIoT-Read","z":"d230b30f.0f76","attributeId":"0","maxAge":1,"depth":1,"connector":"ff9e9c30.7f459","name":"Read Structures","justValue":true,"multipleRequest":true,"showStatusActivities":false,"showErrors":false,"x":320,"y":680,"wires":[["5deae21a.a329fc","94ca7ff.c35d88"]]},{"id":"5deae21a.a329fc","type":"debug","z":"d230b30f.0f76","name":"","active":true,"console":"false","complete":"true","x":510,"y":740,"wires":[]},{"id":"94ca7ff.c35d88","type":"OPCUA-IIoT-Response","z":"d230b30f.0f76","name":"","x":520,"y":680,"wires":[["ee75778e.21fa88"]]},{"id":"ee75778e.21fa88","type":"debug","z":"d230b30f.0f76","name":"","active":false,"console":"false","complete":"true","x":700,"y":680,"wires":[]},{"id":"ff9e9c30.7f459","type":"OPCUA-IIoT-Connector","z":"d230b30f.0f76","endpoint":"opc.tcp://localhost:55388/UA/NodeREDIIOTServer","keepSessionAlive":true,"loginEnabled":false,"securityPolicy":"None","securityMode":"NONE","name":"Local Server","showStatusActivities":false,"showErrors":false},{"id":"ca04a238.d2743","type":"ui_group","z":"d230b30f.0f76","name":"Default","tab":"48690356.d3c2fc","order":2,"disp":true,"width":"15"},{"id":"3c019f1d.13858","type":"ui_group","z":"d230b30f.0f76","name":"Subs","tab":"48690356.d3c2fc","order":1,"disp":true,"width":"6"},{"id":"4efc5e41.c7488","type":"ui_group","z":"d230b30f.0f76","name":"Start Abo","tab":"48690356.d3c2fc","order":2,"disp":true,"width":"4"},{"id":"48690356.d3c2fc","type":"ui_tab","z":"d230b30f.0f76","name":"Home","icon":"dashboard"}]

Flow Info

Created 7 years, 3 months ago
Updated 7 years ago
Rating: not yet rated

Owner

Actions

Rate:

Node Types

Core
  • comment (x1)
  • debug (x16)
  • delay (x1)
  • function (x1)
  • link in (x1)
  • link out (x1)
Other

Tags

  • opcua
  • opc
  • ua
  • iot
  • iiot
  • information
  • model
  • rami4.0
Copy this flow JSON to your clipboard and then import into Node-RED using the Import From > Clipboard (Ctrl-I) menu option