COMM
Coupling
Of
Multidisciplinary
Models
Nataliya Mulyar
Laci Posta
1
COMM
Outline
•
•
•
•
•
Introduction: COMM within Bode-RC
Rose-RT
Simulink
Rose-RT and Matlab/Simulink: how to couple?
State-of-affairs in COMM
2
COMM
Boderc Project
Goal:
improve multi-disciplinary system design,
i.e. combining mechanics, electronics and
informatics, such that
• Consequences of design decisions can
be predicted as early as possible
• System-level decisions can be
analyzed
• Trade-offs can be made between
functions, price, performance, etc.
Universiteit Twente
3
COMM
The COMM project
• COMM = Coupling of Multidisciplinary Models
• 9- month duo OOTI final project
• Started on 1st of December 2003
4
COMM
Problem Description
Sequential development long development cycle
Parallel development
lack of communication btw.disciplines
incorrect assumptions
problems during integration
late time-to-market
Possible solution: simulate an embedded system in
its intended environment
5
COMM
COMM Project
Focuses on design of Multidisciplinary Coupling Tool (MCT)
Business Case
The problem of Coupling of models from different disciplines (M, E, I)
Affects
The development of real-time embedded systems
The MCT
Is a tool that couples two tools widely used for
modeling of software and physical components
respectively
That
• Helps to detect potential problems earlier
• Shortens development time (if used properly)
• Provides communication means between multiple
disciplines
6
COMM
Concrete Goals
• Explore possibilities of coupling of tools used in MD
modeling
– Use Rose-RT and Matlab/Simulink as a concrete case for
coupling
• Get better understanding of coupling:
– relation simulation-reality
– the notion of time in multidisciplinary modeling
7
COMM
Simulation
Simulation contains a set of models of one or more
dynamical systems and the interaction between
those systems and their environment (Jim Ledin).
Model is a physical,
mathematical, or other logical
representation of a
system/process.
Simulation advances through time and solves the
equations for all models at each point in time.
8
COMM
Simulation
Two basic representation methods of simulation
models:
The discrete event simulation, where time is
moving forward from one change of state to the
event 1
event 2 event 3
next
t1
t2
t3
The time step simulation, where time is divided
into intervals
t1 t2 t3 t4 …
Time step
9
COMM
Real vs. Simulated
Simulated system environment
Discrete
Rose-RT
SW
model
MCT
Matlab/
Simulink
physical
model
Discrete
and/or
continuous
Hybrid
SW
HW
Target system
Simulate the real-time behavior of the embedded system
10
COMM
Case Study
Motor Control Loop Model
Set-point
generator
Controller
Motor
Encoder
+
Criteria for case-study selection:
1) Low level of model complexity
2) Multidisciplinary aspect: SW + HW components
3) Interaction btw. SW and HW components
11
COMM
Mapping on Tools
Motor Control Loop Model
Set-point
generator
Controller
Motor
Encoder
+
Rose-RT
Matlab/ Simulink
Centralized Software Control
12
COMM
Mapping on Tools
Motor Control Loop Model
Set-point
generator
Rose-RT
Controller
Motor
Encoder
+
Matlab/ Simulink
Distributed Software Control
Decision 1: select Distributed Software Control
13
COMM
Computing resources
1 PC or 2 PC’s?
Rose-RT and
Matlab/
Simulink
Rose-RT
Matlab/
Simulink
Decision 2: use a single PC for simulation
14
COMM
Outline
•
•
•
•
•
Introduction: COMM within Bode-RC
Rose-RT
Simulink
Rose-RT and Matlab/Simulink: how to couple?
State-of-affairs in COMM
15
COMM
What is Rose-RT?
Software development environment for:
• Creating UML models using the elements and diagrams
defined in the UML
• Generating complete code implementations for those models
• Executing, testing and debugging models
Uses the extensibility features of the UML for real-time
reactive system development
16
COMM
Rose-RT from inside
• Stereotypes (special form) of class
– Capsules
• Template of active objects
– Protocols
• Template of ports
Capsule
S1
port
Environment
S2
Ports: created and destroyed along with their capsule
17
COMM
Active objects
Encapsulation
shell
Ports
18
COMM
Capsule: Behavior
• Optional hierarchical state machine (signal handler with
run-to-completion semantics)
transitionS1toS2:
{int x;
x = 0;
p2.send(s1);
p3.send(s2);
…
};
S1
S2
S3
19
COMM
Traffic Lights example
20
COMM
Goal: Understand the notion of time in multidisciplinary modeling
Timing in Rose-RT
21
COMM
Goal: Understand the notion of time in multidisciplinary modeling
Timing in Rose-RT
• Time in Rose-RT is strongly connected with the system clock
• Precision is dependent on the granularity of the OS
• Accuracy is not guaranteed
• Timing in Rose-RT is unpredictable
• Simulation in Rose-RT can be achieved only by step-by-step
execution
22
COMM
Outline
•
•
•
•
•
Introduction: COMM within Bode-RC
Rose-RT
Simulink
Rose-RT and Matlab/Simulink: how to couple?
State-of-affairs in COMM
23
COMM
What is Simulink?
Simulink is a software package for modeling and
simulating dynamic systems
process of computing a system’s
states and outputs over a span of
time, using information provided
by the system’s model
u
(input)
x
(states)
y
(output)
24
COMM
Components of a Simulink model
Continuous blocks respond continuously to changing input.
Discrete blocks respond to changes in input only at
integer multiples of a fixed interval called the block’s
sample time.
u1
(input)
x1
(states)
y1
(output)
u2
(input)
x2
(states)
y2
(output)
25
COMM
Structure of a Simulink model
• A typical Simulink model includes sources, systems and
sinks.
Simulink provides:
•graphical block diagram capability
•drag-and-drop blocks facility
26
COMM
Simulink Environment
The Library Browser displays
a tree-structured view of the
Simulink block libraries
installed on your system.
27
COMM
Motor model
28
COMM
Components of a Simulink model
• Solvers
A program, called ordinary
differential equation (ODE)
solver, updates block inputs and
computes block outputs and
states at intervals from the
simulation start time to the
simulation end time.
You can specify the solver to
use in the model or when
running a simulation.
29
COMM
Goal: Understand the notion of time in multidisciplinary modeling
Timing in Matlab/Simulink
• The simulation time in Matlab/Simulink and real clock are not
the same
The amount of time it takes to run a simulation depends on
- model complexity, computer’s speed, solver’s type, etc.
• Simulation time and real time are not proportional
Simulation time can run faster time acceleration
slower time stretching
• Facilities for scheduling and dealing with concurrency are
not offered
is not suitable for simulation of SW
30
COMM
Goal: Understand the notion of time in multidisciplinary modeling
TrueTime
Real-time kernels and network transmissions can be simulated
• Different processing times, priorities, and arbitrary scheduling
policies in the computer nodes can be specified
• Various network protocols may be evaluated
• By introducing disturbing traffic on the network, the effects of
unpredictability in the network communication can be studied
Limitations
• Code generated by other
applications cannot be directly
used in TrueTime framework
31
COMM
Outline
•
•
•
•
•
Introduction: COMM within Bode-RC
Rose-RT
Simulink
Rose-RT and Matlab/Simulink: how to couple?
State-of-affairs in COMM
32
COMM
Goal: Explore ways of coupling of tools used in MD modeling
Rose-RT and Matlab/Simulink:
How to couple?
Approach 1
Approach 2
MCT
ROSE-RT
MATLAB/
SIMULINK
ROSE-RT
MATLAB/
SIMULINK
Decision 3: select loosely-coupled architecture
33
COMM
Goal: Explore ways of coupling of tools used in MD modeling
Rose-RT and Matlab/Simulink:
Where to place timing?
Timing request
Timing request
Data
MCT
Provide timing
ROSE-RT
Data
Provide timing
MATLAB/
SIMULINK
• Not feasible due to the timing service of Rose-RT
34
COMM
Goal: Explore ways of coupling of tools used in MD modeling
Rose-RT and Matlab/Simulink:
Where to place timing?
Timing request
Data
Timing request
MCT
Provide timing
ROSE-RT
Data
Provide timing
MATLAB/
SIMULINK
• Timing is enforced to both modeling toolsets
• No advantage of Matlab/Simulink timing is taken
35
COMM
Goal: Explore ways of coupling of tools used in MD modeling
Rose-RT and Matlab/Simulink:
Where to place timing?
Timing request
Data
Timing request
MCT
Provide timing
ROSE-RT
Data
Provide timing
MATLAB/
SIMULINK
• Rose-RT timing is not used
• Matlab/Simulink provides a well-defined notion of simulation time
Decision 4: use Matlab/Simulink as a timing provider
36
COMM
Outline
•
•
•
•
•
Introduction: COMM within Bode-RC
Rose-RT
Simulink
Rose-RT and Matlab/Simulink: how to couple?
State-of-affairs in COMM
37
COMM
MCT Design
38
COMM
ToDo
• Rose-RT automated step-by-step execution
changes in RTController needed (complex!)
• Rose-RT timing compatibility with Simulink
replacement of Windows NT Timing Services
• Simulation in intended target environment
durations of execution of Rose-RT functions on a
target OS should be available
39
COMM
Questions
40
© Copyright 2026 Paperzz