Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard...

62
Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA Rennes

Transcript of Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard...

Page 1: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

Enchaînement de tâches robotiques

Tasks sequencing for sensor-based control

Nicolas Mansard

Supervised by Francois Chaumette

Équipe Lagadic

IRISA / INRIA Rennes

Page 2: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

2

ContextSensor-based

controlMotion planning Control

architecture

initial

desired

Execution controller

Path deform.

Traj. planning

?

?

Path deformation

Dynamic planning

Motors Sensors

Motion planning

Execution level

Symbolic high-level controller

Data extraction

Motion prediction

Complete solutionGlobal convergence

Required knowledgeLack of reactivity

AccuracyReactivityRobustness

Local convergence

Realistic solution

Complex softwareInherent problems due to

the path planning

Page 3: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

Improve the expressivity of the sensor-based control methods

Less planning – More freedom

Page 4: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

4

Task sequencing for sensor-based control

GLOBAL TASK

CONSTRAINTS Centering

Zoom

Perspective

Z-rotation

Stack of Tasks

TASK-LEVEL CONTROLLER

add

removeswap

Page 5: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

5

Task sequencing for sensor-based control

Example

Centering

Zoom

Perspective

Z-rotation

Stack of Tasks

CONSTRAINTS

Page 6: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

6

Task sequencing for sensor-based control

CONSTRAINTS

Centering

Zoom

Perspective

Z-rotation

Stack of Tasks

TASK-LEVEL CONTROLLER

add

removeswap

Page 7: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

7

Outline

Credo

Low Level Stack of tasks Improvements

High Level Task-level controller Applications

Page 8: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

8

Sensor

4

12

3

4

1 2

3

What is a task?

Robot position: Robot control input:

An error between current and desired sensor values

A reference behavior of the error

The associated Jacobian matrix

Classical control law

[Samson91],[Espiau91]

Sensor

- +

Page 9: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

9

Stack of task

Principles Compute the control law from several (sub-) tasks

Ensure a hierarchy For avoiding any conflicts is perfectly realized is realized under the condition is realized is realized under the condition , … and are realized

Take into account additional constraints As a lowest-priority task Using the potential field formalism

Ensure the continuity at task changes

Page 10: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

10

z can be used to vary the trajectory (obstacle avoidance)

Stack of task

Redundancy formalism

P

We will use z to realize at best the second elementary task

[Rosen60],[Liegeois77]

Page 11: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

11

Two recursive equations to stack several tasks

Continuity at stack change

e1

ei-1

ei

STACK

en

Stack of task

Priority and continuity

[Chiaverini97]

[Robea-Egocentre04]

Page 12: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

12

Gradient Projection Method Potential function : 0 far from the obstacle

Maximal when the robot reaches the obstacle Gradient as a repulsive force Projection onto the remaining DOFs

Application to joint limits avoidance

Stack of task

Considering the constraints[Liegeois77],[Marchand98]

[Khatib87]

Page 13: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

13

Outline

Credo

Low Level Stack of tasks Improvements

Directional redundancy Varying-feature-set tasks

High Level Task-level controller Applications

Page 14: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

14

Directional redundancy

Page 15: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

15

Directional redundancy

Page 16: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

16

Directional redundancy

Comparison

Classical redundancy Directional redundancy

Additional DOF

Page 17: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

17

Varying-feature-set task

Final goal: Introduce the constraint IN the stack

Joint limits

JLmaxJLmin

Page 18: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

18

Varying-feature-set task

+

=

Positioning

Joint limits

Control law

CONTINU

Positioning

Joint limits

STACK

Page 19: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

19

Varying-feature-set task

+

=

Joint limits

Positioning

Control law

DISCONTINUOUSPositioning

Joint limits

STACK

Page 20: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

20

Varying-feature-set task

+

=

Joint limits

Positioning

Control law

Positioning

Joint limits

STACK

OSCILLATIONS

Page 21: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

21

Varying-feature-set task

Definition of a task: Error vector Activation matrix

Definition of a new inverse operator

Inverse of J activated by H: Associated projector:

Secondary task alone

Joint limits + secondary task

Joint limits alone

Page 22: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

22

Low level

Stack of tasks Control from several tasks + constraints Continuity at stack change Define some functionality for high-level control

Directional redundancy Enlargement of the main-task free space

Varying-feature-set task Enlargement of the expressivity

