OPC UA Server 1. OPC UA Server Node in das Scheet per Drag und Drop reinziehen 2. Konfiguration öffnen durch doppelklick auf die Node 3. OPC UA Server anlegen durch klick auf den Stifft Button 1. Port angeben an dem der Server auf Verbindungen warten soll z.b.: 4840 2. Auswählen ob jeder sich einloggen kann durch Häkchen setzen bei Anonymus. Created by ENE, SSV Software Systems, 2016.09.09 Seite 1 von 7
3. Falls gewünscht Benutzername und Passwort für den Zugang zum Server eingeben 4. OPC UA Node anlegen durch: 1. Angabe des Pfades der Node. Der komplette Pfad wird in Ordner mit Unterordner aufgelöst, das Ende des Pfades bildet dabei den Namen der Node. Diese 3 Nodes mit den Pfaden ergeben OPC UA Server mit folgender Baumstruktur 2. Auswählen des Datentypen der Node 3. Auswahl ob die Node nur lesbar ist oder mit Lese- und Schreibrechten. 4. Wenn ein Serverstatus Symbol bei dieser Node eingeblendet werden soll so unter Status das Häkchen setzen. 5. Wenn alle benötigten Nodes Angelegt sind muss der Server über Deploy gestartet werden. Created by ENE, SSV Software Systems, 2016.09.09 Seite 2 von 7
Die Node Variablen müssen initialisiert werden anderenfalls haben diese keinen Wert. Zum Testen eine Inject Node an den OPC UA Eingang anbinden und eine Debug Node an den Ausgang. Die OPC UA Node IDs werden automatisch generiert deshalb wenn nodes gelöscht oder hinzugefügt werden ändern sich auch ggf. ihre Node IDs. Zum auslesen des Servers wird ein Client benötigt. Hier eine liste von frei verfügbaren OPC UA Clients: UA Expert von Unified Automation: https://www.unified-automation.com/. OPC UA Test Tools:https://opcfoundation.org/ OPC UA Client Input Node 1. OPC UA Client Input Node in das Scheet per Drag und Drop reinziehen. 2. Konfiguration öffnen durch doppelklick auf die Node 3. OPC UA Client Verbindung anlegen durch klick auf den Stifft Button 1. Die Server URL muss das Format opc.tcp://<ip adresse>:<port> aufweisen 2. Zugangsdaten Username und Passwort eingeben falls Server diese voraussetzt. 3. Sampling Intervall für für die Variablen setzen. 4. OPC UA Client Input Node Konfigurieren: 1. unter Payload kann ausgewählt werden ob die Node den Client Verbindungsstatus oder eine Server Variable (Node value) zurückgeben soll. Created by ENE, SSV Software Systems, 2016.09.09 Seite 3 von 7
2. Die gewünschte Server Variable kann manuell, durch Namespace, ID Type und ID erfolgen oder über die Suche, Lupe Symbol, ausgewählt werden. 3. Eine Variable wählen und mit Add übernehmen. Created by ENE, SSV Software Systems, 2016.09.09 Seite 4 von 7
5. Nach einem Deploy kann in diesem Beispiel die Variable 'present' ausgelesen werden. OPC UA Client Output Node 1. OPC UA Client Output Node in das Scheet per Drag und Drop reinziehen. 2. Konfiguration öffnen durch doppelklick auf die Node. 3. OPC UA Client Verbindung anlegen, siehe OPC UA Client Output Node 4. OPC UA Client Output Node Konfigurieren: 1. Die gewünschte Server Variable kann manuell oder über die Suche, Lupe Symbol, eingegeben werden. 2. Datentype der Variable wählen, beim hinzufügen über suchen wird der richtige Type automatisch eingestellt. 5. Für die Eingabe kann hier auch das Inject Node verwendet werden. Created by ENE, SSV Software Systems, 2016.09.09 Seite 5 von 7
6. Testserver: Test Server von Unified Automation: https://www.unified-automation.com/. OPC UA Test Tools:https://opcfoundation.org/ Publick Server: opc.tcp://opcua.demo-this.com:51210 OPC UA Client und Server Test Test Flow Aufbau mit 3 Variablen im Node-RED Abrufen der Server Variablen über UA Expert Created by ENE, SSV Software Systems, 2016.09.09 Seite 6 von 7
Test Flow als Json zum importieren in Node-RED, Nach dem Importieren Die Server IP Adresse anpassen: [{"id":"1169d967.16fcd7","type":"opcua-clientconfig","host":"opc.tcp://192.168.0.91:4840","interval":"500","user":"","pass":""}, {"id":"5a4fae8.6547c5","type":"opcua-server-config","port":"4840","anonym":true,"user":"","pass":""}, {"id":"35839daf.04bdb2","type":"opcuaserver","server":"5a4fae8.6547c5","topic":"raum/103c/ma/present","dtype":"bit","rw":true,"state":false,"x":280.5, "y":280,"z":"4fd5982e.33a9d","wires":[["dbbc1b41.0a9768"]]},{"id":"8fac877d.bb8bf8","type":"opcuaserver","server":"5a4fae8.6547c5","topic":"raum/103c/ma/tel","dtype":"s16","rw":true,"state":false,"x":262,"y":36 0,"z":"4fd5982e.33a9d","wires":[["dbbc1b41.0a9768"]]}, {"id":"76b2cc8d.4a4514","type":"inject","name":"","topic":"","payload":"0","payloadtype":"string","repeat":"","cr ontab":"","once":true,"x":88,"y":280,"z":"4fd5982e.33a9d","wires":[["35839daf.04bdb2"]]}, {"id":"388f69c7.0319e6","type":"opcuaserver","server":"5a4fae8.6547c5","topic":"raum/103c/ma/name","dtype":"str","rw":true,"state":false,"x":274.5,"y" :320,"z":"4fd5982e.33a9d","wires":[["dbbc1b41.0a9768"]]}, {"id":"1721329.11829cd","type":"inject","name":"","topic":"","payload":"mustermann","payloadtype":"string","repea t":"","crontab":"","once":true,"x":103,"y":320,"z":"4fd5982e.33a9d","wires":[["388f69c7.0319e6"]]}, {"id":"4c758a80.8f4384","type":"inject","name":"","topic":"","payload":"29","payloadtype":"string","repeat":"","c rontab":"","once":true,"x":88,"y":360,"z":"4fd5982e.33a9d","wires":[["8fac877d.bb8bf8"]]}, {"id":"dbbc1b41.0a9768","type":"debug","name":"","active":false,"console":"false","complete":"false","x":467,"y": 360,"z":"4fd5982e.33a9d","wires":[]},{"id":"dd1d4e19.77937","type":"opcuain","server":"1169d967.16fcd7","topic":"raum/103c/ma/present","payload":"node","ns":"1","itype":"N","ident":"5000 3","x":117,"y":480,"z":"4fd5982e.33a9d","wires":[["541dc848.c81cd8"]]}, {"id":"541dc848.c81cd8","type":"debug","name":"","active":true,"console":"false","complete":"false","x":469,"y":5 60,"z":"4fd5982e.33a9d","wires":[]},{"id":"a4dbf2ca.04b9c","type":"opcuaout","server":"1169d967.16fcd7","topic":"raum/103c/ma/name","dtype":"11","ns":"1","itype":"N","ident":"50005","x" :454.5,"y":800,"z":"4fd5982e.33a9d","wires":[]}, {"id":"d2ef4efe.e5843","type":"inject","name":"","topic":"","payload":"zimmerman","payloadtype":"string","repeat" :"","crontab":"","once":false,"x":103.5,"y":760,"z":"4fd5982e.33a9d","wires":[["a4dbf2ca.04b9c"]]}, {"id":"a50451.55cf3bb","type":"opcuain","server":"1169d967.16fcd7","topic":"raum/103c/ma/tel","payload":"node","ns":"1","itype":"n","ident":"50004"," x":100.5,"y":560,"z":"4fd5982e.33a9d","wires":[["541dc848.c81cd8"]]},{"id":"dcd14e2f.1eec1","type":"opcuain","server":"1169d967.16fcd7","topic":"raum/103c/ma/name","payload":"node","ns":"1","itype":"n","ident":"50005", "x":111,"y":520,"z":"4fd5982e.33a9d","wires":[["541dc848.c81cd8"]]}, {"id":"8dd98d9d.4f0ff","type":"comment","name":"opc UA Server with initial Values","info":"","x":148,"y":240,"z":"4fd5982e.33a9d","wires":[]}, {"id":"82255c9d.195a7","type":"comment","name":"opc UA Client Input nodes","info":"","x":131,"y":440,"z":"4fd5982e.33a9d","wires":[]}, {"id":"e20dca1e.557fa8","type":"comment","name":"opc UA Client Output nodes","info":"","x":131,"y":640,"z":"4fd5982e.33a9d","wires":[]}, {"id":"29c602f4.39066e","type":"inject","name":"","topic":"","payload":"1","payloadtype":"string","repeat":"","cr ontab":"","once":false,"x":90,"y":720,"z":"4fd5982e.33a9d","wires":[["4910bc06.897fd4"]]}, {"id":"4910bc06.897fd4","type":"opcuaout","server":"1169d967.16fcd7","topic":"raum/103c/ma/present","dtype":"0","ns":"1","itype":"n","ident":"50003"," x":460.5,"y":720,"z":"4fd5982e.33a9d","wires":[]},{"id":"88bba2dd.53da7","type":"opcuaout","server":"1169d967.16fcd7","topic":"raum/103c/ma/tel","dtype":"3","ns":"1","itype":"n","ident":"50004","x":4 44,"y":880,"z":"4fd5982e.33a9d","wires":[]}, {"id":"c3f11902.b0bae8","type":"inject","name":"","topic":"","payload":"0","payloadtype":"string","repeat":"","cr ontab":"","once":false,"x":90,"y":680,"z":"4fd5982e.33a9d","wires":[["4910bc06.897fd4"]]}, {"id":"b67bbefe.1ca88","type":"inject","name":"","topic":"","payload":"mustermann","payloadtype":"string","repeat ":"","crontab":"","once":false,"x":103.5,"y":800,"z":"4fd5982e.33a9d","wires":[["a4dbf2ca.04b9c"]]}, {"id":"e706e9dc.8c3e58","type":"inject","name":"","topic":"","payload":"29","payloadtype":"string","repeat":"","c rontab":"","once":false,"x":90,"y":840,"z":"4fd5982e.33a9d","wires":[["88bba2dd.53da7"]]}, {"id":"4e3d1539.ce867c","type":"inject","name":"","topic":"","payload":"44","payloadtype":"string","repeat":"","c rontab":"","once":false,"x":90,"y":880,"z":"4fd5982e.33a9d","wires":[["88bba2dd.53da7"]]}] Created by ENE, SSV Software Systems, 2016.09.09 Seite 7 von 7