WOLFRAM SYSTEM MODELER

OPCUA

A Modelica library for OPC UA (Unified Architecture)

Package Contents

Documentation

Getting started and included servers

Client

Client for connecting to an OPC UA server

Examples

A collection of examples to help you get started

Components

Components for interacting with an OPC UA server

Interfaces

Interfaces such as connectors and partial models specific to the OPCUA Library

ExternalFunctions Protected

Internal package with external functions used by the OPCUA Library

Types

Common types specific to the OPCUA Library

Icons

Package containing icons

Configuration

Blocks for configuring the communication with the OPC UA server

Library Units and Quantities

Units All units available in OPCUA
Quantities All quantities available in OPCUA

Information

What Is OPCUA?

OPCUA is a library that allows you to create Modelica models that connect to OPC servers in the real world.

What Can You Do with OPCUA?

  • The difference between OPCUA and OPCClassic is that OPCUA connects to OPC UA servers and OPCClassic connects to OPC DA servers. Other than that, all the features that are possible with OPCClassic are possible with OPCUA, including:
    • Connect to OPC servers in a variety of domains, such as oil and gas, industrial energy and life sciences, all in real time
    • Incorporate production data from the real world into your models, for example, as block inputs or reference signals
    • Connect to several servers from one model
    • Write model data directly to OPC servers
    • Monitor production data in real time
    • Perform data analyses
    • Design control systems and test them on real data
  • Additionally, with OPCUA, it is also possible to:
    • Connect to any computer, device or chip running any operating system that can run an OPC UA server.

How Does It Work?

OPCUA is based on the OPC UA specification. It is the successor to the old OPC Standard, which uses Microsoft Windows COM/DCOM interface. OPC UA has all the features of the OPC Classic specification, with many additional features, such as better security, multi-threaded support, multi-platform support and scalability.

The OPCUA Modelica library uses the external, open source client library open62541 (original source can be found here) to establish communication with the OPC UA server.

Limitations

OPCUA supports the OPC UA specification for reading and writing data to scalar nodes, as well as connecting to servers. 

Supported OPC UA types include Real, Integer and Boolean. Other OPC-specific types, such as Date and Guid, are currently not supported.

Resources

Ask questions about System Modeler and OPCUA:

http://community.wolfram.com

Get details about the OPC UA protocol:

https://opcfoundation.org

Learn more about System Modeler:

http://www.wolfram.com/system-modeler/resources

Contact support:

support@wolfram.com

Licensed under Wolfram SystemModeler™ Library License Agreement

For license conditions, see here.

Attribution

open62541 - https://github.com/open62541/open62541
This software includes open62541, licensed under the Mozilla Public License version 2.
You may obtain the source code from https://github.com/open62541/open62541.
Any terms herein which differ from the MPL are offered by Wolfram alone.
OpenSSL - http://www.openssl.org/
This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/).

The OpenSSL Toolkit is licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and limitations under the License.

Wolfram Language

In[1]:=
SystemModel["OPCUA"]
Out[1]:=

Revisions

New in Version 3.0

  • Support for authentication and communication security
  • Efficient reading and writing of multiple nodes using node lists
  • Support for handling communication and data value errors in the model
  • Support for reading server and source timestamps
  • Support for reading and writing 1D and 2D arrays
  • Updated client library open62541 to Version 1.4.6

See the upgrading documentation for how to update models based on OPCUA 2.0.x.

New in Version 2.0.1

  • Improved handling of external code

New in Version 2.0

  • Library compatible with Modelica Standard Library 4.0.0

New in Version 1.3

  • Updated client library open62541 to Version 1.3.4
  • Support for Apple Silicon platform

New in Version 1.2.1

  • Fix Modelica Language incompatibilities

New in Version 1.2

  • Library is now available for free for Wolfram System Modeler users
  • Now including a standalone OPC UA server that can serve a custom list of variable nodes; see varserver documentation for more information.

New in Version 1.1.2

  • Allow mixing OPCUA and OPCClassic library components in the same model
  • Platform compatibility fixes for the example OPC UA server

New in Version 1.1.1

  • Now compatible with Modelica library Version 3.2.3

New in Version 1.1

  • Added support for reading and writing of all OPC UA built-in Number data types
  • Improved error reporting, OPC UA status codes are now also reported with their meaning in plain text
  • Added stored plots to examples for easy plotting of relevant variables
  • Now compatible with Modelica library Version 3.2.2