Università di Genova - DIST · Università di Genova - DIST GRAAL-Genoa Robotic And Automation Lab...

Post on 18-Feb-2019

217 views 0 download

Transcript of Università di Genova - DIST · Università di Genova - DIST GRAAL-Genoa Robotic And Automation Lab...

Università di Genova - DISTGRAAL- Genoa Robotic And Automation Lab

Functional Architectures forCooperative Multiarm Systems

Prof. Giuseppe Casalino

Outline

• A multilayered hierarchical approach to robot coordination: theory and implementation examples.

• Towards a wide componibility of robotic control systems.

• Towards a fully-distributed robotic control system architecture.

• A multilayered hierarchical approach to robot coordination: theory and implementation examples.

A multilayered hierarchical approach

• The problem of controlling and coordinating the actions of a multirobot system may result extremely hard if not approachedin a well structured way.

• Such an approach should involve 3 items intercorrelated:– The functional architecture of the overall control system.– The Hw/Sw architecture supporting the algorithms.– The developing environment and Sw tools for real-time

applications.

• A key role is played by the functional and algorithmic architecturebecause it drives the subsequent choices regarding both the Hwand Sw components of the control system.

A multilayered hierarchical approach

• The proposed approach describes a multilayeredfunctional and algorithmic architecture.

• Layers are interconnected by a hierarchical criterion.

• Each layer reflects a different level of abstraction of the overall control and coordination problem.

• In this way the control system becomes more flexibleand gains in terms of modularity and scalabilty, allowinghence an easy componibility.

A case study: dual arm workcell

• Direct HW interaction– sensors reading– actuator driving

• Joint velocity control loop–reference: joint velocity signal from the

upper layer– feedback: joint position signal from the

sensors– output: signal to drive the actuators

• Implementation

– distributed: a control loop for each joint, possibly realized by devoteddevices

– centralized: dynamic compensation,adattative tecqniques, ...

LLC b

MLC

HLC

MMI

LLC a

VLLC bVLLC a VLLC bVLLC a

VLLC (Very Low Level Control)

A case study: dual arm workcell

LLC bLLC a

• Cartesian position control loop–reference: desired end-effector tool frame

position and orientation– feedback: joint position signal from the

underlying level– output: joint velocity reference signal

• Algorithmic features– robust kinematic inversion– singularity avoidance– obstacle avoidance– joint manouvring funtionality– ...

LLC (Low Level Control)

MMI

HLC

MLC

VLLC a VLLC b

A case study: dual arm workcell

• Definition of cooperative tasks involving more than one robot

• Each robot is considered as the Cartesianframe associated to its end-effector

• Unknowledge of the physical parameters of the robotic devices to be controlled

Task dependent – Robot independent layers

• Each robot has its specific controller

• Each robot does not exchange data with the others

• Dependence by kinematic and dynamicparameters of the system

Robot dependent – Task independent layers

MMI

HLC

MLC

LLC a LLC b

VLLC a VLLC b

A case study: dual arm workcell

MLC • Control loop highly task dependent(es. coordinate transportation of an object)

– reference: desired position and orientation of the held object

– feedback: computed from the end-effectorposition feedback of each robot

– output: position and orientation signals tobe separately assigned as reference to each robot.

MLC (Medium Level Control)

• Definition of cooperative tasks involving more than one robot

MMI

HLC

LLC a LLC b

VLLC a VLLC b

A case study: dual arm workcell

HLC

– Structured command decomposition in elementary tasks

– Task scheduling

– Task execution monitoring and valuation

– Exceptions handling and decision making

– ...

HLC (High Level Control)

• From the “automatic control” world to“automatic reasoning” and “artificialintelligence” issues:

MMI

MLC

LLC a LLC b

VLLC a VLLC b

A case study: dual arm workcell

MMI

• Render 3D of the workspace

• Simulation environment embedded

• Haptic Interface

• ...

MMI (Man Machine Interface)

• Complexity strongly dependent on the level of command aggregation that HLC can manage

HLC

MLC

LLC a LLC b

VLLC a VLLC b

Paradigm implementation: AMADEUS

DIST was involved in a EU project called AMADEUS (Advanced MAnipulation for DEep Underwater Sampling).

The purpose of this project was to build an underwater cell capable of drawing samples and achieving coordinated manipulation operations on the seabed.

Paradigm implementation: AMADEUS

