Integrated Software Development for Embedded Robotic...
Transcript of Integrated Software Development for Embedded Robotic...
Integrated Software Development for Embedded Robotic Systems
Sebastian Wätzoldt, Stefan Neumann,
Falk Benke, Holger Giese
System Analysis and Modeling Group
Introduction
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 2
Introduction
We contribute:
■ Applied, adapted and evaluated an existing development
methodology for the robotic system application domain
■ evaluated and adapted the combination soft and hard real-time at
the application/component level using a MDE approach
An Methodology for robotic system should support:
■ Different development activities
□ Modeling, simulation, verification/ testing
■ Different Stages
□ Simulation, Prototyping, (Pre-)production
■ Supported tools
■ Supported libraries
■ Integrated toolchain
■ Reflect hard and soft real-time constraints
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 3
Evaluation Scenario
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 4
Stock
Delivery Area
(ASD)
25 qm
Packaging Area
(AP)
50 qm
RP
Sorting Area
(AS)
32 qmRS
RSt
Stock (St)
Packaging
Room
Sorting
Room
Stock
Room
Delivery
Room
Door
Puck
Puck
Dispenser
Charging
Point
Ch
arg
ing
Po
int
Band-
Conveyor
Control
Unit
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 5
Evaluation Scenario (2)
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 6
Evaluation Scenario (3)
Methodology
MT = model test
MiL = model-in-the-loop
RP = rapid prototyping
SiL = software-in-the-loop
HiL = hardware-in-the-loop
ST = system test
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 7
MT/MiL
RP
SiL
HiL
ST
Simulation
stage
Prototyping
stage
Pre-production
stage
[Broekman2003]
Broekman, B. and Notenboom, E.:
Testing Embedded Software,
Wesley, 2003.
Simulation Stage
■ Focus model development
□ Functional development
□ Overall proof of the control
laws
■ Ignore or simplify
□ Real sensor values
□ Specific communication
interaction and messages
□ Sensor noise
□ Timing/ memory/ computation
constraints
□ Scheduling
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 8
MT/MiL
RP
+Extensions
Stock
Delivery Area
(ASD)
25 qm
Packaging Area
(AP)
50 qm
RPSorting Area
(AS)
79 qm
Stock (St)
Packaging
Room
Sorting
Room
Stock
Room
Delivery
Room
Charging
Point
Ch
arg
ing
Po
int
Band-
Conveyor
Control
Unit
A B
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 9
MT/MiL
RP
Simulation Stage
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 10
MT/MiL
RP
Simulation Stage
Verification: Model Testing (MT)
■ one-way / one-shot simulation
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 11
MT/MiL
RP
Simulation Stage
Verification: model-in-the-loop (MiL) simulation
■ Simulation using feedback loops
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 12
MT/MiL
RP
Simulation Stage
Verification: model-in-the-loop (MiL) simulation
■ Simulation using feedback loops
■ Simulate using the real robot
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 13
MT/MiL
RP
Simulation Stage
■ Focus changes from model to
implementation
□ Individual function
□ System architecture
■ Discretization effects become
visible
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 14
MT/MiL
RP
SiL
HiL
ST
Simulation
stage
Prototyping
stage
Pre-production
stage
Prototyping Stage
Prototyping Stage
■ Software-in-the-loop simulation
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 15
SiL
■ code generation capabilities of MDE
■ Hand coded implementation
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 16
SiL
Code
Generation
Prototyping Stage
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 17
SiL
■ Define components
□ Communication mechanisms, port types
□ Messages, interfaces and data types
Prototyping Stage
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 18
SiL
■ Map functionality
□ using existing models
□ Custom implementation files
Prototyping Stage
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 19
SiL
■ Define:
□ overall architecture
□ Task specification
□ hardware configuration
Prototyping Stage
Real-Time Consideration
■ Consider real-time constraints
□ E.g. to guarantee safety
constraints
■ Combination of hard and soft real-
time at functional as well as
architectural level
■ difference to the automotive
domain is stronger coupling in
robotics
■ Our Approach:
□ Preserves hard real-time
constraints for basic functions
□ Communication between hard
and soft real-time ensures
consistent data exchange
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 20
MT/MiL
RP
SiL
HiL
ST
Simulation
stage
Prototyping
stage
Pre-production
stage
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 21
MT/MiL
RP
SiL
HiL
ST
Simulation
stage
Prototyping
stage
Pre-production
stage
Real-Time Consideration
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 22
MT/MiL
RP
SiL
HiL
ST
Simulation
stage
Prototyping
stage
Pre-production
stage
Task description:
Task 1
Task n
…
Task 1
Task n
…
hard real-time soft real-time
Real-Time Consideration
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 23
MT/MiL
RP
SiL
HiL
ST
Simulation
stage
Prototyping
stage
Pre-production
stage
Task description:
Task 1
Task n
…
Task 1
Task n
…
hard real-time soft real-time
High priority
Low priority
■ Preserves hard real-time
constraints for basic functions
Real-Time Consideration
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 24
MT/MiL
RP
SiL
HiL
ST
Simulation
stage
Prototyping
stage
Pre-production
stage
Task description:
Task 1
Task n
…
Task 1
Task n
…
hard real-time soft real-time
trigger via
data event
report
results
■ Communication between hard and
soft real-time ensures consistent
data exchange
Real-Time Consideration
Pre-production Stage
■ Simulate overall architecture
■ Build real system and execute on
real hardware
□ No simulation semantic
□ Hard real-time execution
possible
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 25
MT/MiL
RP
SiL
HiL
ST
Simulation
stage
Prototyping
stage
Pre-production
stage
Summary
■ Methodology
□ Guidance due different focus in
stages following MDE approach
□ Tool and library integration
□ Verification, simulation, testing
support
□ Hard and soft real-time
consideration
Sebastian Wätzoldt | 08th November 2012 | SIMPAR 26
MT/MiL
RP
SiL
HiL
ST
Simulation
stage
Prototyping
stage
Pre-production
stage