Siemens OPC UA Modeling Editor Functional Description
Siemens OPC UA Modeling Editor Functional Description
Modeling Editor
Functional
description
Siemens
SiOME / OPC UA / TIA V15 Industry
Online
https://support.industry.siemens.com/cs/ww/en/view/109755133 Support
Legal information
Legal information
Use of application examples
Application examples illustrate the solution of automation tasks through an interaction of several
components in the form of text, graphics and/or software modules. The application examples are
a free service by Siemens AG and/or a subsidiary of Siemens AG (“Siemens”). They are non-
binding and make no claim to completeness or functionality regarding configuration and
equipment. The application examples merely offer help with typical tasks; they do not constitute
customer-specific solutions. You yourself are responsible for the proper and safe operation of the
products in accordance with applicable regulations and must also check the function of the
respective application example and customize it for your system.
Siemens grants you the non-exclusive, non-sublicensable and non-transferable right to have the
application examples used by technically trained personnel. Any change to the application
examples is your responsibility. Sharing the application examples with third parties or copying the
application examples or excerpts thereof is permitted only in combination with your own products.
The application examples are not required to undergo the customary tests and quality inspections
of a chargeable product; they may have functional and performance defects as well as errors. It is
your responsibility to use them in such a manner that any malfunctions that may occur do not
result in property damage or injury to persons.
Disclaimer of liability
Siemens shall not assume any liability, for any legal reason whatsoever, including, without
limitation, liability for the usability, availability, completeness and freedom from defects of the
application examples as well as for related information, configuration and performance data and
any damage caused thereby. This shall not apply in cases of mandatory liability, for example
under the German Product Liability Act, or in cases of intent, gross negligence, or culpable loss of
life, bodily injury or damage to health, non-compliance with a guarantee, fraudulent
non-disclosure of a defect, or culpable breach of material contractual obligations. Claims for
damages arising from a breach of material contractual obligations shall however be limited to the
© Siemens AG 2018 All rights reserved
foreseeable damage typical of the type of agreement, unless liability arises from intent or gross
negligence or is based on loss of life, bodily injury or damage to health. The foregoing provisions
do not imply any change in the burden of proof to your detriment. You shall indemnify Siemens
against existing or future claims of third parties in this connection except where Siemens is
mandatorily liable.
By using the application examples you acknowledge that Siemens cannot be held liable for any
damage beyond the liability provisions described.
Other information
Siemens reserves the right to make changes to the application examples at any time without
notice. In case of discrepancies between the suggestions in the application examples and other
Siemens publications such as catalogs, the content of the other documentation shall have
precedence.
The Siemens terms of use (https://support.industry.siemens.com) shall also apply.
Security information
Siemens provides products and solutions with industrial security functions that support the secure
operation of plants, systems, machines and networks.
In order to protect plants, systems, machines and networks against cyber threats, it is necessary
to implement – and continuously maintain – a holistic, state-of-the-art industrial security concept.
Siemens’ products and solutions constitute one element of such a concept.
Customers are responsible for preventing unauthorized access to their plants, systems, machines
and networks. Such systems, machines and components should only be connected to an
enterprise network or the Internet if and to the extent such a connection is necessary and only
when appropriate security measures (e.g. firewalls and/or network segmentation) are in place.
For additional information on industrial security measures that may be implemented, please visit
https://www.siemens.com/industrialsecurity.
Siemens’ products and solutions undergo continuous development to make them more secure.
Siemens strongly recommends that product updates are applied as soon as they are available
and that the latest product versions are used. Use of product versions that are no longer
supported, and failure to apply the latest updates may increase customer’s exposure to cyber
threats.
To stay informed about product updates, subscribe to the Siemens Industrial Security RSS Feed
at: https://www.siemens.com/industrialsecurity.
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 2
Table of contents
Table of contents
Legal information ......................................................................................................... 2
1 Introduction ........................................................................................................ 4
1.1 Overview............................................................................................... 4
1.2 Highlights .............................................................................................. 5
2 Handling and functions of SiOME .................................................................... 6
2.1 Description of the user interface .......................................................... 6
2.2 Functional description for address space modelling ............................ 7
2.2.1 Import of OPC UA models .................................................................... 7
2.2.2 Creating new OPC UA namespaces .................................................... 8
2.2.3 Select or lock the current namespace .................................................. 8
2.2.4 Displaying the Data Types in the Current Model ............................... 11
2.2.5 Delete the current object model ......................................................... 11
2.2.6 Creating a new object type ................................................................. 12
2.2.7 Creating a new data type ................................................................... 16
2.2.8 Create/derive a new variable type ...................................................... 17
2.2.9 Creating a StateMachine Type and Opening the StateMachine
Editor .................................................................................................. 19
2.2.10 Defining references and attributes ..................................................... 20
2.2.11 "Mouseover" Functions ...................................................................... 22
2.2.12 Moving and Renaming Nodes ............................................................ 24
2.2.13 Navigating in the Address Space Model ............................................ 26
© Siemens AG 2018 All rights reserved
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 3
1 Introduction
1 Introduction
1.1 Overview
The OPC UA communication protocol enables companies and organizations to
create their own standards for an OPC UA information model. You can generate a
standardized server interface with these functions. For communication to your
system or system parts, the OPC UA clients only have to know the defined
standard without taking into account detailed information on the system and its
devices.
The platform-independent OPC UA protocol with the companion specifications
extension greatly facilitates standardized cross-manufacturer communication and
reduces implementation effort.
Many organizations and associations already have standardized OPC UA
information models for your industry-specific systems and solutions. These include
the following organizations, for example:
• Euromap
• AIM
• VDMA
• AutomationML
• OMAC
© Siemens AG 2018 All rights reserved
With the free "Siemens OPC UA Modelling Editor" (SiOME) tool, we have created
an editor for defining your own OPC UA information models or mapping existing
companion specifications on your SIMATIC PLC. Using this tool, you can import
and edit information models as XML files or generate and export individualized
models.
Unknown
Application Unit structure
“?” Companion-
Spezifikation.xml
Information model e.g. “Euromap”
Client fits the
according to
companion
companion
specification
specification
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 4
1 Introduction
1.2 Highlights
The Siemens OPC UA Modelling Editor offers the following functions which
facilitate the generation of information models:
• Import of prefabricated OPC UA companion specifications.
• Saving of the work status (project) in XML format and re-import.
• Modeling of own types, objects and methods.
• Importing a TIA portal project directly into the tool via the TIA Openness
interface.
• Quick linking of OPC UA objects from the OPC UA information model with
control variables and methods via drag & drop.
• Comprehensive access monitoring by setting the access rights.
• Freely selectable description of the OPC UA nodes including localization.
• Basic diagnosis of a connected OPC UA Server
New in V1.9:
• Import of multiple NodeSets at the same time
• Online browsing on an OPC UA Server
• Testing the OPC UA Namespace dependencies
© Siemens AG 2018 All rights reserved
The following system requirements also apply for the use of the TIA Openness
function of SiOME:
• Windows 7/10 (x64)
• TIA Portal openness installation
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 5
2 Handling and functions of SiOME
1 5 11 15
2 4 7 8 10 13
6 9 12 14
3
18 19 20 22
16 17 21
© Siemens AG 2018 All rights reserved
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 6
2 Handling and functions of SiOME
Note If logging is activated, SiOME creates the "Log" folder in the same directory as
the SiOME EXE. In this folder you will find the logs in CSV format.
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 7
2 Handling and functions of SiOME
2. In the dialog that appears, select the file that you want to import. SiOME also
offers you the possibility to select and import several NodeSets.
Click Open in the dialog.
Note Alternatively, you can drag and drop a NodeSet XML file into the "Information
model" area.
2. Activate the slider "New Namespace" in the appearing dialog and assign a
name. Then confirm with "Ok".
You have the option of selecting the currently active namespace or locking an
existing namespace to prevent unwanted modifications.
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 8
2 Handling and functions of SiOME
3. All objects created from now on are automatically assigned to the selected
namespace. You can change the assignment subsequently.
Locking a namespace
For example, if you have created all objects of a namespace and want to protect
them against further modifications, you can lock the namespace. Proceed as
follows.
1. Import an information model or create your own namespace.
© Siemens AG 2018 All rights reserved
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 9
2 Handling and functions of SiOME
3. A lock symbol indicates that the namespace is locked. From now on, you
cannot create new objects for this namespace. To unlock, use the "Unlock and
Current Namespace" button on the context menu.
2. You can use the arrows to change the sequence of the namespaces created in
the dialog that appears. Confirm with "OK".
© Siemens AG 2018 All rights reserved
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 10
2 Handling and functions of SiOME
After you have clicked the button, you can expand the individual namespaces to
check their dependencies.
© Siemens AG 2018 All rights reserved
If you want to display the data types for all variables in the information model,
proceed as follows:
1. Click on the button in the upper left corner to open the menu.
2. Select the item "Layout".
3. Select the checkbox "Show dataTypes for variables and variableTypes in
information model".
NOTICE Permanent!
If you reset the project by "Refresh", all changes are lost. Save your
project/information model beforehand by exporting it via the "Export XML" button.
This allows you to import it again at a later time and process it further.
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 11
2 Handling and functions of SiOME
2. In the dialog that appears, enter a name for the object type and confirm with
"OK".
© Siemens AG 2018 All rights reserved
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 12
2 Handling and functions of SiOME
2. Enter a name for the child in the appearing dialog and select the class
"Variable" as "NodeClass". Then select a suitable data type (in the example:
"Int32") and confirm with "Ok".
© Siemens AG 2018 All rights reserved
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 13
2 Handling and functions of SiOME
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 14
2 Handling and functions of SiOME
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 15
2 Handling and functions of SiOME
2. Enter a name for the structure in the dialog that appears and confirm with "Ok".
The active namespace is automatically selected as the namespace in which
the structure definition is to be stored.
© Siemens AG 2018 All rights reserved
3. Fill the structure with items. Right-click on the structure you just created and
select "Add New Structure Item".
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 16
2 Handling and functions of SiOME
4. In the tree view, select the created item with the left mouse button, assign a
name in the "Structure Item Definition" area and select the desired data type.
Decide whether it is an array of the desired data type and whether this item is
optional.
5. Repeat steps 3 and 4 for each required item within your structure.
Once you have created a structure type, you can also create the variable type from
it. The advantage is that when you create an instance of the structure using the
variable type, the structure elements are displayed in the OPC UA model. These
can then be processed as individual elements in the structure by OPC UA clients.
The disadvantage is that the OPC UA information model contains significantly
more nodes.
© Siemens AG 2018 All rights reserved
Procedure:
1. Right-click on your structure type and then left-click "Create Variable Type" in
the context menu.
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 17
2 Handling and functions of SiOME
2. Enter a name for the variable type and confirm with "Ok".
Then you can find your variable type in the directory VariableTypes >
BaseVariableType > BaseDataVariableType:
© Siemens AG 2018 All rights reserved
Note SiOME offers the possibility to delete the derived variable type if you delete the
corresponding data type.
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 18
2 Handling and functions of SiOME
SiOME offers you the possibility to create StateMachines via an editor. Proceed as
follows to create a StateMachine:
1. For StateMachine Editor, navigate to the FiniteStateMachineType type, right-
click the type, and then click Add New ObjectType on the shortcut menu.
2. Enter a name for your StateMachine type in the "Add New ObjectType" dialog
and confirm with "Ok".
© Siemens AG 2018 All rights reserved
3. Navigate to the created StateMachine type and right-click on it. Click on "Show
State Machine" in the context menu to open the StateMachine Editor and
configure the StateMachine.
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 19
2 Handling and functions of SiOME
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 20
2 Handling and functions of SiOME
Note The availability of the attributes depends on the "NodeClass" of the object.
Defining references
In the "References" area, you can define references for the selected node of the
information model. If you have generated a child of an object type in the
"Information model" area, SiOME automatically generates the necessary
"Hierarchical" references for you. Under "References", you can manually enter the
references of a node or change existing references. Also important is the
"ModellingRule” option, which you can use to decide whether a reference is
necessary ("Mandatory") or not when instantiating the type.
Figure 2-3 References
© Siemens AG 2018 All rights reserved
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 21
2 Handling and functions of SiOME
SiOME offers a "mouseover" function for various elements. The elements are
explained below.
When you move the mouse over a particular namespace, the number of nodes in
that namespace is displayed.
© Siemens AG 2018 All rights reserved
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 22
2 Handling and functions of SiOME
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 23
2 Handling and functions of SiOME
Moving nodes
1. Right-click a node in the address space that you want to move:
2. In the dialog that appears, select the object to which you want to move the
selected node and confirm with "Ok":
© Siemens AG 2018 All rights reserved
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 24
2 Handling and functions of SiOME
Renaming nodes
Select a node in the "Information model" section and edit its name in the
"References" section:
© Siemens AG 2018 All rights reserved
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 25
2 Handling and functions of SiOME
To navigate in the address space, you can search for nodes and jump directly to
them. You can also add a new bookmark.
2. In the dialog that appears, enter either the BrowseName or the Node Id with
namespace and click on a proposed node to jump to it:
© Siemens AG 2018 All rights reserved
Book mark
To navigate quickly in an object model, you can bookmark nodes.
To add a bookmark, use the key combination "<STRG> + <K>". This allows you to
delete the bookmark again.
To jump from one bookmark to another, use the key combination "<ALT> + <left
arrow>" or "<ALT> + <right arrow>".
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 26
2 Handling and functions of SiOME
You can then right-click anywhere in the context menu to return to the previous
screen:
© Siemens AG 2018 All rights reserved
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 27
2 Handling and functions of SiOME
You can validate the address space that you have created or imported. The
following rules are checked during validation:
• Duplicates of the BrowseNames
• Namespace Loops
• Data type loops
• State machines (OPC UA StateMachine)
• Array Dimensions
• References
• Testing against companion specifications
2. Select the "Validation" check box and click the "Close" button to activate the
"Validation" window.
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 28
2 Handling and functions of SiOME
4. In the "Choose the validation settings" dialog that appears, decide which rules
you want to check your address space for and then confirm with "Ok".
Optionally, you can also have your address space checked against a
Companion specification. Activate the checkbox "Mandatory & optional
elements" and select a corresponding NodeSet via the button "Browse
Companion Specification".
© Siemens AG 2018 All rights reserved
6. After validation, the rule violations are displayed in the "Validation" area.
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 29
2 Handling and functions of SiOME
SiOME offers you the possibility to create an information model directly from TIA
Portal. You can derive and map objects directly from an (instance) data module.
To create an information model or object from a TIA Portal project, open the TIA
Portal project by clicking the "Open TIA Portal project" button in the "TIA Portal"
section:
If TIA Portal is already started and a project is open in TIA Portal, the dialog
"Attach to already opened TIA Portal project" opens. Select the open project and
then click on "Attach to selected project":
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 30
2 Handling and functions of SiOME
If you have configured more than one SIMATIC S7-1500 CPU, select the suitable
CPU from the appearing list and confirm with "Ok". Then confirm the dialog that
opens from TIA Portal.
2. Select a data block from which you want to create an object in the OPC UA
information model.
3. Hold down CTRL + left click and use Drag & Drop to store the data block in the
information model.
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 31
2 Handling and functions of SiOME
4. Then you can choose whether arrays, structures or UDTs contained in the
block should be created as variable types and whether the node IDs to be
created should be of the type "String".
You can also perform the same procedure for OPC UA methods:
1. Select an instance data block of an OPC UA method programmed in the TIA
Portal project from which you want to create a method in the OPC UA
information model.
2. Hold down CTRL + left click and use Drag & Drop to store the method in the
information model.
© Siemens AG 2018 All rights reserved
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 32
2 Handling and functions of SiOME
With SiOME you have the possibility to establish an online connection to an OPC
UA server. This allows you to browse through the address space on an OPC UA
server.
In the "Information model" area, click the "online/offline" slider, enter a server
address and click "connect".
Figure 2-4
© Siemens AG 2018 All rights reserved
Note It is not possible to model your address space during the online connection. As
soon as the online connection is deactivated, SiOME returns to the previous
state.
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 33
2 Handling and functions of SiOME
Note It is not possible to test the function of the StateMachine within the machine.
Only the correct function or representation in the OPC UA Server is checked.
© Siemens AG 2018 All rights reserved
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 34
2 Handling and functions of SiOME
4. Select the "Server Diagnostics" check box and click the "Close" button to
activate the "Server Diagnostics" window.
© Siemens AG 2018 All rights reserved
5. Click on the "Connect to OPC server" button in the "Server Diagnostics" area.
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 35
2 Handling and functions of SiOME
6. Enter the server address into the field "OPC UA server address" and click on
the button "Find selected server".
7. Select an endpoint of the OPC UA Server and enter a user name and
password for authentication on the server into the fields "User authentication".
© Siemens AG 2018 All rights reserved
Note SiOME offers you the possibility to import your own client certificate or to create
a self-signed certificate if you have selected a secure endpoint of the OPC UA
server.
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 36
2 Handling and functions of SiOME
8. After SiOME is connected to the OPC UA Server, you will find 5 categories for
server diagnostics in the section "Server diagnostics". Click on the categories
to get more information.
Note The Drag & Drop function also works with individual variables from the OPC UA
information model directly into a data block in the TIA portal.
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 37
3 Appendix
3 Appendix
3.1 Service and support
Industry Online Support
Do you have any questions or need assistance?
Siemens Industry Online Support offers round the clock access to our entire
service and support know-how and portfolio.
The Industry Online Support is the central address for information about our
products, solutions and services.
Product information, manuals, downloads, FAQs, application examples and videos
– all information is accessible with just a few mouse clicks:
https://support.industry.siemens.com
Technical Support
The Technical Support of Siemens Industry provides you fast and competent
support regarding all technical queries with numerous tailor-made offers
– ranging from basic support to individual support contracts. Please send queries
to Technical Support via Web form:
www.siemens.com/industry/supportrequest
© Siemens AG 2018 All rights reserved
Service offer
Our range of services includes the following:
• Plant data services
• Spare parts services
• Repair services
• On-site and maintenance services
• Retrofitting and modernization services
• Service programs and contracts
You can find detailed information on our range of services in the service catalog
web page:
https://support.industry.siemens.com/cs/sc
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 38
4 Links and literature
5 Change documentation
Table 5-1
Version Date Modifications
V1.0 07/2018 First version
V1.9 03/2019 Update to version 1.9 with functional enhancements
© Siemens AG 2018 All rights reserved
SiOME-Man
Entry-ID: 109755133, V1.9, 03/2019 39