Underwater Tests

Lab Tests

Modularity and scalability features

• Substitution of a robotic device with anotherdifferent is possible in a very easy way

• It is sufficient to change also the correspondent VLLC and LLC modules

• The rest of the scheme doesn’t change at all

ModularityMMI

HLC

VLLC b

LLC b

MLC

VLLC a

LLC a

Modularity and scalability features

• Substitution of a robotic device with anotherdifferent is possible in a very easy way

• It is sufficient to change also the correspondent VLLC and LLC modules

• The rest of the scheme doesn’t change at all

Modularity

Scalability• It is easy to change the number of roboticdevices

• It is sufficient to configure the MLC tomanage a different amount of tool frames

• The rest of the scheme doesn’t change at all

c

MMI

HLC

MLC

VLLC b

LLC b

VLLC c

LLC

VLLC a

LLC a

An example of componibility: the DIST-Hand

The robotic-hand was builtas an experimental set-up for use in the ambit of research projects geared todefining algorithms for fine manipulation of objects.

Design intrinsically modular

• 4 DOF finger

• 5 DC-motors

• Tendon driven

• 3-axis Force sensors

• Joint position sensors

Preliminary Tests

Free Motion Tests

Grasping and Transportation Test

Manipulation Test

Outline

• A multilayered hierarchical approach to robot coordination: theory and implementation examples

• Towards a wide componibility of robotic control systems

• Towards a fully-distributed robotic control system architecture

• Towards a wide componibility of robotic control systems

A preliminary analysis: the LLC of a single robot

• Task objective: to drive the end-effector frame <e> toward the goal frame <g>.

• Remark: the goal transformation matrix Tg isexpressed w.r.t. the base frame <b>.

<b>

<e>

<g>

Tg

q&

q

LLC

VLLC

QP

T

γITg e x&

Tbe

*e/bx&

+

+

• P is the block which valuates the position/orientation error• Q is the kinematic inversion block• T computes the transformation matrix of <e> w.r.t. <b>

A preliminary analysis: the LLC of a single robot

• Task objective: to drive the end-effector frame <t> toward the goal frame <g>.

• Remark: the goal transformation matrix Tg isexpressed w.r.t. the world frame <w>.

<b>

<t> <g>

Tg

<w>

q&

q

LLC

VLLC

QP

T

γITg e

Tbe

*t/wx&

+

+S

HTw

t

TetTw

b

e/bx&t/wx&

• S is a rigid body transformation matrix• H computes the product of the 3 input matrices

A preliminary analysis: the LLC of a single robot

In the following the LLC+VLLC module will be represented as a bubble with 4 inputs:

tT

Tt matrix describing the position/orientation of the toolframe <t> of the robot w.r.t.the end-effector frame <e>

gT

Tg matrix describing the desired position/orientationw.r.t. the world frame <w> to be reached by the toolframe <t>

*X&

X* vector describing the desiredlinear and angular velocities w.r.t.the world frame <w> to beassigned to the tool frame <t>

.

LLC+VLLC

bTTb matrix describing the position/orientation of the base frame <b> of the robot w.r.t. the world frame <w>

<b3> = <e2>

<b2> = <e1>

<w>

<t>

Robot composition: serial structures

Tb

Twb1

Tt

Te3t

<w>

Tt

Tb2e2

Tb

T T wb3

we2 =

Tb

T T wb2

we1 =

Computed bythe “H” block

Tt

Te3b3

The end-effector of robot i is seen as

the tool of robot i-1

<w>

<t>

Robot composition: serial structures

Now the desiredposition/orientationmatrix of <t> w.r.t.

<w> can be assignedto the last robot.

Tg

Tg

Then the second robot can be driven just by the

cartesian velocity referencesignal assigned to the <e>

frame of the third robot.

An analogous thing can bedone for the first robot.

*X&

*

e2X&

*X&

*

e3X&

Computedby the “S”

block

<w>

<t>

Robot composition: serial structures

Tg

Tg

Remarks:• In this way each robot (apart from the last)

is asked to follow the velocity reference signal assigned to just the end-effector of the immediately previous robot.

• Hence each robot is interconnected and exchanges data with just the two adjacentsones regardless the complexity of the chain.

*X&

*

e2X&

*X&

*

e3X&

Robot composition: parallel structures

<w>

<t1> <t2>

Tb

