Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
20.12.2009 1
Model-Based Systems Engineering
System Modeling, Testing and Simulation with UML/SysML and Modelica
Parham VasaielyDecember 2009
Model-Based Systems Engineering
20.12.2009 2
Table of Contents1. Introduction and Motivation
1.1 The OPENPROD Project1.2 System mdoeling with standardized notations (e.g. UML)1.3 System simulation with Modelica1.4 Integration of UML/SysML and Modelica
2. Project fields2.1 The Modeling Environment2.2 The Simulation Environment2.3 The Test Environment
20.12.2009 3
1. Introduction and Motivation (Systems-Engineering)Problem: Increasing complexity of technical systems
-Increased degree of complexity -> need for mastering complexity by e.g. automation-Increased number of involved technologies-SW and HW development is strongly coupled-Component suppliers are involved in system design-Need for system validation long before first physical prototypes are built
Motivation:-Process efficiency and development time and cost reduction in systems development-Time to market reduction-Ensure quality and maturity of system definition in early development stages
Solutions / Enablers: -Model- Based Systems Engineering can help to improve development process efficiency -System validation and tests by simulation in early development stages
20.12.2009 4
1.1 OPENPROD – Introduction and Goals
Open whole-product model-driven systems development modelling and simulation
Goals:-Holistic whole-product model-driven rapid development and design environment-Including support for product business processes. -Open source tools and components for open reusable solutions.-Standardized model representation of products.
Start: June 2009 End: May 2012
20.12.2009 5
1.1 OPENPROD – Involved Partners
APPEDGEConsulting & Engineering
20.12.2009 6
1.3 System Simulation With Modelica
Published by the Modelica Association (www.modelica.org)Declarative, Object-Oriented and Synchronous Language
-Equations and mathematical functions allow acausal modeling, high level specification, increased correctness
-Equation-based; continuous and discrete equations-Acausal modeling supports better reuse of modeling and design
knowledge than traditional classes
Multi-Domain Modeling-Combines electrical, mechanical, thermodynamic, hydraulic,
Biomechanik , control, event, real-time, etc...
Efficient, Non-Proprietary-Efficiency comparable to C; advanced equation compilation, e.g. 300 000
equations, ~150 000 lines on standard PC
20.12.2009 7
1.2 Need for Standardized Model Representations
Challenge à Many domain-specific graphical notations
20.12.2009 8
1.2 Need for Standardized Model Representations
Solution à Standardized notations for systems modeling
BranchA
CompanyA
SystemModel
ComponentSupplier
BranchB
BranchA
BranchB
Customer
20.12.2009 9
1.2 OMG SysML
Graphical modeling language to…Specify… Analyze… Design… Check…
Systems and single System components
U M L 2
S y s M L
S y sM L e x te n sio n s to
U M L
OMG Systems Modeling Language
20.12.2009 10
1.2 OMG SysML to Modelica Code Transformation
Tank«block»
Attributes«variable» area:double=0.5«variable» flowGain:double=0.05«variable» minV:double=0«variable» maxV:double=10«variable» h:double=0.0
qOut:LiquidFlowqIn:LiquidFlow
tSensor:ReadSignal tActuator:ActSignal
within TwoTanks;block Tank
ReadSignal tSensor;ActSignal tActuator;LiquidFlow qIn;LiquidFlow qOut;parameter Real area (unit = "m2") = 0.5;parameter Real flowGain (unit = "m2/s") = 0.05;Real h (start = 0.0, unit = "m");
end Tank;
<<block>>Tank à Tank.mo (Modelica)
20.12.2009 11
1.5 Integration of UML/SysML and Modelica
Generated Modelica Code
System Simulation
System Modeling with UML/SysML/ModelicaML
Putting together UML/SysML and Modelica gives a powerful combination for modelling and simulation of complex systems at any stage of system development.
20.12.2009 12
2. Project Fields
Developing the following environments as Eclipse plug-ins
Eclipse 3.x
MDT
Modeling
Plugin (e.g. Papyrus)
Test
Plugin (e.g. U2TP)
Simulation
Plugin
Open Modelica
GML (SysML,
ModelicaML)
Our fields
20.12.2009 13
2.1 The Modeling Environment
System Structure, Behavior, Requirements
20.12.2009 14
2.2 The Simulation Environment
Why is Simulation important?
-First virtual Prototype-Supports Communication between Developer and Customer-Basic unit for dynamic system tests-Interactive system tests
20.12.2009 15
2.2 Simulation Environment Example
Non-/Interactive Simulation
InteractiveSimulationRuntime
Simulation Center
Sim.Control
create
Comm.
OMC
OMI
Non-InteractiveSim-Runtime
create
MDT Plugin
Comm.
Simulation Plugin
ModelicaFiles (*.mo)
SimulationResults
20.12.2009 16
2.2 Interactive Simulation Runtime Example Implementation
C o n tr olCa lcul atio n
Tra nsfe r
G lo b alD ata
Si m u latio nCo ntro l
Si m u latio nDa taF lo w
R esu lt M a na g er
Or ig. O M com po ne n ts
O M S er v ice Inte rface
O p en Mo del ica In te ra ctive (As Se rve r/S erv ice )
In te ra ctive G U I (As C lien t)
S imu la tion Un its Co m m un ica tion Un its
O M I S ubsy stem (new ) O M S u bs ys tem (o ld)
20.12.2009 17
2.2 Simulation Visualization Exmample
Tank 1 Tank 2
Liquid Source
MaxLevel
Level h
Level h
PlotView
RequirementsEvaluation View
Domain-Specific
Visualization View
20.12.2009 18
2.2 Test Environment - Needs
As an addition to the OPENPROD
Why is Testing important?
-Searching for a failure caused byfails
-Imporve Quality-Verifikation and Validation
20.12.2009 19
2.2 Model Based System Dynamics Testing
Model Based: Formal modeling of informal text based requirements
- Activity Diagram, Sequence Diagram, State Machines…- Visuelle Kontrakte
Dynamic: Using simulation
Die höhe des Tank A soll nicht über 10 m sein, um ein überlaufen des Tankes zu vermeiden. Falls der sperrmechanismus des Controllers B dennoch nicht greift soll ab 10% der max höheder Ablauf C mit hilfe des Ventils D das Wasser abfließen lassen
Max_höhe_Tank_A
Id: 001Beschreibung: Die höhedes Tank A soll nicht über 10 m sein, um ein überlaufen des Tankes zu vermeiden.
20.12.2009 20
2.2 Test Automation
1. Test Case generation
FunctionalSpecification
ActivityDiagramSequence
DiagramStateMachines
2. Test Coverage
3. Test Execution
Model Requirement
Informal Formal Using UML 2 TP
Functional TestCase
20.12.2009 21
References• Sanford Friedenthal, Alan Moore and Rick Steiner, Practical Guide to SysML, 2008• Fritzson Peter. Principles of Object-Oriented Modeling and Simulation with Modelica 2.1,
2004• Modelica Association. Modelica: A Unified Object-Oriented Language for Physical
Systems Modeling: Language Specification Version 3.0, Sept 2007. www.modelica.org• OMG. OMG Unified Modeling Language TM (OMG UML). Version 2.2, February 2009.• OMG. OMG Systems Modeling Language (OMG SysML™), Version 1.1, November
2008.• OMG. OMG UML 2 Testing Profile (U2TP), Version 1.0, July 2007• Acceleo, Eclipse Plug-In. www.acceleo.org/pages/home/en• Papyrus UML, www.papyrusuml.org• Schamai.W, ModelicaML - UML Profile for Modelica, Technical Report
http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-20553• OPENPROD ITEA2 Project Spec 2009 (Non public version)• Robert V. Binder. Testing Object-Oriented Systems, Addison-Wesley, 2000.