Upload
cael
View
115
Download
0
Tags:
Embed Size (px)
DESCRIPTION
SysML-Modelica Transformation Specification (SE DSIG Meeting, Jacksonville, 3/22/2010). Chris Paredis Georgia Tech On behalf of the SysML-Modelica Working Group. Presentation Overview. Objectives, Focus, Scope What is Modelica? Transformation Roadmap Current Status - PowerPoint PPT Presentation
Citation preview
SysML-Modelica Transformation Specification
(SE DSIG Meeting, Jacksonville, 3/22/2010)
Chris ParedisGeorgia Tech
On behalf of the SysML-Modelica Working Group1
Presentation Overview
• Objectives, Focus, Scope• What is Modelica?• Transformation
Roadmap• Current Status• Details of Specification• Implementation: Demo• Summary
2
Active Working GroupMembers
• Yves Bernard (EADS)• Roger Burkhart (Deere & Co)• Hans-Peter De Koning (ESA)• Sandy Friedenthal (Lockheed Martin)• Peter Fritzson (Linköping University)• Nerijus Jankevicius (NoMagic)• Alek Kerzhner (Georgia Tech)• Chris Paredis (Georgia Tech)• Axel Reichwein (Georgia Tech)• Nicolas Rouquette (JPL)• Wladimir Schamai (EADS)
Working Group Focus and Scope• Objective:
– Leverage the strengths of both SysML and Modelica by integrating them to create a more expressive and formal MBSE language.
– Define a formal Transformation Specification: a SysML4Modelica profile and a mapping between Modelica and the profile
• Scope:– Cover the Modelica constructs needed for the Modelica
Standard Library to be used in SysML– Generate corresponding SysML constructs that fit within the
profiling mechanism
3
What is Modelica?• State-of-the-art Modeling Language
for System Dynamics– Differential Algebraic Equations (DAE)– Discrete Events
• Formal, object-oriented language• Ports represent energy flow (undirected) or
signal flow (directed)• Acausal, equation-based, declarative• Multi-domain modeling• Standardized by the Modelica Association
4
Modelica: Standard Library
5
mot
or to
rque
Other Modelica Libraries• Modelica association — 20+ free libs (www.modelica.org)• EUROSYSLIB project — 20+ libs under development
(http://www.itea2.org/public/project_leaflets/EUROSYSLIB_profile_oct-07.pdf)
6
Roadmap – FutureSysML SysML-Modelica Modelica
December, 2009Initial Draft of Transformation Specification
January 2010Open Source Reference implementations
March June, 2010Submit RFC proposal, AB Approval
March-June June-September 2010Comment period
June September 2010 meetingTF approval
September December 2010 meetingSubmission for adoption
7
Current Status
• Draft of Transformation Specification Part I — Introduction final editing Part II — SysML4Modelica profile final editing Part III — Modelica meta-model final editing Part IV — SysML-Modelica mapping
a bidirectional mapping between the SysML4Modelica profile and the Modelica meta-model
ongoing implementation, verification Annex A – Robotic Sample Problemto be completed
8
Organization of Transformation
9
SysML-Modelica Transformation follows MDA principles
(ormsc/09-02-01: MDA Foundation Model - Santa Clara AB initial comments draft http://www.omg.org/members/cgi-bin/doc?ormsc/09-02-01.pdf)
Presentation Overview• Objectives, Focus, Scope• What is Modelica?• Transformation Roadmap• Current Status• Details of Specification
– Classes, Components, Equations, Connections• Implementation: Demo• Summary
10
Two-Tank Example
• Maintain levels at 0.25m and 0.4m• Source produces 0.02 m3/s,
increasing to 0.06 m3/s at time=150s
(From: Peter Fritzson, Principles of Object-Oriented Modeling and Simulation with Modelica 2.1, Wiley-IEEE Computer Society Press, 2003. ) 11
sour...
tank1 tank2piCo... piCo...
Two-Tank Example – Dynamics
12
0 100 200 300 400 500
0.0
0.2
0.4
0.6
0.8
1.0 [m
]
tank1.h tank2.h
0 100 200 300 400 5000.0150.0200.0250.0300.0350.0400.0450.0500.0550.0600.065
[m3/
s]
source.qOut.lflow
Modelica Restricted Classes
13
Modelica Restricted Classes
14
Modelica Restricted Classes —SysML4Modelica Stereotypes
15
ModelicaPredefinedTypes
16
Modelica Components = Properties• No distinction between types of properties
– record, type «modelicaValueProperty»– connector «modelicaPort»– model, class, block «modelicaPart»– function,
package no usage,only definition
17
control
Modelica Components = Properties
18
control
Modelica Components = PropertiesSysML4Modelica Stereotypes
19
• Several of these attributes are captured as opaque Modelica expressions
Modelica Components = PropertiesSysML4Modelica Stereotypes
• Several of these attributes are captured as opaque Modelica expressions
20
Local Type Modifications
21
Local Type Modifications
22
Modelica Equations/Algorithms
• Equations– Declarative– Must hold at all times
• Algorithms– Imperative– Must hold at all times– Execute in zero
simulation time23
Modelica Equations/Algorithms —SysML4Modelica Stereotypes
24
Modelica Connections
25
Modelica Connections• Alternative:
Leave connect statements in equation section
26
Modelica Connections
• parameter N is only known at compilation time
27
R=R
resistor1
L=L
inductor1
R=R
resistor2
L=L
inductor2
C=C
capacitor1
G=G
conductor1
C=C
capacitor2
G=G
conductor2
R=R
resistor3
L=L
inductor3
O-Line
Modelica Simulation
• May need to specify additional information:– Solver algorithm– Accuracy
28
Tough Issues
• Typing– Structural vs. nominal typing
• Local type modifications– Requires reification– Used extensively — no “instances” in Modelica
• Expressions– Opaque
29
Presentation Overview• Objectives, Focus, Scope• What is Modelica?• Transformation Roadmap• Current Status• Details of Specification
– Classes, Components, Equations, Connections• Implementation: Demo• Summary
30
Implementation Target 1
31
OpenModelicaCompiler
MOFLON TGG
MOFLONgenerated
Java
hand-codedJava
MagicDraw
Implementation Target 2
32
OpenModelicaCompiler
QVT
Eclipse
hand-codedJava
MagicDraw /Papyrus
Implementation 3
33
OpenModelicaCompiler
Eclipse
hand-codedJava
Papyrus
Acceleo
SysML4Modelica in Context
34SysML4ModelicaAnalytical Model
SysMLDescriptive Model
SysML4Modelica in Context
35
mas
s1
m=1
sprin
g1
fixed1
ModelicaModel
SysML4ModelicaAnalytical Model
SysML Descriptive Modelin Analysis Context
Current Status
• Draft of Transformation Specification Part I — Introduction final editing Part II — SysML4Modelica profile final editing Part III — Modelica meta-model final editing Part IV — SysML-Modelica mapping
a bidirectional mapping between the SysML4Modelica profile and the Modelica meta-model
ongoing implementation, verification Annex A – Robotic Sample Problemto be completed
36
Next Steps
• Complete Reference Implementation– Are the vendors willing to help?
• Final editing + Robot example– Working session on Thursday 9-5 in City Terrace 9
• Review of Spec Document• Workflow for how to use SysML4Modelica
• Submission of RFC– Letters of Intent 37
Discussion?
38