Main Content

opcua

Create OPC UA client object

Description

uaClient = opcua(serverInfoObj) creates an OPC UA client associated with the server specified by serverInfoObj. You can create server objects with the opcuaserverinfo function.

uaClient = opcua(serverUrl) creates a client associated with the server referenced by the URL specified in serverUrl.

uaClient = opcua(hostname,portnum) creates an OPC UA client object associated with the server at port portnum on the host identified by hostname.

By default, the client attempts to retrieve available connection configurations (called Endpoints) from the server and chooses the most secure possible security settings from those configurations. If the attempt to retrieve endpoints fails, an error is generated. You can override the default settings by using setSecurityModel to change the MessageSecurityMode or ChannelSecurityPolicy settings.

Note

Security Considerations: To enable a secure communication with an OPC UA server, use a strong channel security policy and message security mode.

You can expose your system to security risks when you set the MessageSecurityMode and ChannelSecurityPolicy to "None" using the setSecurityModel function. Use this setting only in a trusted environment.

If you need to connect to an OPC UA server that does not support a security policy, request the server administrator to enable a strong channel security policy and message security mode for the server. These settings enable encryption and authentication and safeguard your data and operations.

example

Examples

collapse all

Create a client for the first server found on the local host.

s = opcuaserverinfo("localhost");
uaClient = opcua(s(1));

Create a client for the server at port 53530 on the local host.

uaClient = opcua("localhost",53530)
uaClient = 

OPC UA Client:

   Server Information:
                     Name: 'SimulationServer@localhost'
                 Hostname: 'localhost'
                     Port: 53530
              EndpointUrl: 'opc.tcp://localhost:53530/OPCUA/SimulationServer'

   Connection Information:
                  Timeout: 10
                   Status: 'Disconnected'
              ServerState: '<Not connected>'

   Security Information:
      MessageSecurityMode: SignAndEncrypt
    ChannelSecurityPolicy: Aes256_Sha256_RsaPss
                Endpoints: [1×11 opc.ua.EndpointDescription]

Create a client using the Discovery URL of the server.

uaClient = opcua("opc.tcp://localhost:53530/OPCUA/SimulationServer");

Input Arguments

collapse all

OPC UA server information object, specified as an opc.ua.ServerInfo object.

Data Types: object

OPC UA server URL, specified as a character vector or string. The server URL must use the opc.tcp protocol; Industrial Communication Toolbox™ does not support http or https connections to an OPC UA server.

Data Types: char | string

Server hostname or IP address, specified as a character vector or string. A hostname can be short or a fully qualified domain name.

Example: 'localhost'

Data Types: char | string

Server host port number, specified as a numeric value.

Example: 5000

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Output Arguments

collapse all

OPC UA client, returned as an opc.ua.Client object, with these properties.

PropertyDescription
Server Information
NameServer name.
HostnameServer hostname or IP address.
PortPort number used for TCP/IP connections to the server.
EndpointUrlURL to use for connection to the server.
Connection Information
TimeoutTime to wait for all operations on the server to complete.
StatusStatus of the client: 'Connected' or 'Disconnected'.
ServerStateState of the server: 'Running', 'Failed', 'No Configuration','Suspended', 'Shutdown', 'Test', 'Comms Fault', 'Unknown'.
Security Information
MessageSecurityModeMessage security mode specified for connection.
ChannelSecurityPolicyChannel security policy specified for connection.
EndpointsAvailable endpoints for server.
Server Limits (These properties are available only after you connect the client to the server)
MinSampleRateMinimum sample rate in seconds that the server can generally support.
MaxReadNodesMaximum number of nodes supported per read operation.
MaxWriteNodesMaximum number of nodes supported per write operation.
MaxHistoryReadNodesMaximum number of nodes supported by historical read operations.
MaxHistoryValuesPerNodeMaximum history values returned per node in historical read operations.

Version History

Introduced in R2015b