Vestas OPCUA
Plugin to collect live data from Vestas turbines via OPCUA protocol
Vestas Turbines
The purpose of this plugin is to read data from Vestas live wind data via their OPCUA servers. For this plugin, the following fields should have these values:
Usage
This plugin relies on the OPCUA plugin. Make sure you have been granted access to the OPCUA plugin. You can run a discover
without a configuration file. In this case, all the variables in the Vestas OPCUA namespace are displayed in a hierarchical tree format. If the debug is run from the command line with a debug value of -v
, the actual values for all the namespace nodes will also be displayed. The returned tree will look something like this:
The Vestas OPCUA connection string usually has a a suffix associated with it. For example, the connection string may be something like: opc.tcp://100.127.1.220:62550/DataAccessServer
, where 62550
is the TCP port. The /DataAccessServer
at the end is a suffix
.
The Vestas OPCUA server also requires a security string, which for Vestas will always be: Basic256,SignAndEncrypt
For the Private Key and Public Key, follow the procedure in the general OPCUA documentation to generate them. This can be done on your local machine with a Linux terminal. Once created, upload them to their respective directories in the plugin configuration menu. The certificates need to be trusted by the OPCUA server admin. To do this, run a discovery using all the parameters as above including the Private and Public Keys. You should see it fail with an error similar to Certificate not trusted
. This confirms that we can reach the OPCUA server, the certificate just needs to be trusted. Inform the client when this is done and they will get the admin to trust the certificates, after which you should be able to discover data.
There is a default configuration file. This needs to be edited before being usable. The following process should be used: 1. Run a raw OPCUA discovery to get all data available on the OPCUA server. Take a copy of it and save it in a notepad document. 2. Download default configuration file, and replace the <PLANT_NAME> and the turbine names (e.g. WTG01) with the actual plant name and turbine names that can be found in the raw OPCUA discovery. 3. Upload discovery, select it in the "Discover only" config file selection, and run the discovery. 4. Use the script (get it from Ardexa Operations) to find get a list of the fields from the raw Discovery. Compare this to the list of fields from the current config using Notepad++. 5. Add any fields that are not in the configuration to the configuration file, and comment out any fields that are empty (not in the raw Discovery). 6. Name it according to the turbine type it is, re-upload the new configuration file, run a discovery, and if all is looking good, save the scenario.
As this is a rather involved process, please contact Ardexa Support if any issues are encountered.
Arguments
IP Address
.. something like: 100.127.1.220configuration File full path
... this is the config file discussed above.--port
This is an optional entry denoting the TCP Port of the Vestas OPCUA server. It is defaulted to62550
--namespace_index
. This is an optional entry only available when usingdiscover
. It is the namespace for which to discover variables. It is defaulted to0
--auth_file
... this is the authentication file discussed above.--app_uri
. This is the suffix, which is set to a default ofurn:example.org:FreeOpcUa:python-opcua
--suffix
. This is the application URI, which is set to a default of/DataAccessServer
--security_str
. This is the security string, which is set to a default ofBasic256,SignAndEncrypt
--private_key
. This is the private key generated above, once uploaded and selected it will show up as/opt/ardexa/config/opcua-ardexa/my_private_key.pem
--public_key
. This is the public key generated above, once uploaded and selected it will show up as/opt/ardexa/config/opcua-ardexa/my_cert.pem
Last updated