MatrikonOPC Server For Siemens PLCs User Manual
MatrikonOPC Server For Siemens PLCs User Manual
User's Manual
MatrikonOPC Server for Siemens PLCs
User's Manual
Phone: +1.780.448.1010
Fax: +1.780.448.9191
www.MatrikonOPC.com
Document
Date Description Author
Version
2008-05-12 0.1 Initial version SN
2008-06-23 1.0 Added Configuration Wizard information, added SN, LB
S7 OPC items description, changed Installation
and Un-Installation sections to reflect new
installer.
2008-07-10 1.1 Added diagrams of Siemens S7-300 PLC and LB
Hilscher’s Netlink-MPI adapter.
Version: 1.5.4
DOCUMENT VERSION
Version: 6.10
COPYRIGHT INFORMATION
© Copyright 1997 - 2021, Matrikon® International, a business unit of Honeywell Limited ("Matrikon®
International"). All rights reserved. No part of this document may be reproduced, stored in a retrieval system, translated, or
transmitted in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without prior
written permission of Matrikon® International.
CONFIDENTIAL
The information contained herein is confidential and proprietary to Matrikon® International, a business unit of Honeywell
Limited ("Matrikon® International"). It may not be disclosed or transferred, directly or indirectly, to any third party without
the explicit written permission of Matrikon® International.
LIMITATIONS
Matrikon has made its best effort to prepare this manual. Matrikon makes no representation or warranties of
any kind with regard to the completeness or accuracy of the contents herein and accepts no liability of any kind
including without limitation warranties of merchantable quality, satisfactory quality, merchantability and
fitness for a particular purpose on those arising by law, statute, usage of trade, course of dealing or otherwise.
Matrikon shall not be liable for any losses or damages of any kind caused or alleged to be caused directly or
indirectly from this manual.
LICENSE AGREEMENT
This document and the software described in this document are supplied under a license agreement and may only be used
in accordance with the terms of that agreement. Matrikon reserves the right to make any improvements and/or changes to
product specifications at any time without notice.
TRADEMARK INFORMATION
The following are either trademarks or registered trademarks of their respective organizations:
Matrikon and Matrikon OPC are trademarks or registered trademarks of Matrikon Inc.
OTHER
Table of Appendices
Appendix A Distributed COM (DCOM) ...................................................................... 115
DCOM Configuration Utility ............................................................................................. 115
Default Properties .......................................................................................................... 115
Security Permissions ...................................................................................................... 116
Server Identity .............................................................................................................. 120
Default Protocols ........................................................................................................... 120
Remote Program ID ....................................................................................................... 121
Appendix B Aliases .................................................................................................. 122
Scaling Expressions ....................................................................................................... 122
Advanced Calculations ................................................................................................... 123
CSV File Format ............................................................................................................ 125
Scaling Algorithms ......................................................................................................... 127
Appendix C Standard Data Types ............................................................................. 128
Appendix D Microsoft Excel as a DDE Client ............................................................. 129
DDE Read ..................................................................................................................... 129
DDE Write .................................................................................................................... 129
Table of Figures
Figure 1 - MatrikonOPC Server for Siemens PLCs Connections ....................................... 12
Figure 2 - Hilscher's Netlink-MPI Adapter ...................................................................... 13
Figure 3 - Siemens S7-300 PLC (with Hilscher's Netlink-MPI Adapter) .......................... 13
Figure 4 - Tool Tray ........................................................................................................ 18
Figure 5 - Tool Tray Menu............................................................................................... 19
Figure 6 - Control Panel ................................................................................................. 20
Figure 7 - Configuration Window .................................................................................... 21
Figure 8 - General Options Tab ....................................................................................... 25
Figure 9 - General Logging Options Tab ......................................................................... 26
Figure 10 - Interface Logging Options Tab ..................................................................... 28
Figure 11 - Advanced Options Tab .................................................................................. 29
Figure 12 - TCP Channel Configuration Screen ............................................................... 31
Figure 13 - Configuring TCP Channel .............................................................................. 31
Figure 14 - S7 200 ISO on TCP (RFC1006) Connections Screen ...................................... 32
Figure 15 - New S7 200 ISO on TCP (RFC1006) Connection ........................................... 33
Figure 16 - ISO on TCP (RFC1006) Connections Screen ................................................. 34
Figure 17 - New S7 300/400 ISO on TCP (RFC1006) Connection ................................... 35
Figure 18 - NetLink Connections Screen ......................................................................... 36
Figure 19 - New NetLink Connection Window ................................................................. 37
Figure 20 - Configuration Complete Screen .................................................................... 38
Figure 21 - Open STEP 7 Project File .............................................................................. 39
Figure 22 - Import Data Block Symbols from {Internal Project Name} Window ............ 39
Figure 23 - Import Data Block Symbols Result ............................................................... 40
Figure 24 - Connections List Menu ................................................................................. 41
Figure 25 - Insert New Object Window .......................................................................... 42
Figure 26 - Create New Server Status List Window ........................................................ 44
Figure 27 - New Server Status List Object ...................................................................... 46
Figure 28 - Create New Siemens TCP/IP Channel Window ............................................. 47
Figure 29 - New Manually-Created Siemens TCP/IP Channel ......................................... 49
Figure 30 - Create New Redundancy Group Window ...................................................... 50
Figure 31 - New Redundancy Group Object .................................................................... 53
Figure 32 - Create New S7 ISO on TCP Connection Window (General Tab) .................... 54
Figure 33 - Create New S7 ISO on TCP Connection Window (Timing Tab) ...................... 56
Figure 34 - Create New S7 ISO on TCP Connection Window (S7 Parameters Tab) ......... 57
Table of Tables
Table 1 - Terms and Definitions...................................................................................... 16
Table 2 - Tool Tray Menu Commands .............................................................................. 19
Table 3 - Control Panel Commands ................................................................................. 20
Table 4 - Configuration Window Commands ................................................................... 22
Table 5 - File Menu Commands ....................................................................................... 22
Table 6 - Edit Menu Commands (Server Configuration) .................................................. 23
Table 7 - Edit Menu Commands (Alias Configuration)..................................................... 23
Table 8 - View Menu Commands ..................................................................................... 23
Table 9 - Tools Menu Commands .................................................................................... 24
Table 10 - Help Menu Commands ................................................................................... 24
Table 11 - General Options Tab Components .................................................................. 26
Table 12 - General Logging Options Tab Components .................................................... 27
Table 13 - Interface Logging Options Tab Components .................................................. 28
Table 14 - Advanced Options Tab Components ............................................................... 30
Table 15 - Configuring TCP Channel Window Fields ........................................................ 32
Table 16 - New S7 200 ISO on TCP (RFC1006) Connection Window Fields ..................... 33
Table 17 - New S7 300/400 ISO on TCP (RFC1006) Connection Window Fields ............. 35
Table 18 - New NetLink Connection Window Fields ........................................................ 37
Table 19 - Connections List Menu Commands ................................................................. 41
Table 20 - Insert New Object Window Options ............................................................... 42
Table 21 - Create New Server Status List Window Components ..................................... 45
Table 22 - Create New Siemens TCP/IP Channel Window .............................................. 48
Table 23 - Redundancy Modes ........................................................................................ 50
Table 24 - Create New Redundancy Group Window Components ................................... 52
Table 25 - Create New S7 ISO on TCP Connection Window (General Tab) Components . 55
Table 26 - Create New S7 ISO on TCP Connection Window (Timing Tab) Components ... 57
Table 27 - Create New S7 ISO on TCP Connection Window (S7 Parameters Tab)
Components ................................................................................................................... 58
Table 28 - Create New S7 ISO on TCP Connection Window (Optimization Tab)
Components ................................................................................................................... 59
Figure 2 shows an actual Hilscher’s NetLink-MPI adapter, and Figure 3 shows a Siemens S7-300
PLC with the adapter (highlighted by a blue box) connected to it. This diagram also shows an ISO
over Ethernet connection (highlighted by an orange box)
The User’s Manual has been designed as such so that you can click on references in the document
to jump to that referenced point without having to scroll through several pages (in some cases).
For example, if you were to see the sentence “Refer to Figure 1 for more information”, pressing the
CTRL key and clicking your mouse on the text “Figure 1” automatically takes you to the location of
Figure 1 within the document.
This manual consists of several sections and is structured as follows:
• Introduction – this introductory chapter.
• Getting Started – provides system requirements information.
• Configuration – shows how to start and configure the server, and describes each
component in detail, including windows/screens, panels, tabs, and menu commands.
• OPC Data Items – describes the server’s items.
• Diagnostics – explains how to use logging, statistical items, data qualities, timestamps,
and result codes to get the most efficiency from the user’s system.
• Limitations – provides information on specific performance and operational limitations of
the software.
• Troubleshooting – provides licensing, Matrikon OPC Support contact information, solutions
for common problems that may be encountered, and answers to frequently asked questions.
• OPC Compliance – details supported interfaces with regard to installation, common
interfaces, and data access.
• Appendices:
o A - DCOM
o B – Aliases
o C – Standard Data Types
o D – Microsoft Excel as a DDE Client
o E – Configuring Dynamic Data Exchange (DDE)
o F – Security
o G – Offline Mode
o H – Installation
o I – Installed Files
References
This document references information found within the following documents/sites:
• www.opcfoundation.org
• www.MatrikonOPC.com
• www.opcsupport.com
• OPC Overview 1.0
• OPC Common Definitions and Interfaces 1.0
• OPC Data Access Specification 2.05a
• OPC Data Access Specification 3.00
• OPC Historical Data Access Specification 1.2
• OPC Alarms and Events Specification 1.10
• OPC Security 1.00
• International Standard ISO/IEC 8073 (Fourth edition)
• RFC1006 – ISO transport services on top of the TCP (version 3)
• Hilscher’s NetIdent Protocol Manual
• Hilscher’s NetLink-MPI Protocol Manual
• STEP 7 in 7 Steps – C.T. Jones - Brilliant Training
Document Terminology
The following terms are used interchangeably throughout this document:
• screen and window
• tab and panel
Table 1 provides a list of definitions for terms used throughout this document.
Term/Abbreviation Description
A&E OPC Alarms and Events. Provides access to process alarm and event data.
Component Object Model. A method for organizing software, specifying how to
COM
build components that can be dynamically interchanged.
CP Communication Processor.
DA OPC Data Access. Provides access to real-time process data.
Distributed Component Object Model. An extension of COM that allows
DCOM
communication between COM components over a network.
Dynamic Data Exchange. Allows the transfer of data between two running
DDE
applications.
HDA OPC Historical Data Access. Provides access to historical process data.
HMI Human Machine Interface. Device that allows interaction between the user and
System Requirements
The software has minimum Software and Hardware system requirements. These requirements
must be met for the software to function properly.
Note: To install and configure a Matrikon OPC server, you must be set
up as an administrative user account rather than a restricted user
account.
Software Requirements
The server requires the following software:
• Microsoft Windows 7 or 10 or
• Microsoft Windows Server 2008 R2 or 2012 or 2016 or 2019
Hardware Requirements
The server requires the following hardware:
• Intel® CORE i5
• 4 GB RAM
• 80 GB 7200 RPM Hard Drive
The server requires the following additional hardware to make use of the following functionality:
• PC standard Ethernet adapter
• S7 communication processor (CP 243-1, CP 343-1, CP 443-1, S7-1200, or S7-1500), or
Hilscher’s NetLink-MPI adapter
If the server is not installed as a Windows service, the Welcome screen appears briefly
when the server starts up.
Command Description
Show Control Panel Displays the configuration control panel.
Control Panel
Note: If the server is installed as a Windows service, the Control Panel is not available.
The Control Panel displays the server’s status, system time, and number of clients connected to
the server. The Control Panel allows users to:
• Access the Configuration window.
• Access the About screen.
• Execute the command to shut down the server.
The Control Panel stays on top of every other window on the desktop to help monitor the status
of the server.
5. To “window shade” the Control Panel so that it displays only the client count, double-click
your mouse on the title bar.
Table 3 describes the commands in the Tool Tray Menu.
Command Description
Status Displays the current status of the server.
Time Displays the current time.
Clients Displays the total number of OPC clients presently connected to the server.
Configure Displays the main Configuration window.
Shutdown Shuts down the server.
Displays the server’s Welcome screen, which includes information about the
About
software.
Table 3 - Control Panel Commands
Configuration Window
Note: If the server is installed as a Windows service, the Tool Tray Menu and Control Panel are
not available. In this case, the Configuration window is then accessed via the Windows Start
menu.
The Configuration window displays a tree view of objects configured in the server. Select an
object to display its current configuration, which appears on the right-hand side of the window.
If the server runs as a local executable, it will remain running even after the main configuration
window is closed, even if no clients are connected. Displaying the control panel or main
configuration window for the server will “lock” it so that it will not shut down while configuration is
being performed.
If the server runs as an NT service, it will remain running so long as there are clients connected to
it. Closing the main configuration window will shut down the configuration utility, but will not
interfere with the normal operation of the server.
Command Description
Main Menu Provides access to the File, Edit, View, Tools, and Help menus.
Main Toolbar Provides shortcut buttons for commands in the Main Menu.
Displays a tree of configuration objects currently defined in the server.
Current Configuration
Select an object to display its current settings in the right-hand panel.
Objects under this node affect how the server communicates with the data
Server Configuration
source.
The following sections describe the menus available from the Configuration window, and what
they are used for.
File Menu
Table 5 describes the File menu commands.
Command Description
Clears the current configuration and starts a new one. If OPC clients are still
New connected to the server, the user is prompted for confirmation before
continuing.
Clears the current configuration and loads a new one from an existing file.
Displays the Open Configuration window to prompt for the file name. If
Open OPC clients are still connected to the server, the user is prompted for
confirmation before continuing.
Saves the current configuration to an XML file. Displays the Save
Save Configuration window to prompt for a new file name if the configuration is
new and has not been saved before.
Saves the current configuration to an XML file. Displays the Save
Save As Configuration window to prompt for a new file name.
Exports all currently configured aliases to a CSV file. Displays the Export
Export Aliases Aliases window to prompt for a file name.
Clears all aliases and imports new ones from a CSV file. Displays the Import
Import Aliases Aliases window to prompt for an existing file name.
Closes the current configuration and shuts down the server after signalling
Shutdown Server the shutdown event to all connected clients. If OPC clients are still connected
to the server, the user is prompted for confirmation before continuing.
Hides the main Configuration window. The server shuts down after a short
Close
delay if no OPC clients are currently connected to the server.
Table 5 - File Menu Commands
Edit Menu
Table 6 describes the Edit menu commands that appear when the currently selected object
appears under the Server Configuration node.
Table 7 describes the Edit menu commands that appear when the currently selected object
appears under the Alias Configuration node.
Command Description
Undo/Can’t Undo Not implemented.
Removes the currently selected alias group and all subordinate groups and
Delete Alias Group aliases.
Delete Alias Removes the currently selected aliases.
Insert Alias Group Creates a new alias group under the currently selected alias group.
Displays the Insert New Alias window used to create a new alias under the
Insert New Alias
currently selected alias group.
Table 7 - Edit Menu Commands (Alias Configuration)
View Menu
Table 8 describes the View menu commands.
Command Description
Displays/hides general communication statistics for the currently selected
Statistics
object.
Reset Statistics Resets all statistics for the currently selected object to zero.
Displays the Server Defaults window used to configure the default settings
Defaults
for the various types of communication objects available in the server.
Rebuilds the tree display of the server configuration and fully expands all
Refresh branches.
Options Displays the Options window used to change general server options.
Table 8 - View Menu Commands
Tools Menu
Table 9 describes the Tools menu commands.
Help Menu
Table 10 describes the Help menu commands.
Command Description
Matrikon OPC on the Opens a link to the Matrikon OPC web site.
Web
Displays the Welcome screen, which includes information about the
About
software version.
Table 10 - Help Menu Commands
Options Window
The Options window is used to edit the server’s options and contains four tabs: General, General
Logging, Interface Logging, and Advanced.
General Options
The General tab allows users to edit general server options (i.e., settings).
To view the General options:
1. On the Configuration window, from the View menu, select the Options menu item.
2. The Options window appears.
3. From the Options window, select the General tab (Figure 8).
Field Description
Save current Automatically saves the current configuration to the specified file before
configuration on shutting down, if selected.
shutdown
Automatically keeps up to the specified number (i.e., X) of backup copies of
Backup: X copies
the configuration file when saving the configuration.
Load configuration on Automatically loads a configuration from the specified file when starting up,
setup if selected.
Displays the full path of an existing file for load and save operations. Click on
Filename the ellipsis button ( ) to display the Open window used to select an
existing file name.
Launch configuration Automatically launches the configuration utility when starting up as a local
program on startup executable (rather than a Windows service), if selected.
Restrict items to Prevents OPC clients from adding items other than configured aliases, if
preconfigured aliases selected. Selecting this option will cause clients to see only aliases when
Note: The server loads these settings from the Windows registry upon start-up. Changes to the
General options settings take effect when the server is restarted.
Filtering Filename Displays the full path for the filtered log file. Click on the ellipsis button ( ) to
display the Open window used to select an existing file name.
Table 12 - General Logging Options Tab Components
Field Description
Enables/disables interface logging at the specified detail level (High,
Medium, Low, or None), if selected. Generates a separate log file for
each client named PST###.TMP in the server installation directory.
Enable logging
Note: This option should not be selected unless users are debugging
a problem as this will have a negative effect on performance of the
OPC server.
Purges the file buffer after each message is logged in the event of an
Commit all log file writes
unexpected server shut down.
Table 13 - Interface Logging Options Tab Components
Note: Interface Logging options settings take effect when the next OPC client connects to the
server.
Advanced Options
The Advanced tab allows users to view and edit advanced server options.
Field Description
Minimum update rate (milliseconds) allowed for an OPC group.
OPC Group Update Rate Prevents OPC clients from requesting update rates that are
(minimum) impossible to achieve or that cause heavy CPU loads. The default
value is 100 ms.
OPC server group scan thread interval (milliseconds). Determines the
maximum resolution for data change detection. Time granularity
Time granularity
should always be equal to or less than the minimum group update
rate.
Alias Subscription Rate This is the rate (in milliseconds) at which the Alias features subscribe
Note: The server loads these settings from the Windows registry on start-up. Changes to
Advanced options settings take effect when the server is shut down and restarted.
Server Configuration
The server requires minimal configuration for it to run properly. You can customize the server’s
behaviour as required. This section shows you how to create and edit objects, using the
Configuration window or the Configuration Wizard.
Configuration Wizard
The Configuration Wizard is, by default, launched once the installation process is complete. It
allows a step-by-step initial configuration of the MatrikonOPC Server for Siemens PLCs. The
Configuration Wizard can also be launched by clicking on the Windows Start button and selecting
Programs -> MatrikonOPC -> SiemensPLC -> Siemens PLCs Configuration Wizard.
Figure 12 shows the TCP channel configuration screen. Unless the channel needs to be renamed or
offline mode needs to be enabled, click on the Next button to proceed through the Wizard.
Table 15 describes the fields available in the Configuring TCP Channel window.
Field Description
Name TCP Channel name.
Figure 14 shows the S7 200 ISO on TCP (RFC1006) Connections screen. This allows
configuring connections to S7 200 CP 243-1 modules. To add a new connection, click on the New
button. To modify an existing connection, select it and click on the Configure button. To delete an
existing connection, select it and press the Delete key. Once all the S7 200 ISO on TCP
(RFC1006) Connections have been added, click on the Next button to continue the
configuration.
Table 16 describes the fields available in the New S7 200 ISO on TCP (RFC1006) Connection
window.
Field Description
Name ISO on TCP (RFC1006) Connection name.
IP Address The IP address assigned to the S7 communication processor (CP).
Select to use the PG (default) connection. Only 1 PG connection is
PG Connection
available.
Select to use a connection configured in STEP 7 MicroWIN. Up to
Configured Connection eight connections can be configured with the STEP 7 MicroWIN’s
Ethernet Wizard.
The remote (client) TSAP configured in STEP 7 MicroWIN’s
Local TSAP
Ethernet Wizard.
The local (server) TSAP configured in STEP 7 MicroWIN’s
Remote TSAP
Ethernet Wizard.
Click on the Import button to import data block symbols from a
Import data block variables STEP 7 MicroWIN Export file.
from STEP 7 MicroWIN Export Click on the Clear button to delete currently imported data block
File symbols.
Note: Importing data block symbols will override existing ones.
Table 16 - New S7 200 ISO on TCP (RFC1006) Connection Window Fields
Figure 16 shows the S7 300/400 ISO on TCP (RFC1006) Connections screen. This allows
configuring connections to S7 300/400 CP 343-1 and CP 443-1 modules. To add a new
connection, click on the New button. To modify an existing connection, select it and click on the
Table 17 describes the fields available in the New S7 300/400 ISO on TCP (RFC1006)
Connection window.
Field Description
Name ISO on TCP (RFC1006) Connection name.
IP Address The IP address assigned to the S7 communication processor (CP).
The S7 model which also defines the communication processor
S7 Model (CP), the OPC server is connecting to (e.g., if S7 300 is selected,
the CP model is CP 343).
The number of simultaneous connections the S7 CP can handle is
Link Type determined by the type of link selected. Select the PLC type to use
multiple connections.
The rack number of the CPU which the OPC server is reading data
Rack
from.
The slot number of the CPU which the OPC server is reading data
Slot
from.
Click on the Import button to import data block symbols from a
STEP 7 project. Refer to Importing Data Blocks from a STEP 7
Import data block symbols Project Using the Wizard for more details.
from STEP 7 Project Click on the Clear button to delete currently imported data block
symbols.
Note: Importing data block symbols will override existing ones.
Table 17 - New S7 300/400 ISO on TCP (RFC1006) Connection Window Fields
Figure 18 shows the NetLink Connections screen. This allows configuring connections to
Hilscher’s NetLink-MPI adapters. The connections list should already show the NetLink adapters
Table 18 describes the fields available on the New ISO on TCP (RFC1006) Connection tab.
Field Description
Name ISO on TCP (RFC1006) Connection name.
IP Address The IP address assigned to the NetLink-MPI adapter.
Click on the Import button to import data block symbols from a
STEP 7 project. Refer to Importing Data Blocks from a STEP 7
Project Using the Wizard for more details.
Import data block symbols
Click on the Clear button to delete currently imported data block
from STEP 7 Project
symbols.
Note: Importing data block symbols will override the existing
ones.
Table 18 - New NetLink Connection Window Fields
Figure 20 shows the Configuration Complete screen. Click on the Finish button to close the
Configuration Wizard.
Importing Data Block Symbols From a STEP 7 Project Using the Wizard
Clicking on the Import button on either the New S7 300/400 ISO on TCP (RFC1006)
Connection or New NetLink Connection window displays the Open STEP 7 Project File
window shown in Figure 21. Browse to the STEP 7 project file from which the data block symbols
will be imported, select the file and click on the Open button.
Once a STEP 7 project file is selected, the Import S7 Data Block Symbols from {Internal
Project Name} window is displayed. In the PLC Programs list, browse to the S7 program from
which the data block symbols will be imported, select it and click on the Import button.
Figure 22 - Import Data Block Symbols from {Internal Project Name} Window
Once the data block symbols are imported for the current connection, the New ISO on TCP
(RFC1006) Connection or the New NetLink Connection window will show the result as shown
Field Description
New Creates a new connection.
Configure Modify the selected connection.
Duplicate Makes a copy of the selected connection.
Refresh Refreshes the connections list.
Delete Deletes the selected connection.
Disable/Enable Disables or enables the selected connection.
Table 19 - Connections List Menu Commands
Creating Objects
The Insert New Object and Create New windows are used to create Siemens PLCs device link
objects.
Table 20 describes the types of objects that are available for insertion as a child in the Insert New
Object window, depending on which object is currently selected.
Table 21 describes the components of the Create New Server Status List window.
Component Description
Allows you to enter the name of the device link, which becomes an
Name element of the item ID for data items.
Automatically converted to title case for display purposes.
Use this checkbox to enable (i.e., checkbox is selected) or disable
Enabled (i.e., checkbox is cleared) communication for the object.
By default, the checkbox is selected.
This field is optional and takes any user-defined text (64-character
Description maximum) for documentation purposes.
By default, this field is blank.
Allows you to enter a value to define how often (in milliseconds) to
check connected device links to make sure they are still actively
Status Check Period communicating with a device.
Default = 5000 ms.
Status Check Type Allows you to select the type of logic used to determine Server
Status. Selecting the first option, ‘Running’ if at least one link is
Table 22 describes the components of the Create New Siemens TCP/IP Channel window.
Component Description
Name of the object, which becomes an element of the item ID for
Name data items under the object.
Automatically converted to title case for display purposes.
Enable (select the checkbox) or disable (clear the checkbox)
Enabled communication for the object.
By default, this checkbox is selected.
Optional, user-defined text (64-character maximum) for
Description documentation purposes.
By default, this field is blank.
Allows you to enter a value that defines the amount of time (in
Inter Connect Delay
milliseconds) between two connection attempts.
Component Description
Allows you to enter the name of the device link, which becomes an
Name element of the item ID for data items. Automatically converted to title
case for display purposes. For example, PLC1R.
Use this checkbox to enable (i.e., checkbox is selected) or disable (i.e.,
Enabled checkbox is cleared) communication for the object.
By default, the checkbox is selected.
This field is optional and takes any user-defined text (64-character
Description maximum) for documentation purposes.
By default, this field is blank.
Allows you to enter a value to define how often (in milliseconds) to check
connected device links to make sure they are still actively communicating
Status Check Period with a device.
Default = 5000 ms.
Allows you to enter a value to define how often (in milliseconds) to check
connections that have failed (i.e., communication is down) to determine if
Connection Period connections have been restored.
Default = 1000 ms.
Allows you to select, from the drop-down list, the style (Classic, Hot,
Mode Warm, Cold) of redundancy management that should be used by this
group.
This section of the General tab displays those device links defined as part
of this particular redundant set, and the priorities of the device links. The
Subscriptions
Subscriptions section contains the following fields and buttons which are
described below: Device Link Name, Priority, Add, Delete.
Allows you to enter the name of the device link that is going to be added.
The name should be the connection device link name followed by “>”
followed by the PLC device link name. For example, if you named your
Device Link Name connection PLANT1 and your PLCs PLC1A and PLC1B, you should enter
PLANT1>PLC1A and then click Add and then enter PLANT1>PLC1B
and then click Add. You may wish to adjust Priority before clicking Add if
you want one PLC to be favored over the other,
Allows you to select a priority (High, Medium, or Low) for the current
Priority device link from the drop-down list. Device links of higher priority are
preferred to lower priority device links.
After entering a Device Link Name and selecting a Priority, use the Add
button to add the device link to the list of redundant device links that
appears at the bottom of the General tab.
Add Note: Once you have added a device link, you can make changes to it or
delete it (see Delete for more information). To update a device link, from
the list, highlight the one you want to change. Notice that the Add button
now reads Update. Make the necessary changes and click on the Update
button.
Delete From the list of redundant device links that appears at the bottom of the
Table 25 describes the components of the Create New S7 ISO on TCP Connection - General
tab.
Component Description
User name assigned to the object, which becomes an element of the item ID
Name for data items. Automatically converted to title case for display purposes.
Note: This information stays consistent across all tabs.
Enable (select the checkbox) or disable (clear the checkbox) communication
for the object.
Enabled
By default, the checkbox is selected.
Note: This information stays consistent across all tabs.
Optional, user-defined text (64-character maximum) for documentation
purposes.
Description
By default, this field is blank.
Note: This information stays consistent across all tabs.
Connection Status Displays the connection to the S7 communication processor (CP) status.
Component Description
Allows you to enter a value (in milliseconds) to define the communication
timeout. If the server sends a request and does not receive a response from
Timeout the S7 CP within this time limit, it will retry sending the message.
Default = 1000.
Allows you to enter a value (in milliseconds) to define the delay between
Inter Message Delay consecutive messages.
Default = 10.
Allows you to enter a value (in milliseconds) to define the delay between
Inter Connect Delay connection attempts to the S7 CP.
Default = 1000.
Allows you to enter a value (in milliseconds) to define the delay between
Retry Delay consecutive read attempts.
Default = 100.
Allows you to enter a value defining the number of retries allowed. If the
Retries server sends a request to the S7 CP and does not receive a response in the
time limit specified in the Timeout field, it will retry sending the message the
S7 Parameters Tab
Table 27 describes the components of the Create New S7 ISO on TCP Connection – S7
Parameters tab (Figure 34).
Figure 34 - Create New S7 ISO on TCP Connection Window (S7 Parameters Tab)
Component Description
The number of simultaneous connections the S7 CP can handle is
determined by the type of link selected from the drop-down list. Each S7
ISO on TCP connection allows only one connection to the S7 CP. To increase
the data throughput, multiple connections must be configured. This can be
done by creating multiples S7 ISO on TCP connection objects with identical
settings (except the object name), under the same Siemens TCP/IP Channel
or under a separate one.
Link Type The three different link types supported are:
1. PG/PC (Programming device or PC): Typically limited to only one
connection.
2. OP (Operator panel): Typically limited to only one connection.
3. PLC (includes any device communicating with the CP and
different than a PG/PC or OP): Number of simultaneous
connections is typically 2 or greater (please refer to the S7 CPU
Component Description
Allows you to enter a value defining the maximum length (in bytes) used
for data block strings.
Maximum String Length
For optimal performance, this parameter is set, by default, to 210 bytes,
but can be extended to 254 bytes.
Allows you to enter a value defining the maximum gap (in bytes)
Maximum Gap between adjacent items in the same data area.
Default = 1.
Table 28 - Create New S7 ISO on TCP Connection Window (Optimization Tab) Components
3. From the displayed list, select the S7 ISO on TCP (RFC 1006) Connection object type.
4. Click on the OK button.
5. The Create New window appears (Figure 32).
Note: The item selected in the Insert New Object window determines which Create New
window is displayed. For example, when S7 ISO on TCP (RFC 1006) Connection is
selected, then the Create New S7 ISO on TCP (RFC 1006) Connection window is
displayed.
6. From the Create New window, enter a name for the object.
Note: An error message is displayed when a valid name is not entered. If the entered name
is a duplicate of an existing object, the new object will not be created. The Description
field is optional.
7. Edit the configuration components as desired.
Note: For the object to be used for communication, it must be enabled (i.e., the Enabled
checkbox is selected). This can be done at any time.
8. Click on the OK button. The object is created and appears as a child of the Siemens
TCP/IP Channel item as shown in Figure 37.
Timing Tab
Table 26 describes the components of the Create New S7 NetLink Connection - Timing tab
(Figure 39).
Component Description
Allows you to enter a value (in milliseconds) to define the communication
timeout. If the server sends a request and does not receive a response from
Timeout the S7 CP within this time limit, it will retry sending the message.
Default = 1000.
Allows you to enter a value (in milliseconds) to define the delay between
Inter Message Delay consecutive messages.
Default = 10.
Allows you to enter a value (in milliseconds) to define the delay between
Inter Connect Delay connection attempts to the S7 CP.
Default = 1000.
Allows you to enter a value (in milliseconds) to define the delay between
Retry Delay consecutive read attempts.
Default = 100.
Allows you to enter a value that defines the number of retries allowed. If the
Retries server sends a request to the S7 CP and does not receive a response in the
time limit specified in the Timeout field, it will retry sending the message
Optimization Tab
Table 26 describes the components of the Create New S7 NetLink Connection - Optimization
tab (Figure 40).
Component Description
Allows you to enter a value that defines the maximum length (in bytes)
Maximum String used for data block strings.
Length For optimal performance, this parameter is set, by default, to 200 bytes,
but can be extended to 254 bytes.
Allows you to enter a value that defines the maximum gap (in bytes)
Maximum Gap
between adjacent items in the same data area.
Removing Objects
Note: Users can easily remove any object that they have created, but a warning message (Figure
42) will appear when users remove an object that has data items to which one or more OPC clients
hold reference.
To remove an object:
1. In the Configuration window, under Server Configuration, select the object to be
removed.
2. From the Edit menu, select the Delete menu option (or click on the button).
Note: If one or more OPC clients hold references to data items somewhere under the
selected object, a warning message (Figure 42) appears.
3. To mark the object for later deletion, click on the Yes button. To leave the object
unmodified, click on the No button.
Note: Items marked for deletion are disabled and a red X appears over the icon on the right
side of the window when the object is selected.
2. Click on the browse button associated with the Import Symbols field.
3. The Select Step 7 Project File window (Figure 43) appears.
4. By default, the window points to the SIMATIC STEP 7 directory. Select the project from
which the OPC server should be importing the symbols.
5. Click on the Open button.
6. The Import S7 Symbols from [Project Internal Name] window (Figure 44) appears.
Table 32 describes the components of the Import STEP 7 Project Symbols from [Project
Internal Name].
Component Description
Step 7 Project Path The SIMATIC Step 7 project directory path.
Internal Name The SIMATIC Step 7 project internal name.
PLC Programs PLC programs available in stations configured in SIMATIC Step 7.
Import Click this button to import symbols from the selected PLC program.
Clear All Click this button to clear the Symbols list.
Symbols List of imported symbols.
Delete Select the required symbol and then click this button to delete a symbol.
Table 32 - Select S7 Data Block Symbols from [Project Internal Name] Components
4. Select the export file from which the data block variables should be imported.
5. Click on the Open button.
Alias Configuration
Matrikon OPC servers, including this one, provide the ability to create user-defined aliases that can
be used in place of regular OPC items. This feature is particularly useful when the item path for a
given server is very complex or difficult to remember, for example: Com1.Radio1.Unit1.41.4.123.
Servers can also be configured so that client applications have access to configured aliases only,
rather than every available item.
This section of the manual describes how to create and edit aliases using the Configuration
window.
Note: It is not necessary to define aliases before accessing server data items from an OPC client.
2. From the Edit menu, choose Insert Alias Group or click on the button.
3. A new Alias Group folder appears.
4. Enter a new name for the Alias Group, and press Enter.
5. The Alias Group is renamed.
Component Description
Allows you to enter a name for the alias (which must be unique within
Name
the alias group).
A basic alias is an alias that renames a data item in the server and
Basic Alias optionally allows the configuration of simple scaling. This Alias type is
typically used when trying to simplify a servers address space.
Fully-qualified item ID for the OPC item to which the alias refers. Click
on the Browse button to display the Item Path Browser window
used to select an existing OPC item on the server.
Item Path
Note: If Events are enabled, the alias creates a data subscription to
the configured item at the Alias Subscription Rate. This rate is
configured in the Advanced Options window.
Basic Aliases can be configured to have scaling calculations applied to
the value of the mapped item ID configured under Item Path. To
enable the use of a scaling algorithm check the Apply scaling
Apply Scaling Algorithm
algorithm checkbox. Click on the Settings button to display the
Configure Scaling window used to configured the scaling algorithm
used.
Advanced Calculation Alias An Advanced Calculation Alias allows the user to configuration a data
Component Description
Allows you to select, from the drop-down list, the value of the OPC
item to the specified type unless Default is selected. Also serves as
Data Type the “canonical” data type for the alias.
Default = (Default).
Allows you to enter a value defining the update rate (in milliseconds)
Update Rate to use with the Poll when inactive option.
Default = 0.
When this checkbox is selected, it prevents OPC clients from writing
values to the alias.
Read only Note: This option is not available for Calculation aliases, as they are
read-only.
By default, this checkbox is cleared.
Poll when inactive If selected, continues updating the value for the alias at the specified
update rate even if there are no OPC clients currently accessing the
Editing Aliases
Note: Aliases can be edited after they have been created using the Edit Alias window. This is
virtually the same as the Insert New Alias window (Figure 48) with the exception that it appears
after the alias has been created.
To edit an alias:
1. On the Configuration window, select the alias you want to change, and then double-click
or press Enter.
2. The Edit Alias window appears.
3. Make the changes as required.
Removing Aliases
Note: Any alias that was created can be removed.
To remove an alias:
1. On the Configuration Window, select one or more aliases that you want to remove.
2. From the Edit menu, select the Delete Alias Group menu option or click on the button.
3. The Alias Group is removed.
Exporting Aliases
Note: Use the Export Aliases window to export all currently configured aliases to a CSV file.
To export all currently configured aliases:
1. From the File menu, select the Export Aliases menu option or click on the button.
2. The Export Aliases window appears.
3. Enter a file name for the CSV export file.
4. Click Save.
5. The aliases are exported.
Importing Aliases
Note: Use the Import Aliases window to clear all aliases and import new ones from a CSV file.
The CSV file format does not support event generation settings. All imported aliases will be
configured to not generate events.
To import aliases from a CSV file:
1. From the File menu, select the Import Aliases menu option or click on the button.
2. The Import Aliases window appears.
3. Browse to the CSV file name.
4. Click Open.
5. The old aliases are cleared and the new ones are imported.
Table 35 describes the Scaling Options for the Configure Scaling window.
Component Description
Allows you to enter the name of the source of the event. By default,
Source this field is the Alias Group name, or if there is no Alias Group then
the Alias name.
Allows you to select from the drop-down list, the event category
under which the event is to be registered. Select either the New
Category Category or Edit Category option to configure the registered
categories in the server. For more information, refer to the
Configure Categories section for more information.
Allows you to enter a value defining the severity of the alarm. The
Severity
allowable range is 1 through 1000.
Allows you to enter a message that is to appear in the posted event.
This message can contain references to data item in the server.
These references are replaced with the values of those items at the
time the event was generated. Click the Insert Item button to
display the Item Path Browser screen used to add item paths to
Message this field. For more information, refer to the Item Path Browser
section in this manual.
Note: If items are referenced, the alias creates a data subscription to
the referenced items at the Alias Subscription Rate. This rate is
configured in the Advanced Options window.
Table 36 - Generate Events Window Options
Configure Categories
The New Category window (Figure 52) is presented when you choose to add a new category to
the server from the Generate Events window (Figure 51).
Component Description
Category ID Displays the ID number that appears in the event that is registered
The Edit Categories window is displayed when you choose to edit categories from the Generate
Events window (Figure 51).
When presented with the Edit Categories window, select the category to edit and click the Edit
button. This causes the Edit Category window to appear which is virtually identical to the New
Category window.
Note: Some categories cannot be edited. These categories are marked as Read Only and can be
viewed, but not edited. From the Edit Categories window, if you wish to view existing category
details, select the required category. Click on the View button. The View Category window is
displayed, which again, is virtually identical to the New Category window.
Expression Wizard
The Expression form of scaling uses an Expression Wizard to build formulas. The created
formula is a simple text equation that is applied to either incoming values (i.e., reads), or outgoing
values (i.e., writes).
Examples
Example 1:
The following turns any number into a Boolean value. Any non-zero value shows up as a 1.
IF(INPUT = 0,0,1)
Example 2:
The following takes the text out of SAMPLE and converts it to ON. All other values show as OFF. If
OUTPUT is specified in the Output field, then the value is transferred to the end OPC item. Using
this alias, you can write SAMPLE or any other value to the alias to get the display to changed from
OFF to ON.
String comparisons are case-sensitive.
IF(INPUT = ‘SAMPLE’,’ON’,’OFF’)
OUTPUT
Table 38 describes the Expression Wizard fields.
Component Description
Displays the expression as it is created. This field is free-form which
allows you to manually enter or edit information. This field reads Input
Input/Output Expression
Expression when creating an input or “read” expression. It reads
Output Expression when creating an output or “write” expression.
Database field This button is reserved for future enhancements.
Select this button to display the Select function window which allows
Function
you to select the necessary function from those available.
Select this button to display the Select variable window which allows
Variable
you to select the necessary variable from those available.
Select the applicable button to add the corresponding operator or
Operators
operators to the expression.
Clear Select this button to clear the Input/Output Expression field.
Select this button to validate the expression that appears in the
Input/Output Expression field. If the expression is invalid, an error
Validate
message is displayed. If the expression is valid, a message is displayed
indicating there are no errors and also stating what the result is.
Select this button to accept changes to (or the creation of) the
OK
expression.
Select this button to discard changes to (or abandon the creation of) the
Cancel
expression.
Table 38 - Expression Wizard Options
Notes:
• The Expression Wizard appears and functions the same for an input expression as it does
for an output expression. The differences being the expression field label: Input
Expression, Output Expression, and that one is for reads and the other for writes.
• If you are expecting to read a particular alias, create an Input Expression. If you are
expecting to write to a particular alias, create an Output Expression.
To create an Input or Output Expression:
1. On the Configuration window, select Alias Configuration or a previously configured Alias
Group.
7. Click on the Configure button adjacent to the Input field (or Output field).
8. The Expression Wizard (Figure 55) is displayed.
9. Manually enter your new expression in the Input/Output Expression field and proceed to
step 14.
Or,
11. Click on the Variable button to go to the Select variable (Figure 57) window. After
selecting the required variable, click on the OK button to close the Select variable window
and return to the Expression Wizard.
12. If required, from the Select variable window, click on the Modify variables button to
access the User Defined Functions Editor (Figure 58) which allows you to add, change,
or delete variables.
13. The Operators buttons (Figure 59) allow you to enter an operation descriptor based on the
selected button.
14. Click on the Validate button to determine whether or not the expression is valid.
15. If the expression is valid (i.e., a confirmation message is displayed), click on the OK button
to close the message window and return to the Expression Wizard screen.
16. Click on OK button on the Expression Wizard screen to close the wizard and display the
expression in either the Input or Output field, depending on which expression you defined.
17. From the Edit Alias window, click on the Save button.
18. The Edit Alias window closes and you are returned to the Configuration window.
Component Description
Displays the branch hierarchy of the OPC server when browsing actions
are being performed. The +/- symbols can be used to display/hide the
Branch Hierarchy
branches below the specified branch. Left-clicking a branch displays its
leaves in the Leaf List component.
Displays the list of leaves belonging to a selected branch from the
Leaf List
Branch Hierarchy. Left-clicking a leaf enables the OK button.
Select this button to add the selected item from the Leaf List to the
OK
Input/Output component of the Insert New Alias form.
Cancel Select this button to exit the Item Path Browser without adding any
Saving a Configuration
Note: When the server configuration is complete, use the Save Configuration window to save the
configuration to an XML file.
To save a configuration to an XML file:
1. From the File menu, select the Save As menu option or click on the button
(alternatively, users can choose Save or click ).
Clearing a Configuration
Note: Starting a new configuration will clear the existing one.
To clear a configuration:
1. From the File menu, choose the New menu option or click on the button.
2. If OPC clients are still connected to the server, a warning message appears.
3. Click OK.
4. The configuration is cleared.
1. From the File menu, select the Open menu option or click on the button.
2. The Open Configuration window appears.
3. Browse for the configuration file that you want to load.
4. Click Open.
5. If OPC clients are still connected to the server, a warning message appears.
Notes:
• At this stage, the connection between the server and the client needs to be broken.
• When the new configuration is completely loaded, the changes will take effect in the
OPC client.
Note: The shutdown command is not available for the server if it runs
as a Windows service. Services can be shut down only from the
Service Control Manager applet in the Windows Control Panel.
Connection Items
The S7 ISO on TCP (RFC1006) and S7 NetLink (only for S7 300/400) connections use the same
item ID syntax as described in Table 40:
[Siemens TCP/IP Channel Name]>[Connection Name]>[Tag Syntax]
Field Description
Siemens TCP/IP Channel Name Siemens TCP/IP Channel Name
Connection Name Connection Name
Tag Syntax Tag Syntax
Table 40 - Item ID Field Descriptions
In the following information, offsets and bit positions are zero-based and S7 300/400 refers to the
S7 300 and S7 400 models.
Value Description
Item’s device address. This is particularly useful when an item corresponds
Device Address to an imported symbol. Refer to the Importing Symbols From SIMATIC
STEP 7 Project section for further details.
Table 42 - Custom OPC Properties
S7 300/400 Counters
The value returned for S7 300/400 counters are automatically converted to a BCD value. Since
only the first 12 bits are used valid values are from 0 to 999.
S7 300/400 Timers
The value returned for S7 300/400 timers are automatically converted to S5TIME format and
displayed in milliseconds. Valid values are from 0 to 9990000. Refer to S5TIME description for
further details.
Read-Write
SMB0 : SMBn [Byte]
n is the max special memory byte (Bytes from
Access a special memory byte 0 to 29
offset. e.g.: SMB8 accesses a byte at
Provides access to some included are
offset 8.
system status and read-only)
Special Memory configuration information
(Bytes from 0 to 29 Read-Write
SMW0 : SMWn [Word]
included are read-only) (Bytes from
n is the max special memory WORD
Access a special memory WORD 0 to 29
offset. e.g.: SMW8 accesses a WORD
included are
at offset 8.
read-only)
Read-Write
SMD0 : SMDn [DWord]
n is the max special memory DWORD (Bytes from
Access a special memory DWORD 0 to 29
offset. e.g.: SMD8 accesses a
included are
DWORD at offset 8.
read-only)
S0.0 : Sn.7 [Boolean] (*)
Sequence Control Provides access to sequence
Relay n is the max special memory offset. Access a Sequence Control Relay bit Read-Write
control relay.
e.g.: S8.3 accesses bit 3 at offset 8.
Note: For E/I, E/Q and M/F, each address starts at a byte offset
within the device. Consequently, Words MW0 and MW1 for example,
overlap at byte 1, so writing to MW0 will also modify the value in
MW1. Similarly, DWORD, Short and Long types can also overlap.
Overlapping can be prevented by carefully selecting your offsets for
these types. For example, Words MW0, MW2 and MW4 do not
overlap.
BCD Conversion
To interpret a WORD or DWORD as a BCD number, just append the BCD suffix to the syntax.
For example, to convert MW0 to its BCD representation the syntax is: MW0:BCD
Please note that if the WORD or DWORD contains an invalid BCD digit (greater than 9), the digit
will be truncated to 9 and the OPC item will have a bad quality.
Array Syntax
The valid syntax for accessing a memory area or a data block variable as an array is:
[Tag Syntax][Row][Col]
Where Row is the number of rows and Col is the number of columns.
For example, to access a two-dimensional Data Block INT array located in DB # 1 at address 282:
DB1:INT:282[2][2]
Row count of 1 is assumed, when the number of rows is not specified.
For example, typing MB0[5] is equivalent to MB0[1][5].
Column count of 1 with Row count different than 1 is not accepted.
For example, typing MB0[5][1] is not allowed.
Control Items
The MatrikonOPC Server for Siemens PLCs supplies control items to allow a connected OPC client to
obtain status information by reading values and manipulating its operation by simply writing
values.
$RunPLC Set to TRUE when the PLC is in “Run” mode and FALSE when in FALSE
(Only used with “Stop” mode. When the write is enabled, writing TRUE to this
ISO on TCP
control item will attempt to place the S7 PLC in the RUN mode.
connection)
The Matrikon OPC Server Framework creates a number of standard data items which can be used
for monitoring and controlling certain behaviour.
Table 48 describes the standard items available for most device links.
Field Description
This is a Boolean OPC tag which indicates whether or not the Device Link to
#Enabled which it belongs is enabled. If the value is True or a value of True is written
to this item then the Device Link is enabled.
Adding this item allows an OPC client to monitor the offline mode for that
location using read operations and provide the ability to toggle offline mode
#OfflineMode for that location using write operations. For more information, refer to
Appendix G - Offline Mode.
This is a Boolean OPC tag which indicates whether or not the Device Link is
@Connected connected to its resources. Typically True indicates that a connection of an
end device has been established.
Table 48 - Standard Data Items
Table 49 describes the standard items available for at the root branch of the server browse tree.
Field Description
This is a Boolean OPC tag that has a default value of True when the server
starts which indicates that the tag security permissions are monitored and
applied while the server is running. By adding this item to an OPC group and
#MonitorACLFile writing a value of False to this item, the server no longer applies tag security
configuration changes while the server is running. The server would need to
be stopped and restarted for the changes to take effect. For more
information, refer to Appendix F - Security.
This is a read-only string item which lists the name of every client currently
@Clients
connected to the OPC server.
Table 49 - Server Data Items
Table 50 describes the statistical and control items available for the Redundancy Group device link.
Field Description
Write to this control item to indicate which device link, of the device links to
which the Redundancy Group is subscribed, is forced to be active, whether
#Manual Device Link or not it is available. Clear the value of this control item in order to allow
the OPC server to decide which of the subscribed device links should be
active, according to their configured priorities and availabilities.
The current active device link, which will be the highest-priority of the
@Active Device Link available device links on the Redundancy Group device link’s subscription
list.
A numbered list of device links to which the Redundancy Group device link
@Redundancy Group
is subscribed. They are ordered from highest to lowest priority.
Table 51 describes the statistical and control items available for the Server Status List device link.
Field Description
A numbered list of the device links being monitored by the Server Status List
@Monitor List device link. The full path of the device link is provided, as entered in the Server
Status List device link’s subscription list.
Indicates the customized status of the server based on the settings for the
@Server Status Server Status List device link. The status options are: Running, Failed, or No
Configuration (if the monitor list is empty).
Table 51 - Server Status List Device Link OPC Items
Logging
All Matrikon OPC servers produce log files that record errors and debugging information. The log
files can be extremely valuable for troubleshooting. As such, it is important to note that the default
log level is set to low. The General Logging tab of the Options dialogue in the main configuration
window contains settings to control server logging.
General Activity Logging records information about the internal workings of the OPC server. It is
useful for troubleshooting problems with configuration and device communication. Interface
Activity Logging records information about the client/server OPC communication. It is useful for
troubleshooting compliance issues.
For General logging, the higher the log level, the more information that is recorded. However,
server performance may decrease at higher log levels. The recommended operating level is
Medium. More log levels are available for both types of logging which record more detailed
information, as well as the ability to output log statements to a console window at run time.
Contact Matrikon OPC support for further instructions on how to enable the higher log levels and
console logging.
For Interface logging, the log level can be considered very high and therefore should never be used
during normal operation of the OPC server unless specifically working on problems related to
interfacing.
Matrikon OPC Sniffer is a useful tool for logging OPC client/server communication. It enhances
the Interface Activity Logging by recording the client-side transactions. It can also be used with
other OPC servers. Matrikon OPC Sniffer is a utility used to troubleshoot OPC client/server
interoperability issues. Contact the Matrikon OPC Sales department for further information about
this product, or use the following link to access the Matrikon Sniffer Download.
In general, the server logs all errors and other information of immediate importance to the user at
the low detail level, all warnings and other information of moderate importance to the user at a
medium detail level, and additional information concerning the normal functioning of the software
at a high detail level. The server also logs further information of concern to support personnel at
the debug log level.
Note: The higher the log level, the slower the performance of the
server. It is recommended that the log level be left at the default,
unless troubleshooting needs to be performed.
Statistical Items
The server supplies statistical information pertaining to communication in the form of real-time
data items for the Network Device Link and each connection.
Refer to the MatrikonOPC Server for Siemens PLCs Release Notes for known issues.
PSTCFG error
Problem: After my OPC server died, I tried to access the Configuration screen and now I am
experiencing access violations and PSTCFG errors.
Solution: If your OPC server process stops and you leave the PSTCFG running, when you
attempt to access the Configuration screen to do anything to your configuration
items (add, change, delete, and so on), you will experience access violations. You will
need to kill the configuration and restart the server.
Server stops updating client with item values after two hours
Problem: The server stops updating the client with item values after two hours.
Solution: The server may be licensed with a hardware key and the hardware key may not be
properly detected, or the software license has expired.
Alternatively, try running the Matrikon OPC Licensing utility from the shortcut
menu. Click on the Check Licenses button to see the status of all Matrikon OPC
product licenses.
Check that the correct HASP hardware key is securely fastened to the parallel port. If it
is, run the HINSTALL program that is located in the Program Files\Common
Files\MatrikonOPC\Common directory.
Problem: The OPC client does not provide a means to configure access paths, making it difficult
to correctly specify the data acquisition options for the items.
Solution: The server provides a global parameter for configuring an escape character, to allow
users to append communication options to the end of an item ID which would
More than one HASP attached to parallel port, but only first one is recognized
Problem: There is more than one HASP hardware key from Matrikon attached to the parallel
port, but the software recognizes only the first one.
Solution: HASP keys from the same vendor cannot be chained together. Send an email to the
Matrikon OPC Support team to obtain a HASP key containing the combined codes of all
installed Matrikon OPC servers.
Problem: The server cannot be configured because there is no Matrikon logo in the Tool
Tray.
OPC client unable to create or read items under configured object (device)
Problem: The OPC client is unable to create or read items under a configured object (device).
Solution: Check the object configuration (for more information, refer to Server Configuration).
Ensure the Enabled checkbox is selected.
Server does not show up in the list of locally available program IDs in OPC client
application
Problem: The server does not show up in a list of locally available program IDs in the OPC client
application.
Solution: Make sure that a user with local administrative rights installs the OPC server so that it
can create the necessary entries in the registry.
Ensure OPCEnum is registered as a service, DCOM permissions are configured
properly, and the OPCEnum service is running.
Also, especially for older OPC clients that do not use the OPC server browser, make
sure the client is running as a user that has read access to the registry.
Solution: Verify that the IP address entered for the PLC is correct.
Make sure the type of connection is not taken by another software configuration.
• Only one PG connection is available in S7 200, use the STEP 7 MicroWIN Ethernet
wizard to create more Ethernet connections.
• Only one OP or PG/PC connection is typically available in S7 300/400, use the
recommended (PLC) type of connection.
Licensing
Most Matrikon OPC products require that some form of licensing criteria be met for it to function
correctly.
The MatrikonOPC Server for Siemens PLCs supports software licensing only.
Note: Alias Events needs to be licensed separately, and by default, is delivered with only a 30-day
demo. To purchase a full Alias Events license, please contact your Matrikon OPC Account Manager.
IMPORTANT TO NOTE:
The following licensing information is described in detail within the
Licensing Procedures document which accompanies the MatrikonOPC
Server for Siemens PLCs software and User’s Manual:
• Software key licensing information.
• Information about the Matrikon OPC Licensing Utility that is
used to license driver software, and the variety of ways in
which licenses can be obtained (e.g., Internet Connection, Web
Page, Email).
• Licensing Q&A and Troubleshooting.
Contacting Support
The Matrikon OPC Customer Services department (www.opcsupport.com) is available 24 hours a
day, seven days a week.
Contact Matrikon OPC Support using the information below, or send an email
([email protected]).
For Monday to Friday daytime support requests, contact Matrikon OPC Support using the regional
phone numbers provided in Table 54.
For after-hours support in all regions, please use either of the following numbers. There is no
extra charge from Matrikon OPC for calling their after-hours support numbers.
Installation
The server is by default installed as a local out-of-process COM server and enters its registration
information in the Windows registry when instructed to do so with the /REGSERVER command-
line option. The server installs itself as a Windows service and enters its registration information in
the Windows registry when instructed to do so with the /SERVICE command-line option.
• Version-independent program ID is Matrikon.OPC.SiemensPLC.
• Version-specific program ID is Matrikon.OPC.SiemensPLC.1.
• OPC sub-key and vendor information string.
• Globally unique application ID (e.g., 2424489F-0492-4b6b-A57C-7791E0EED2C0).
• Globally unique class ID number (e.g., 19DDB075-33B1-4fbc-A4F0-85A55D81FFEB).
• Full path of 32-bit local server executable.
• OPC Data Access Server 2.05a and 3.00 implemented component categories.
The server removes its registration information from the Windows registry when commanded to do
so with the /UNREGSERVER command-line option.
Common Interfaces
The server supports the mandatory functionality specified in OPC Common Definitions and
Interfaces. The server supports the following locales for result code translation:
• US English (0x0409)
• System default (0x0800)
• User default (0x0400)
• Neutral (0x0000).
The server allows the client to set the client name for each connection. The server supports the
shutdown event notification client-side interface.
Data Access
The server supports the mandatory functionality specified in the OPC Data Access Custom Interface
Standard.
Items
The server supports the addition, removal, and validation of items in a group. The server allows the
client to manage item configuration.
• Active state
• Requested data type
• Dead-band (percent of analog item high-low range)
• Sampling rate
• Buffer values (used only when sampling rate is enabled and is sampling faster than the
group update rate).
I/O Operations
The server supports synchronous I/O operations.
• Read active item values from cache.
• Read item values from device.
• Read items value from device based on how old the cache items value is.
• Read items without adding the item to an OPC group.
• Write control values to items (on device).
Notes:
• The following steps are suggestions only. Ask your Windows
Network Administrator for more information about the settings
that you should use, especially between different domains.
• The steps provided in this appendix apply to Windows NT
operating systems only. For information on how to configure
DCOM settings for newer Windows operating systems, please
refer to the Matrikon OPC Online Support page on DCOM
Settings.
Note: DCOM settings are stored in the registry and loaded by COM
(and OPC) servers at start-up. Therefore, server processes must be
shut down and re-started for these changes to take effect.
Default Properties
The Default Properties tab contains settings that affect all DCOM communication on the machine.
• First of all, ensure that the Enable Distributed COM on this computer is selected in
so that the machine is available to others via DCOM.
• Select the Enable COM Internet Services on this computer to allow DCOM access to
the machine from the Internet (check with your administrator).
• In general, the other settings do not need to be changed.
The Authentication Level specifies when COM should authenticate the identity of calling clients
(each call, each packet, etc).
• Normally, it should be set to Connect, indicating that COM should authenticate clients
when they first connect to a server. If it is set to None, then COM performs no
authentication and ignores any access permission settings.
Security Permissions
The most important DCOM settings for an OPC server are the security permissions. There are two
ways for you to set these:
1. Change the specific settings for the server (recommended).
2. Change the default settings (not recommended) and make sure that the OPC server will use
these.
Either way, be certain that the access and launch permissions are correct for the server.
4. Click on the Security tab to set the security for the server.
5. The Distributed COM Configuration Security tab (Figure 63) appears.
Notes:
• The Access Permissions contain an Access Control List of principals that are
allowed to interact with objects supplied by a server.
• The Launch Permissions contain an Access Control List of principals that are
allowed to start up a server process or service.
6. Include the names of users or user groups from trusted domains that you wish to be able to
use the OPC server on this machine. Include the Everyone group to allow access to all
users on a particular domain.
7. To set the Access permissions, click Use custom access permissions and then click Edit.
8. The Registry Value Permissions window (Figure 64) appears.
11. To add a user to the list, select the user, and then click Add. If the user you wish to add
does not appear then click Show Users.
Server Identity
The Identity tab for a selected COM (or OPC) server specifies the user account that should be
used when COM starts up the process. The available settings are different for servers that run as
local executables as opposed to those that run as NT services.
Default Protocols
The Default Protocols tab specifies the communication protocols available to DCOM. The order
that protocols appear in the list indicates the priority in which they will be used (the topmost
having the highest priority).
The more protocols that appear in the list, the better the chances of connecting to an OPC server
on an unknown remote machine (such as at an OPC Interoperability Workshop). However, it may
also take longer for DCOM to time out if a server machine is not present since it has to try each
protocol in turn.
For most situations, it is best to remove all unused protocols from the list and only include those
that are necessary for your network. For example, on a TCP/IP network, one would include the
Connection-oriented TCP/IP protocol. Contact your IT personnel for more information about
your network.
Remote Program ID
Before the OPC Server Browser became available, OPC client applications had to search the
registry to generate a list of available OPC servers. Therefore, some older OPC clients need to have
a program ID in the local registry in order to connect to a particular OPC server.
The simplest solution is to install the OPC server software on the client machine even if it is not
used. Alternatively, use the following steps to copy a program ID to the client machine.
Note: This method may not work for every OPC client. Please check the client documentation for
more information.
Advanced Calculations
Calculations may contain references to any OPC item in the server’s syntax. However, they may
not contain references to other alias items. There are no limits on how many items can be used in
a calculation. The only limiting factor may be performance related. To reference another OPC item
in the calculation, wrap the items full item path in square brackets. For example to add the items
Com1.Rtu.Reg1 and Com1.Rtu.Reg2 together, the correct expression would be:
[Com1.Rtu.Reg1] + [Com1.Rtu.Reg2]
If the OPC item being referenced in a calculation is not found within the servers address space, the
server attempts to add it. If successful, the OPC server uses the Alias Subscription Rate to
update the OPC item. The Alias Subscription Rate is configured in the Advanced Options panel.
In the event that the server cannot create a subscription to the OPC item, the alias quality reports
Bad, bad configuration.
Advanced alias calculations may use any of the operators listed in Table 57.
Alias scaling calculations may use any of the functions listed in Table 58.
Field Description
Name of the alias group folder where the alias belongs. Periods in the name indicate
Alias Group subfolders below the root (e.g., North.FIC101 = alias group North under the Alias
Configuration root and alias group FIC101 under that).
Name of the alias. Full alias path name composed of the alias group path, a period,
Alias Name
and the alias name (e.g., North.FIC101.CV for an alias named CV).
Item Path Fully qualified item ID for the OPC item to which the alias refers.
Data Type Decimal number indicating the data type for the alias.
Specifies whether the alias is read-only or read-write.
Read-only 0 = read-write
1 = read-only
Specifies whether the alias is polled continuously or not.
Poll Always 0 = only poll as requested by an OPC client (normal)
1 = poll continuously at the specified update rate
When the scaling field specifies linear (1) or square root (2) scaling, the line contains the additional
fields listed in Table 60.
Field Description
High Raw Raw value range (double-precision real).
Low Raw
High Scaled Scaled value range (double-precision real).
Low Scaled
Clamp options.
0 = none
Clamp 1 = clamp low value
2 = clamp high value
3 = clamp both high and low values
Table 60 - Additional File Import/Export Field Descriptions - Linear/Square Root Scaling
When the scaling field specifies gain/offset (3) scaling, the line contains the additional fields listed
in Table 61.
Field Description
Gain Scaling factor (double-precision real).
Offset Scaling offset (double-precision real).
Table 61 - Additional File Import/Export Field Descriptions - Offset Scaling
When the scaling field specifies expression (4) scaling, the line contains the additional fields listed
in Table 62.
Field Description
Input Expression Simple formula applied to the value read from the OPC item.
Simple formula applied to values written to the OPC item. The
Output Expression
output formula should be the reciprocal of the input formula.
Table 62 - Additional File Import/Export Field Descriptions - Expression Scaling
When the scaling field specifies calculation (5) scaling, the line contains the additional fields listed
in Table 63.
Scaling Algorithms
For each type of scaling, a different algorithm (Table 64) is applied to values read from the OPC
item. A reverse algorithm is applied to any values written to the OPC item.
Gain/ x − Offset
Gain x + Offset
Offset Gain
Expression SQRT(INPUT) + 5 (OUTPUT – 5) * (OUTPUT – 5)
Table 64 - Scaling Algorithms
DDE Read
To perform a DDE Read using Excel, simply enter a DDE Item as a formula in some spreadsheet
cell:
=SERVICE|TOPIC! NAME
Excel will initiate a DDE Advise loop, or “hot link”, to the topic and item within the service. The DDE
Management system (in this case, Windows) will forward any update sent by the DDE service, to
the appropriate DDE client (in this case, Microsoft Excel). The DDE service is responsible for update
rate/behaviour.
To disable a specific hotlink in Excel, use the Links menu option under the Edit menu.
DDE Write
To perform any DDE command other than requests (read) or advise (hot link), a Visual Basic (VB)
function must be used. Most DDE commands are available by using the application object. For
example, the following function will poke (write) the contents of column 1, row 1 to an item in the
OPC Simulation server:
Sub WriteToDDE()
End Sub
NetDDE must first be configured using the DDEShare application (DDEShare.exe) as shown in
Figure 66. Each SERVICE and TOPIC pair, or “NetDDE Share”, that is to be available through
NetDDE must be assigned a unique name.
DDE service can be enabled or disabled using a checkbox (refer to Advanced Options for more
information, including the location of, this checkbox). Note that these options will not be available
if the server does not support DDE.
Items within the server can be referenced using the following syntax:
SERVICE_NAME |ITEM! SCANDETAILS
SERVICE_NAME represents the name of the DDE service. The first edit box specifies the service
name used by this server.
ITEM refers to an Item ID of a point within the server.
SCANDETAILS is a combination of the desired scan rate of the item, and an access path. One or
more delimiting characters separate the scan rate and access path. The second edit box can be
used to change the delimiters. The delimiting characters must be provided when referencing an
item in the server. However, the scan rate and access path are optional. If no scan rate is
specified, only data contained in the server cache is available through DDE, and an advise loop is
not created.
Changes to the DDE options do not take effect until the server is restarted.
Appendix Structure
This appendix is structured as follows:
• Introduction – this introductory section.
• OPC Security Implementation – description of user access dependencies.
• Matrikon OPC Tag Security Configuration Utility – describes the utility that is used to
configure security for Matrikon OPC servers.
• Security Details – describes how permissions are applied, how security settings are
stored, and other important details.
Identity
Using the IOPCSecurityNT interface for OPC Security, the identity of the OPC client is the domain
user that is running the OPC client and connecting to the OPC server. The OPC Framework will
attempt to impersonate the client that is connected to the server, and use the name from those
credentials for access control. This method does not require any implementation of OPC Security by
the OPC client, since no interface calls are necessary.
Using the IOPCSecurityPrivate interface for OPC Security, the OPC client must make a call to the
OPC server to log on with a user name and password. In this scenario, the OPC client must
implement and follow the OPC Security specification in terms of following the calls necessary to
provide credentials. The credentials provided through the private interface override those provided
from the NT interface. The OPC client may choose to log off, at which point the NT credentials are
used until the log on call is made again.
Location
Some of the interface calls made from an OPC client to an OPC server require the client to provide
an OPC item ID. The OPC Framework will take the OPC item ID provided, and determine whether
access to that location is allowed or not. A particular server installation may want to control access
to a particular device or branch in the hierarchy, and is able to do so by setting permissions for a
partial item ID or path.
Type
There are four types of interface functionality in the OPC Framework (specifically the OPC Outer
Layer) that are controlled using OPC Security:
1. Browsing
2. Adding items
3. Reading
4. Writing
Browsing is the least intrusive, followed by adding items, reading values from the items, and finally
writing to the items being the most intrusive. There are multiple interfaces, and functions within
those interfaces, that can be used to perform the types of functionality listed above. Thus, security
control has been added to each possible entry. For example, read control has been added to group
subscriptions call-backs as well as synchronous reads and asynchronous reads – denying read
control would disable reads for the possible types.
A location that is being accessed by an OPC client may have different permissions for the different
types of access. For example, one particular item may be browseable, added, and read, but the
writing permissions might be restricted so that the user cannot interfere with the operation of the
end device.
Note: Of the four functionality types listed above, three of them make use of the full OPC item ID
when an interface call is made from the client to the server: Adding Items, Reading, or Writing.
When browsing, only a partial path leading to an OPC item may be known at any location in the
browsing hierarchy.
2. Enter the password created during the installation of the OPC server.
Note: The default password provided for you during installation (if you chose to use the
default) is MatrikonOPC.
3. Click on the OK button.
4. The Matrikon OPC Tag Security Configuration Utility screen (Figure 69) appears.
The Matrikon OPC Tag Security Configuration Utility screen displays the name of the OPC
server that is being configured for tag security. In Figure 69 above, the Utility screen shows that
the Matrikon OPC Server for Simulation and Testing tag security is being configured.
The left-hand side of the Utility screen shows a column of action icons that can be clicked upon.
These actions are further described later in this appendix. Some actions may not be applicable,
depending on the context in which they are used, and are identified by greyed-out icons.
In the center of the Utility screen there are descriptions for each of the actions that can be
performed. The appearance of these descriptions can be toggled at any time by clicking on the
Hide Help/Show Help link that exists in the bottom-right corner of the Utility screen. When the
Help screen is hidden, a list of users and groups that have been added appears (Figure 70). By
default, there is always a user named Everyone in the Users & Groups list. This user defines the
permissions used for other NT users that are not configured.
Note: After any action is performed, the changes made do not take effect until either the OK or
Apply button has been selected. Clicking on the OK button saves the changes and closes the
Utility screen. Clicking on the Apply button saves the changes and keeps the Utility screen open.
Clicking on the Cancel button or the X button on the top-right of the screen, discards any changes
made.
Add User
There are two types of users for which security can be configured: NT Users and Private Users.
Adding a user to the configuration will allow permissions to be defined for that user. For NT users,
the IOPCSecurityNT interface is used, and for Private users, the IOPCSecurityPrivate interface is
used.
NT User
To add an NT user:
1. From the Matrikon OPC Tag Security Configuration Utility main screen, click on the
Add User button.
3. By default, the local machine name appears in the From this Location field. To browse to
a different location, click the Locations button.
4. The User field can be entered manually. Clicking on the Check Name button performs
validation on the entered user. The user names are the same as the Windows NT domain
names used on the network. To avoid manually entering a user, click on the Search button,
and select a user from the displayed list of users.
5. To add the selected user, click on the OK button. The user is then added to the list of users
and/or groups currently defined (refer to Figure 72 for a sample list of defined users and
groups).
6. The Edit <Username> window (Figure 77) appears. Follow the instructions in the Edit
User section for adding permissions.
Private User
Private users have names and passwords associated with them, custom to the OPC client
application, which must implement the OPC Security Private interface for this section to be
meaningful. Private users exist only in the OPC server. They are not created in any NT domains.
To add a Private user:
1. From the Matrikon OPC Tag Security Configuration Utility main screen, click on the
Add User button.
2. The Add User window (Figure 71) appears.
3. Select the Private User option button (Figure 73).
Add Group
Groups are used to group users together so that they can share common permissions. Groups are
not necessary to use OPC Security. However, they are convenient when you need to apply common
permissions to multiple users. A group must contain at least one user, and any combination of
users can be grouped together.
Note: A user can exist in multiple groups, but if two or more of the groups have the same
configured path (refer to the Edit User section), and each group defines a permission (Allow/Deny)
for the type of access, then the group whose name alphabetically comes first is used.
There are two types of groups for which security can be configured: NT Groups and Private
Groups.
NT Group
To add an NT group:
1. From the Matrikon OPC Tag Security Configuration Utility main screen, click on the
Add Group button.
3. By default, the local machine name appears in the From this Location field. To browse to
a different location, click the Locations button.
4. The Group field can be entered manually. Clicking on the Check Group button performs
validation on the entered group. The group names are the same as the Windows NT domain
group names used on the network. To avoid manually entering a group, click on the Search
button, and select a group from the displayed list of groups.
5. To add the selected group, click on the OK button. The group is then added to the list of
users and/or groups currently defined (refer to Figure 72 for a sample list of defined users
and groups).
6. The Edit <Groupname> window (Figure 84) appears (for NT Groups, there is only the
Permissions tab). Follow the instructions in the Edit Group section for adding
permissions.
Private Group
To add a Private Group:
1. From the Matrikon OPC Tag Security Configuration Utility main screen, click on the
Add Group button.
2. The Add Group window (Figure 74) appears.
3. Select the Private Group option button (Figure 75).
4. Enter a name for the group to be created. The group is private and will only exist in the OPC
server. The group cannot be created if there is already a configured user or group with that
same name.
5. Click on the OK button to create the group. It will be added to the list of users and/or
groups currently defined (refer to Figure 72 for a sample list of defined users and groups).
6. The Edit <Groupname> window (Figure 84) appears. Follow the instructions in the Edit
Group section for adding permissions.
Duplicate
Another way to create a new user or group is to duplicate an existing one.
To create a new user or group via duplication:
1. From the Matrikon OPC Tag Security Configuration Utility main screen, right-click your
mouse on the user or group you wish to duplicate.
2. From the displayed menu, select Duplicate.
3. The Enter New Name window (Figure 76) appears.
Edit
Once the desired users and/or groups are defined, they must be edited to configure their
respective permissions.
Note: Permissions can also be defined for the user Everyone, which is defined as the default user.
For every NT user not configured in the Matrikon OPC Tag Security Configuration Utility, the user
Everyone is used for determining security permissions.
Permissions for allowing/denying browsing, adding items, reading items, and writing items can be
configured. Permissions are defined for users and groups for a particular location in the server’s
address space hierarchy. A location can either be a tag (i.e., OPC Item ID) or a path leading up to
an item.
Edit User
To edit a user:
1. From the Matrikon OPC Tag Security Configuration Utility main screen, either:
• Double-click your mouse on the user you wish to edit, or
• Right-click your mouse on the required user and select Edit User from the displayed
menu, or
• Click your mouse on the required user, and then select the Edit button.
2. The Edit <Username> window (Figure 77) appears.
Notes:
• In this example, the user being edited is User1 so the window’s title reads Edit
User1.
• There are two tabs on this window: Permissions and General. The General tab
only appears for private users.
Permissions
On the Permissions tab, the permissions associated with this user relating to browsing, adding,
reading, and writing for any specific paths or OPC items are configured. The Configured Paths
screen section lists the paths and/or OPC items for which permissions are defined. The
Permissions screen section indicates those permissions with option buttons, which can be set to
Allow, Deny, or Unspecified. Selecting Unspecified directs the OPC Framework to look for the
permission higher up in the hierarchy.
From the Permissions tab, when the Add button is selected, the Add Permission screen is
displayed. In the Server Address Space screen section, folders and items are shown as nodes are
selected and expanded.
Red folders indicate a null branch. This means that the item names below this branch do not
contain the branch name, so permissions set on the branch will not reflect on Add, Write, and
Read permissions for the items below the branch. To properly set permissions on the items below
the branch, they have to be set on the items themselves.
Figure 78 provides an example of a null branch and items below it, all of which are outlined in
black.
When browsing, using the example in the diagram above, Simulation Items is a null branch
(identified by the red folder), Saw-toothed Waves is a non-null branch, and Int1 is an item.
Setting permissions on the Simulation Items branch does not affect Read, Write, and Add
permissions for the Saw-toothed Waves branch of the Int1 item below that. This is because
when adding the Int1 item, the item ID of the Int1 item is actually Saw-toothed Waves.Int1
and not Simulation Items\Saw-toothed Waves.Int1.
Setting Read, Write, and Add permissions for the Saw-toothed Waves branch will affect the
items below as Saw-toothed Waves is part of the item ID of the Int1 item (Saw-toothed
Waves.Int1), and therefore the Saw-toothed Waves folder does not appear as a red folder like
the Simulation Items folder does.
Note: User permissions override group permissions. For example, if a defined group is denied
writing privileges to an OPC item, Random.Int4, while a defined user (a member of that group) is
allowed writing privilege to Random items (Random.<itemID>), then the user permissions would
take precedence for that OPC item (even though the permissions relating to the group are a better
match for the OPC item, Random.Int4).
To edit a user’s permissions:
1. Click on the Add button to begin configuring permissions for the current user.
2. The Add User Permission window (Figure 79) appears. This window allows you to browse
the OPC server address space to find either a path in the hierarchy, or a particular OPC
item.
3. Expand on the server address space’s root node and continue to browse to the desired path
in the hierarchy, or the desired OPC item.
Note: Branches (i.e., folders) that are red in colour (see Figure 80) are not part of an item’s
path, but rather are used for browsing organization. Configuring permissions for adding,
reading, and writing will not affect items below it. For more information, refer to
Permissions.
On the General tab (Figure 82) of the Edit <Username> window, the name and password of the
user can be changed.
To edit a user’s name:
1. Enter a new name in the Name field.
2. Click on the OK button.
On the Permissions tab, the permissions associated with this group relating to browsing, adding,
reading, and writing for any specific paths or OPC items are configured. Refer to the Edit User
section regarding configuration on the Permissions tab. Group and user permissions are
configured in the same way.
On the Members tab (Figure 86), the users that are part of the current group are defined. By
default, the Group Members screen section is empty. In Figure 86, User1 has been added to
Group1.
2. The Members screen section lists all the defined users from which you may choose. Select
one or more desired users to become members of the group.
3. Click on the OK button. The selected user or users appear in the Group Members screen
section on the Members tab (Figure 86).
To remove a user from the group:
1. Select that user in the Group Members screen section.
2. Click on the Remove button.
Notes:
• If a user name and a group name (to which the user belongs) have permissions
defined for the same location, the user name will be used. If a user belongs to two
groups that have permissions defined for the same location, the group that is
alphabetically first will be used.
• The exact location (full item ID for reading, writing, and adding, or the full path for
browsing) is always looked for first when determining the permission for a particular
user. If the exact location is not found, or is found but does not contain a defined
permission, then the closest match in location is looked at next, and so on. The root
location (i.e., empty string) will always match, and is used if no partial location
match is made.
Delete
To delete a previously added user or group:
1. From the Matrikon OPC Tag Security Configuration Utility main screen, either:
• Select the required user or group from the list and click on the Delete button
(Figure 72), or
Change Password
To change the security password for the OPC server:
1. From the Matrikon OPC Security Configuration Utility main screen, click on the
Change Password button (Figure 69).
2. The Change Password window (Figure 88) appears.
Examples
This section contains examples of tag security settings made via the Matrikon OPC Tag Security
Configuration Utility, and the impact of these settings.
Default
The default tag security configuration provided is quite simplistic as is shown in Table 66:
As no users or groups are defined, any NT user connecting to the OPC server will use the
Everyone default user for permissions. Only the root level location is defined under the
Configured Paths list, which gives full permissions to the entire OPC server. An administrator will
want to change these default settings for the OPC server to provide more security on its tags.
At this point, more users can be added which belong to a more restricted group. This group may be
denied write capability or restricted to certain areas in the server hierarchy.
Example 2
Following is an example of a tag security configuration for the Matrikon OPC Server for Simulation
and Testing, with sample use-cases. Table 68 lists all defined users and groups and their
associated permissions. Table 69 indicates which users are members of the defined groups.
Unspec. permission indicates Unspecified. Groups in this example are Private Groups.
Tip 1
Adding a user name and not defining any permissions for that user name (or any group it belongs
to), will completely restrict their access to information in the OPC server.
Security Details
ACL File
The permissions that the Matrikon OPC Tag Security Configuration Utility creates are stored in
a file named ACL.sec that is located in the same directory as the Matrikon OPC server executable:
C:\Program Files\Matrikon\OPC\< OPC Server Name >\.
ACL.sec is encrypted with 256-bit AES using the password key that was provided during
installation (or changed in the security utility).
While the server is running, if the ACL.sec file is moved or deleted from its location above, security
functions as it did before the file was moved. If the server is re-started with the ACL.sec file
missing, no users will have permissions to do anything (i.e., browsing, adding, reading, writing)
and must re-configure their security settings.
Note: It is advised that this file is backed up and stored somewhere safe, once tag security
configuration has been completed. In the event that this file is lost or deleted by accident, simply
Determining Permission
Whenever a browsing, item addition, read, or write operation is performed by the OPC client, the
OPC Framework will call a permission routine to determine if permission is allowed or denied. Three
pieces of information are always sent to this routine call:
1. Identity
2. Location
3. Type
Identity is the user name described in the previous section – either the NT domain name, a private
name, or the default user Everyone. In addition, identity includes any groups (private or NT) that
the user belongs to. Location is either the full item ID or a partial path in the server hierarchy.
Type is the access type: browsing, item addition, reading, or writing. Each piece of information is
checked in the order listed above.
The following information details the procedure used in determining permission rights:
The user DOMAIN\john.doe wants to read the item Random.Int4. The permission routine would
not be able to find an exact location match under the Configured Paths list. However, it would
loop through each partial match in the Configured Paths list looking for a defined permission. The
location Random.Int would be the closest match and the permission would be ALLOW.
The user DOMAIN\john.doe wants to read the item Random.Real4. The permission routine
would not be able to find an exact location match under the Configured Paths list. However, it
would loop through each partial match in the Configured Paths list looking for a defined permission.
The location Random would be the closest match and the permission would be DENY.
Operational Effects
When offline mode is enabled at a particular location in a server’s hierarchy, there is no
communication between the server and the end-device/application to which the location refers.
To ensure that there is no communication when offline mode is enabled, the Matrikon OPC Server
Framework will disable the object associated with that branch. When an object is disabled due to
offline mode, the Enabled checkbox will be cleared (i.e., unselected) in its panel within the
configuration utility. Enabling the object will have no effect while the object has offline mode
enabled. When offline mode is disabled for that particular object, the Matrikon OPC Server
Framework will re-enable it and the Enabled checkbox will be selected (i.e., checked) once again.
3. Either a Pre-Requisites screen (Figure 90) appears, or you are taken directly to the
Licensing Agreement (Figure 91) screen. If the Licensing Agreement screen is the
displayed screen, go to step 5.
4. If the Pre-Requisites screen appears, then click on the Next button to install the listed
pre-requisites.
5. After all pre-requisites have been installed, the License Agreement screen (Figure 91)
appears.
Note: From the License Agreement screen, you have the option of selecting the I reject
the license agreement option. Selecting the I reject the license agreement option
button disables the Next button so your options are to return to the previous screen, cancel
the install by clicking on the Cancel button, or select the I accept the license agreement
option button enabling you to proceed through the install.
6. Read the Software License Agreement, using the scroll bar to view the entire message.
7. Select the I accept the license agreement option button.
8. Click on the Next button. The Setup Type screen (Figure 92) appears.
12. Select the folder in which to install the Matrikon OPC server, or accept the default location
displayed in the Folder path field.
13. Click on the Next button. The Start Menu screen (Figure 94) appears.
14. Select the Start Menu group and specify whether you want shortcuts created only for
yourself, or for all users, by selecting the applicable option button.
15. Click on the Next button. The Enter Password screen (Figure 95) appears.
16. A default password is supplied for you in the Password and Confirm Password fields.
Notes:
• The default password provided for you is MatrikonOPC. Note
this password for future reference.
• If you need to change the password at a later date, access the
Tag Security shortcut from the Start menu. Click on the
Windows Start button. Select Programs -> MatrikonOPC ->
<OPC Server Name> -> Tag Security. For more
information, refer to Appendix F – Security.
17. Click on the Next button to accept the default password. The Licensing screen (Figure 96)
appears.
20. Click on the Next button. The Installing MatrikonOPC Server for Siemens PLCs screen
(Figure 98) appears, installation begins, and the product files are copied to the computer.
Note: Prior to starting the installation, you have the option of clicking on the Back button
to change any of the installation information. Click on the Cancel button if you wish to stop
or cancel the installation.
21. When the installation has finished, the MatrikonOPC Server for Siemens PLCs Setup
Complete screen (Figure 99) appears stating that the Matrikon OPC server has been
successfully installed.
22. At this point, you have the option of launching any or all of the following by selecting the
necessary checkbox or checkboxes:
• Configuration panel
• Release Notes
• User’s Manual
23. Click on the Finish button to complete the installation and exit the Wizard.
24. The necessary files have now been copied to the target computer, the software components
are registered, and shortcut icons are created in the Start menu.
ACL.sec Access control list containing users and permissions configured for
the server.
ACLSecure.exe Command-line security utility used to encrypt/decrypt the ACL file.
Altova.dll
AltovaXML.dll
CalcEngine.dll
CalcEngineResource.dll
CalcEngineServerPS.dll
CalcEngineWrapper.dll
CalculationGraph.dll
clipsdll.dll
dbghelp.dll
icudt40.dll
Calculation Engine binary files.
icuin40.dll
icuuc40.dll
log4cxx.dll
lsapiw32.dll
NetPortalQueryServerPS.dll
ProcessNetDataDelivery_u.dll
RmsApiProxy.dll
Scheduler.dll
ScriptLibrary.dll
Xerces-c_2_8.dll
Licensing Procedures.pdf Licensing Procedures document.
OPCSiemensPLC.exe Matrikon OPC Siemens PLCs executable.
OPCSrvSiemensPLCWizard.exe Siemens PLC configuration wizard.
MatrikonOPC Server for
Siemens PLCs Release Release Notes for this product.
Notes.pdf
MatrikonOPC Server for
Siemens PLCs User Manual.pdf This User’s Manual.
The files listed in Table 73 are installed by default, in the following location:
C:\Program Files\Common Files\MatrikonOPC\Common
ACLConfig.exe Matrikon OPC Tag Security Configuration Utility that configures tag-
level security in Matrikon OPC servers.
EULA.pdf License document.
OEM_Matrikon_OPC.dll Matrikon OPC OEM Badge Library.
Matrikon OPC Automation Component – enables developers to access
OPCAuto.dll OPC data from client applications developed using Automation tools
such as Visual Basic, VBA, and VB Script.
opcda20_auto.doc Matrikon OPC Automation Component Interface Standard
Matrikon OPC Automation Component – enables developers to access
OPCDAAuto.dll OPC data from client applications developed using Automation tools
such as Visual Basic, VBA, and VB Script.
opchda10_auto.doc Developer documentation for the HDA Automation Component.
opchda_ps.dll The proxy-stub file to allow OPC Clients to make remote connections
to an OPC HDA server.
Matrikon OPC HDA Automation Component – enables developers to
OPCHDAAuto.dll access OPC HDA data from client applications developed using
Automation tools.
PSTCFG.exe Matrikon Product Configuration Utility.
PSTCFGBasicInnerLayerLib.ocx Server ActiveX configuration panel.
PSTcfgps.dll Matrikon Product Configuration Marshalling Library.
PXPComfigps.dll Matrikon Product Configuration Library.
Table 73 - Files Installed in "Common" Folder
5. Click on the Remove button associated with the MatrikonOPC Server for Siemens PLCs
program to initiate the un-install process.
6. The MatrikonOPC Server for Siemens PLCs – InstallAware Wizard appears, and the
Welcome to MatrikonOPC Server for Siemens PLCs Maintenance screen (Figure 101)
is displayed.
7. Select the Remove option button to un-install MatrikonOPC Server for Siemens PLCs
entirely.
8. Click on the Next button. The Ready to Uninstall screen (Figure 102) is displayed.
11. When the un-install has finished, the MatrikonOPC Server for Siemens PLCs Setup
Complete screen (Figure 104) appears stating that Matrikon OPC Server for Siemens PLCs
was successfully un-installed.
12. Click on the Finish button to complete the un-install and exit the Wizard.
13. The program no longer appears listed in the Add or Remove Programs window.