Professional Documents
Culture Documents
Automationml - The Glue For Seamless Automation Engineering
Automationml - The Glue For Seamless Automation Engineering
Dr. Rainer Drath Dr. Arndt Lüder, Jörn Peschke, Lorenz Hundt
ABB Corporate Research Ladenburg Otto-v.-Guericke University
Wallstadter Str. 59 Universitaetsplatz 2
68526 Ladenburg D-39106 Magdeburg
rainer.drath@de.abb.com [arndt.lueder/joern.peschke/lorenz.hundt]@ovgu.de
617
them. This contains a number of AutomationML
attributes including their syntax and semantic as
well as references to AutomationML-classes. a) Rob1 PLC1
• InstanceHierarchy: Instance hierarchies store con-
crete project data and are therefore the core of Auto-
mationML data. The InstanceHierarchy is a hierar-
chy of object instances with its own individual b InternalLink
properties, interfaces, references and relations. )
4.1. Examples
The following examples demonstrate a selection of
AutomationML concepts and their mapping to Automa- Figure 3: Relations betweeen AutomationML
tionML.
objects
4.1.1. Storage of a plant topology
Figure 4 depicts the corresponding AutomationML re-
Figure 2 shows a simple example of a plant hierarchy
presentation. It becomes visible that the interfaces of
and how to store it in AutomationML. The storage of a
both objects “Rob1” and “PLC1” are mapped to CAEX
hierarchy is done with nested CAEX InternalElements.
ExternalInterfaces which are derived from the Automa-
Each object is chacterized by an arbitrary name and a
tionML standard interface class „DigitalInput“ or „Digi-
unique GUID.
talOutput“ respectively. The linking is done by means of
a CAEX-InternalLink.
ObjectA
ObjectA_1
a)
ObjectA_2
ObjectA_2_1
Internal-
Link
b)
618
CAEX File COLLADA File
Station
Combination
Robot1
Robot2
Figure 6 represents the corresponding AutomationML Beside the presented concepts, the mentioned “pub-
file. The object „Robot2“ references the corresponding lished” logic and geometric interfaces can be linked in
node by means of the AutomationML attribute „COL- the top level format. These links are a main feature of
LADAReference“. AutomationML and allow connecting engineering infor-
mation to each other which is normally distributed to do-
main specific data formats without knowing its relation-
ships. In this way, Automation is the glue between other-
wise separated engineering information.
In sum, the described concepts provide powerful
means to store complex engineering information in a
vendor independent way. This opens up a variety of
application fields.
Station Init
Attribute „LogicReference“
Step 1
End
619
but it is important to understand that the required change • Description of sequences - used in order to specify the
management in an iterative engineering workflow is tool required controlled behavior of a system or part. Se-
functionality and cannot be processed by means of a file quences finally lead to programs which are associated
format. to and executed by one or more controllers (e.g. robot
Especially the phase of the virtual commissioning can controllers, PLCs etc.)
utilize AutomationML. Furthermore, even the quotation Both concepts are illustrated by means of the follo-
phase can benefit from the re-use of proven engineering wing examples for the three typical utilizations within
data and can feed their results directly into the following AutomationML and depicted in Figure 10 with focus on
engineering steps. the gripper, the station and the device.
sequencing
One important aspect of AutomationML is the description
of logic data as required for electrical design, HMI deve- Station behavior
lopment and programming of PLCs as well as robots.
sequencing/
Within the engineering process, the description of logic behavior
Robot
information has not only to cover data of different tools
and disciplines, but also supports different phases in the
development process with various levels of detail.
Gripper
AutomationML simplifies the engineering of production
systems by providing a common data format which can be
used continuously from the first engineering steps such as Device
plant design to the final commissioning of complete
systems. Hence, AutomationML must be able to store a
variety of different types of logic information belonging to
a production system or a single part. Examples for this Figure 10: Logic descriptions in AutomationML
information are:
• Definition of sequences of operations during the first • Uncontrolled behavior of a single mechatronic unit
planning phases described in different levels of detail An example for this type is the internal uncontrolled
by e.g. Gantt charts. behavior of a gripper, which might be permanently as-
signed to a corresponding library element. The signal
• Sequences of tasks with timing boundary conditions
interfaces of this are required for triggering the beha-
described by e.g. PERT charts.
vior or retrieving the internal states. In most cases they
• Detailed task sequences including signals specified by represent the same signals as the real physical element.
e.g. Impulse diagrams. The behavior description is normally not changed rat-
• Detailed sequences including PLC programs with a her than rarely replaced by new versions.
mapping to real control hardware described by • Sequencing for a cell / plant
Sequential Function Charts (SFC).
This comprises the desired sequence of actions within a
All types of logic information are stored within one cell as high level input for the PLC-program. It is typi-
common model: the Sequential Function Chart (SFC) as cally bound to an unit object (e.g. the station) or if
one of the PLC programming languages defined in IEC available to an element representing an execution envi-
61131-3 [7] and the underlying data format PLCopen ronment, such as a controller. Communication inter-
XML. Therefore logic information is stored in separate faces are required for the interaction with other ele-
documents. As already mentioned above, the variables ments of the logic description and consist of real sig-
within an SFC can be “published” in the top level format nals or simplifications of them. The evolution of this
for later interlinking. description during a development process typically
One of the essential preconditions for using the Auto- starts with an abstract specification of required beha-
mationML logic concept is the definition of translation vior of a larger scale unit (cell, line, plant etc.) over a
rules which allows the transformation to and from SFCs refinement to more detailed sequences and an enhance-
out of various logic data formats. ment with signals towards an executable program
AutomationML distinguishes between two main con- (PLC/robot).
cepts of logic data which pursue different objectives: • Behavior and sequencing of intelligent devices
• Description of behavior of AutomationML objects. “Intelligent devices” can combine both behavior and
This models the uncontrolled reaction of e.g. a part on sequencing. From an external view, device programs
external stimulations (signal inputs), typically used in a may be controlled by means of behavior. From an in-
white-box manner. ternal view each single program can be described as
620
sequence. An example for this combined type is the modeling level without knowledge of PLCopen XML
behavior of a robot, which is realized by robot pro- details and thus eases the introduction of new input
grams which interact with a PLC as overall cell con- formats for AutomationML. As described above, for
troller. It is important to note, that this example can be the realization of new ex- or importer functionality, the
interpreted as behavior or sequencing depending on the IML/PLCopen-component is reusable for several diffe-
point of view. Thus, communication interfaces may be rent formats reducing the implementation effort to the
used for the interaction with other elements in terms of more simple transformation to IML.
triggering a behavior. Independent of these advantages it is important to
note, that IML is a concept which eases the definition of
6.1. Logic transformation rules transformations rules as well as the implementation of
corresponding software, but is not mandatory for the use
For the engineer, the application of AutomationML of the AutomationML logics features. If feasible, the di-
requires transforming his existing input logic format into rect way from a given input format to and from PLCopen
a SFC and to transform an existing SFC back into the de- XML under consideration of the appropriate rules is also
sired output logic format which might be the same as the possible.
input format. Nevertheless, AutomationML does not pro- The Intermediate Modeling Layer defines abstract
vide any mean to compensate different modeling power elements representing the main categories of data usually
of the various formats. Thus depending on the formats exploited within logic models. IML consist of a set of
there may be an information loss during this procedure. different system entities containing 11 types of elements
Those transformations require rules, which are in the as described in table 1.
focus of the following explanations. These rules follow
the approach to decouple the neutral format PLCopen
XML from concrete input and output data formats by IML Sys- Description of the IML Entity
introducing an intermediate modeling layer (IML). This tem Entity
layer provides advantages for a conceptual mapping of State States describe a stable situation within a system
different formats and eases the implementation of ex- present for a certain amount (larger than zero) of
and importer tools. By defining an IML, the transfor- time.
mation of an input format is virtually divided into two State transi- A state transition is the change over from one
steps. As shown in Figure 11, first the input format is tion state to next state(s) by interpreting the state
mapped to IML, while in a second step the resulting transition condition.
IML-model will be translated into an XML represen- Activity An activity will describe one or more processes
tation according to PLCopen XML SFCs. executed during the evolution of the modeled
system.
Mapping Rules based Mapping of IML
on transformation of elements to Jump A jump represents a state it belongs to. It has no
Model elements
Ganttchart
XMLstructures
own modeling meaning.
Selection Selection divergences are logical associations
PERT divergence between three or more description elements,
IML PLCopen XML
representing a selection divergence.
Impulse
diagram Simultanious Simultaneous divergences are logical asso-
divergence ciations between three or more description ele-
... ments, representing a simultaneous divergence.
Selection Selection convergences are logical associations
Specific models and charts Set of model elements XML convergence between three or more description elements,
(Proprietary data format)
representing a selection convergence.
Figure 11: Logic models during transformation Simultanious Simultaneous convergences are logical associ-
process convergence ations between three or more description ele-
ments, representing a simultaneous convergence.
This approach allows: Event Events will happen, if some properties within a
• On the one hand to define the complex transformation modeled system have been changed.
rules from and to PLCopen XML which have to take Variable Variables will be used to characterize states and
XML specifics into account only once, but not for any activities and to enable/disable transitions.
new input format. A software implementation could Thereby, variables are mostly used to describe
provide this translation as standard functionality as a detailed information about the modeled system.
reusable component with a well defined API. Comment Comments are not structured additional infor-
mation attached to system nodes.
• On the other hand for specific input formats (models,
diagrams etc.) only transformation rules to the inter- Table 1: Overview IML entities
mediate layer have to be defined. This can be done on a
621
The modeling power of this set of elements is close The following example presents the handling of time.
but not restricted to the SFC-model. With additional ele- In a Gantt chart, the time comsuption of a process is de-
ments, such as events, it allows to easily map common picted by the length of a bar. In an executable SFC, the
logic representations to IML. start time and the time consumtion of a process is depic-
ted by corresponding actions and transition conditions.
6.2. Example: transformation of Gantt Charts To enable the unambiguous backwards transformation
from SFCs to Gantt chart, some additional naming con-
One possible input format for IML is the wellknown ventions for actions are defined by the AutomtionML
Gantt Chart [8]. The following example illustrates the consortium in order to ensure the correct identification of
transformation process into a SFC. these SFC elements. As described above, the timing in-
Gantt charts are typically used to describe the order formation of each Gantt activity is represented by a step
and execution time of activities on a high level in early with two actions and a successor transition. The first ac-
states of the engineering of a plant. The main informa- tion directly represents the time behaviour of the related
tion stored is start and end time of activities and prede- SFC-activity and may be delayed in execution using a D-
cessor/successor relations. In AutomationML, Gantt-dia- qualifier. Thus, the action starts “synchronously” to the
grams can be represented as SFC according to the fol- appropriate Gantt bar (DA._1._Activity 1 in Figure 13).
lowing principles: The second action is responsible for enabling the suc-
• Each Gantt activity is represented by a SFC step cessor transition to “synchronously” deactivate the step
with two actions and a successor transition. The and end the first action according to the end time of the
time behavior of the Boolean variables is represen- Gantt activity. Hence the action will also contain a D-
ted by actions and describes the start and end time Qualifier in order to delay the start of the action (TA._1).
of the Gantt activities. If no explicit relations bet- The condition for the following transition has to be en-
ween Gantt activities are defined, the SFC-steps are abled when this action is executed.
parallel.
• If relations are described (predecessor/successor)
the resulting structure is a sequence of SFC-steps
and transitions.
• Mixtures of both structures are possible. If choices
have to be described, this shall be done using selec-
tion divergences.
• For each SFC representing a Gantt chart, an initial
step shall be created followed by a transition with
condition “true” as link for all further elements.
D VA1 D VA2 T3
S1 S2
D TA1 D TA2
T4
D VA3
S3 T5
D TA3
t0 t1 t2 t3 t4 t5 t6 t
622
T1, T2 and T3 have no explicit predecessors; whereas signed for storing and data exchange of engineering
T4 follows T2 and the start of T5 depend on the information. Interconnecting those distributed engi-
finalization of T3 and T4. The SFC model resulting from neering information is a key functionality of Auto-
the transformation is shown in Figure 15. mationML. In this way, AutomationML is the glue bet-
ween otherwise separated engineering information.
Initial
step
AutomationML enables the storage of plant topology infor-
true mation as well as references and relation information by
D t0 VA_ID01_T1 D t1 VA_ID02_T2 D t3 VA_ID03_T3
exploiting the CAEX standard (IEC 62424), geometry and
S1
D t1 TA_ID01
S2
D t2 TA_ID02
S3
D t5 TA_ID03
kinematic information by exploiting the COLLADA™ and
TA_ID01 = 1 TA_ID02 = 1 TA_ID03 = 1
behaviour information by exploiting the PLCopen XML
S4
D (t3-t2) VA_ID04_T4 standard.
D (t4-t2) TA_ID04
The re-unification of engineering data in Auto-
TA_ID04 = 1
mationML delivers a variety of advantages. Engineering
Buffer Buffer
step step data are extracted out of their host tools and thus neu-
tralized. This protects the engineering investments which
true
are otherwise bound to the tools.
Furthermore, these data can be re-used for training
D (t5-t5) VA_ID05_T5
S5 purposes, for tests, standardization activities and for the
D (t6-t5) TA_ID05
TA_ID05 = 1
support of maintenance or for the iterative comparison of
different versions.
AutomationML is designed by vendors, and end users
Figure 15: SFC representing Example 2
of automation systems in closed cooperation with
As mentioned above, the Gantt activities with no ex- scientists in the field of industrial control. Therefore, it
plicit predecessor result in parallel steps with a time de- covers a broad range of requirements and takes up the
lay derived from the start point of the diagram. The pre- newest developments within this field. Hence, the
decessor/successor relation between T2 and T4 results in expectations on AutomationML are very high. At
a similar relation between S2 and S4. Hanover fair 2008 a first version of AutomationML has
For the dependency of T5 from two predecessors, ac- been published to a broad audience. All interested
tivities buffer steps are required to decouple the different experts and scientists are now asked to join the efforts
deactivation times of predecessor steps. These additional and to extend AutomationML.
steps and transition have no effects on timing behavior
of the SFC, beside of “storing” the successor information References
of S4.
These transformation rules allows storing logic infor- [1] IEC 62424 CDV: Specification for representation of pro-
mation from various logic data formats in a vendor inde- cess control engineering requests in P&I diagrams and
pendent way and several levels of detail. This enables a for data exchange between P&ID tools and PCE-CAE
transparent and seamless evolution from abstract high tools. Beuth-Verlag, 2007.
level logic information down to executable programs [2] Fedai M., Drath R.: CAEX - a neutral data exchange for-
without a conceptual break. mat for engineering data. In: atp/international 1/2005, S.
43-51, Oldenbourg Industrieverlag, 2005.
7. Summary and outlook [3] http://plcopen.org/
[4] http://de.wikipedia.org/wiki/Khronos_Group
AutomationML is a data exchange format with the objec- [5] http://www.automationml.org/
tive to provide the seamless automation engineering. The [6] Fedai M., Epple U., Drath R., Fay A.: A Metamodel for
need for such data format is derived form the bordering generic data exchange between various CAE Systems.
conditions of the existing tool landscape and the problems In: Troch, Inge und Felix Breitenecker (Herausgeber):
arising of the incompatibility of these tools. Proceedings of 4th Mathmod Conference, Band 24 der
AutomationML provides concepts to store infor- Reihe ARGESIM Report, Seiten 1247-1256, Vienna, 5.-
mation about topology, geometry, kinematics, logic, 7. Januar 2003, ISBN 3-901608-24-9.
references and relations in order to close existing gaps [7] IEC 61131-3 International Electrotechnical Commission:
during the engineering of production systems. It follows IEC 61131 -Programmable controllers - Part 3: Pro-
the concept of object orientation and describes real plant gramming languages, www.iec.ch.
components as objects encapsulating different aspects of [8] Adam, Dietrich: Produktionsmanagement, Wiesbaden
the engineering. These aspects are stored separately in Gabler Lehrbuch, 9. Auflage, 1998.
existing data formats which are already available and de-
623