LOCAL CONVERGENCE

Page 23: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

23

Task sequencing for sensor-based control

CONSTRAINTS

Centering

Zoom

Perspective

Z-rotation

Stack of Tasks

TASK-LEVEL CONTROLLER

add

removeswap

Page 24: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

24

Outline

Credo

Low Level Stack of tasks Improvements

High Level Task-level controller Applications

Page 25: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

25

Higher Level Controllers

Stack controller

Joint-limit controller

Obstacle controller

Occlusion controller

CO

LLIS

ION

PR

ED

ICT

ED

?

Remove a task

e1

ei-1

ei

STACK

en

constraints

Page 26: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

26

Higher Level Controllers

Examples

REMOVE

JOINT-LIMIT COLLISION?

Page 27: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

27

Higher Level Controllers

Push-back controller

Joint-limit controller

Obstacle controller

Occlusion controller

CO

LLIS

ION

PR

ED

ICT

ED

?

Push-back controller

OB

ST

AC

LE

AV

OID

ED

?

Add a removed taskRemove a task

e1

ei-1

ei

STACK

en

constraints

Page 28: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

28

Higher Level Controllers

Examples

PUSH-BACK

JOINT-LIMIT AVOIDED?

initial

final

Page 29: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

29

Higher Level Controllers

Look-ahead controller

Joint-limit controller

Obstacle controller

Occlusion controller

CO

LLIS

ION

PR

ED

ICT

ED

?

Push-back controller

OB

ST

AC

LE

AV

OID

ED

?

Look-ahead controller

LO

CA

L M

INM

A?

D

EA

D L

OC

K?

Add a specific task

Add a removed taskRemove a task

e1

ei-1

ei

STACK

en

constraints

Page 30: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

30

Higher Level Controllers

Examples

Desired position

REMOVE

PUSHBACKRECONFIGURE

PUSHBACK

Page 31: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

31

Global task Positioning (6 DOF)

Define a set of tasks Tasks to be realized

Centering Zoom Rotation Perspective

Constraints to be respected Joint limits Occlusion Obstacles

High level controller Constraint controller Push-back controller Reconfiguration controller

Applications Afma6 manipulator robot

Page 32: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

32

Centering

Zoom

Perspective

Z-rotation

Stack of Tasks

CONSTRAINTS

Page 33: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

33

Centering

Zoom

Perspective

Z-rotation

Stack of Tasks

CONSTRAINTS

Page 34: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

34

Applications Non-holonomic robot

Page 35: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

35

Applications Non-holonomic robot

Depending from controller state+1,-1

-1,+1

+1,+1

-1,-1

[Promete94]

Page 36: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

36

Global task Positioning (no obstacles)

Define a set of tasks Tasks to be realized

Positioning: second order approximation Positioning toward a virtual position

High level controller Virtual goal controller

Applications Non holonomic robot

Page 37: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

37

Applications Non-holonomic robot

Page 38: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

38

Applications Humanoid robot

Application of the previous work Catching a ball while walking

Define a set of tasks

Page 39: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

39

Applications Humanoid robot

Global task Catching a ball while walking

Define a set of tasks Tasks to be realized

Centering Grasping Walking

Constraints to be respected Joint limits Arm manipulability Chest (immobile)

Page 40: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

40

Applications Humanoid robot

Task centering:

Input dim=2

Output dim = 10

Rank = 2

Application of the previous work Catching a ball while walking

Define a set of tasks Tasks to be realized

Centering Grasping Walking

Constraints to be respected Joint limits Arm manipulability Chest (immobile)

Page 41: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

41

Applications Humanoid robot

Task grasping:

Input dim=3

Output dim = 14

Rank = 3

Application of the previous work Catching a ball while walking

Define a set of tasks Tasks to be realized

Centering Grasping Walking

Constraints to be respected Joint limits Arm manipulability Chest (immobile)

Page 42: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

42

Applications Humanoid robot

Subtask distance:

Input dim=1

Output dim = 14

Rank = 1

Subtask orientation:

Input dim=2

Output dim = 14

Rank = 2

divideTask grasping:

Input dim=3

Output dim = 14

Rank = 3

Application of the previous work Catching a ball while walking

Define a set of tasks Tasks to be realized

Centering Grasping Walking

Constraints to be respected Joint limits Arm manipulability Chest (immobile)

