Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Business Informatics Group
Institute of Software Technology and Interactive Systems
TU Wien
Favoritenstraße 9-11/188-3, 10...
 Multidisciplinary process involving various engineering disciplines
 Different disciplines and engineering activities r...
Automation Markup Language Motivation
 Open, vendor neutral, free XML format for the storage and exchange of
plant engine...
Plant Behavior Models Motivation
PLCopen XML
 Standard XML format for exchanging PLC code
 Supports all programming lang...
Plant Behavior Models Motivation
Translations from/to PLCopen XML
5
Tool A
Tool B
Tool C
Gantt Chart
PERT Chart
Impulse Di...
Plant Behavior Models Motivation
Translations from/to PLCopen XML
6
Tool A
Tool B
Tool C
Gantt Chart
PERT Chart
Impulse Di...
Intermediate Modeling Layer Motivation
AutomationML introduces Intermediate Modeling Layer (IML)
 IML is based on sequent...
Semi-formal Definition of IML Problem
 IML and the transformations from/to IML are only semi-formally defined
 Arising P...
IML as Semantic Domain and Integration Layer for
Plant Behavior Models Contribution
9
M2M … Model-to-Model Transformation
...
IML as Semantic Domain and Integration Layer for
Plant Behavior Models Contribution
10
M2M … Model-to-Model Transformation...
Metamodel for IML Contribution
11
Comment
content : String
ElementHeader
name : String
Variable
name : String
type : Strin...
IML Model Example
12
InitialStep
Stopping
BlinkRed
MovingForward
BlinkGreen
Move
Stop
Repeat
SC
MoveStepForward
Stop
Operational Semantics for IML Contribution
13
IML Operational Semantics
IML Abstract Syntax
«merge»
Header
execute()
State...
Operational Semantics for IML Contribution
14
Comment
content : String
Element
Variable
name : String
type : String
conten...
Operational Semantics for IML Contribution
15
Comment
content : String
Element
Variable
name : String
type : String
conten...
Tool Support for IML Contribution
 Workbench: GEMOC Studio
 http://gemoc.org/studio
 Implementation of IML
 Abstract s...
Tool Support for IML Contribution
17
Future Work
 Refinement of operational semantics defined for IML
(e.g., timing aspects, concurrency)
 Formalization of m...
Thank you!
Questions?
Contact: mayerhofer@big.tuwien.ac.at
Material: https://github.com/moliz/moliz.gemoc/tree/master/exam...
Upcoming SlideShare
Loading in …5
×

Towards the Semantic Integration of Plant Behavior Models with AutomationML’s Intermediate Modeling Layer

177 views

Published on

