Professional Documents
Culture Documents
discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/261281435
CITATIONS READS
0 31
4 authors, including:
Some of the authors of this publication are also working on these related projects:
European Liaison on Electricity Committed Towards long-term Research Activities for Smart Grids
(ELECTRA IRP) View project
Monitoring and Management System for Smart Distribution Networks View project
All content following this page was uploaded by Mathias Uslar on 30 July 2015.
The user has requested enhancement of the downloaded file. All in-text references underlined in blue are added to the original document
and are linked to publications on ResearchGate, letting you access and read them immediately.
SeMo-TS: Testing ope UA Server Models In
Simulated Environments
Sebastian Rohjans, Sebastian Lehnhoff and Mathias Uslar Plamen M. Rusinov
R&D Division Energy BTC Business Technology Consulting AG
OFFIS - Institute for Information Technology Escherweg 5, 26121 Oldenburg, Germany
Escherweg 2, 26121 Oldenburg, Germany Email: plamen.rusinov@btc-ag.com
Email: {rohjans.lehnhoff.uslar}@OFFIS.de
Abstract-The advent of the ope Unified Architecture (UA) management to field layers in control systems [4]. For this
extends the scope of standardized (industrial) automation. Until reason, the scope of application of OPC UA is significantly
now, ope standards have only been applied in the context of
extended compared to Classic OPe. Generally, OPC UA can
industrial automation. The ope UA however, enables applica
be applied in any domain providing an appropriate data model.
tions in various domains, e.g., the power domain aiming at the
implementation of smart grids. Among other things, smart grids One domain, which is now within the scope of OPC UA is
pursue the goal of realizing an automated overall energy system. the power sector with its so called smart grids [5].
Referring to the ope UA standard, which has been identified Smart grids serve as a representative example for a very
as a suitable solution, the power domain can benefit from the
complex system including information exchange on many
experiences in industrial automation. Deploying an ope UA
architecture in the field, previously requires extensive testing
different levels. Data must be collected from small devices
in simulative environments. In this contribution, a test suite for like meters but also from complex systems like Supervisory
simulated ope UA servers and clients is introduced. Investigating Control and Data Acquisition (SCADA) [6]. The application
the state of the art motivates the need for a software tool fostering of OPC UA to complex systems requires the operation of a
the validation of developed ope UA server models in order to
range of simple to rather complex servers under various non
ensure their reliable operation in the field.
functional requirements, e.g., in terms of performance and
security [7], [8]. One key issue of building a communication
I. INTRODUCTION
architecture, which has a high degree of complexity and
Classic OPC standards have been the state of the art in analyzing it in terms of the afore mentioned requirements is
industrial automation for years [1]. They are dealing with read simulation [9]. Thus, commonly before devices and systems
ing, writing, and monitoring of process data (OPC Data Access are realized as OPC UA servers, there is a need for simulating
(DA)), sending messages in consequence of certain events and their behavior in a proper simulation environment. In this
alarms (OPC Alarms & Events (AE)), and accessing historical paper and for the context of complex OPC UA systems, SeMo
data (OPC Historical Data Access (HDA)). However, due to TS (Server Model - Testing Suite) is presented as a testing
the continuous development in the IT-sector, Classic OPC is suite for simulated OPC UA servers. The tool is capable
outdated today for various reasons [2]. The ten most significant of managing different servers including their configurations
disadvantages are listed by Lange et al. [1] comprising, e.g., and modifying their data models. Furthermore, clients can be
discontinuation of COMIDCOM, which is the basic technol realized in order to test the simulated servers.
ogy of Classic OPC, use of Classic OPC limited on Windows The remainder of this contribution is structured as follows:
platforms, and low-performance OPC communication via Web Section II provides an introduction of OPC UA focusing on
Services. OPC Unified Architecture (UA) aims at overcoming data modeling and UA servers. The state of the art is presented
the serious shortcomings that exist. OPC UA realizes a server in Section III containing popular Software Developing Kits
client architecture following the Service-oriented Architecture (SDK) in Section III-A and development tools in Section
(SOA) paradigm. The standard consist of l3 specifications. In III-B. The SeMo-TS approach is introduced in Section IV
order to facilitate the deployment of OPC UA, a major concern and evaluated in Section V. Finally, Section VI concludes the
is the compatibility to existing and widely spread Classic OPC contribution and provides a brief outlook at future work.
solutions. Therefore, concepts like wrappers and proxies are
provided [3].
II. OPC UNIFIED ARCHITECTURE
Besides the modeling of information, communication ser
vices are of major interest. Both, services and data models The main objective of OPC UA is the integration of in
are defined in an abstract way and are mapped onto specific formation and devices in enterprises beyond the boundaries
technologies. Thus, an OPC UA system can be applied with of single systems riO]. Thereby, OPC UA is mainly covering
suitable technologies for specific use cases. Moreover, UA two important issues [11]. On the one hand, the modeling of
systems can be used on different layers from information information provided by servers and consumed by clients. On
I I
]I
t
UAXML UA Binary
:
I
WS Secure Conversation
JI UA Secure Conversation
II
It
SOAP 1.2 UA TCP
HTTP/HTTPS
I TCPIIP
Node A Node B
Reference 1
Attributes Attributes
Reference 2
/-
l
Reference 3 eference 5
Fig. 3. Object hierarchy of a basic ope UA server
c�
r-N-o-d-e -
Attributes
Fig. 2. ope UA node model [II] part of a basic server. In Part 3 [14] of the specification, the
main classes are specified as follows:
the other hand, the services applied for the communication be • ObjectTypes define the semantics of Objects and complex
tween servers and clients. Since, the focus of this contribution ObjectTypes structure interconnected nodes like Variables
is the testing of server models, the data modeling is of higher and Methods.
interest. However, services are also briefly introduced in the • A Variable is a Node that contains a value. Two different
following but for the sake of conceptual clarity not considered types of Variables exist:
ner. It mainly consists of a set of nodes being connected by In [15], Girbea et al. present generalized algorithms for
certain references. The nodes are grouped in classes based the automatic generation of Address Space structures. The ap
on their meanings. Each class of nodes includes attributes proach includes the description of a generalized Address Space
describing them in detail. General attributes are for example generation scheme, specialized algorithms for the generation
2846
of different Address Space elements, and adding additional ope UA Server
Server
references. The algorithms can be applied independently from Application
the used information model. Mahnke et al. [11] list the basic
principles of information modeling with OPC UA as follows:
i 1 i 1
allowing various extension mechanisms.
• OPC UA information modeling is always done on the
From ope ToOPC From ope ToOPC
server-side. The model can be accessed and modified UAClient UAClient UAClient UAClient
model.
2847
� . ..
B. Developing Tools
Menu I
Tools, which focus on the development of Address Spaces . I I
I XML editing area I
Ciont
I
Server 1
the XML files with the tool. The code generation is based Server 2
Server 3
on templates, which can be customized manually. The
resulting source code is compliant to the .NET SDK.
• UAModeler from Unified Automation6: The UAMod
eler is also aiming at the generation of source code.
XML files in combination with according filters serve as Fig. 5. SeMo-TS main frame
2848
V. EVALUATION
Fig. 6. SeMo-TS XML editing area The use case is based on the original use case "Distributed
Energy Ressource Controller Produces Distribution Powerflow
Forecast" [23], which handles load forecasting of distributed
The simulation has to be implemented in MS Visual Studio and energy networks by using data from different sources like load
creating new simulations requires its installation. The structure history, weather forecasts, and energy price trends. The system
of the server class is shown in Listing 1. A Visual Studio functionalities are distributed among different modules, each
solution is selected in the first step and the ModelDesign of which can be seen as an independent component and is
XML is recompiled in the second step. The ModelDesign implemented as VA client or server, respectively.
XML contains the information about the server information In a first step all servers and clients were imported by SeMo
model. The resulting executable file is started automatically TS. Then, both the configurations of the servers and their
as the final step of the process. With the current prototype, information models have been modified in order to simulate
the simulated behavior of the modeled elements must also be realistic changes. Moreover, new severs have been added to
implemented in Visual Studio and is part of the server. the system and existing ones have been replaced by new ones
providing different capabilities. In general, all servers and
public Server( string solutionFi le , string model File , string
clients are simulated compliant to realistic behaviors.
config File)
"
<Variable SymbolicName=" ns I :A irPressure" WriteAccess=
string execFile = Path.GetDirectory Name(ModeIFile) +
" I" DataType=" nsO:Double" ValueRank=" Array"
\\ bin \\ Debug\\ " + Path.GetFile NameWithoutExtension(
ArrayDimensions="24" I>
ConfigFilename).Replace( "Config", "exe");
<V aria bI e SymbolicName="ns I:WindSpeed" WriteAccess=" I
InitExec( execFile);
" DataType=" nsO:Double" ValueRank=" Array"
ArrayDimensions="24" I>
<Variable SymbolicName=" ns l :CloudCover" WriteAccess="
Listing 1. Implementation of the server class I" DataType=" nsO:Double" ValueRank=" Array"
ArrayDimensions="24" I>
2849
<I Chi Idren > For instance, simulating measured values randomly within
<IObjectType>
a given range. Furthermore, new simulation behaviors should
<ObjectType SymbolicName=" ns I :WeatherForecas tsType"
BaseType=" nsO:BaseObjeclType"> be definable in order to continuously extend the capabilities.
<Chi Idren>
The long-term goal is to provide a comprehensive simulation
<Object SymbolicName=" ns l :WeatherForecas t l "
TypeDefi ni ti 0 n =" ns I :WeatherForecas tType"> framework that enables the development, management, and
<BrowseName>Wealher Forecasl #1</BrowseName>
simulated testing of OPC VA applications.
<IObjecl>
</Chi l dren>
<IObjectType> REFERENCE S
<Object SymbolicName=" ns I :WeatherForecasts"
TypeDefi ni Ii 0 n =" ns I :WealherForecaslsType"> [I] J. Lange, F. lwanitz, and T . J. Burke, OPC: From Data Access to Unified
<BrowseName> WealherForecas Is<1 BrowseName> Architecture, 4th ed. HUthig, 2010.
<References> [2] F. Iwanitz and J. Lange, OPC: Grundlagen, Implementierung und
<Reference Islnvers e =" true"> Anwendung. HUthig, 2005.
<ReferenceType>nsO:0 rgani zes<IReferenceType> [3] T. Hannelius, M. Salmenpera. and S. Kuikka, "Roadmap to adopting
<Targell d>n sO:Objeels Fo I derd TargelId>
OPC UA," in 6th IEEE International Conference on Informatics, 2008,
<I Reference>
2008, pp. 756-761.
<IReferences>
[4] O. Sande, M. Fojcik, and R. Cupek, "OPC UA Based Solutions for
<IObject>
<IModelDesign> Integrated Operations," Computer Networks, pp. 76-83, 2010.
[5] NIST, "NIST Framework and Roadmap for Smart Grid lnteroperability
Listing 2. Server design example for weather forecasting Standards," 2010.
[6] H. Farhangi, "The Path of the Smart Grid," IEEE Power and
Based on feedback received from VA application developers Energy Magazine, vol. 8, no. 1, pp. 18-28, 2010. [Online]. Available:
http://ieeexplore.ieee.org/xpls/abs_all.jsp?amumber=5357331
and modeling as well as simulation experts, it can be stated
[7] A. Claassen, S. Rohjans, and S. Lehnhoff, "Application of OPC UA for
that SeMo-TS is an easy-to-use prototype implementation of the Smart Grid," in Innovative Smart Grid Technologies (ISGT) Europe
a testing suite for VA applications. Server models can be 2011, 2011.
[8] S. Lehnhoff, S. Rohjans, M. Uslar, and W. Mahnke, "OPC Unified
modified reliably and simulated environments can be created
Architecture: A Service-Oriented Architecture for Smart Grids," in
ICSE
in a simple way in order to prepare server models for field 2012 International Workshop on Software Engineering Challenges for
operations. the Smart Grid. IEEE, 2012.
[9] S. SchUtte, S. Scherfke, and M. Troschel, "Mosaik : A Framework
VI. CONC LUS IONS for Modular Simulation of Active Components in Smart Grids," in
2011 IEEE First International Workshop on Smart Grid Modeling and
The OPC VA was introduced as communication standard Simulation (SGMS), 2011, pp. 55-60.
with a broad scope of application. The way information model [l0] T. Hadlich, "Providing device integration with OPC UA," IEEE Interna
tional Conference on Industrial Informatics, 2006, pp. 263-268, 2006.
ing is realized on server-side has been elaborated. Furthermore, [11] W. Mahnke, S.-H. Leitner, and M. Damm, OPC Unified Architecture.
the state of the art in terms of SDKs and developing tools Springer, 2009.
in the context of OPC VA systems has been discussed. A [12] OPC Foundation, "OPC Unified Architecture Specification Part 4: Ser
vices - Release 1.01," 2009.
gap within this tool landscape was identified. In particular, [13] -- , "OPC Unified Architecture Specification Part 6: Mappings -
complex VA system architectures require simulation of single Release 1.00," 2009.
VA components in advance. However, appropriate software is [l4] -- , "OPC Unified Architecture Specification Part 3: Address Space
Model - Release 1.01," 2009.
not available so far. Therefore, SeMo-TS was introduced as a [15] A. Girbea, R. Demeter, and F. Sisak, "Automatic address space genera
testing suite for VA servers including their data models. The tion for an OPC UA server of a flexible manufacturing system," in
6th
tool was finally evaluated by implementing and simulating typ IEEE International Symposium on Applied Computational Intelligence
and Informatics (SACI), 2011. lEEE, 2011, pp. 483-488.
ical use cases from the power domain and receiving feedback [l6] OPC Foundation, "OPC Unified Architecture Specification Part 1:
from experts. Overview and Concepts - Release 1.01," 2009.
The proposed prototype is a first step towards a powerful [17] S. Rohjans, M. Uslar, and H.J. Appelrath, "OPC UA and CIM: Seman
tics for the smart grid," in
Transmission and Distribution Conference
testing framework. However, it has some shortcomings that and Exposition, 2010 IEEE PES, 2010, pp. 1-8.
have yet to be addressed. Modifying servers can not be realized [18] S. Lehnhoff, W. Mahnke, S. Rohjans, and M. Uslar, "lEC 61850 based
OPC UA Communication - T he Future of Smart Grid Automation," in
during run-time, thus the servers have to be recompiled and
17th Power Systems Computation Conference (PSCC'll), 2011.
restarted and are not available in the meantime. Due to the [l9] R. Huang, "Research on OPC UA based on electronic device descrip
fact that the ModelDesign XML from the OPC Foundation is tion," 3rd IEEE Conference on Industrial Electronics and Applications,
used SeMo-TS has to react on changes in the ModelDesign 2008., pp. 2162-2166, 2008.
[20] D. Grossmann and K. Bender, "OPC UA based field device integration,"
in order to stay compliant. In general, the concept relies on SICE Annual Conference, 2008, pp. 933-938, 2008.
Quickstarts provided by the OPC Foundation and therefore, it [21] OPC Foundation and PLCopen, "OPC UA Information Model for lEC
2850