Page 43: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

43

Applications Humanoid robot

Task walking:

Input dim=12

Output dim = 12

Rank = 12

Application of the previous work Catching a ball while walking

Define a set of tasks Tasks to be realized

Centering Grasping Walking

Constraints to be respected Joint limits Arm manipulability Chest (immobile)

Page 44: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

44

Applications Humanoid robot

Constraint Joint Limits:

Input dim=28 → 14

Output dim = 14

Rank = 0 to 14

Application of the previous work Catching a ball while walking

Define a set of tasks Tasks to be realized

Centering Grasping Walking

Constraints to be respected Joint limits Arm manipulability Chest (immobile)

Page 45: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

45

Applications Humanoid robot

Constraint Manipulability:

Input dim = 6

Output dim = 6

Rank = 1

Application of the previous work Catching a ball while walking

Define a set of tasks Tasks to be realized

Centering Grasping Walking

Constraints to be respected Joint limits Arm manipulability Chest (immobile)

Page 46: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

46

Applications Humanoid robot

Constraint Chest:

Input dim = 2

Output dim = 2

Rank = 2

Application of the previous work Catching a ball while walking

Define a set of tasks Tasks to be realized

Centering Grasping Walking

Constraints to be respected Joint limits Arm manipulability Chest (immobile)

Page 47: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

47

Applications Humanoid robot

Application of the previous work Catching a ball while walking

Define a set of tasks Tasks to be realized

Centering Grasping Walking

Constraints to be respected Joint limits Arm manipulability Chest (immobile)

High level controller Joint-limits control Reachability control

Page 48: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

48

Page 49: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

49

Conclusion

Low level Stack of task: a new tool for task-level control Directional redundancy Varying-feature-set task

High level Task-level controllers to ensure multiple constraints during the displacement Application for humanoid robotic An alternative to path planning?

Page 50: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

50

Perspectives

Multiple short-term perspective Application for multi sensors Integration of the varying-feature-set control laws

Non-holonomic robots control

Generalization of the method for humanoid robot

Integration of the path planning solutions

Learning by imitation

Page 51: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

Merci à …

Many thanks to …

Page 52: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

Appendix 1

State of the Art

Page 53: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

53

Appendix 1

State of art Sensor-based control + constraints

Singularity [Nelson95], joint limits [Chan95] Redundancy formalism [Liegeois77],[Hanafusa84], [Siciliano91], [Samson91]

Switching control law Visual servoing 2D / 3D [Gans03] Positioning / Visibility [Chesi03] Positioning / Obstacle avoidance [Soueres03, Folio06]

Ad-hoc sequencing [Peterson01] [Chiaverini05]

High-level control Behavior control [Brooks87],[Mataharic01] Humanoid task-level control

Page 54: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

Appendix 2

Calibration-robust Stack of Tasks

Page 55: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

55

1. Centering

2. Rotation

Appendix 2

Calibration-robust Stack of Tasks

Page 56: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

56robust not robust

Centering not respected

1. Centering

2. Rotation

Appendix 2

Calibration-robust Stack of Tasks

Page 57: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

57

The redundancy formalism is not robust to jacobian misestimation

We have an initial estimation of J … Analytical solution

… and then we estimate J on-line Learning Correction of the perturbation

[Hosoda94],[Jagersand96]

[Piepmeier99]

[Lapreste04]

Appendix 2

Calibration-robust Stack of Tasks

Page 58: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

58

Two cameras on mobile Pan-Tilt Fixed head for the experiments

Eye-To-Hand servoing Markers on the hand

Flexible robot No real zero-position Difficult to calibrate Approximation of the Jacobian

Appendix 2

Calibration-robust Stack of Tasks

Page 59: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

59

Analytical matrices On-line estimated matrices

Appendix 2

Calibration-robust Stack of Tasks

Page 60: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

Appendix 3

Pseudo-linear Control for Non-holonomic Robots

Page 61: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

61

+

Appendix 3 Pseudo-linear Control for Non-holonomic Robots

BUT

?=

Page 62: Enchaînement de tâches robotiques Tasks sequencing for sensor-based control Nicolas Mansard Supervised by Francois Chaumette Équipe Lagadic IRISA / INRIA.

62

where

In our case

+ =

[Hettlich98]

Appendix 3 Pseudo-linear Control for Non-holonomic Robots