This presentation was given at the 4th International Workshop on The Globalization of Modeling Languages (GEMOC) 2016 (http://gemoc.org/gemoc2016/).

Abstract:

AutomationML is an emerging IEC standard for storing and exchanging engineering data among the heterogeneous software tools involved in the engineering of production systems. One important subset of such engineering data is the plant behavior. To make this data exchangeable, AutomationML uses the existing industry data format PLCopen XML. However, at the development stages of production systems, the plant behavior is usually defined using other representation means, such as Gantt charts, impulse diagrams, and sequential function charts. To make such plant behavior models exchangeable, AutomationML introduces the so-called Intermediate Modeling Layer (IML) with corresponding transformation rules to decouple the employed modeling languages from the target format PLCopen XML. However, IML itself as well as the transformations from and to IML are only semi-formally described. This not only hinders the adoption of IML as a common language for representing plant behavior, but also renders impossible the composition of heterogeneous plant behavior models for carrying out integrated analyses of the global plant behavior. In this work, we aim at clarifying syntactical and semantical aspects of IML by proposing a metamodel and operational semantics for IML. This constitutes the first step towards formalizing and validating transformations between behavioral modeling languages currently employed in the production domain (e.g., Gantt charts), IML, and PLCopen XML. Having this foundation, we aim at utilizing IML as the semantic domain for the composition of heterogeneous plant behavior models.

Published in: Software
  • Be the first to comment

  • Be the first to like this

Towards the Semantic Integration of Plant Behavior Models with AutomationML’s Intermediate Modeling Layer

  1. 1. Business Informatics Group Institute of Software Technology and Interactive Systems TU Wien Favoritenstraße 9-11/188-3, 1040 Vienna, Austria phone: +43 (1) 58801 - 18804 (secretary), fax: +43 (1) 58801 - 18896 office@big.tuwien.ac.at, www.big.tuwien.ac.at Towards the Semantic Integration of Plant Behavior Models with AutomationML’s Intermediate Modeling Layer Tanja Mayerhofer, Manuel Wimmer, Luca Berardinelli, Emanuel Mätzler Business Informatics Group, TU Wien, Austria Nicole Schmidt Faculty of Mechanical Engineering, Otto-v.-Guericke University Magdeburg, Germany Tanja Mayerhofer
  2. 2.  Multidisciplinary process involving various engineering disciplines  Different disciplines and engineering activities require specialized software tools and produce specific artifacts > Heterogeneous engineering tool landscape  Multi-staged and parallel process  Different engineering activities depend on each other, i.e., require results of other engineering activities > Need for a lossless data exchange  How is the data exchange achieved?  PDFs, printouts, manual transfer > Inefficient and error-prone process leading to substantial costs > Current movements towards smart production aggravate this problem Production Systems Engineering Motivation 2 domain tool artifact Software Engineering Control Engineering Mechanical Engineering Electrical Engineering
  3. 3. Automation Markup Language Motivation  Open, vendor neutral, free XML format for the storage and exchange of plant engineering data  Integrates, extends and adapts existing standard XML data formats  International Electrotechnical Commission (IEC) standard 62714 3 CAEX IEC 62424 Plant topology • Plants • Cells • Components • Attributes • Interfaces • Relations • References Object A Object A1 Object A2 Object An ... COLLADA ISO/PAS 17506:2012 Geometry Kinematics Further XML Standard Format Further engineering data PLCopen XML IEC 61131-10 Behavior Sequencing Init Step 1 End
  4. 4. Plant Behavior Models Motivation PLCopen XML  Standard XML format for exchanging PLC code  Supports all programming languages defined in IEC 61131-3 standard  Structured text, instruction list, ladder diagram, function block diagram, sequential function charts Common Plant Behavior Modeling Languages  AutomationML supports five modeling languages for defining plant behaviors on different levels of abstraction  Abstract process planning: Gantt charts, PERT charts  System behavior design: Impulse diagrams  Detailed component behavior design: Sequential function charts, state charts > Requires translations from/to PLCopen XML 4
  5. 5. Plant Behavior Models Motivation Translations from/to PLCopen XML 5 Tool A Tool B Tool C Gantt Chart PERT Chart Impulse Diagram … Diverse Plant Behavior Modeling Languages PLCopen XML (IEC 61131-10) <SFC> <actionBlock> <action> <addData> <data name=”http:// <AutomationML> <ActionStatus> current </ActionStatus> </AutomationML> </data> </addData> <action> </actionBlock>
  6. 6. Plant Behavior Models Motivation Translations from/to PLCopen XML 6 Tool A Tool B Tool C Gantt Chart PERT Chart Impulse Diagram … Diverse Plant Behavior Modeling Languages Complex transformations PLCopen XML (IEC 61131-10) <SFC> <actionBlock> <action> <addData> <data name=”http:// <AutomationML> <ActionStatus> current </ActionStatus> </AutomationML> </data> </addData> <action> </actionBlock>
  7. 7. Intermediate Modeling Layer Motivation AutomationML introduces Intermediate Modeling Layer (IML)  IML is based on sequential function charts defined by IEC 61131-3 standard  Simplifies transformations from/to PLCopen XML  Decouples PLCopen XML from plant behavior modeling languages  Facilitates extensibility with new plant behavior modeling languages  Enables automated transformations between plant behavior modeling languages 7 Tool A Tool B Tool C Gantt Chart PERT Chart Impulse Diagram … Diverse Plant Behavior Modeling Languages Intermediate Modeling Layer (IML) IML PLCopen XML (IEC 61131-10) <SFC> <actionBlock> <action> <addData> <data name=”http:// <AutomationML> <ActionStatus> current </ActionStatus> </AutomationML> </data> </addData> <action> </actionBlock>
  8. 8. Semi-formal Definition of IML Problem  IML and the transformations from/to IML are only semi-formally defined  Arising Problems:  How to validate that transformations are correct?  How to check semantic preservation?  How to compose heterogeneous models? 8 Tool A Tool B Tool C Gantt Chart PERT Chart Impulse Diagram … Diverse Plant Behavior Modeling Languages Intermediate Modeling Layer (IML) IML PLCopen XML (IEC 61131-10) <SFC> <actionBlock> <action> <addData> <data name=”http:// <AutomationML> <ActionStatus> current </ActionStatus> </AutomationML> </data> </addData> <action> </actionBlock> No formal definitions
  9. 9. IML as Semantic Domain and Integration Layer for Plant Behavior Models Contribution 9 M2M … Model-to-Model Transformation MM … Metamodel OS … Operational Semantics Model Execution Model Simulation Consistency Analysis Refinement Analysis …… Tool A Tool B Tool C Gantt Chart PERT Chart Impulse Diagram … Diverse Plant Behavior Modeling Languages Intermediate Modeling Layer (IML) IML PLCopen XML (IEC 61131-10) <SFC> <actionBlock> <action> <addData> <data name=”http:// <AutomationML> <ActionStatus> current </ActionStatus> </AutomationML> </data> </addData> <action> </actionBlock> M2MM2M Syntax Semantics MM OS
  10. 10. IML as Semantic Domain and Integration Layer for Plant Behavior Models Contribution 10 M2M … Model-to-Model Transformation MM … Metamodel OS … Operational Semantics Model Execution Model Simulation Consistency Analysis Refinement Analysis …… Tool A Tool B Tool C Gantt Chart PERT Chart Impulse Diagram … Diverse Plant Behavior Modeling Languages Intermediate Modeling Layer (IML) IML PLCopen XML (IEC 61131-10) <SFC> <actionBlock> <action> <addData> <data name=”http:// <AutomationML> <ActionStatus> current </ActionStatus> </AutomationML> </data> </addData> <action> </actionBlock> M2MM2M Syntax Semantics MM OS
  11. 11. Metamodel for IML Contribution 11 Comment content : String ElementHeader name : String Variable name : String type : String content : String SIUnit : String initialValue : String address : String SelectionConvergence SelectionDivergence SimultaneousConvergence SimultaneousDivergence members * activities * booleanGuard 0..1 source1target1 comment 0..1 IdentifiableElement IdentifiableElement IdentifiableElement IdentifiableElement Time delay : Real duration : Real time 0..1 Activity name : String start : Real [2] end : Real [2] StateTransition name : String State name : String init : boolean terminal : boolean /target 0..1 IdentifiableElement id : String Connection /source 0..1 ConnectionPoint
  12. 12. IML Model Example 12 InitialStep Stopping BlinkRed MovingForward BlinkGreen Move Stop Repeat SC MoveStepForward Stop
  13. 13. Operational Semantics for IML Contribution 13 IML Operational Semantics IML Abstract Syntax «merge» Header execute() State current : boolean activate() deactivate() executeActivities() /currentStates * ConnectionPoint isEnabled() : boolean fire() Variable value : String Activity execute() current : boolean
  14. 14. Operational Semantics for IML Contribution 14 Comment content : String Element Variable name : String type : String content : String SIUnit : String initialValue : String address : String SelectionConvergence SelectionDivergence SimultaneousConvergence SimultaneousDivergence members * activities * booleanGuard 0..1 source1target1 comment 0..1 IdentifiableElement IdentifiableElement IdentifiableElement IdentifiableElement Time delay : Real duration : Real time 0..1 Activity name : String start : Real [2] end : Real [2] StateTransition name : String State name : String init : boolean terminal : boolean /target 0..1 IdentifiableElement id : String Connection /source 0..1 ConnectionPoint Header name : String execute() current : boolean activate() deactivate() executeActivities() value : String current : boolean execute() isEnabled() fire() /currentStates *
  15. 15. Operational Semantics for IML Contribution 15 Comment content : String Element Variable name : String type : String content : String SIUnit : String initialValue : String address : String SelectionConvergence SelectionDivergence SimultaneousConvergence SimultaneousDivergence members * activities * booleanGuard 0..1 source1target1 comment 0..1 IdentifiableElement IdentifiableElement IdentifiableElement IdentifiableElement Time delay : Real duration : Real time 0..1 Activity name : String start : Real [2] end : Real [2] StateTransition name : String State name : String init : boolean terminal : boolean /target 0..1 IdentifiableElement id : String Connection /source 0..1 ConnectionPoint Header name : String execute() current : boolean activate() deactivate() executeActivities() value : String current : boolean execute() isEnabled() fire() /currentStates * begin initial ← {m ∈ members | m.isTypeOf(State) ∧ m.init} initial.activate() terminate ← false while ¬terminate do foreach s ∈ currentStates do if s.target.isEnabled() then s.target.fire() if ts ∈ {cs ∈ currentStates | cs.terminal} then terminate ← true
  16. 16. Tool Support for IML Contribution  Workbench: GEMOC Studio  http://gemoc.org/studio  Implementation of IML  Abstract syntax: Ecore  Concrete syntax: Sirius  Operational semantics: Kermeta  Code repository: https://github.com/moliz/moliz.gemoc/tree/master/examples/iml 16
  17. 17. Tool Support for IML Contribution 17
  18. 18. Future Work  Refinement of operational semantics defined for IML (e.g., timing aspects, concurrency)  Formalization of model-to-model transformations from/to IML  Integration of heterogeneous plant behavior models via IML and CAEX 18 Model Execution Model Simulation Consistency Analysis Refinement Analysis …… Tool A Tool B Tool C Gantt Chart PERT Chart Impulse Diagram … Diverse Plant Behavior Modeling Languages Intermediate Modeling Layer (IML) IML PLCopen XML (IEC 61131-3) <SFC> <actionBlock> <action> <addData> <data name=”http:// <AutomationML> <ActionStatus> current </ActionStatus> </AutomationML> </data> </addData> <action> </actionBlock> M2MM2M Syntax Semantics MM OS 1 1 2 2 2 3 3
  19. 19. Thank you! Questions? Contact: mayerhofer@big.tuwien.ac.at Material: https://github.com/moliz/moliz.gemoc/tree/master/examples/iml

×