model based robot software developmentrobotics.estec.esa.int/astra/astra2015/presentations...4 robot...

13
Model Based Robot Software Development Jakob Schwendner DFKI Bremen & Universität Bremen Robotics Innovation Center www.dfki.de/robotics [email protected]

Upload: others

Post on 23-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Model Based Robot Software Developmentrobotics.estec.esa.int/ASTRA/Astra2015/Presentations...4 Robot Development - Behaviour • Process should be Structured Reproducible Scalable

Model Based Robot Software Development

Jakob Schwendner DFKI Bremen & Universität Bremen Robotics Innovation Center www.dfki.de/robotics [email protected]

Page 2: Model Based Robot Software Developmentrobotics.estec.esa.int/ASTRA/Astra2015/Presentations...4 Robot Development - Behaviour • Process should be Structured Reproducible Scalable

2

Motivation

• Robot complexity and task complexity is growing

• Costly development • How to handle the

complexity? Modules Models

Schaft Robotics / DARPA

Modules allow reuse – Models say how

Page 3: Model Based Robot Software Developmentrobotics.estec.esa.int/ASTRA/Astra2015/Presentations...4 Robot Development - Behaviour • Process should be Structured Reproducible Scalable

3

Robot Development

• Process should be Structured – development process Reproducible – design & behaviour Scalable – in system and development complexity Dynamic – on-line reconfigurability

• Three different views Behaviour Hardware Software

Page 4: Model Based Robot Software Developmentrobotics.estec.esa.int/ASTRA/Astra2015/Presentations...4 Robot Development - Behaviour • Process should be Structured Reproducible Scalable

4

Robot Development - Behaviour

• Process should be Structured Reproducible Scalable Dynamic

• Three different views Behaviour Hardware Software

CognitionExplanation

ModelsMotivation/Goals

SelectionPolicies

CognitionSensors

SensomotoricActuators

Model Based Framework

Pred

ictio

n

Reactive

Decisions

Beh

avio

ur C

ompl

exity

Page 5: Model Based Robot Software Developmentrobotics.estec.esa.int/ASTRA/Astra2015/Presentations...4 Robot Development - Behaviour • Process should be Structured Reproducible Scalable

5

Robot Development - Hardware

• Process should be Structured Reproducible Scalable Dynamic

• Three different views Behaviour Hardware Software

Components

Modules

Systems

System of Systems

Mixed Teams

Agg

rega

tion

and

Stru

ctur

al C

ompl

exity

Page 6: Model Based Robot Software Developmentrobotics.estec.esa.int/ASTRA/Astra2015/Presentations...4 Robot Development - Behaviour • Process should be Structured Reproducible Scalable

6

Robot Development - Software

• Process should be Structured Reproducible Scalable Dynamic

• Three different views Behaviour Hardware Software

PropertiesComponents

Compositions

Tasks

Execution Units

Network

Runtime Management

Modelling Execution

CPU

CPU

MCU FPGA

Mapping

Alg

orith

mic

Com

plex

ity

Page 7: Model Based Robot Software Developmentrobotics.estec.esa.int/ASTRA/Astra2015/Presentations...4 Robot Development - Behaviour • Process should be Structured Reproducible Scalable

7

Development Relations

Components

Modules

Systems

PropertiesComponents

Compositions

Tasks

System of Systems

Mixed Teams

Execution Units

Network

Runtime Management

Modelling Execution

A) Control / Behaviour B) Hardware

C) Software

Beha

viou

r Com

plex

ity

Aggr

egat

ion

and

Stru

ctur

al C

ompl

exity

CPU

CPU

MCU FPGA

CognitionExplanation

ModelsMotivation/Goals

SelectionPolicies

CognitionSensors

SensomotoricActuators

Model Based Framework

Pred

ictio

n

Reactive

Decisions

Behavior ModelsBehavior ModelsBehavior Models

DROCK

Mapping

Hardware ModelsHardware

ModelsHardware

Models

Page 8: Model Based Robot Software Developmentrobotics.estec.esa.int/ASTRA/Astra2015/Presentations...4 Robot Development - Behaviour • Process should be Structured Reproducible Scalable

8

DROCK Project

• Objectives: Modelling of robotic structure Mapping of tasks onto execution units Execution and monitoring with dynamic reconfiguration Tools to support the development Evaluation of toolset in demo scenario and user study

Goal: Design and implementation of a framework and tools for robot programming.

Page 9: Model Based Robot Software Developmentrobotics.estec.esa.int/ASTRA/Astra2015/Presentations...4 Robot Development - Behaviour • Process should be Structured Reproducible Scalable

9

Challenges

• Modelling Consistent models Practical focus on robotic problems

• Mapping Requires robot specific heuristics Deployment on heterogenous units (CPU, uC, FPGA)

• Execution Monitoring in heterogenous environment Decision on reconfiguration Distributed supervision

Page 10: Model Based Robot Software Developmentrobotics.estec.esa.int/ASTRA/Astra2015/Presentations...4 Robot Development - Behaviour • Process should be Structured Reproducible Scalable

10

Tools

Behaviour

Software

Hardware

Modelling Tools

Modelling Tools

Modelling Tools Mapping Tools

Deployed Binaries

Execution Framework

Behaviour Models

Software Models

Hardware Models

Design Time Run Time

Page 11: Model Based Robot Software Developmentrobotics.estec.esa.int/ASTRA/Astra2015/Presentations...4 Robot Development - Behaviour • Process should be Structured Reproducible Scalable

11

State of the Art • ROS (Robot Operating System)

Implicit component model Low-resistance workflow – ad-hoc development Topic based communication

• Orocos RTT Implicit component model Point to point connections Real-time capable

• GenoM Explicit component model Capable of generating Behaviour Interaction Priority (BIP)

• Rock Explict component and network model Orocos RTT as Middleware Dynamic run-time reconfiguration

Page 12: Model Based Robot Software Developmentrobotics.estec.esa.int/ASTRA/Astra2015/Presentations...4 Robot Development - Behaviour • Process should be Structured Reproducible Scalable

12

Robot Construction Kit (ROCK)

• www.rock-robotics.org • rock.opendfki.de • github

• Development started in 2008 • Running on more than 12 Robots at

DFKI/RIC • In use by ESA ESTEC, Space

Applications, Marum, Geomar, etc. • 199+ library packages (internal +

external) • 136+ component packages • 80 messages / month on rock-

[email protected] • 30 active members on mailing list in

last 6 months

Page 13: Model Based Robot Software Developmentrobotics.estec.esa.int/ASTRA/Astra2015/Presentations...4 Robot Development - Behaviour • Process should be Structured Reproducible Scalable

13

Industrial Applications • Industrial robotics will change • Complex tasks – human shared environments • Model based approach

Robust ► Generic instantiation ► Generic failure handling

Verification ► Component level testing ► Correct by construction ► Model inference

• Industrial Use Space Off-shore Human shared

NASA / JPL

Oceaneering

BMW AG