SysML and Modelica: Opportunities for Synergy Chris Paredis, Peter Fritzson, Russell Peak Georgia Institute of Technology Linköping University OMG, Santa.

Slides:



Advertisements
Similar presentations
Integration of MBSE and Virtual Engineering for Detailed Design
Advertisements

Start of presentation Mathematical Modeling of Physical Systems © Prof. Dr. François E. Cellier September 20, 2012 Object Oriented Modeling The aim of.
Peter Fritzson 1 MetaModelica for Meta-Modeling and Model Transformations Peter Fritzson, Adrian Pop, Peter Aronsson OpenModelica Course at INRIA, 2006.
Signals and Systems March 25, Summary thus far: software engineering Focused on abstraction and modularity in software engineering. Topics: procedures,
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
OPENPROD ITEA2 Final Review Meeting EDF - Site de Chatou EADS Innovation Works Wladimir Schamai.
OMG Systems Modeling Language (OMG SysML™) Matthew Hause ARTiSAN Software Tools Some slides reused from the OMG SysML™ Tutorial with permission.
Composition of XML Dialects A ModelicaXML case study Adrian Pop, Ilie Savga, Uwe Aßmann, Peter Fritzson Programming Environments Laboratory Linköping University.
An framework for model-driven product design and development using Modelica Adrian Pop, Olof Johansson, Peter Fritzson Programming Environments Laboratory.
OpenModelica Development Environment with Eclipse Integration Adrian Pop, Peter Fritzson, Andreas Remar, Elmir Jagudin, David Akhvlediani Programming Environment.
SysML: A Modeling Language for Systems of Systems
A Library for Synchronous Control Systems in Modelica Martin Otter Bernhard Thiele Hilding Elmqvist DLR Dassault Systèmes Institute of System Dynamics.
1 MBSE Copyright © Georgia Tech. All Rights Reserved. Model-Based Systems Engineering with SysML: Problem Definition, Simulation and Optimization.
 Simulink in barebones form not-well suited for simulating networks/nodal systems ◦ 1) No sense of bi-directionality ◦ 2) No notion of ‘nodes’ ◦ 3) Energy.
