SysML SysML-Modelica Modelica

SysML Modelica Integration
Working Group Report
(SE DSIG Meeting, San Antonio, TX, 9/15/2009)
Chris Paredis
Georgia Tech
1
Agenda
•
•
•
•
Introduction
Status update
Path forward: Roadmap
Discussion
2
motor torque
Modelica: Dynamic Systems Modeling
3
WG Focus and Scope
• Objective:
– Leverage the strengths of both SysML and Modelica by
integrating them to create a more expressive and formal
MBSE language.
• Focus:
– Reuse Modelica syntax by integrating Modelica into SysML
as a profile
– Define a formal Transformation Specification
• 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
4
Simple Example
ibd [Block] OscillatorModel[
OscillatorModel ]
fixed1
<
<
M
o
d
e
l
i
c
a
C
o
m
p
o
n
e
n
t
>
>
<<ModelicaPort>>
<
<
M
o
d
e
l
i
c
a
C
<
<
M
o
d
e
l
i
c
a
P
o
n
o
n
r
t
e
>
f
c
t
i
o
l
a
n
>
n
>
f
l
g
e
g
e
:
F
l
a
n
g
e
a
n
g
e
>
a
n
_
b
:
F
l
spring1
fixed1model : Fixed
<
<
SysML Descriptive Model
<
M
o
d
<
e
M
l
o
i
c
<
d
a
<
e
P
M
l
o
i
c
r
o
a
t
d
>
C
f
o
n
n
e
>
e
l
c
f
l
i
c
a
C
a
o
l
n
t
i
a
m
g
o
n
n
p
e
>
g
o
_
:
F
l
a
n
g
e
b
:
F
l
a
n
g
e
>
e
n
a
_
e
n
t
>
Modelica
Model
>
mass1model : Mass
<<ModelicaPort>>
f
l
a
n
g
e
_
a
:
m=1
<<ModelicaPort>>
mass1
<<ModelicaComponent>>
spring1model : Spring
F
l
a
n
g
e
SysML Analytical Model
5
bdd [Package] Components[
ModelOverview ]
<<ModelicaPort>>
flange_a : Flange
<<ModelicaPort>>
flange_b : Flange
<<ModelicaModel>>
ModelicaStandardLibrary::Mechanics::Translational::Interfaces::
PartialCompliant
{s_rel = flange_b.s - flange_a.s;
flange_b.f = f;
flange_a.f = -f;}
<<ModelicaValueProperty>>+s_rel : Distance
<<ModelicaValueProperty>>+f : Force
SysML4Modelica
<<ModelicaPort>>
flange_a : Flange
Formal
mapping
<
M
o
d
e
l
i
c
a
S
t
a
n
d
a
r
d
L
i
b
r
a
<
r
y
M
:
o
:
M
d
e
e
c
l
h
i
c
a
a
n
M
i
o
c
s
d
:
e
:
T
l
r
>
a
>
n
s
l
a
t
i
o
n
a
l
:
:
C
o
m
p
o
n
e
n
t
s
:
:
Spring
{f = c*(s_rel - s_rel0);}
<<ModelicaValueProperty>>+c : TranslationalSpringConstant{variability = parameter}
<<ModelicaValueProperty>>+s_rel0 : Distance{variability = parameter}
<<ModelicaPort>>
flange_a : Flange
Modelica
<<ModelicaPort>>
flange_b : Flange
<<ModelicaExtendsRelation>>
<<ModelicaPort>>
flange_b : Flange
<<ModelicaModel>>
ModelicaStandardLibrary::Mechanics::Translational::Interfaces::
PartialRigid
{flange_a.s = s - L/2;
flange_b.s = s + L/2;}
<<ModelicaValueProperty>>+s : Position
<<ModelicaValueProperty>>+L : Length{variability = parameter}
6
WG Activities
• Weekly conference call
– Wed, 10-11AM Eastern
• Definition of Transformation
Specification
• Reference implementations
• Working meeting on
Thursday
– 8:30 - 12noon
– Andrew Watson
– Specification document
(remaining issues,
responsibilities)
• Current Members
–
–
–
–
–
–
–
–
–
–
–
–
Manas Bajaj
Roger Burkhart
Hans-Peter de Koning
Peter Fritzson
Sandy Friedenthal
Nerijus Jankevicius
Alek Kerzhner
Chris Paredis
Russell Peak
Nicolas Rouquette
Wladimir Schamai
Miyako Wilson
7
Progress Since San Jose
• Mappings for algorithm and equation sections
– Algorithm sections  (opaque) behaviors
– Equation sections  constraints
• Revision of the Mapping Document into a
Transformation Specification:
1.
2.
3.
4.
•
Introduction
SysML profile
Modelica meta-model
Transformation
Note: not limited to Modelica — transformations to
other languages (e.g., SimScape) may be feasible.
8
Roadmap – Past (1)
SysML
SysML-Modelica
Modelica
September 1997
1.0 Specification
1998—2000
1.1—1.4 Specifications
March 2003
SysML RFP
2002—2005
2.0—2.2 Specifications
December 2005
Initial Modelica-SysML
presentation at SE DSIG
(Kobi, Paredis)
September 2006
Types in the
Modelica Language
(Broman, Fritzson, Furic)
July 2006
Adopted Specification
July 2007
Towards Unified Systems Modeling
with the ModelicaML UML Profile
(Pop, Akhvlediani, Fritzson)
9
Roadmap – Past (2)
SysML
SysML-Modelica
September 2007
1.0 Specification
Modelica
September 2007
3.0 Specification
November 2007
Modeling Continuous System Dynamics in
SysML (Johnson, Paredis, Burkhart)
August 2007
INCOSE MBSE Project Phase 1
(Lockheed, Deere, Georgia Tech)
November 2008
1.1 Specification
December 2008
SysML-Modelica Working Group
January 2009
1st Face-to-face meeting
(Fritzson, Schamai, Paredis)
May 2009
3.1 Specification
10
Roadmap – Current Status
SysML
SysML-Modelica
Modelica
March, June 2009
Intermediate Reports to SE DSIG
Summer 2009
TGG implementation
(Kerzhner)
June 2009
ModelicaML
Technical Report
(Schamai)
September 2009
ModelicaML Paper at
Modelica Conference
(Schamai, Fritzson,
Paredis, Pop)
Summer 2009
SysML-Modelica Transformation Specification
TBD 2009
1.2 Specification
ParaMagic implementation with
OpenModelica Solver
Future Modelica
Version ?
Future Directions?
11
Options for Future: SysML – Modelica
Transformation Specification
1. Request for Comments (RFC)
2. Request for Proposals (RFP)
3. SysML v2.0
– Fold SysML-Modelica profile into SysML language
4. Not standardize
Working Group has decided to explore
the RFC option further
12
Request for Comments (RFC): Definition
• Any Contributing, Domain or Platform Member with
technology that:
– is relevant to a current Task Force adoption plan;
– conforms to all applicable OMG Specifications; and
– is available in a commercially-available implementation
may make an unsolicited Submission to the TFC of
the relevant Task Force for presentation to that TF
for consideration through a Request for Comments.
(Section 4.3, OMG Policies and Procedures, v2.8)
13
Request for Comments (RFC): Process
1.
2.
3.
4.
5.
6.
Submit to the TFC of the relevant Task Force an unsolicited
proposal for adoption through RFC
The Task Force which received the proposal may recommend its
issuance by its parent TC as an RFC.
The TC obtains AB approval and may then, by majority vote, cause
OMG to issue the Submission as an RFC.
The comment period opens. Any party (including non-members)
may send comments. Typically lasts 60 days.
TF considers comments and decides, by majority vote, whether to
recommend the Submission to its parent TC for adoption
If the TF recommends adoption, the parent TC shall obtain AB
approval before making a final decision on whether to
recommend the Submission for adoption by the Board of
Directors, using an electronic poll needing a 2/3 majority to pass
14
Request for Comments (RFC): Process
• Possible Timeline
– Finalize Transformation Specification
(December 2009)
– Reference Implementation (January 2010)
– Submit RFC proposal (March 2010 meeting)
– AB approval (June 2010 meeting)
– Comment period (Summer 2010)
– TF approval (September 2010 meeting)
– Submission for adoption (December 2010 meeting)
15
Request for Comments (RFC): Summary
• For non-controversial specifications
• Requires vendor implementation and active user
community
– SysML and Modelica communities are very active
– Initial discussions with tool vendors: NoMagic,
OpenModelica, Dynasim (Dassault Systemes)
• Is faster than the other options
• Would be the (first?) formal definition of an MDA
transformation specification
16
Questions -- Discussion
• Feedback on options?
1.
2.
3.
4.
Request for Comments (RFC)
Request for Proposals (RFP)
SysML v2.0
Not standardize
• Which Task Force?
• Team members?
17
Reminder
• Working meeting on Thursday
– 8:30 - 12noon
– Andrew Watson
– Specification document (remaining issues,
responsibilities)
18