Twb1

Tt

Tb2e2

Tb

T T wb2

we1 =

Tt

Te3t

Tt

Te3t

Tb

T T T wb4

wb3

we2 ==

Tb

<b3> = <e2>

<b2> = <e1>

<w>

<b3> = <b4> = <e2>

<b2> = <e1>

Robot composition: parallel structures

<w>

<t1> <t2>

Tb

Twb1

Tt

Te3t

Tt

Tb2e2

Tb

Tb

T T wb2

we1 =

Tt

Tt

Te3t

Tb

Te3b3

Te4b4

<b3> = <b4> = <e2>

<w>

Robot composition: parallel structures

<t1> <t2>

Tb

Twb1

Tt

Te3t

Tt

Tb2e2

Tb

Tb

T T wb2

we1 =

Tt

Tt

Te3t

Tb

Te3b3

Te4b4

Remarks:• In this case the second robot has to

manage two signals coming from the upper two robots.

• This implies some little changes in the “H” and “S” blocks inside the LLC scheme seen before. In particular, the “S” block has to deal with two cartesian velocityreference vectors and has to implementthe collection of both the rigid body transformation matrices from the <e3> and <e4> frames to the <e2> frame.

• What is important to underline is that allthe changes regard only robot 2. <w>

Robot composition: parallel structures

<t1> <t2>We can assign the (now two)

desired position and orientation reference signalsTg1 e Tg2 to the end-effectors

of robot 3 and 4.

Then we can send the cartesianvelocity reference vectors of both <e3> and <e4> to the

controller of robot 2.

Finally as done before we can send the cartesian velocity reference vectors of

<e2> to the controller of robot 1

Tg

Tg1 Tg

Tg2

*X&

*

e2X&

*X&

*

e4X&*X&

*

e3X&

<w>

Robot composition: the Hand-Arm example

Outline

• A multilayered hierarchical approach to robot coordination: theory and implementation examples

• Towards a wide componibility of robotic control systems

• Towards a fully-distributed robotic control system architecture

• Towards a fully-distributed robotic control system architecture

Remarks

• In the previous analysis an implicitassumption was made: each single robot was at least 6 d.o.f.

• Therefore each single robot wassupposed to be able toaccomplish its own assigned task.

• Relaxing this hypothesis wouldallow to manage alsounderactuated structures with a similar modular approach...

Future trands

• In the previous analysis an implicitassumption was made: each single robot was at least 6 d.o.f.

• Therefore each single robot wassupposed to be able toaccomplish its own assigned task.

• Relaxing this hypothesis wouldallow to manage alsounderactuated structures with a similar modular approach...

Future trands

• ... till possibly achieving a modularity extended to a single link level.

• If so it will be possible to realizecontrol systems deeply componible, offering many benefits especially ifintegrated in robotic structuresmodular also from an electronic and mechanical point of view

• To do this it will be obviouslynecessary to make some changesin the scheme seen before but...

• ... we are working on it!

End

Future trands

• A multilayered hierarchical approach to robot coordination: theory and implementation examples

• Towards a wide componibility of robotic control systems

• Towards a fully-distributed robotic control system architecture

<w>

<t>

Robot composition: serial structures

Tb

Tb

Tb

Tt

Tt

Tt

To avoid this computationwaste, the matrix Tg can beassigned only to the first robot.

Tg

Tg

Then the second robot can be driven by the velocityreference signal computed bythe first one.

The same can be done forthe third robot.

*X&

*

t/wX&

*X&

*

t/wX&

<w>

<t>

Robot composition: serial structures

Tb

Tb

Tb

Tt

Tt

Tt

The matrix Tg can now beassigned as reference signalto every block.

Tg

Tg

Tg

Tg

However in this way in eachblock is computed the sameerror vector which results in an useless repetition.

Robotic Hand – Sensor Devices

A brief description of some selected DIST-GRAAL activities

Robotic NDT

DIST participated in the building of a vehicleequipped with a robot armwith seven degrees of freedom used to carry out non-destructive tests(NDTs).

Robotic NDT

Purpose of the EU project Robotic NDT was to build a vehicle equipped with a robot arm with seven degrees of freedom used to carry out Non-Destructive Tests (NDTs).

Robotic NDT

Nuclear plant

Pipeline inspection

Architetture funzionali per il controllo di sistemi multibracci cooperanti