MapleSim and the Advantages of Physical Modeling
Laplace operator ‘s’ Reminder from ENGR201 Know how components behave in an instant of time Consider differential response Combine and simplify into standard.
1 April 2005, Siemens Industrial Turbomachinery AB Copyright © Copyright © 2005 Peter Fritzson Modelica Classes and Inheritance.
MathCore Engineering AB Experts in Modeling & Simulation WTC.
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
Selected Topics in Software Engineering - Distributed Software Development.
Fall 2004EE 3563 Digital Systems Design EE 3563 VHSIC Hardware Description Language  Required Reading: –These Slides –VHDL Tutorial  Very High Speed.
Introduction to VHDL Simulation … Synthesis …. The digital design process… Initial specification Block diagram Final product Circuit equations Logic design.
SIMULINK-Tutorial 1 Class ECES-304 Presented by : Shubham Bhat.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
5-1 Logic System Design I VHDL Design Principles ECGR2181 Reading: Chapter 5.0, 5.1, 5.3 port ( I: in STD_LOGIC_VECTOR (1 to 9); EVEN, ODD: out STD_LOGIC.
VHDL Discussion Subprograms IAY 0600 Digital Systems Design Alexander Sudnitson Tallinn University of Technology 1.
The Laplace Transform.
2000 Research Overview Dr. Kim Mens Programming Technology Lab Vrije Universiteit Brussel.
1 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Model Transformations in Model-Based Systems Engineering Chris Paredis Associate Director Model-Based.
Viewpoint Modeling and Model-Based Media Generation for Systems Engineers Automatic View and Document Generation for Scalable Model- Based Engineering.
SysML-Modelica Transformation Specification (SE DSIG Meeting, Jacksonville, 3/22/2010) Chris Paredis Georgia Tech On behalf of the SysML-Modelica Working.
Systems Realization Laboratory SysML-based Reference Models for Fluid Power Components Chris Paredis, Raphael Kobi Product & Systems Lifecycle Management.
Systems Engineering Concept Model (SECM) OMG Technical Conference 12/10/2015 System Modeling Assessment & Roadmap WG John Watson 1.
SysML Modelica Integration Working Group Report (SE DSIG Meeting, San Antonio, TX, 9/15/2009) Chris Paredis Georgia Tech 1.
UML (Unified Modeling Language)
SysML and Modelica Integration Working Group Meeting 3/11/09 Peter Fritzson Wladimir Schamai.
Systems Modeling Language (SysML). 2 What is SysML? A graphical modeling language in response to UML for Systems Engineering developed by the OMG, INCOSE,
Lecture and laboratory No. 10 Modeling product as system Óbuda University John von Neumann Faculty of Informatics Institute of Applied Mathematics Master.
SysML-Modelica WG Meeting Robot Example Chris Paredis Georgia Tech Update by S. Friedenthal
SysML Modelica Integration Working Group Meeting 8/12/09 Chris Paredis 1.
SysML-Modelica Integration Working Group Report (SE DSIG meeting, Washington DC 3/24/2009) Chris Paredis Georgia Tech 1.
Systems Engineering Concept Model (SECM)
IBM Rational Rhapsody Advanced Systems Training v7.5
UNIT-IV Designing Classes – Access Layer ‐ Object Storage ‐ Object Interoperability.
SysML-Modelica: A Redefinition & Modification Use Case
Dynamic structure modelling for Causal Block Diagrams
Basic Language Concepts
SysML 2.0 Formalism Requirements and Potential Language Architectures
SysML 2.0 Formalism: Requirement Benefits, Use Cases, and Potential Language Architectures Formalism WG December 6, 2016.
SysML v2 Formalism: Requirements & Benefits
Unified Modeling Language
SysML/FMI Etienne BROSSE
Chris Paredis Georgia Tech
J. Michael, M. Shing M. Miklaski, J. Babbitt Naval Postgraduate School
Modeling and Simulation in Engineering using Modelica
Chris Paredis Georgia Tech
Proposed SysML v2 Submission Plan
Extending SysML for Integration with Solver-based Simulation Tools
Structured Modeling of Mechatronic Systems in which you meet the modest but talented multiport component.
Introduction to UML.
VHDL Discussion Subprograms
LECTURE #5 System Modeling& Responses
SysML-based Reference Models for Fluid Power Components
VHDL Discussion Subprograms
On behalf of the SysML-Modelica Working Group
SysML Modelica Integration Working Group Meeting 3/4/09
Copyright © 2015, 2012, 2009 Elsevier Inc. All rights reserved.
Modeling Modelica Interfaces with SysML v1.3
Introduction to Modelica and FMI
Presentation transcript:

SysML and Modelica: Opportunities for Synergy Chris Paredis, Peter Fritzson, Russell Peak Georgia Institute of Technology Linköping University OMG, Santa Clara, December 2008

Intent of Presentation Introduce Modelica to SysML community Propose an effort to explore an integration between Modelica and SysML further: Descriptive Modeling in SysML + Formal Executable Modeling for Analyses and Trade Studies in Modelica 2

Overview Modelica overview What is Modelica? What makes Modelica so appealing? The Modelica Standard Library The OpenModelica Project SysML – Modelica Synergy SysML – Modelica Correspondence Steps Forward Summary Additional References 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 4

Modelica is Object-Oriented model SlidingMass "Sliding mass with inertia" extends Interfaces.Rigid; import SI = Modelica.SIunits; parameter SI.Mass m = 1 "mass o the sliding mass"; SI.Velocity v "absolute velocity of the component"; SI.Acceleration a "absolute acceleration of the component"; equation v = der(s); a = der(v); m*a = flange_a.f + flange_b.f; end SlidingMass; Class consists of declaration + equations Objects are declared as instances of classes Specify the default value for parameters Equations are non-causal Modelica is case sensitive Use dot-notation to refer to object variables

Modelica is Acausal, and Port-based 6 Acausal, equation-based –F = m*a –a = F/m –0 = F – m*a Port-based –Connectors represent energy flow –Undirected connections Semantics of Kirchhoff's laws –E.g., fluid port contains Pressure flow: Mass flow rate Temperature flow: Enthalpy flow rate

Textual and Graphical Views 7 model myCircuit annotation (uses(Modelica(version="2.2.1"))); Modelica.Electrical.Analog.Basic.Ground Ground1 annotation (extent=[-62,-44; -42,-24]); Modelica.Electrical.Analog.Basic.Resistor Resistor1 annotation (extent=[0,-14; 20,6], rotation=270); Modelica.Electrical.Analog.Basic.Capacitor Capacitor1 annotation (extent=[-32,6; -12,26]); Modelica.Electrical.Analog.Sources.ConstantVoltage ConstantVoltage1 annotation (extent=[-62,-14; -42,6], rotation=270); equation connect(ConstantVoltage1.p, Resistor1.p) annotation (points=[-52,-24; -52,-14], style(color=3, rgbcolor={0,0,255})); connect(Resistor1.n, Capacitor1.p) annotation (points=[-52,6;-52,16;-32,16], style(color=3, rgbcolor={0,0,255})); connect(Capacitor1.n, ConstantVoltage1.n) annotation (points=[-12,16; 10,16; 10,6], style(color=3, rgbcolor={0,0,255})); connect(ConstantVoltage1.n, Ground1.p) annotation (points=[10,-14; -52,-14], style(color=3, rgbcolor={0,0,255})); end myCircuit; Annotations for visualization, compilation & simulation Do not affect mathematical model

What Makes Modelica so Appealing?  Symbolic manipulation of equations enables –Causality assignment –Simplification / elimination of algebraic loops –Index reduction –Zero-crossing functions for event detection –Symbolic differentiation for faster root-finding Bottom Line: –Very expressive models –Very efficient simulations 8

Example: Stribeck Friction Hybrid model –DAE + discrete events 5 states: 1.locked 2.startForward 3.forward 4.startBackward 5.Backward Dynamically reverses causality when v=0 Avoids typical stiffness at v=0

The Modelica Standard Library 10 motor torque

The Modelica Standard Library Information about syntax and semantics of Modelica For working with signals & controls: generate waveforms, transfer functions, sampling, logical operators, look-up tables (interpolation) Defines constants: pi, e, G, h, … Motors and generators: DC, (a-)synchronous induction Multiphase power grids, power electronics (thyristors, etc.) Standard Mathematical functions (trig, log, interpolation,…) Mechanical 3D and 1D (for planar motion use 3D) Media = liquids and gasses; no component models Large number of units Simple models for flow of fluids with thermal properties Utilities for printing and file access

Other Modelica Libraries Modelica association — 20+ free libs ( EUROSYSLIB project — 20+ libs under development ( 12

The OpenModelica Project Open source Modelica environment –OMC, The Modelica Compiler/Interpreter –OMShell, The Interactive Session Handler –OMNotebook, DrModelica Simple Electronic notebook –Graphic Model Editor – SimForge (developed by Technical University of Milan) –Modelica Development Tooling (MDT) as Eclipse Plugin –Modelica XML conversion –Debugger for extended subset algorithmic code Supported by the Open Source Modelica Consortium European ITEA2 project OPENPROD –PI: P. Fritzson; 25 Partners; €11M More info: 13

SysML – Modelica Synergies Modelica = state-of-the-art modeling language for system dynamics 1.Complements SysML Parametrics –Very expressive, formal language for differential algebraic equations and discrete events 2.Is (more or less) Compatible with SysML –Object-oriented, port-based 3.Broad Range of (Open Source) Libraries –Addresses need for domain models in SysML 4.Access to Free, Open Source Solvers 14

Overview Modelica overview What is Modelica? What makes Modelica so appealing? The Modelica Standard Library The OpenModelica Project SysML – Modelica Synergy SysML – Modelica Correspondence Steps Forward Summary Additional References 15

SysML – Modelica Correspondence: Model Definitions Modelica Class –Has restricted classes: package, record, function,… –"connector" is crucial Connection –For energy-flow, the connections have the semantics of Kirchhoff's laws Equations and Algorithms –Initial equations and algorithms SysML Block or Constraint Block –Modelica connectors could map to flow ports, or a stereotyped constraint property Stereotyped connector or stereotyped binding connector No formal equivalent  textual constraint 16

SysML – Modelica Correspondence: Model Usage Modelica Component clauses –discrete, constant, parameter  indicates time variance –input, output, flow Arrays Modifiers –Change default values –Redeclare type –Arbitrarily deep in hierarchy Visualization annotations SysML Properties (usages) –No equivalents  new stereotypes? Multiplicities –Not sufficiently expressive Property-specific types –Somewhat vaguely defined –Not (well) supported by tools Fixed visualization 17 NOTE: this is just an illustration – much work remains

Initial Work towards Integration ModelicaML UML profile –Pop, A., and Akhvlediani, D., and Fritzson, P. (2007). "Towards Unified Systems Modeling with the ModelicaML UML Profile." International Workshop on Equation-Based Object-Oriented Languages and Tools. Berlin, Germany, Linköping University Electronic Press. SysML-Modelica profile and mapping –Johnson, T. A., C. J. J. Paredis and R. M. Burkhart (2008). "Integrating Models and Simulations of Continuous Dynamics into SysML." 6th International Modelica Conference, Bielefeld, Germany, March 3-4, Modelica Association, –Tool prototype Automated mapping from SysML (MagicDraw) to Modelica Model transformation with MOFLON Model simulation with Dymola 18

19 Example: Hydraulic Circuit Diagram Pressure-Compensated, Load-Sensing Excavator—ISO 1219 notation

20 SysML Schematic (ibd) — Basic View Pressure-Compensated, Load-Sensing Excavator

21 Hydraulics Subsystem Simulation Model bdd

22 Excavator Case Study Corresponding Modelica Models Multi-Body System Dynamics Model (linkages,...) Hydraulics Model hydraulics world x y Dig Cycle environment p_amb= T_amb=288.15

23 Simulation in Dymola Modelica Lexical Representation (auto-generated from SysML) SimulationResults [Johnson, Masters Thesis]

How to Move Forward from Here? Further develop and refine SysML-Modelica profile and mapping In parallel with other SysML 2.0 efforts Provide input to future SysML 2.0 submissions Team members: Roger Burkhart, Sandy Friedenthal, Peter Fritzson, Chris Paredis, Russell Peak, … 24

Summary Modelica = state-of-the-art modeling language for system dynamics Strong SysML-Modelica synergy –Complements Parametrics –Is (more or less) Compatible with SysML –Broad range of libraries –Access to Free Solvers Good high-level correspondence, but some (minor) differences Team: extensive experience in both Modelica and SysML 25

Additional References Modelica Specification: Fritzson, P. (2004). Principles of Object-Oriented Modeling and Simulation with Modelica 2.1. New York, NY, Wiley- IEEE Press. öAkhvlediani, D. (2006). Design and implementation of a 'UML profile for Modelica'/SysML. M.S. Thesis. Linköping University. LITH-IDA-EX--06/061—SE. Johnson, T. A. (2008). Integrating Models and Simulations of Continuous Dynamic System Behavior into SysML. M.S. Thesis. G.W. Woodruff School of Mechanical Engineering, Georgia Institute of Technology. Atlanta, GA. Peak, R., McGinnis, L., Paredis, C. Integrating System Design with Simulation and Analysis Using SysML – Phase 1 Final Report, (available from 26