Università di Genova - DIST GRAAL- Genoa Robotic And Automation Lab Functional Architectures for Cooperative 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 The problem of controlling and coordinating the actions of a multirobot system may result extremely hard if not approached in 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 architecture because it drives the subsequent choices regarding both the Hw and Sw components of the control system.
A multilayered hierarchical approach The proposed approach describes a multilayered functional 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 flexible and gains in terms of modularity and scalabilty, allowing hence an easy componibility.
A case study: dual arm workcell MMI VLLC (Very Low Level Control) Direct HW interaction HLC sensors reading actuator driving LLC a MLC LLC b 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 VLLC a VLLC b Implementation distributed: a control loop for each joint, possibly realized by devoted devices centralized: dynamic compensation, adattative tecqniques,...
A case study: dual arm workcell MMI LLC a VLLC a HLC MLC LLC b VLLC b LLC (Low Level Control) 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...
A case study: dual arm workcell MMI HLC MLC Task dependent Robot independent layers Definition of cooperative tasks involving more than one robot Each robot is considered as the Cartesian frame associated to its end-effector Unknowledge of the physical parameters of the robotic devices to be controlled LLC a VLLC a LLC b VLLC b Robot dependent Task independent layers Each robot has its specific controller Each robot does not exchange data with the others Dependence by kinematic and dynamic parameters of the system
A case study: dual arm workcell LLC a VLLC a MMI HLC MLC LLC b VLLC b MLC (Medium Level Control) Definition of cooperative tasks involving more than one robot 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-effector position feedback of each robot output: position and orientation signals to be separately assigned as reference to each robot.
A case study: dual arm workcell MMI HLC (High Level Control) LLC a HLC MLC LLC b From the automatic control world to automatic reasoning and artificial intelligence issues: Structured command decomposition in elementary tasks Task scheduling VLLC a VLLC b Task execution monitoring and valuation Exceptions handling and decision making...
A case study: dual arm workcell MMI HLC MLC MMI (Man Machine Interface) Complexity strongly dependent on the level of command aggregation that HLC can manage Render 3D of the workspace LLC a VLLC a LLC b VLLC b Simulation environment embedded Haptic Interface...
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 MMI HLC MLC Modularity Substitution of a robotic device with another different 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 LLC a LLC b VLLC a VLLC b
Modularity and scalability features MMI HLC MLC Modularity Substitution of a robotic device with another different 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 LLC a LLC b LLC c Scalability VLLC a VLLC b VLLC c It is easy to change the number of robotic devices It is sufficient to configure the MLC to manage a different amount of tool frames The rest of the scheme doesn t change at all
An example of componibility: the DIST-Hand The robotic-hand was built as an experimental set-up for use in the ambit of research projects geared to defining 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
A preliminary analysis: the LLC of a single robot <e> Task objective: to drive the end-effector frame <e> toward the goal frame <g>. <g> Remark: the goal transformation matrix T g is expressed w.r.t. the base frame <b>. <b> T g * x& e/b T g e x& P γi + + Q q& VLLC LLC b et T q 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 <t> <g> Task objective: to drive the end-effector frame <t> toward the goal frame <g>. <b> <w> T g * x& t/w Remark: the goal transformation matrix T g is expressed w.r.t. the world frame <w>. T g P e γi + + x& t/w S x& e/b Q q& VLLC LLC w t T H b et T q w b T e tt 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: T g matrix describing the desired position/orientation w.r.t. the world frame <w> to be reached by the tool frame <t> T t T t matrix describing the position/orientation of the tool frame <t> of the robot w.r.t. the end-effector frame <e> T g LLC+VLLC X & * T b matrix describing the position/orientation of the base frame <b> of the robot w.r.t. the world frame <w> T b. X * vector describing the desired linear and angular velocities w.r.t. the world frame <w> to be assigned to the tool frame <t>
Robot composition: serial structures <b3> = <e2> e3 t T T t <t> T b e3 b3 T w e2 T = w b3 T T t <b2> = <e1> T b The end-effector of robot i is seen as the tool of robot i-1 b2 e2t T t T b w e1 T = w b2 T Computed by the H block <w> <w> w b1t
Robot composition: serial structures Now the desired position/orientation matrix of <t> w.r.t. T g T g <t> Computed by the S block <w> can be assigned to the last robot. X & * e3 Then the second robot can X & * be driven just by the cartesian velocity reference signal assigned to the <e> X & * e2 frame of the third robot. X & * An analogous thing can be done for the first robot. <w>
Robot composition: serial structures <t> T g T g Remarks: In this way each robot (apart from the last) X & * e3 is asked to follow the velocity reference signal assigned to just the end-effector of X & * the immediately previous robot. Hence each robot is interconnected and exchanges data with just the two adjacents X & * X & * e2 ones regardless the complexity of the chain. <w>
Robot composition: parallel structures <b3> <b3> = <b4> = <e2> = <e2> e3 t T T t <t1> e3 t T T t <t2> T b w w e2 T = b3t = w b4 T T b <b2> = <e1> T b b2 e2t w e1 T = w b2 T T t <w> T b <w> w b1t
Robot composition: parallel structures <b3> = <b4> = <e2> e3 t T T t <t1> e3 t T T t <t2> T b e4 b4 T T b <b2> = <e1> e3 b3 T T t T b b2 e2t w e1 T = w b2 T T t <w> T b <w> w b1t
Robot composition: parallel structures e3 t T <t1> e3 t T <t2> Remarks: In this case the second robot has to manage two signals coming from the upper two robots. T t T b e4 b4 T T t T b 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 velocity reference vectors and has to implement the collection of both the rigid body transformation matrices from the <e3> and <e4> frames to the <e2> frame. e3 b3 T b2 e2t T t T t T b T b w e1 T = w b2 T What is important to underline is that all the changes regard only robot 2. <w> w b1t
Robot composition: parallel structures We can assign the (now two) <t1> <t2> desired position and orientation reference signals T g1 T g2 T g T g1 e T g2 to the end-effectors of robot 3 and 4. Then we can send the cartesian velocity reference vectors of T g X & X & * e3 * X & * X & * e4 both <e3> and <e4> to the controller of robot 2. X & * e2 Finally as done before we can send the cartesian velocity reference vectors of <e2> to the controller of robot 1 <w> X & *
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
Remarks In the previous analysis an implicit assumption was made: each single robot was at least 6 d.o.f. Therefore each single robot was supposed to be able to accomplish its own assigned task. Relaxing this hypothesis would allow to manage also underactuated structures with a similar modular approach...
Future trands In the previous analysis an implicit assumption was made: each single robot was at least 6 d.o.f. Therefore each single robot was supposed to be able to accomplish its own assigned task. Relaxing this hypothesis would allow to manage also underactuated 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 realize control systems deeply componible, offering many benefits especially if integrated in robotic structures modular also from an electronic and mechanical point of view To do this it will be obviously necessary to make some changes in 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
Robot composition: serial structures <t> To avoid this computation waste, the matrix T g can be assigned only to the first robot. T g T t T g T b X & * t/w Then the second robot can be driven by the velocity reference signal computed by the first one. T t T t X & T b * X & * t/w The same can be done for the third robot. T b <w> X & *
Robot composition: serial structures <t> The matrix T g can now be assigned as reference signal to every block. T g T t T g T b T t However in this way in each block is computed the same error vector which results in an useless repetition. T g T t T b T g T b <w>
Robotic Hand Sensor Devices
A brief description of some selected DIST-GRAAL activities
Robotic NDT DIST participated in the building of a vehicle equipped with a robot arm with 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).
Nuclear plant Robotic NDT Architetture funzionali per il controllo di sistemi multibracci cooperanti Pipeline inspection