Separation of Concerns in Component-based Robotics

32 

Loading....

Loading....

Loading....

Loading....

Loading....

Full text

(1)

Separation of Concerns in

Component-based Robotics

Davide Brugali

Università degli Studi di Bergamo, Italy

(2)

Politecnico di Milano, 7-06-2010

Robot Control Architectures

2

• Typical functions implemented in software

– Acquiring and interpreting input from sensors

– Controlling the motion of all moving parts

– Representing the robot’s and environment’s state

– Managing all kinds of resources (power, CPU, memory, devices)

– Planning future activities

– Reacting to unpredictable events

• Typical control paradigms

– Sense  Plan  Act

– Behavior-based control

(3)

Politecnico di Milano, 7-06-2010

Robot Software Architectures

3

• Typical aspects of software architectures

– decomposition of the robot control system into a collection of software components

– encapsulation of functionality and control activities into components

– definition of data flow and control flow among components

• Typical software quality factors – Reusability

– Portability

– Interoperability – Maintainability

(4)

Politecnico di Milano, 7-06-2010

Control vs Software Architecture

W. Li, H. I. Christensen, A. Orebäck, D. Chen,

“An Architecture for Indoor Navigation”, ICRA 2004

(5)

Politecnico di Milano, 7-06-2010

(6)

Politecnico di Milano, 7-06-2010

Control vs Software Architecture

M. Kim, S. Kim, S. Park, M. Choi, M. Kim and H. Gomaa

“Service Robot Software Development with the COMET/UML Method”, IEEE Robotics and Automation Magazine, March 2009

(7)

Politecnico di Milano, 7-06-2010

Control vs Software Architecture

(8)

Politecnico di Milano, 7-06-2010

Control vs Software Architecture

W. Li, H. I. Christensen, A. Orebäck, D. Chen,

“An Architecture for Indoor Navigation”, ICRA 2004

(9)

Politecnico di Milano, 7-06-2010

Control vs Software Architecture

W. Li, H. I. Christensen, A. Orebäck, D. Chen,

“An Architecture for Indoor Navigation”, ICRA 2004

(10)

Politecnico di Milano, 7-06-2010

Control vs Software Architecture

M. Kim, S. Kim, S. Park, M. Choi, M. Kim and H. Gomaa

“Service Robot Software Development with the COMET/UML Method”, IEEE Robotics and Automation Magazine, March 2009

(11)

Politecnico di Milano, 7-06-2010

Control vs Software Architecture

M. Kim, S. Kim, S. Park, M. Choi, M. Kim and H. Gomaa

“Service Robot Software Development with the COMET/UML Method”, IEEE Robotics and Automation Magazine, March 2009

(12)

Politecnico di Milano, 7-06-2010

12

(13)

Politecnico di Milano, 7-06-2010

Control vs Software Architecture

13

(14)

Politecnico di Milano, 7-06-2010

Control vs Software Architecture

14

 The same sensor component is not reusable in two different

robotic systems

 Where is the problem?

 Not in the control architecture

 Both architectures indicate that the sensors supply data

to the control modules

 Not in the software architecture

 The interaction pattern (push / pull) depends on specific

(15)

Politecnico di Milano, 7-06-2010

Separation of concerns

• The implementation of the sensor components mixes two

different aspects:

– The component functionality

– The interaction mechanism

(16)

Politecnico di Milano, 7-06-2010

Separation of concerns

• The implementation of the sensor components mixes two

different aspects:

– The component functionality is stable should be reusable

– The interaction mechanism

(17)

Politecnico di Milano, 7-06-2010

Separation of concerns

• The implementation of the sensor components mixes two

different aspects:

– The component functionality is stable should be reusable

– The interaction mechanism is variable should be flexible

(18)

Politecnico di Milano, 7-06-2010

Separation of Concerns

18 Component Functional Specification Provided Interface Required Interface Contract 1..* 1..* 1..* Component Implementation * 1 * Object 1 * Class 1 * instance Component Extra-Functional Specification Computation Configuration 1..* 1..* Container * 1 * 1 * Resource Service Port System Specification Communication Coordination 1..* 1..* * 1 * System

Connector Connections E2E QoS

1 *

• IEEE RAM Tutorial on Component Based Robotic Engineering

• Part I : December 2009

(19)

Politecnico di Milano, 7-06-2010

Component Interface & Implementation

(20)

Politecnico di Milano, 7-06-2010

Component Interface & Implementation

20

Refactoring aims at restructuring a set of existing software

libraries without affecting their external behavior in order to

harmonize their architecture, data structures, and APIs.

(21)

Politecnico di Milano, 7-06-2010

Refactoring Mobile Manipulation libraries

21

CONFIGURATION C-SPACE

PATH INTERFACES FOR COLLISION DETECTION

(22)

Politecnico di Milano, 7-06-2010

Component Interface & Implementation

(23)

Politecnico di Milano, 7-06-2010

Computation

23 Sequential Components Navigator Service Components Path Planner Collision Checker Configuration Space Cartesian Space Map Updater Resource

(24)

Politecnico di Milano, 7-06-2010

Configuration

24 Sequential Components Navigator Service Components

Path Planner Configuration Space Cartesian Space Map Updater Collision Checker Collision Checker Collision Checker Collision Checker Resource

Manager Container Component Scheduler QoS

(25)

Politecnico di Milano, 7-06-2010

Communication

25 Distributed Middleware Container Path Planner Container Potential Field Navigator Event Manager Obstacle Avoider Event Manager

(26)

Politecnico di Milano, 7-06-2010

Communication

26 Distributed Middleware Container Path Planner Container Motor Driver Navigator Stub Locomotor Scheleton

(27)

Politecnico di Milano, 7-06-2010

Communication

27 Distributed Middleware Container Path Planner Container Motor Driver Navigator Stub Locomotor Scheleton

Assembly

Assembly

(28)

Politecnico di Milano, 7-06-2010

Coordination

28

(29)

Politecnico di Milano, 7-06-2010

Coordination

(30)

Politecnico di Milano, 7-06-2010

BRICS Research Camps on

Mobile Manipulation

Invite best Ph.D. students AND PostDocs from all

over the world

We will provide

− travel grants (1250 EUR for European students, 2000 EUR for international students)

− the latest and coolest pieces of robot hardware in mobile manipulation

− a DVD with best practice software for mobile manipulation

− a fast Internet access

− typical mobile manipulation tasks

We expect in return

− a competitive solution to the given tasks either using the provided or self-developed algorithms for mobile manipulation demonstrated in two competitions on the last day of the research camp

− critical feedback and revisions of the provided hardware and software

(31)

Politecnico di Milano, 7-06-2010

(32)

Thank you for your attention!

32

Davide Brugali

Università degli Studi di Bergamo, Italy

Figure

Updating...

References

Updating...

Related subjects :